/* ============================================================
   NVG Pages — header & footer (scoped, safe on any theme)
   Gunmetal tactical chrome · phosphor-green night-vision accent ·
   thermal-amber secondary. HUD detailing throughout.
============================================================ */
.nvg-header,.nvg-footer{
  --void:#070b09; --carbon:#0b1310; --panel:#101a15; --panel2:#16241d;
  --steel:#1e3127; --line:rgba(120,210,160,.12);
  --phos:#37f08c; --phos-dim:rgba(55,240,140,.14);
  --therm:#ff8a2b; --therm-hot:#ffc24b;
  --snow:#e9f2ec; --haze:#9db3a6; --ash:#6c8076;
  --ui:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --display:"Chakra Petch",sans-serif;
  --mono:"Spline Sans Mono",ui-monospace,monospace;
}

/* ---------- HEADER ---------- */
.nvg-header{position:sticky;top:0;z-index:999;font-family:var(--ui);background:var(--carbon);border-bottom:1px solid var(--line);
  background-image:linear-gradient(180deg,rgba(55,240,140,.04),transparent 60%)}
:where(.nvg-header *){margin:0;padding:0;box-sizing:border-box}
.nvg-header a{text-decoration:none;color:inherit}
.nvg-topbar{background:var(--void);color:var(--haze);font-family:var(--mono);font-size:.7rem;letter-spacing:.02em}
.nvg-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;max-width:1240px;margin:0 auto;padding:7px 24px}
.nvg-topbar-l{display:inline-flex;align-items:center;gap:9px}
.nvg-blip{width:7px;height:7px;border-radius:50%;background:var(--phos);box-shadow:0 0 8px var(--phos);animation:nvgBlip 2.4s ease-in-out infinite;flex:none}
@keyframes nvgBlip{0%,100%{opacity:.4}50%{opacity:1}}
.nvg-topbar-tag{color:var(--therm-hot);text-align:right}
@media(max-width:760px){.nvg-topbar-tag{display:none}}
.nvg-nav{max-width:1240px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:22px;height:70px}
.nvg-logo,.nvg-foot-logo{display:inline-flex;align-items:center;gap:9px;color:var(--snow)}
.nvg-mark{color:var(--phos);flex:none;filter:drop-shadow(0 0 5px rgba(55,240,140,.55))}
.nvg-word{font-family:var(--display);font-weight:700;font-size:1.18rem;letter-spacing:.04em;color:var(--snow)}
.nvg-word b{color:var(--phos);font-weight:700}
.nvg-logo img,.nvg-foot-logo img{height:34px!important;width:auto!important;max-width:none;display:block}
.nvg-links{display:flex;gap:1.5rem;margin-left:auto;list-style:none;font-family:var(--display);font-size:.84rem;font-weight:500;color:var(--haze);text-transform:uppercase;letter-spacing:.04em}
.nvg-links a{position:relative;padding:4px 0;transition:color .15s}
.nvg-links a:hover{color:var(--snow)}
.nvg-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--phos);box-shadow:0 0 6px var(--phos);transition:right .2s ease}
.nvg-links a:hover::after{right:0}
.nvg-cta{display:inline-flex;align-items:center;font-family:var(--display);font-weight:600;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;padding:.6rem 1.1rem;border-radius:6px;background:var(--phos);color:#04130b;transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;box-shadow:0 0 0 rgba(55,240,140,0)}
.nvg-cta:hover{transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 6px 22px rgba(55,240,140,.28)}
.nvg-header :focus-visible,.nvg-footer :focus-visible{outline:2px solid var(--phos);outline-offset:3px;border-radius:4px}
.nvg-burger{display:none;background:none;border:1px solid var(--line);border-radius:7px;color:var(--snow);font-size:1.2rem;line-height:1;padding:.4rem .58rem;cursor:pointer}
@media(max-width:980px){
  .nvg-links{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--panel);border-bottom:1px solid var(--line);padding:6px 0;z-index:50}
  .nvg-links li a{display:block;padding:14px 24px;font-size:.95rem}
  .nvg-links.open{display:flex}
  .nvg-nav{position:relative;gap:14px}
  .nvg-burger{display:block;margin-left:auto;order:3}
  .nvg-cta{display:none}
}
@media(prefers-reduced-motion:reduce){.nvg-cta:hover{transform:none}.nvg-blip{animation:none}}

/* ---------- FOOTER ---------- */
.nvg-footer{position:relative;overflow:hidden;background:var(--void);color:var(--haze);font-family:var(--ui);font-size:.88rem;line-height:1.65;padding:56px 0 34px;border-top:1px solid var(--line)}
.nvg-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--phos),var(--therm));opacity:.85}
:where(.nvg-footer *){margin:0;padding:0;box-sizing:border-box}
.nvg-footer a{text-decoration:none;color:inherit;transition:color .15s}
.nvg-footer a:hover{color:var(--phos)}
.nvg-foot-scan{position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:repeating-linear-gradient(0deg,rgba(55,240,140,.03) 0 1px,transparent 1px 3px)}
.nvg-foot-wrap{position:relative;max-width:1240px;margin:0 auto;padding:0 24px}
.nvg-foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}
@media(max-width:860px){.nvg-foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.nvg-foot-grid{grid-template-columns:1fr}}
.nvg-foot-about{margin-top:14px;max-width:30rem;color:var(--ash)}
.nvg-foot-ad{margin-top:12px;font-family:var(--mono);font-size:.72rem;color:var(--therm)}
.nvg-footer h4{font-family:var(--display);color:var(--snow);font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px}
.nvg-footer ul{list-style:none}
.nvg-footer li{margin-bottom:9px}
.nvg-foot-bottom{margin-top:42px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-family:var(--mono);font-size:.72rem;color:var(--ash)}

/* When chrome is injected on blank themes, hide the theme's own bars. */
body.nvg-has-chrome .site-header,
body.nvg-has-chrome .site-footer,
body.nvg-has-chrome header.dynamic-header,
body.nvg-has-chrome footer.dynamic-footer{display:none!important}
