/* Shared public navigation. Also embedded by sync-nav.py in standalone pages. */
header.site { --nav-text:#f1f2f0; --nav-muted:#b9c0b9; --nav-hover:#1b1f1b; --nav-accent:#76b900; display:flex; align-items:center; gap:36px; position:sticky; top:0; z-index:100; width:100%; min-height:73px; margin:0; padding:14px max(24px,calc((100vw - 1240px)/2)); background:#0a0b0a; border:0; border-bottom:1px solid #262b26; font-family:Inter,"Segoe UI",system-ui,sans-serif; box-sizing:border-box; }
header.site * { box-sizing:border-box; }
header.site .logo { display:flex; align-items:center; flex-shrink:0; gap:9px; white-space:nowrap; font-size:17px; font-weight:750; letter-spacing:-.015em; color:var(--nav-text); text-decoration:none; }
header.site .logo .dim { color:#99a099; font-weight:450; margin-left:2px; }
header.site .spark-mark { fill:var(--nav-accent); }
header.site .land-nav { display:flex; align-items:center; flex:1; flex-wrap:nowrap; gap:6px; width:auto; }
header.site .land-nav > a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 12px; border:0; border-radius:7px; color:var(--nav-muted); text-decoration:none; font-size:14px; font-weight:600; line-height:20px; white-space:nowrap; }
header.site .land-nav > a:hover, header.site .land-nav > a.nav-current { color:var(--nav-text); background:var(--nav-hover); box-shadow:none; }
header.site .land-nav > .btn-ghost { margin-left:auto; color:var(--nav-text); }
header.site .land-nav > .btn-primary { margin-left:8px; padding:10px 18px; background:var(--nav-accent); color:#0a0b0a; }
header.site .land-nav > .btn-primary:hover { background:#8ed600; }
header.site :focus-visible { outline:2px solid var(--nav-accent); outline-offset:3px; }
header.site .nav-menu-toggle { display:none; align-items:center; gap:10px; min-height:44px; padding:9px 14px; border:1px solid #3a423a; border-radius:6px; color:var(--nav-text); background:transparent; font:600 14px Inter,"Segoe UI",system-ui,sans-serif; cursor:pointer; }
header.site .nav-menu-toggle::before { content:""; width:16px; height:12px; background:linear-gradient(currentColor,currentColor) top/100% 2px,linear-gradient(currentColor,currentColor) center/100% 2px,linear-gradient(currentColor,currentColor) bottom/100% 2px; background-repeat:no-repeat; }
header.site .nav-menu-toggle[aria-expanded="true"]::before { height:16px; background:linear-gradient(45deg,transparent 44%,currentColor 45%,currentColor 55%,transparent 56%),linear-gradient(-45deg,transparent 44%,currentColor 45%,currentColor 55%,transparent 56%); }
@media(max-width:1100px) {
 header.site { padding:12px 20px; gap:12px; min-height:69px; flex-wrap:wrap; }
 header.site .land-nav { width:100%; flex:0 0 100%; flex-wrap:wrap; }
 header.site.nav-enhanced .nav-menu-toggle { display:inline-flex; margin-left:auto; }
 header.site.nav-enhanced .land-nav { display:none; }
 header.site.nav-enhanced.nav-mobile-open .land-nav { display:flex; flex-direction:column; align-items:stretch; gap:4px; max-height:calc(100dvh - 100px); overflow-y:auto; padding:8px 0 16px; }
 header.site .land-nav > a { justify-content:flex-start; }
 header.site .land-nav > .btn-ghost { margin:12px 0 0; border:1px solid #3a423a; }
 header.site .land-nav > .btn-primary { margin:4px 0 0; justify-content:center; }
}
