/* Phase 01: shared foundation, retaining existing page presentation. */
:root{--color-navy:#0b1220;--color-blue:#2563eb;--color-blue-light:#93c5fd;--color-text:#172033;--color-muted:#526077;--color-border:#e2e8f0;--font-body:Inter,Manrope,"Segoe UI",ui-sans-serif,system-ui,sans-serif;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-6:3rem;--radius-control:6px;--layout-max:1280px;--ink:var(--color-text);--green:var(--color-blue);--muted:var(--color-muted);--line:var(--color-border);--navy:var(--color-navy);font-family:var(--font-body)}
html{scroll-padding-top:100px}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,.site-header a:focus-visible,.site-footer a:focus-visible{outline:3px solid #0b1220;outline-offset:3px;box-shadow:0 0 0 3px #fff}.skip{color:var(--color-navy)}
.site-header{background:var(--color-navy)}.site-nav{max-width:var(--layout-max);width:calc(100% - 48px);min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.site-header .brand{flex-shrink:0;white-space:nowrap;font-size:17px}.site-menu{display:flex;align-items:center;gap:16px;font-size:13px}.site-menu a{white-space:nowrap;padding-block:10px}.site-menu [aria-current=page]{color:var(--color-blue-light);text-decoration:underline;text-underline-offset:6px}.site-menu .nav-secondary{color:#b7c5db;font-weight:400}.site-menu .site-consultation{font-size:12px;padding:12px 14px;border-radius:var(--radius-control)}.nav-toggle{border:1px solid #64748b;border-radius:var(--radius-control);background:#162033;color:#fff;min-height:44px;padding:8px 16px;cursor:pointer}.nav-toggle[hidden],.site-menu[hidden]{display:none}
.site-footer{padding-block:var(--space-6);gap:var(--space-4)}.site-footer>div{display:grid;align-content:start;gap:var(--space-1)}.site-footer nav{gap:8px 20px}.site-footer nav a{padding-block:8px}.site-footer .nav-secondary{color:var(--color-muted);font-weight:400}.site-footer [aria-current=page]{text-decoration:underline;text-underline-offset:5px}
.page-shell{min-height:60vh;padding-block:clamp(48px,7vw,88px);max-width:1000px}.page-shell h1{font-size:clamp(36px,5vw,60px)}.page-shell p{max-width:70ch}.shell-status{padding:var(--space-3);background:var(--soft);border-left:3px solid var(--color-blue);margin-bottom:var(--space-4)}.consultation-fallback{padding-top:var(--space-4)}.consultation-fallback .button{white-space:normal;text-align:center}.fallback-help{margin-top:var(--space-3);font-size:14px}
@media(max-width:1199px){.site-nav{min-height:76px;flex-wrap:wrap;gap:0;padding-block:12px}.site-header .brand{font-size:16px;gap:8px}.nav-toggle{margin-left:auto}.site-menu{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-block:12px;font-size:16px}.site-menu a{padding:10px 12px;min-height:44px}.site-menu .site-consultation{margin-top:12px;font-size:14px;padding:14px 12px}}
@media(max-width:760px){html{scroll-padding-top:92px}.site-nav{width:calc(100% - 36px)}.site-footer{grid-template-columns:1fr}.site-footer nav{justify-self:start}}

/* Keep the sticky header fixed in flow; only its menu panel scrolls. */
@media(max-width:1199px){
  .js .site-menu{display:none;position:absolute;top:100%;left:0;margin:0;padding:12px 18px 20px;background:var(--color-navy);border-bottom:1px solid #34415a;max-height:calc(100vh - 77px);max-height:calc(100dvh - 77px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 16px 24px #0003}
  .js .site-menu[data-ready]:not([hidden]){display:flex}
  html:not(.js) .site-header{position:static}
}
