/* Shared responsive GridPass navigation for the standalone homepage and Astro pages. */
.mobile-menu{display:none;position:relative;z-index:50;flex:none}
.mobile-menu>summary{display:flex;align-items:center;justify-content:center;cursor:pointer;list-style:none;width:44px;height:44px;padding:0;border:1px solid #31486c;border-radius:10px;background:#14253f;color:#eaf0f8;transition:border-color .15s,background .15s}
.mobile-menu>summary::-webkit-details-marker{display:none}
.mobile-menu>summary:hover,.mobile-menu[open]>summary{background:#1a3152;border-color:#60a5fa}
.mobile-menu>summary:focus-visible,.mobile-menu-panel a:focus-visible{outline:3px solid #60a5fa;outline-offset:3px}
.mobile-menu .menu-close-icon{display:none}
.mobile-menu[open] .menu-open-icon{display:none}
.mobile-menu[open] .menu-close-icon{display:block}
.mobile-menu-panel{position:absolute;right:0;top:calc(100% + 9px);z-index:55;display:grid;gap:2px;width:min(360px,calc(100vw - 32px));max-height:calc(100dvh - 96px);overflow-y:auto;overscroll-behavior:contain;padding:10px;background:#101e35;border:1px solid #31486c;border-radius:13px;box-shadow:0 24px 60px #000b}
.mobile-menu-panel a{display:flex;align-items:center;min-height:46px;padding:10px 15px;border-radius:7px;color:#eaf0f8!important;text-decoration:none!important;font:600 15px/1.4 'Inter','Segoe UI',system-ui,sans-serif;white-space:normal;overflow-wrap:anywhere}
.mobile-menu-panel a:hover,.mobile-menu-panel a:focus-visible{background:#1a3152;color:#34d399!important}
@media(max-width:1199px){
 .site-header .nav{gap:12px;flex-wrap:nowrap}
 .site-header .links{display:none}
 .site-header .brand{margin-right:auto}
 .site-header .nav-cta{display:inline-flex;white-space:nowrap;margin-left:0}
 .site-header .mobile-menu{display:block}
 nav.site-nav .wrap{gap:12px;justify-content:space-between}
 nav.site-nav .links{display:none}
 nav.site-nav .brand{margin-right:auto;white-space:nowrap}
 nav.site-nav .wrap>.btn{display:inline-flex;white-space:nowrap;margin-left:0}
 nav.site-nav .mobile-menu{display:block}
}
@media(max-width:720px){
 .site-header .nav{padding:10px 0}
 .site-header .nav-cta{display:inline-flex;font-size:13px;padding:10px 12px}
 nav.site-nav .wrap{padding:0 16px;height:64px}
 nav.site-nav .wrap>.btn{display:inline-flex;font-size:13px;padding:10px 12px}
}
@media(max-width:390px){
 .site-header .brand,nav.site-nav .brand{font-size:18px;gap:7px}
 .site-header .nav,nav.site-nav .wrap{gap:8px}
 .site-header .nav-cta,nav.site-nav .wrap>.btn{padding:10px 10px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){.mobile-menu>summary{transition:none}}
