/* Top navigation: section links and the primary contact action have distinct hierarchy. */
.nav { gap:20px; padding-inline:12px; transition:background .2s ease, box-shadow .2s ease; }
.nav.is-scrolled { background:rgba(12,11,18,.98); box-shadow:0 10px 28px rgba(0,0,0,.24); }
.nav::after { display:none; }
.nav .navlinks { gap:12px; margin-left:auto; }
.nav-sections { display:flex; align-items:center; gap:2px; padding:4px; border:1px solid var(--line); border-radius:999px; background:var(--card); }
.nav-sections a { position:relative; justify-content:center; min-height:44px; padding:8px 12px; border:1px solid transparent; border-radius:999px; color:var(--muted); font-weight:600; white-space:nowrap; transition:background .18s ease, color .18s ease, border-color .18s ease; }
.navlinks a:not(.nav-cta)::after { content:none; }
.nav-sections a:hover, .nav-sections a:focus-visible { color:var(--ink); background:var(--card-strong); }
.nav-sections a[aria-current="location"] { color:var(--ink); background:var(--card-soft); border-color:var(--control-border); }
.nav-sections a[aria-current="location"]::before { content:""; position:absolute; bottom:4px; left:calc(50% - 7px); width:14px; height:2px; border-radius:2px; background:var(--yellow); }
.nav .navlinks .nav-cta { justify-content:center; min-height:44px; padding:8px 16px; border:1px solid var(--yellow); white-space:nowrap; font-weight:700; }
.nav .navlinks .nav-cta:hover, .nav .navlinks .nav-cta:focus-visible { color:var(--paper) !important; background:#c9e55b; border-color:#c9e55b; }
.nav .navlinks .nav-cta[aria-current="location"] { outline:1px solid var(--yellow); outline-offset:3px; }
.nav .navlinks .nav-cta:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.nav-actions { flex-shrink:0; }



@media(min-width:1051px) and (max-width:1200px) { .nav { gap:12px; } .nav-sections a { padding-inline:10px; font-size:12px; } .nav .navlinks { gap:10px; } }
@media(max-width:1050px) {
  :root { --header-height:70px; }
  .nav { gap:10px; padding-inline:0; }
  .nav .navlinks { display:none; position:absolute; left:0; right:0; flex-direction:column; align-items:stretch; top:calc(var(--header-height) + 8px); margin:0; padding:12px; gap:12px; border:1px solid var(--control-border); border-radius:20px; background:var(--card); max-height:calc(100vh - var(--header-height) - 40px); max-height:calc(100dvh - var(--header-height) - 40px); overflow-y:auto; overscroll-behavior:contain; box-shadow:0 20px 50px rgba(0,0,0,.4); }
  .nav .navlinks.open { display:flex; }
  
  
  
  .nav-sections { flex-direction:column; align-items:stretch; gap:4px; padding:0; border:0; border-radius:0; background:transparent; }
  .nav-sections a { justify-content:flex-start; min-height:48px; padding:12px 16px; border-radius:12px; }
  .nav-sections a[aria-current="location"] { padding-right:32px; }
  .nav-sections a[aria-current="location"]::before { left:auto; right:15px; bottom:calc(50% - 3px); width:6px; height:6px; border-radius:50%; }
  .nav .navlinks .nav-cta { margin-top:0; min-height:48px; border-radius:12px; }
  .nav .menu-toggle { display:inline-flex; order:2; align-items:center; justify-content:center; gap:7px; padding-inline:10px; }
  .menu-toggle::before { content:"☰"; display:inline-block; width:14px; font-size:16px; line-height:1; }
  .menu-toggle[aria-expanded="true"] { color:var(--ink); background:var(--card-soft); border-color:var(--yellow); }
  .menu-toggle[aria-expanded="true"]::before { content:"×"; font-size:22px; }
}
@media(prefers-reduced-motion:reduce) { .nav, .nav-sections a { transition:none; } }
@media(forced-colors:active) { .nav-sections a[aria-current="location"] { border-color:Highlight; } .nav-sections a[aria-current="location"]::before { background:Highlight; } .nav .navlinks .nav-cta[aria-current="location"] { outline-color:Highlight; } }
