/* One content boundary for the header, page sections and footer. */
body#main {
    --rh-page-gutter: clamp(16px, 3.125vw, 60px);
    --rh-page-width: 1902px;
}

body#main > .body { width: 100%; max-width: var(--rh-page-width); margin-inline: auto; }

/* Inner pages own their outer gutter; nested theme containers add none. */
body#main .body:not(.index) > .main {
    box-sizing: border-box;
    width: 100%;
    max-width: var(--rh-page-width) !important;
    margin-inline: auto !important;
    padding-inline: var(--rh-page-gutter) !important;
}
body#main .body:not(.index) > .main > .container,
body#main .body:not(.index) > .main > .container > .row,
body#main .body:not(.index) > .main .page-top-info {
    width: 100%;
    margin-inline: 0 !important;
    padding-inline: 0 !important;
}
body#main .body:not(.index) > .main .page-top,
body#main .body:not(.index) > .main > .container > .row > .maxwidth-theme,
body#main .body:not(.index) > .main .content-md,
body#main .body:not(.index) > .main .right_block,
body#main .body:not(.index) > .main .product-container.detail,
body#main .body:not(.index) > .main .rh-info {
    box-sizing: border-box;
    width: 100%;
    max-width: none !important;
    margin-inline: 0 !important;
    padding-inline: 0 !important;
}

/* Home sections keep their backgrounds full width. */
body#main .body.index .resident-home-intro__inner,
body#main .body.index .resident-home-projects.maxwidth-theme,
body#main .body.index .resident-company,
body#main .body.index .BLOG .blog-list > .maxwidth-theme,
body#main #footer > .footer__main-part > .maxwidth-theme,
body#main #footer > .footer__bottom-part > .maxwidth-theme {
    box-sizing: border-box;
    width: 100%;
    max-width: var(--rh-page-width) !important;
    margin-inline: auto !important;
    padding-inline: var(--rh-page-gutter) !important;
}
body#main .body.index .BLOG .blog-list,
body#main #footer,
body#main #footer > .footer__main-part,
body#main #footer > .footer__bottom-part {
    padding-inline: 0 !important;
}
body#main #footer { width: 100%; max-width: none !important; }
body#main #footer .footer__main-part-inner,
body#main #footer .footer__bottom-part-items-wrapper {
    width: 100%;
    max-width: none;
    margin-inline: 0;
}
body#main #footer .footer__bottom-part-items-wrapper > .footer__part-item {
    box-sizing: border-box;
    width: 100%;
    flex-basis: 100%;
    margin-inline: 0;
}

@media (min-width: 992px) {
    body#main #headerfixed .header__top-part { padding-inline: 0 !important; }
    body#main #headerfixed .header__top-inner {
        box-sizing: border-box;
        width: 100%;
        max-width: var(--rh-page-width);
        margin-inline: auto;
        padding-inline: var(--rh-page-gutter);
    }
    body#main #headerfixed .header__top-inner > .header__top-item,
    body#main #headerfixed .resident-header-brand__inner {
        margin-inline: 0 !important;
    }
}
@media (max-width: 991px) {
    body#main #mobileheader .mobileheader { padding-inline: var(--rh-page-gutter); }
    body#main #mobileheader .mobileheader__inner { margin-inline: 0; }
    body#main #mobileheader .mobileheader__inner > .mobileheader__item { margin-inline: 0; }
}
