/* Mobile navigation checkpoint approved 2026-09-30; Home mobile only. */
.mobile-drawer-toggle,.mobile-drawer-backdrop,.mobile-drawer{display:none}
@media (max-width:48rem){
  .page-section:not(.is-active){display:none!important}
  .page-section.is-active{display:block!important}
  .home-section-nav{display:none!important}
  html,body{scroll-behavior:auto}
  body.mobile-drawer-open{overflow:hidden!important}
  .mobile-drawer-toggle{display:grid;place-items:center;position:fixed;
    top:max(.72rem,env(safe-area-inset-top));left:max(.72rem,env(safe-area-inset-left));
    z-index:120;width:2.7rem;height:2.3rem; padding:.51rem .57rem;
    border:1px solid rgb(197 239 250 / 29%); border-radius:.6rem;
    background:rgb(5 14 23 / 84%);color:#eafbff;
    box-shadow:0 .45rem 1.1rem rgb(0 0 0 / 22%),inset 0 1px 0 rgb(255 255 255 / 8%);
    backdrop-filter:blur(14px) saturate(118%); -webkit-backdrop-filter:blur(14px) saturate(118%);
    cursor:pointer;
  }
  .mobile-drawer-toggle .mobile-drawer-icon{display:flex;flex-direction:column;gap:4px;width:20px}
  .mobile-drawer-toggle .mobile-drawer-icon span{height:2px;width:20px;background:currentColor;border-radius:4px;transition:transform .23s,opacity .23s}
  .mobile-drawer-toggle[aria-expanded="true"] .mobile-drawer-icon span:first-child{transform:translateY(6px) rotate(45deg)}
  .mobile-drawer-toggle[aria-expanded="true"] .mobile-drawer-icon span:nth-child(2){opacity:0}
  .mobile-drawer-toggle[aria-expanded="true"] .mobile-drawer-icon span:last-child{transform:translateY(-6px) rotate(-45deg)}
  .mobile-drawer-toggle:focus-visible,.mobile-drawer button:focus-visible{outline:2px solid #8eeafb;outline-offset:3px}
  .mobile-drawer-backdrop{display:block;position:fixed;inset:0;z-index:110;
    background:rgb(2 9 16 / 67%);opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .25s,visibility .25s}
  .mobile-drawer-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}
  .mobile-drawer{display:block;position:fixed;inset:0 auto 0 0;z-index:115;
    width:min(18.6rem,82vw);height:100vh;height:100dvh;max-height:100dvh;
    padding:max(4.6rem,calc(env(safe-area-inset-top) + 4.2rem)) 1rem max(1rem,env(safe-area-inset-bottom));
    border-right:1px solid rgb(179 227 244 / 20%);
    background:linear-gradient(150deg,rgb(9 23 36 / 97%) 0%,rgb(14 17 32 / 98%) 69%,rgb(33 19 49 / 96%) 100%);
    box-shadow:1.1rem 0 3rem rgb(0 0 0 / 29%);
    backdrop-filter:blur(21px) saturate(118%);-webkit-backdrop-filter:blur(21px) saturate(118%);
    overflow-y:auto;transform:translateX(-104%);visibility:hidden;
    transition:transform .29s cubic-bezier(.2,.7,.2,1),visibility .29s;
  }
  .mobile-drawer.is-open{transform:translateX(0);visibility:visible}
  .mobile-drawer-heading{margin:0 .8rem 1.1rem;color:rgb(199 234 247 / 62%);font-size:.68rem;
    font-weight:700;letter-spacing:.17em;text-transform:uppercase}
  .mobile-drawer-nav{display:flex;flex-direction:column;gap:.45rem}
  .mobile-drawer-link{width:100%;display:flex;align-items:center;justify-content:space-between;
    padding:.92rem 1rem;border:1px solid transparent;border-radius:.8rem;
    background:transparent;color:#e9faff;font-size:1.08rem;text-align:left;cursor:pointer}
  .mobile-drawer-link::after{content:'›';font-size:1.36rem;font-weight:300;color:rgb(185 236 248 / 50%)}
  .mobile-drawer-link[aria-current="page"]{border-color:rgb(185 233 246 / 24%);
    background:linear-gradient(105deg,rgb(112 86 174 / 21%),rgb(53 117 137 / 11%));
    box-shadow:inset 3px 0 0 rgb(185 155 254 / 70%)}
  .mobile-drawer-link[aria-current="page"]::after{color:#e4d8ff}
}
@media (prefers-reduced-motion:reduce){
  .mobile-drawer,.mobile-drawer-backdrop,.mobile-drawer-toggle .mobile-drawer-icon span{transition:none!important}
}
