

@font-face{font-family:Inter;src:url(../fonts/inter-400.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url(../fonts/inter-500.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url(../fonts/inter-600.woff2) format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url(../fonts/inter-700.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}

:root{
  --bg:#0B1620; --surface:#102536; --surface-2:#15314A; --surface-3:#1B3D5C;
  
  --text:#F5F8FA; --text-strong:#fff; --text-muted:#8EA1B2; --text-dim:#768EA2;
  --brand:#FFC800;
  --blue:#1D73D5; --blue-hover:#1665BC; --accent:#35A7FF;
  --border:#4E749E; --border-soft:#1C3247;
  --success:#34D399; --warning:#FBBF24; --danger:#F87171;
  --focus:#35A7FF;

  --font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  
  --fs-hero:clamp(2rem,1.45rem + 2.3vw,3.25rem);
  --fs-h2:clamp(1.5rem,1.25rem + 1.05vw,2.125rem);
  --fs-h3:clamp(1.0625rem,1rem + .22vw,1.25rem);
  --fs-body:clamp(1rem,.97rem + .12vw,1.0625rem);
  --fs-small:.875rem; --fs-eyebrow:.6875rem;

  --container:1200px;
  --gutter:16px;
  --section-y:clamp(48px,8vw,112px);
  --radius:12px; --radius-sm:10px;
  --ring:0 0 0 1px var(--border-soft);
  --shadow:0 18px 48px -24px rgba(0,0,0,.85);
  --t:180ms cubic-bezier(.4,0,.2,1);
}
@media (min-width:768px){:root{--gutter:24px}}
@media (min-width:1024px){:root{--gutter:32px}}

*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important;scroll-behavior:auto!important}
}
body{
  font-family:var(--font);font-size:var(--fs-body);line-height:1.65;
  color:var(--text);background:var(--bg);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img,svg,video{display:block;max-width:100%;height:auto}
input,button,textarea,select{font:inherit;color:inherit}
button{background:none;border:0;cursor:pointer}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--text-strong)}
ul,ol{padding:0;list-style:none}

h1,h2,h3,h4{line-height:1.2;font-weight:600;color:var(--text);
  letter-spacing:-.015em;text-wrap:balance}
h1{line-height:1.12;letter-spacing:-.025em}
p{text-wrap:pretty}

:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}
:focus:not(:focus-visible){outline:none}

.skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--blue);color:#fff;
  padding:12px 20px;font-weight:600;border-radius:0 0 var(--radius-sm) 0}
.skip:focus{left:0}

.eyebrow{font-size:var(--fs-eyebrow);letter-spacing:.14em;text-transform:uppercase;
  font-weight:600;color:var(--accent);margin-bottom:12px}
.h2{font-size:var(--fs-h2)}
.h3{font-size:var(--fs-h3)}
.lead{font-size:clamp(.9375rem,.92rem + .16vw,1.0625rem);color:var(--text-muted);
  max-width:62ch;line-height:1.7}
.muted{color:var(--text-muted)}
.prose{max-width:68ch}
.prose p+p{margin-top:1em}
.accent{color:var(--accent)}
.tnum{font-variant-numeric:tabular-nums}
