/* ZBIF tokens — logo palette: deep indigo + magenta accent (not navy/gold). */
@import url("https://api.fontshare.com/v2/css?f[]=clash-display@400,500,600,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap");

:root{
  --navy-950:#0B0926;--navy-900:#120F3B;--navy-800:#191552;--navy-700:#2A2568;--navy-600:#3D3780;--navy-100:#EFEDF8;--navy-50:#F7F6FC;
  --green-900:var(--navy-950);--green-800:var(--navy-900);--green-700:var(--navy-800);--green-600:var(--navy-700);--green-500:var(--navy-600);--green-100:var(--navy-100);--green-50:var(--navy-50);
  /* Accent = magenta from logo (aliases keep gold-* working) */
  --magenta:#C41E85;--magenta-600:#9E1569;--magenta-300:#F384CE;
  --gold-600:var(--magenta-600);--gold-500:var(--magenta);--gold-100:#F9E8F3;
  --color-primary:var(--navy-800);--color-primary-600:var(--navy-700);--color-primary-50:var(--navy-50);
  --color-accent:var(--magenta);--color-accent-hover:var(--magenta-600);
  --ink:#171235;--muted:#5B5872;--line:rgba(25,21,82,.12);
  --bg:#FFFFFF;--bg-alt:#F7F6FC;--bg-dark:var(--navy-950);
  --color-ink:var(--ink);--color-muted:var(--muted);--color-border:var(--line);
  --color-surface:var(--bg);--color-surface-alt:var(--bg-alt);--color-on-primary:#fff;
  --color-success:#1E7F51;--color-warning:#C9821F;--color-danger:#B23A3A;--color-info:#2A6F97;
  --font:"Space Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-display:"Clash Display","Space Grotesk",system-ui,-apple-system,sans-serif;
  --text-display:clamp(2.4rem,5vw,4.25rem);--text-h1:clamp(2rem,3.5vw,3rem);--text-h2:clamp(1.5rem,2.5vw,2.25rem);
  --text-h3:1.35rem;--text-h4:1.15rem;--text-lead:1.125rem;--text-body:1rem;--text-small:.875rem;--text-caption:.75rem;
  --measure:72ch;
  --s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-7:32px;--s-8:40px;--s-9:48px;--s-10:64px;--s-11:80px;--s-12:96px;--s-13:128px;
  --section-y:var(--s-12);--container:1160px;--gutter:24px;--reading:760px;
  --radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-xl:16px;--radius-pill:999px;--radius:var(--radius-lg);
  --shadow-sm:0 1px 2px rgba(11,9,38,.06);--shadow-md:0 8px 28px rgba(11,9,38,.08);--shadow-lg:0 20px 50px rgba(11,9,38,.12);
  --shadow:var(--shadow-md);
  --ease:cubic-bezier(.22,1,.36,1);--t-fast:150ms;--t-base:220ms;--t-slow:400ms;--transition:var(--t-base) var(--ease);
  --z-nav:50;--z-dropdown:60;--z-drawer:70;--z-modal:80;--z-toast:90;--z-chat:95;
  color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);font-size:var(--text-body);line-height:1.65;color:var(--ink);background:var(--bg);min-height:100vh}
img{max-width:100%;display:block;height:auto}
a{color:var(--navy-700);text-decoration:none;transition:color var(--t-fast) var(--ease)}
a:hover{color:var(--magenta)}
h1,h2,h3,h4{font-family:var(--font-display);line-height:1.12;letter-spacing:-.02em;margin:0 0 var(--s-4);color:var(--navy-900)}
h1{font-size:var(--text-h1);font-weight:600}
h2{font-size:var(--text-h2);font-weight:600}
h3{font-size:var(--text-h3);font-weight:600}
h4{font-size:var(--text-h4);font-weight:600}
p{margin:0 0 var(--s-4)}
.muted{color:var(--muted)}
.lead{font-size:var(--text-lead);color:var(--muted);max-width:52ch;line-height:1.55}
.eyebrow{display:inline-block;font-family:var(--font);font-size:var(--text-caption);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--magenta-600);margin-bottom:var(--s-3)}
.eyebrow.is-green,.eyebrow.is-navy{color:var(--navy-600)}
.container{width:min(100% - (var(--gutter) * 2),var(--container));margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:0;background:var(--navy-800);color:#fff;padding:.75rem 1rem;z-index:100}
.skip-link:focus{left:var(--gutter);top:var(--gutter)}
:focus-visible{outline:2px solid var(--magenta);outline-offset:3px}
