/* A modal side drawer keeps navigation independent of page/header layout. */
html body .mobile-nav-drawer{box-sizing:border-box;position:fixed;inset:0 auto 0 0;margin:0;width:min(296px,calc(100vw - 56px));height:100dvh;max-width:none;max-height:none;padding:0;border:0;border-right:1px solid #33445e;border-radius:0;color:#edf3ff;background:#111c2e;overflow:hidden;box-shadow:16px 0 48px #0004}
html body .mobile-nav-drawer[open]{display:flex;flex-direction:column;animation:mobile-nav-enter .22s ease-out}
.mobile-nav-drawer::backdrop{background:rgb(0 0 0 / .52);animation:mobile-nav-dim .22s ease-out}
.mobile-nav-drawer__header{display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;padding:calc(12px + env(safe-area-inset-top,0px)) 16px 12px;border-bottom:1px solid #ffffff14}
.mobile-nav-drawer__brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-size:20px;letter-spacing:.04em}
.mobile-nav-drawer__brand img{width:32px;height:32px}
.mobile-nav-drawer__close{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:transparent;color:inherit;font:32px/1 sans-serif;cursor:pointer}
.mobile-nav-drawer__close:hover{background:#ffffff10}
.mobile-nav-drawer__content{min-height:0;overflow:auto;overscroll-behavior:contain;flex:1;padding:16px 16px calc(24px + env(safe-area-inset-bottom,0px))}
html body .mobile-nav-drawer #site-main-nav{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;gap:8px!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
html body .mobile-nav-drawer .nav-group{display:block!important;width:100%!important;min-width:0}
html body .mobile-nav-drawer .nav-group>summary,html body .mobile-nav-drawer .site-main-nav__link{display:flex!important;align-items:center;box-sizing:border-box;width:100%!important;min-height:48px!important;padding:12px!important;font-size:15px;line-height:1.4;white-space:normal!important;color:inherit;border-radius:10px;text-decoration:none;cursor:pointer}
html body .mobile-nav-drawer .nav-group>summary{justify-content:space-between;list-style:none}
.mobile-nav-drawer summary::-webkit-details-marker{display:none}
.mobile-nav-drawer .nav-group>summary::after{content:'+';font-size:20px;line-height:1}
.mobile-nav-drawer .nav-group[open]>summary::after{content:'−'}
.mobile-nav-drawer .nav-group.is-active>summary,.mobile-nav-drawer .site-main-nav__link:hover,.mobile-nav-drawer summary:hover{background:#ffffff0d}
html body .mobile-nav-drawer .nav-group__links{position:static!important;min-width:0!important;width:100%;box-sizing:border-box;margin:4px 0 12px;padding:0 0 0 8px;border:0;border-left:1px solid #ffffff20;border-radius:0;background:transparent;box-shadow:none}
html body .mobile-nav-drawer #topbar-actions{position:static!important;display:block!important;width:100%!important;min-width:0!important;margin:20px 0 0!important;padding:20px 0 0!important;border:0!important;border-top:1px solid #ffffff20!important;background:transparent!important;box-shadow:none!important}
html body .mobile-nav-drawer #customer-guest-actions{display:grid!important;gap:8px;grid-template-columns:1fr!important}
html body .mobile-nav-drawer #customer-auth-actions{display:flex!important;flex-wrap:wrap;gap:8px}
html body .mobile-nav-drawer #customer-guest-actions.hidden,html body .mobile-nav-drawer #customer-auth-actions.hidden{display:none!important}
.mobile-nav-drawer :is(a,button,summary):focus-visible{outline:3px solid #38bce0;outline-offset:2px}
body.is-mobile-menu-open{overflow:hidden!important}
html[data-theme=light] body .mobile-nav-drawer{background:#fff;color:#263247;border-color:#e3e7ed}
html[data-theme=light] .mobile-nav-drawer :is(.mobile-nav-drawer__header,.nav-group__links){border-color:#e3e7ed}
html[data-theme=light] body .mobile-nav-drawer #topbar-actions{border-color:#e3e7ed!important}
html[data-theme=light] .mobile-nav-drawer :is(summary:hover,.site-main-nav__link:hover,.mobile-nav-drawer__close:hover),html[data-theme=light] .mobile-nav-drawer .nav-group.is-active>summary{background:#f3f5f8}
@keyframes mobile-nav-enter{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@keyframes mobile-nav-dim{from{background:transparent}to{background:rgb(0 0 0 / .52)}}
@media(prefers-reduced-motion:reduce){.mobile-nav-drawer[open],.mobile-nav-drawer::backdrop{animation:none!important}}
