/* Site header (topbar + header + mobile sheet) for standalone pages that do not load styles.css. Mirrors styles.css. */
.topbar,.header,.mnav{--navy-950:#050b1a;--navy-800:#0f1e3d;--navy-700:#152a54;--gold:#f5b940;--red:#e5384a;--line-dark:rgba(10,20,40,.08);--shadow-card:0 10px 30px -12px rgba(10,20,40,.2)}
.topbar,.header,.mnav{font-family:"Inter",system-ui,sans-serif;line-height:1.5}
.topbar a,.header a,.mnav a{text-decoration:none}
.topbar{background:var(--navy-950);color:#cfd7e6;font-size:.82rem}
.topbar .wrap,.header .wrap{max-width:1240px;margin:0 auto;width:auto}
.topbar .wrap{display:flex;justify-content:space-between;gap:16px;padding:10px 24px;flex-wrap:wrap}
.topbar a{color:#cfd7e6;margin-right:14px}
.topbar a:hover{color:var(--gold)}
.header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-dark)}
.header .wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;gap:24px}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-name{font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;color:var(--gold);font-size:1.05rem;line-height:1}
.brand-sub{font-size:.68rem;letter-spacing:.18em;color:var(--navy-700);text-transform:uppercase;font-weight:700}
.nav{display:flex;align-items:center}
.header .btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;min-height:0;border-radius:12px;font-weight:700;font-size:.92rem;transition:transform .2s;border:0}
.header .btn-primary{background:var(--red);color:#fff;box-shadow:0 10px 24px -10px rgba(229,56,74,.7)}
.header .btn-primary:hover{transform:translateY(-2px)}
.hamburger{display:none;width:44px;height:44px;border-radius:10px;background:var(--navy-800);color:#fff;font-size:1.4rem;align-items:center;justify-content:center;border:0;cursor:pointer}
.mnav{display:none;position:fixed;inset:0;background:rgba(5,11,26,.96);z-index:80;padding:80px 32px}
.mnav.open{display:block}
.mnav a{display:block;color:#fff;font-size:1.4rem;font-weight:700;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.mnav .close{position:absolute;top:24px;right:24px;color:#fff;font-size:2rem;background:none;border:0;cursor:pointer}
@media (max-width:768px){
  .nav{display:none}
  .hamburger{display:flex}
  .header .btn-primary{display:none}
  .header .wrap{padding:10px 16px;gap:12px}
  .topbar .wrap{flex-direction:column;gap:10px;padding:8px 16px}
  .mnav{padding:70px 20px}
}
