/* OdinVanguard brand tokens (Brand Kit v1.0). Load with <link rel="stylesheet" href="/brand/brand.css">. */
@font-face { font-family: "Space Grotesk"; font-weight: 400; font-display: swap; src: url("/brand/fonts/SpaceGrotesk-400.woff2") format("woff2"); }
@font-face { font-family: "Space Grotesk"; font-weight: 500; font-display: swap; src: url("/brand/fonts/SpaceGrotesk-500.woff2") format("woff2"); }
@font-face { font-family: "Space Grotesk"; font-weight: 700; font-display: swap; src: url("/brand/fonts/SpaceGrotesk-700.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 400; font-display: swap; src: url("/brand/fonts/Inter-400.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 500; font-display: swap; src: url("/brand/fonts/Inter-500.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 600; font-display: swap; src: url("/brand/fonts/Inter-600.woff2") format("woff2"); }

:root {
  --ov-midnight: #0E1621;   /* primary: dark grounds, headings, body text */
  --ov-slate: #4A5868;      /* secondary text on light */
  --ov-steel: #9FB0C2;      /* secondary text on dark, dividers */
  --ov-frost: #E6ECF2;      /* raven and text on dark */
  --ov-parchment: #F5F2EC;  /* default light background */
  --ov-gold: #D4A24C;       /* accent: the eye, CTAs on dark. Never text on light (2.1:1) */
  --ov-gold-deep: #8A6420;  /* gold for links and text on light (4.8:1) */
  --ov-font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
  --ov-font-body: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --ov-radius-sm: 4px; --ov-radius: 8px; --ov-radius-lg: 16px;
}

.ov-base { background: var(--ov-parchment); color: var(--ov-midnight); font: 400 16px/1.6 var(--ov-font-body); }
.ov-base h1, .ov-base h2, .ov-base h3 { font-family: var(--ov-font-display); font-weight: 700; letter-spacing: -0.02em; line-height: 1.1; }
.ov-dark { background: var(--ov-midnight); color: var(--ov-frost); }
.ov-eyebrow { font: 500 13px/1 var(--ov-font-display); letter-spacing: .14em; text-transform: uppercase; color: var(--ov-gold-deep); }
.ov-dark .ov-eyebrow { color: var(--ov-gold); }
.ov-btn { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 18px; border-radius: var(--ov-radius); font: 600 15px var(--ov-font-body); border: 1px solid transparent; cursor: pointer; }
.ov-btn--primary { background: var(--ov-midnight); color: var(--ov-frost); }
.ov-dark .ov-btn--primary { background: var(--ov-gold); color: var(--ov-midnight); }
.ov-btn--ghost { background: transparent; color: inherit; border-color: currentColor; }
