/* One public navigation tree, progressively enhanced into a mobile disclosure. */
.mobile-nav-toggle,.mobile-nav-extras{display:none}
@media(max-width:900px){
    .site-header{position:relative;z-index:1100}
    .site-header .header-inner{position:relative;flex-wrap:nowrap;gap:12px;padding-block:10px;min-height:80px}
    .site-header .header-actions{margin-inline-start:auto;gap:8px}
    .site-header .header-actions>.support-menu,.site-header .header-actions>.login-link{display:none}
    .site-header.is-nav-ready .mobile-nav-toggle{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:1px solid #d6e1ef;border-radius:10px;background:#fff;color:#002b66;padding:10px;cursor:pointer}
    .mobile-menu-icon{width:20px;height:16px;position:relative;display:block}
    .mobile-menu-icon i{position:absolute;display:block;width:20px;height:1.7px;right:0;border-radius:2px;background:currentColor;transition:transform .18s,opacity .18s}
    .mobile-menu-icon i:nth-child(1){top:0}.mobile-menu-icon i:nth-child(2){top:7px;width:15px}.mobile-menu-icon i:nth-child(3){top:14px}
    .is-nav-open .mobile-menu-icon i:nth-child(1){transform:translateY(7px) rotate(45deg)}
    .is-nav-open .mobile-menu-icon i:nth-child(2){opacity:0}
    .is-nav-open .mobile-menu-icon i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
    .site-header.is-nav-ready .public-nav{display:none;position:absolute;inset-inline:0;top:calc(100% + 8px);width:auto;max-height:calc(100dvh - 116px);overflow:auto;overscroll-behavior:contain;margin:0;padding:10px;gap:2px;flex-basis:auto;border:1px solid #dce5ef;border-radius:14px;background:#fff;box-shadow:0 14px 32px #002b6618}
    .site-header.is-nav-open .public-nav{display:grid;grid-template-columns:1fr 1fr;animation:mobile-nav-reveal .16s ease-out}
    .site-header .public-nav>a{min-height:44px;padding:10px 12px;font-size:13px;border-radius:8px;white-space:normal;line-height:1.7}
    .site-header .public-nav>a:hover,.site-header .public-nav>a:focus-visible{background:#edf3fa}
    .site-header .public-nav .mobile-nav-extras{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px;border-top:1px solid #e7edf5;margin-top:8px;padding-top:8px}
    .site-header .mobile-nav-extras a{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;min-height:44px;font-size:12px;border-radius:8px;background:#f5f8fc;white-space:nowrap;padding:8px}
    .mobile-nav-extras .icon{width:17px;height:17px;flex-shrink:0}
    .site-header .mobile-nav-toggle:focus-visible,.site-header .public-nav a:focus-visible{outline:2px solid #315f99;outline-offset:2px}
    /* Without JavaScript all navigation links remain available in normal flow. */
    .site-header:not(.is-nav-ready) .header-inner{flex-wrap:wrap}
    .site-header:not(.is-nav-ready) .public-nav{display:flex;flex-wrap:wrap;overflow:visible}
}
@media(max-width:600px){
    .site-header .header-inner{gap:8px;min-height:76px;padding-block:8px}
    .site-header .brand,.site-header .brand img{width:120px;height:60px;flex-shrink:0}
    .site-header .header-actions{gap:6px}
    .site-header .header-actions .header-map-link{width:40px;min-width:40px;min-height:44px;height:44px;padding:9px}
    .site-header .header-actions>.button{min-height:44px;padding:8px 10px;font-size:12px}
    .site-header .public-nav .mobile-nav-extras{display:grid;grid-template-columns:1fr 1fr}
    .site-header .mobile-nav-extras a:first-child{grid-column:1/-1}
}
@media(max-width:359px){.site-header .brand,.site-header .brand img{width:96px;height:50px}.site-header .header-inner{gap:6px}.site-header .header-actions{gap:4px}.site-header .header-actions>.button{padding-inline:7px}}
@keyframes mobile-nav-reveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.site-header.is-nav-open .public-nav{animation:none}.mobile-menu-icon i{transition:none}}
