/* Mobile menu, shared by every page. Loaded after each page's own styles. Desktop is unchanged. */
.nav-btn{display:none}
@media(max-width:900px){
  body .nav{flex-wrap:wrap}
  /* Without JS: links wrap onto a second row so nothing is ever hidden */
  body .nav ul{display:flex;flex-wrap:wrap;gap:8px 18px;width:100%;padding:12px 0 2px}
  /* With JS: collapsed behind a Menu button */
  html.nav-js body .nav ul{display:none;width:auto;padding:0}
  html.nav-js body .nav .nav-btn{display:inline-block}
  html.nav-js body .nav.open ul{display:flex;flex-direction:column;flex-wrap:nowrap;gap:0;position:absolute;top:100%;left:0;right:0;padding:6px 24px 14px;background:rgba(4,8,17,.98);border-bottom:1px solid var(--ln)}
  html.nav-js body .nav.open ul li{border-top:1px solid var(--ln)}
  html.nav-js body .nav.open ul li:first-child{border-top:0}
  html.nav-js body .nav.open ul a{display:block;padding:15px 0;font-size:12px;letter-spacing:.14em;color:#A8B0BE}
  html.nav-js body .nav.open ul a:hover,html.nav-js body .nav.open ul a:focus-visible{color:var(--steel)}
  .nav-btn{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--brt);background:transparent;border:1px solid rgba(127,168,217,.5);border-radius:2px;padding:10px 14px;min-height:44px;cursor:pointer}
  .nav-btn:focus-visible{outline:2px solid var(--steel);outline-offset:2px}
}

.nav ul a[aria-current=page]{color:var(--brt)}
@media(min-width:901px) and (max-width:1180px){.nav{padding-left:28px;padding-right:28px}.nav ul{gap:14px}}
