/* A single light navigation panel across the presentation. */
:root{--header:118px}
.mobile-menu-toggle{display:none}
body .site-header.presentation-header-hidden{transform:translateY(calc(-100% - 24px))}
body .site-header{
 position:fixed;inset:16px 3vw auto;width:94vw;height:86px;max-width:1600px;margin-inline:auto;
 display:grid;grid-template-columns:130px minmax(0,1fr);grid-template-rows:auto;
 gap:24px;padding:14px 24px;background:rgba(250,250,250,.97);color:#111;
 border:1px solid #fff;border-radius:22px;box-shadow:0 10px 32px #0002;
 backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
body .site-header .mini-brand{grid-column:1;grid-row:1;justify-self:start;display:block;color:#111;font-family:'Rally Display',Arial,sans-serif;font-size:34px;font-weight:900;font-style:normal;letter-spacing:-.05em}
body .site-header .mini-brand span{display:block;margin:4px 0 0;font-family:'Rally Script',cursive;font-size:23px;font-weight:400;letter-spacing:0;color:#111}
body .site-header nav{grid-column:2;grid-row:1;display:flex;justify-content:center;align-items:center;width:100%;max-width:none;min-height:0;gap:3px;padding:0;margin:0;background:none;border:0;border-radius:0;box-shadow:none;overflow:visible}
body .site-header nav a{flex:0 1 auto;min-height:44px;padding:11px clamp(8px,.9vw,16px);color:#555;background:transparent!important;border:0;border-radius:10px;font-size:14px;font-weight:600;letter-spacing:0;white-space:nowrap;text-decoration:none}
body .site-header nav a::after{display:none}
body .site-header nav a[aria-current=page]{color:#111;background:#e5e5e5!important}
body .site-header nav a.nav-apply{color:#fff;background:#111!important;margin-left:8px;padding-inline:18px}
body .site-header nav a:focus-visible{outline:2px solid #111;outline-offset:3px;color:#111;background:#e5e5e5!important}
@media(hover:hover){body .site-header nav a:hover{background:#eaeaea!important;color:#111}body .site-header nav a.nav-apply:hover{background:#333!important;color:#fff}}
@media(max-width:1300px){
 :root{--header:170px}
 body .site-header{inset:10px 3vw auto;height:150px;grid-template-columns:1fr;grid-template-rows:34px auto;padding:13px 15px;gap:9px;border-radius:20px}
 body .site-header .mini-brand{grid-column:1;grid-row:1;display:flex;align-items:center;gap:9px;justify-self:center;font-size:29px}
 body .site-header .mini-brand span{margin:0;font-size:24px}
 body .site-header nav{grid-column:1;grid-row:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:720px;justify-self:center;gap:3px}
 body .site-header nav a,body .site-header nav a:nth-child(n+5){grid-column:auto;font-size:13px;min-height:39px;padding:7px 4px;white-space:normal;line-height:1.25}
 body .site-header nav a.nav-apply{margin:0;padding-inline:5px;white-space:nowrap}
}
/* On a phone, the page gets the screen; all topics stay one tap away. */
@media(max-width:1300px){
 :root{--header:92px}
 body .site-header.menu-ready{inset:10px 16px auto;width:calc(100% - 32px);height:66px;padding:10px 16px;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:1fr;gap:12px;border-radius:17px;align-content:center}
 body .site-header.menu-ready .mini-brand{grid-column:1;grid-row:1;justify-self:start;display:flex;gap:7px;font-size:27px}
 body .site-header.menu-ready .mini-brand span{font-size:23px}
 body .site-header.menu-ready .mobile-menu-toggle{grid-column:2;grid-row:1;display:flex;align-items:center;gap:12px;min-width:86px;min-height:44px;padding:8px 11px;border:1px solid #ddd;border-radius:10px;background:#fff;color:#111;font:600 14px/1.2 Manrope,Arial,sans-serif;cursor:pointer}
 .menu-toggle-icon{position:relative;width:17px;height:12px;display:block}
 .menu-toggle-icon::before,.menu-toggle-icon::after{content:'';position:absolute;left:0;width:17px;height:1.5px;background:currentColor;transition:transform .18s,top .18s}
 .menu-toggle-icon::before{top:2px}.menu-toggle-icon::after{top:9px}
 .menu-open .menu-toggle-icon::before{top:5px;transform:rotate(45deg)}
 .menu-open .menu-toggle-icon::after{top:5px;transform:rotate(-45deg)}
 body .site-header.menu-ready nav{display:none;position:absolute;grid-area:auto;top:76px;left:0;right:0;max-width:none;width:100%;max-height:calc(100dvh - 106px);overflow:auto;overscroll-behavior:contain;padding:10px;background:#fafafa;border:1px solid #e2e2e2;border-radius:18px;box-shadow:0 24px 65px #0004;grid-template-columns:1fr;gap:4px}
 body .site-header.menu-ready.menu-open nav{display:grid}
 body .site-header.menu-ready nav a,body .site-header.menu-ready nav a:nth-child(n+5){display:flex;justify-content:flex-start;align-items:center;min-height:48px;padding:12px 16px;font-size:16px;line-height:1.35;white-space:normal;border-radius:11px}
 body .site-header.menu-ready nav a[aria-current=page]{background:#e8e8e8!important;color:#111;font-weight:800}
 body .site-header.menu-ready nav a.nav-apply{margin:5px 0 0;justify-content:center;background:#111!important;color:#fff}
 body .site-header.menu-ready.menu-open{transform:none;pointer-events:auto}
 body .site-header.presentation-header-hidden{transform:translateY(calc(-100% - 20px))}
}
@media(prefers-reduced-motion:reduce){.menu-toggle-icon::before,.menu-toggle-icon::after{transition:none}}

@media(max-width:380px){
 body .site-header.menu-ready{inset-inline:12px;width:calc(100% - 24px);padding-inline:14px}
 body .site-header.menu-ready .mini-brand{display:block;font-size:26px;line-height:.9}
 body .site-header.menu-ready .mini-brand span{font-size:18px;line-height:1;margin-top:4px}
}
@media(max-width:1300px) and (max-height:540px){
 body .site-header.menu-ready nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
 body .site-header.menu-ready nav a{font-size:14px;min-height:44px;padding:10px 12px}
 body .site-header.menu-ready nav a.nav-apply{margin:0}
}
