/* One full-bleed sheet, four masked words and a small brand signature. The
   controller owns the finite timeline, so open and close can reverse cleanly. */
@media (max-width:760px) {
  .mobile-nav:not([hidden]) {
    inset:0;
    height:100dvh;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    padding:var(--mobile-header-height,86px) var(--gutter) max(24px,env(safe-area-inset-bottom));
    background:var(--blue);
    color:#fff;
    overflow-y:auto;
    overscroll-behavior:contain;
    clip-path:none;
    opacity:1;
    transform:none;
    filter:none;
  }
  .js-motion .mobile-nav:not([hidden]),
  .js-motion .mobile-nav:not([hidden]) .menu-links a,
  .js-motion .mobile-nav:not([hidden]) .menu-signature { animation:none!important; }
  .mobile-nav .menu-content { display:flex; flex:1 0 auto; align-items:center; justify-content:center; width:100%; max-width:480px; margin:0 auto; padding:28px 0; }
  .mobile-nav .menu-links { display:flex; flex-direction:column; gap:clamp(4px,1.7svh,14px); width:100%; border:0; text-align:center; }
  .mobile-nav .menu-links a { display:block; overflow:hidden; width:100%; padding:7px 8px; border:0; font-family:var(--brand-sans); font-size:clamp(43px,12.8vw,66px); font-weight:450; line-height:1.12; letter-spacing:-.05em; color:#fff; text-align:center; transition:color .24s ease; transform:none; filter:none; }
  .mobile-nav .menu-links a:hover { padding-left:8px; color:#dce3ff; }
  .mobile-nav .menu-link-label { display:block; transform:none; }
  .mobile-nav .menu-links a[aria-current="location"] { color:#bfcaff; }
  .mobile-nav .menu-links a:focus-visible { outline:2px solid #dce3ff; outline-offset:3px; border-radius:5px; }
  .mobile-nav .menu-signature { flex:none; align-self:center; width:auto; margin:0; padding:10px 0 0; gap:0; }
  .mobile-nav .menu-helper { display:block; width:74px; height:74px; filter:drop-shadow(0 5px 12px #111e8f35); transform:rotate(-8deg); }
  .mobile-nav[data-menu-phase="opening"],.mobile-nav[data-menu-phase="closing"] { will-change:clip-path; }
  .mobile-nav[data-menu-phase="closing"] { pointer-events:none; }
  .menu-glyph i { transition:transform .46s cubic-bezier(.22,1,.36,1); }
  body.menu-open .site-header,body.menu-open .site-header::before { background:var(--blue); }
}
@media (max-width:760px) and (max-height:650px) {
  .mobile-nav:not([hidden]) { padding-bottom:max(16px,env(safe-area-inset-bottom)); }
  .mobile-nav .menu-content { padding:16px 0; }
  .mobile-nav .menu-links { gap:4px; }
  .mobile-nav .menu-links a { font-size:clamp(35px,10.8vw,52px); padding-block:5px; }
  .mobile-nav .menu-signature { padding-top:4px; }
  .mobile-nav .menu-helper { width:56px; height:56px; }
}
@media (prefers-reduced-motion:reduce) {
  .mobile-nav,.mobile-nav .menu-link-label,.mobile-nav .menu-signature { animation:none!important; transform:none!important; clip-path:none!important; }
  .menu-glyph i { transition:none; }
}
