
/* V9 responsive layout — loaded AFTER all legacy styles */
html {overflow-x:clip}
body {min-width:0;overflow-x:clip}
.site-header {display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:1rem;padding:12px clamp(12px,3vw,42px);min-height:76px;width:100%;position:relative}
.site-header .brand {min-width:0;font-size:clamp(.82rem,1.8vw,1.15rem);line-height:1.25;max-width:35ch}
.site-header .header-controls {display:flex;align-items:center;justify-content:flex-end;gap:clamp(5px,1.2vw,14px);flex:0 0 auto}
.site-header .menu-toggle {display:flex!important;align-items:center;justify-content:center;gap:8px;background:#d3a848;color:#101c48;padding:10px 14px;min-height:44px;border-radius:8px;font-weight:800;white-space:nowrap}
.site-header .hamburger-symbol {display:block;font-size:25px;line-height:1}
.site-header .menu-label {display:block}
.site-header #main-nav {display:none!important;position:absolute;top:calc(100% - 2px);right:clamp(12px,3vw,42px);left:auto;width:min(360px,calc(100vw - 24px));background:#101c48;border:1px solid #6e7994;box-shadow:0 18px 36px #0006;z-index:2000;flex-direction:column;align-items:stretch;padding:12px;border-radius:0 0 12px 12px}
.site-header #main-nav.nav-open {display:flex!important}
.site-header #main-nav a {display:block;padding:12px 14px;border-radius:6px;color:#f5d78d;text-align:left}
.site-header #main-nav a:hover,.site-header #main-nav a:focus-visible {background:#2c416e}
.site-header .header-signin,.site-header .header-signup {display:inline-flex!important;align-items:center;justify-content:center;white-space:nowrap;font-weight:700;min-height:44px;padding:9px 12px;border-radius:8px}
.site-header .header-signin {border:1px solid #d3a848;color:#f5d78d}
.site-header .header-signup {background:#d3a848;color:#101c48}
body:has(.landing-intro) > main {width:100%;max-width:none!important;padding:0!important;margin:0!important;display:block!important}
body:has(.landing-intro) > main > section {width:100%;max-width:none;margin-left:0;margin-right:0}
.landing-intro {text-align:center;background:linear-gradient(145deg,#0f1c47,#243c70);color:white;padding:clamp(56px,8vw,120px) 18px}
.intro-inner {width:min(100%,900px);margin-inline:auto}
.landing-intro h1 {font-size:clamp(2.4rem,7vw,6rem);overflow-wrap:break-word}
.intro-actions {display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}
.pillars-heading,.feature-inner,.closing-cta {text-align:center}
.pillars-heading {padding:50px 16px}
.feature-band {display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;overflow:visible!important}
.feature-band .feature-photo {display:block!important;width:100vw!important;max-width:100%!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#e6e9ec}
.feature-band .feature-photo img {display:block!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;border-radius:0!important;margin:0!important;transform:none!important}
.feature-band .feature-inner {display:block!important;max-width:none!important;width:100%!important;padding:clamp(40px,6vw,80px) 20px!important;margin:0!important}
.feature-inner h2 {font-size:clamp(2.2rem,5vw,4.5rem);line-height:1.15}
.feature-inner p:not(.eyebrow) {font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.7;max-width:850px;margin:0 auto}
.governance-band {background:#eee8dc}
.community-band .feature-inner {background:#e7eef5}
.closing-cta {padding:56px 16px}
.welcome-dialog {width:min(760px,calc(100vw - 28px));max-height:calc(100dvh - 30px);overflow:auto;border:0;border-radius:14px;padding:0}
.welcome-dialog::backdrop {background:#10162cbd}
.welcome-dialog img {display:block;width:100%;height:auto;max-height:45vh;object-fit:contain;background:#e9e5dd}
.welcome-dialog-body {padding:clamp(18px,4vw,32px)}
.welcome-dialog .dialog-close {position:sticky;top:10px;float:right;z-index:10;background:#101c48;color:white;border-radius:50%;padding:4px;width:42px;height:42px;font-size:28px}
footer .footer-links {display:flex;flex-wrap:wrap;justify-content:center;gap:12px 22px}
footer .footer-note {margin:24px 0 0;font-size:.9rem;letter-spacing:.02em;text-align:center}
@media(max-width:560px) {
 .site-header {gap:6px;padding:10px 8px;min-height:64px}
 .site-header .brand {font-size:.7rem;letter-spacing:0;max-width:102px}
 .site-header .header-controls {gap:4px}
 .site-header .menu-toggle {min-height:40px;padding:7px 9px}
 .site-header .menu-label {display:none}
 .site-header .header-signin,.site-header .header-signup {font-size:.72rem;padding:7px 8px;min-height:40px}
 .site-header #main-nav {right:8px}
 .landing-intro {padding:55px 12px}
 .feature-inner {padding:36px 14px!important}
}
