/* Shared outer header: full viewport width, consistent edge inset, clinical navy. */
:root{--header-edge:24px}
body .site-header,body .portal-header,body .water-header,body .pan-app-bar{background:#0B1F33!important;color:#fff!important;border-bottom:1px solid #ffffff26!important}
body .site-header .header-inner.shell{box-sizing:border-box;width:100%!important;max-width:none!important;margin:0!important;padding:12px var(--header-edge)!important;min-height:80px;display:grid!important;grid-template-columns:minmax(0,1fr) auto 44px!important;gap:16px!important;align-items:center;flex-wrap:nowrap}
body .site-header .header-inner>.brand{grid-column:1!important;grid-row:1!important;order:0;justify-self:start;min-width:0;width:auto!important;margin:0!important;color:#fff!important;gap:10px}
body .site-header .brand small{color:#75B9EA!important}
body .site-header .header-inner>.header-actions{grid-column:2!important;grid-row:1!important;width:auto!important;min-width:0;margin:0!important;justify-self:end;display:flex!important}
body .site-header .header-inner>.header-actions label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
body .site-header .header-actions select{background:#0B1F33!important;color:#fff!important;border:1px solid #8BA2B5;border-radius:3px;min-height:44px;padding:8px 10px;width:138px;max-width:138px;font-size:14px}
body .site-header .header-inner>.menu-toggle{grid-column:3!important;grid-row:1!important;justify-self:end;display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;padding:8px;margin:0!important;color:#fff!important}
body .site-header .menu-toggle-label{display:none}
body .site-header .menu-bars i,body .site-header .menu-bars::after{background-color:#fff!important}
body .site-header :is(a,button,select):focus-visible,body .portal-header :is(a,button,select):focus-visible{outline:3px solid #75B9EA;outline-offset:4px}
body .portal-screen>.portal-header>.portal-header-inner{box-sizing:border-box;width:100%!important;max-width:none!important;margin:0!important;padding-inline:var(--header-edge)!important}
body .portal-screen .portal-header .portal-brand{color:#fff!important;margin-left:0!important}
body .portal-screen .portal-header .portal-brand small{color:#75B9EA!important}
body .portal-header .portal-back,body .portal-header .language-label,body .portal-header .learning-menu-button{color:#fff!important}
body .portal-header .portal-header-actions{margin-left:auto!important;justify-content:flex-end}
body .portal-header .portal-header-actions select{background:#0B1F33!important;color:#fff!important;border-color:#8BA2B5!important}
body .portal-header .student-notification>button{background:#18344C!important;color:#fff!important;border-color:#8BA2B5!important}
body .portal-header .student-notification .team-notification-badge{background:#75B9EA!important;color:#0B1F33!important;border-color:#0B1F33!important}
body .pan-app-bar{padding-inline:var(--header-edge)!important}
body .pan-app-bar :is(h1,button,a){color:#fff!important}
body .water-header{box-sizing:border-box;max-width:none;margin:0;padding-inline:var(--header-edge)}
body .water-header .water-brand{color:#fff!important}
body .water-header .water-brand small,body .water-header .water-language span{color:#DCE7EF}
body .water-header select{background:#0B1F33;color:#fff;border-color:#8BA2B5}
@media(max-width:760px){
 :root{--header-edge:16px}
 body .site-header .header-inner.shell{gap:10px!important;min-height:76px}
 body .site-header .header-inner>.brand{font-size:.76rem;gap:7px}
 body .site-header .brand img{width:38px;height:38px;flex:none}
 body .site-header .brand span{min-width:0;white-space:normal}
 body .site-header .brand small{font-size:.55rem;letter-spacing:.05em}
 body .site-header .header-inner>.header-actions select{width:88px;max-width:88px;padding:8px 5px;font-size:13px}
 body .portal-header .portal-brand{min-width:0}
 body .portal-header .portal-brand span{overflow-wrap:anywhere}
}
@media(max-width:360px){body .site-header .header-inner.shell{gap:7px!important}body .site-header .header-inner>.brand{font-size:.66rem}body .site-header .brand img{width:34px;height:34px}body .site-header .header-inner>.header-actions select{width:80px;max-width:80px}}
/* Every public drawer opens from the same right edge as its trigger. */
body .site-header nav.side-menu{left:auto!important;right:0!important;top:0;bottom:0;width:min(360px,calc(100vw - 32px));height:100dvh;max-height:100dvh;transform:translateX(100%)!important;padding:96px 28px 28px;overflow-y:auto;transition:transform .24s ease,visibility .24s}
body .site-header nav.side-menu.is-open{transform:translateX(0)!important}
@media(prefers-reduced-motion:reduce){body .site-header nav.side-menu{transition:none}}
body .portal-header-inner>.portal-back{justify-self:end;text-align:right}
/* Homepage exception: white header above the navy hero. */
body.landing-page .site-header{background:#FFFFFF!important;color:#0B1F33!important;border-bottom:1px solid #DCE7EF!important}
body.landing-page .site-header .header-inner>.brand{color:#0B1F33!important}
body.landing-page .site-header .brand small{color:#496F8B!important}
body.landing-page .site-header .header-inner>.header-actions select{background:#FFFFFF!important;color:#0B1F33!important;border-color:#9AADB9}
body.landing-page .site-header .header-inner>.menu-toggle{color:#0B1F33!important}
body.landing-page .site-header .menu-bars i,body.landing-page .site-header .menu-bars::after{background-color:#0B1F33!important}
body.landing-page .site-header .menu-toggle[aria-expanded=true] .menu-bars i,body.landing-page .site-header .menu-toggle[aria-expanded=true] .menu-bars::after{background-color:#FFFFFF!important}
/* Desktop destinations share the existing header; the right drawer stays mobile-only. */
body .site-header nav.desktop-nav{display:none}
@media(min-width:1024px){
 body .site-header .header-inner.shell{grid-template-columns:minmax(190px,1fr) auto 110px!important;gap:20px!important}
 body .site-header nav.desktop-nav{grid-column:2;grid-row:1;display:flex!important;position:static;align-items:center;justify-content:flex-end;gap:clamp(14px,1.6vw,24px);width:auto;max-width:none;padding:0;margin:0;order:initial;overflow:visible;white-space:nowrap;transform:none;visibility:visible;background:transparent;color:inherit}
 body .site-header nav.desktop-nav a{display:inline-flex;align-items:center;min-height:44px;padding:7px 0;color:inherit;text-decoration:none;font:500 14px/1.4 Arial,Helvetica,sans-serif;border:0;border-bottom:1px solid transparent}
 body .site-header nav.desktop-nav a:hover,body .site-header nav.desktop-nav a[aria-current=page]{border-bottom-color:currentColor}
 body .site-header .header-inner>.header-actions{grid-column:3!important}
 body .site-header .header-actions select{width:110px;max-width:110px}
 body .site-header .header-inner>.menu-toggle,body .site-header nav.side-menu{display:none!important}
}
