/* Keep navigation collapsed until explicitly opened, on every viewport. */
header .menu{display:block;margin-left:auto;flex-shrink:0;font-size:18px;padding:8px 12px}
header nav{display:none;position:absolute;top:102px;left:0;right:0;background:var(--facility-accent,#092b68);background:color-mix(in srgb,var(--facility-accent,#092b68) 65%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:25px;flex-direction:column;align-items:center;border-bottom:1px solid #ffffff55;font-size:20px;gap:14px;max-height:calc(100dvh - 102px);overflow:auto;box-shadow:0 12px 18px #0002}
header nav.open{display:flex}
header nav>a{padding:7px 12px}
header nav .nav-area-group{width:100%;align-items:stretch;padding:14px 0;border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30}
header nav .nav-area-group+.nav-area-group{border-top:0;margin-top:-14px}
header nav .nav-area-label{text-align:center}
header nav .nav-area-links{flex-direction:column;gap:4px}
header nav .nav-area-links a{padding:8px 12px;white-space:normal;text-align:center}
@media(max-width:800px){header nav{top:96px;max-height:calc(100dvh - 96px)}}

/* Fine, solid outlines keep white menu lettering clear over the translucent panel. */
header nav{--menu-letter-outline:var(--facility-accent,#092b68)}
header nav a:not(.navcta),header nav .nav-area-label,header nav .navcta:is(:hover,:focus-visible){
  text-shadow:-.6px -.6px 0 var(--menu-letter-outline),0 -.6px 0 var(--menu-letter-outline),.6px -.6px 0 var(--menu-letter-outline),-.6px 0 0 var(--menu-letter-outline),.6px 0 0 var(--menu-letter-outline),-.6px .6px 0 var(--menu-letter-outline),0 .6px 0 var(--menu-letter-outline),.6px .6px 0 var(--menu-letter-outline);
}
