/* ──────────────────────────────────────────────────────────────
   OZYN.AI — Typography tokens
   Three families with sharply separated jobs:
   - sans (Space Grotesk) : UI, body, and tight-tracked headlines
   - display (Instrument Serif) : editorial titles, numerals, glyphs
   - mono (JetBrains Mono) : eyebrows, labels, metadata, code
   Headlines run tight (negative tracking); mono labels run wide
   (uppercase, +letter-spacing). Body sits at 1.0rem / 1.6 line.
   ────────────────────────────────────────────────────────────── */
:root {
  /* ── Families ── */
  --font-sans: 'Space Grotesk', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-display: 'Instrument Serif', Georgia, 'Times New Roman', serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

  /* ── Weights (Space Grotesk) ── */
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-heavy: 800;

  /* ── Type scale ── */
  --text-display: clamp(3.25rem, 6.8vw, 5.6rem); /* hero — sans, 700, -0.045em */
  --text-h1: clamp(2rem, 4.5vw, 3.4rem);         /* section — display serif */
  --text-h2: 1.75rem;
  --text-h3: 1.15rem;
  --text-lede: clamp(1rem, 1.6vw, 1.16rem);      /* sub-hero paragraph */
  --text-body: 1rem;
  --text-sm: 0.875rem;
  --text-xs: 0.8125rem;
  --text-label: 0.72rem;     /* mono eyebrow / metadata */
  --text-micro: 0.625rem;

  /* ── Line heights ── */
  --leading-tight: 0.95;     /* display headlines */
  --leading-snug: 1.1;       /* section titles */
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;   /* body / lede */

  /* ── Tracking ── */
  --tracking-display: -0.045em; /* big sans headlines */
  --tracking-tight: -0.025em;   /* serif titles */
  --tracking-snug: -0.01em;
  --tracking-base: -0.005em;    /* body default */
  --tracking-label: 0.09em;     /* mono uppercase labels */
  --tracking-wide: 0.12em;      /* widest mono eyebrow */
}
