:root{
  --bg: #0b1220;
  --bg-2: #111827;
  --text: #e5e7eb;
  --muted: #9ca3af;
  --brand: #3b82f6;
  --border: rgba(255,255,255,0.12);
}

#site-nav{all:unset;display:block;}
.site-header{background:var(--bg);color:var(--text);position:sticky;top:0;z-index:50;border-bottom:1px solid var(--border);box-shadow:0 1px 0 rgba(15,23,42,0.35);}
.site-header .inner{max-width:1100px;margin:0 auto;padding:0.75rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.brand{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--text);font-weight:600;letter-spacing:.2px;font-size:1.05rem;}
.brand:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:.5rem;}
.brand svg{flex:0 0 auto;}

.menu-toggle{appearance:none;border:1px solid var(--border);background:transparent;color:var(--text);border-radius:.5rem;padding:.5rem .65rem;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:0.95rem;transition:background .2s ease,border-color .2s ease;}
.menu-toggle:hover{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.18);}
.menu-toggle .bars{width:22px;height:14px;position:relative;display:inline-block;}
.menu-toggle .bars::before,.menu-toggle .bars::after,.menu-toggle .bar{content:"";position:absolute;left:0;right:0;height:2px;background:var(--text);border-radius:1px;transition:transform .2s ease,opacity .2s ease;}
.menu-toggle .bar{top:6px;}
.menu-toggle .bars::before{top:0;}
.menu-toggle .bars::after{bottom:0;}
.menu-toggle[aria-expanded="true"] .bars::before{transform:translateY(6px) rotate(45deg);}
.menu-toggle[aria-expanded="true"] .bars::after{transform:translateY(-6px) rotate(-45deg);}
.menu-toggle[aria-expanded="true"] .bar{opacity:0;}
.menu-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:.5rem;}

.primary{list-style:none;margin:0;padding:0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.25rem;background:var(--bg);}
.primary > li{position:relative;}
.primary a,.primary button.dropdown-toggle{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;color:var(--text);text-decoration:none;border-radius:.6rem;font-size:1rem;font-weight:500;background:transparent;border:0;cursor:pointer;transition:background .2s ease,color .2s ease;}
.primary a:hover,.primary button.dropdown-toggle:hover{background:var(--bg-2);}
.primary a:focus-visible,.primary button.dropdown-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:2px;}
.primary a.active,.primary button.dropdown-toggle.active{color:#fff;background:rgba(59,130,246,0.18);}

.dropdown{position:relative;}
.dropdown .chev{transition:transform .2s ease;flex:0 0 auto;}
.dropdown[aria-expanded="true"] .chev{transform:rotate(180deg);}

.dropdown-menu{list-style:none;margin:0;padding:.35rem;border:1px solid var(--border);border-radius:.75rem;background:var(--bg-2);display:none;gap:.15rem;box-shadow:0 16px 32px rgba(8,15,35,0.45);}
.dropdown-menu a{display:block;padding:.6rem .75rem;border-radius:.5rem;}
.dropdown[aria-expanded="true"] .dropdown-menu{display:block;}

.overlay{position:fixed;inset:0;background:rgba(8,15,35,0.4);display:none;}
.overlay.show{display:block;backdrop-filter:blur(1px);}

.no-scroll{overflow:hidden;}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}
}

@media (min-width:768px){
  .menu-toggle{display:none;}
  .site-header nav{max-width:1100px;margin:0 auto;padding:0 1rem 0.75rem;}
  .primary{border-top:0;flex-direction:row;align-items:center;gap:.35rem;background:transparent;}
  .primary > li{display:flex;}
  .primary > li > a,.primary > li > button{padding:.55rem .85rem;font-size:.98rem;}
  .dropdown-menu{position:absolute;top:calc(100% + 0.45rem);left:0;min-width:260px;padding:.45rem;display:none;}
  .dropdown:hover .dropdown-menu,.dropdown:focus-within .dropdown-menu{display:block;}
  .overlay{display:none !important;}
}
