/* site-layout.css — full-width public site (overrides per-page max-width rules) */

:root {
    --site-page-px: clamp(16px, 2.5vw, 40px);
}

.container-box {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: var(--site-page-px) !important;
    padding-right: var(--site-page-px) !important;
}

.page-header .header-inner,
.hero-copy-wrap {
    max-width: none !important;
    width: 100% !important;
    padding-left: var(--site-page-px) !important;
    padding-right: var(--site-page-px) !important;
}

.page-logo-wrap {
    max-width: none !important;
    width: calc(100% - (var(--site-page-px) * 2)) !important;
}

.stats-grid,
.news-grid,
.partner-slider,
.contact-grid,
.office-grid,
.team-grid,
.intro-card,
.section-head,
.map-card,
.awards-grid,
.award-grid,
.conference-grid,
.training-grid {
    max-width: none !important;
    width: 100% !important;
}

.home-section,
.home-stats,
.partners-section,
.news-home,
.section,
.stats,
.partners,
.page-header {
    width: 100% !important;
}

footer .container,
footer .container-fluid {
    max-width: none !important;
    width: 100% !important;
}
