/* =========================================================
   OODOMA GLOBAL APPLICATION LAYOUT
   ========================================================= */

:root {
    --oodoma-page-max: 1200px;
    --oodoma-page-padding: 32px;
    --oodoma-page-padding-mobile: 18px;
    --oodoma-border: #e5e9ef;
    --oodoma-text: #263346;
    --oodoma-muted: #667085;
    --oodoma-green: #1da750;
}

/* Prevent full-width sections from causing sideways scrolling */
html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
}

/*
 * Remove Divi's narrow default content restriction.
 * The page canvas may now use the full browser width.
 */
#page-container,
#main-content,
.et-l,
.et-l--body,
.et_builder_inner_content {
    width: 100%;
    max-width: none;
}

/*
 * Make ordinary Divi sections and rows substantially wider.
 * This keeps basic pages comfortable while using more screen space.
 */
#main-content .et_pb_section {
    width: 100%;
}

#main-content .et_pb_row {
    width: calc(100% - (var(--oodoma-page-padding) * 2));
    max-width: var(--oodoma-page-max);
    margin-left: auto;
    margin-right: auto;
}

/*
 * Reusable inner container for custom Oodoma sections.
 */
.oodoma-container {
    width: calc(100% - (var(--oodoma-page-padding) * 2));
    max-width: var(--oodoma-page-max);
    margin-left: auto;
    margin-right: auto;
}

/*
 * Use this class for sections that should touch both browser edges,
 * such as the Search map, large galleries, and dashboards.
 */
.oodoma-full-width {
    position: relative;
    left: 50%;
    width: 100vw;
    max-width: none;
    margin-left: -50vw;
}

/*
 * Optional full-width section with normal internal spacing.
 */
.oodoma-full-width-padded {
    position: relative;
    left: 50%;
    width: 100vw;
    max-width: none;
    margin-left: -50vw;
    padding-left: var(--oodoma-page-padding);
    padding-right: var(--oodoma-page-padding);
}

/*
 * Make Divi's specialty and full-width rows truly full width.
 */
#main-content .et_pb_fullwidth_section,
#main-content .et_pb_row_fullwidth {
    width: 100%;
    max-width: none;
}

/*
 * General page breathing room.
 * Individual application pages can override this.
 */
#main-content {
    min-height: calc(100vh - 160px);
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 980px) {
    :root {
        --oodoma-page-padding: 24px;
    }
}

@media (max-width: 767px) {
    :root {
        --oodoma-page-padding: var(--oodoma-page-padding-mobile);
    }

    #main-content .et_pb_row,
    .oodoma-container {
        width: calc(100% - (var(--oodoma-page-padding-mobile) * 2));
    }

    /*
     * True edge-to-edge mobile sections.
     */
    .oodoma-mobile-full-width {
        position: relative;
        left: 50%;
        width: 100vw;
        max-width: none;
        margin-left: -50vw;
    }
}
@media (max-width: 767px) {
    body.single-property #main-content .et_pb_row {
        width: calc(100% - 24px);
    }
}
/* Property detail pages: comfortably contained */
body.single-property #main-content .et_pb_row {
    width: calc(100% - 48px);
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}