/* ============================================================
   HEROBOTS · Typography tokens
   SF Pro (system) → Inter (webfont fallback). Tight, neutral,
   confident. Display weights are Semibold/Bold; body is Regular.
   Casing: lowercase for editorial section labels, Sentence case
   for headings & body, UPPERCASE only for tiny technical labels.
   ============================================================ */
:root {
  /* Families */
  --font-sans: Inter, -apple-system, BlinkMacSystemFont, Helvetica Neue, Arial, sans-serif;
  --font-text: Inter, -apple-system, BlinkMacSystemFont, Helvetica Neue, Arial, sans-serif;

  /* Weights */
  --fw-regular: 400;  /* @kind font */
  --fw-medium:  500;  /* @kind font */
  --fw-semibold:600;  /* @kind font */
  --fw-bold:    700;  /* @kind font */

  /* Type scale (px) — derived from the portfolio: huge display
     numerals (120), section titles (36), data (20/25), body (16). */
  --fs-mega:    120px;  /* oversized section numerals "01." */
  --fs-display: 68px;   /* cover display */
  --fs-h1:      48px;
  --fs-h2:      36px;   /* section titles */
  --fs-h3:      25px;
  --fs-h4:      20px;
  --fs-body:    16px;   /* base body / labels */
  --fs-small:   13px;   /* fine print, technical labels */

  /* Line heights — display is set tight (1.0–1.05) */
  --lh-tight:   1.0;   /* @kind font */
  --lh-snug:    1.1;   /* @kind font */
  --lh-normal:  1.35;  /* @kind font */
  --lh-relaxed: 1.5;   /* @kind font */

  /* Letter-spacing — neutral; slight negative on big display */
  --ls-display: -0.02em;  /* @kind font */
  --ls-tight:   -0.01em;  /* @kind font */
  --ls-normal:  0;        /* @kind font */
  --ls-label:   0.08em;   /* @kind font */
}
