/* L Studio — Typography tokens
   Sora: geometric display & headings (echoes the wordmark).
   Hanken Grotesk: warm, readable body & interface text.
   Newsreader italic: editorial voice for quotes & asides. */
:root {
  --font-display: 'Sora', system-ui, sans-serif;   /* headings, eyebrows, numerals */
  --font-body: 'Hanken Grotesk', system-ui, sans-serif; /* paragraphs, UI, inputs */
  --font-editorial: 'Newsreader', Georgia, serif;  /* italic quotes only */

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

  /* Type scale (px) — from the brand guide specimen */
  --fs-display: 88px;   /* Sora 800 · 0.9 lh · -0.035em */
  --fs-h1: 52px;        /* Sora 700 · 1.05 lh · -0.025em */
  --fs-h2: 36px;        /* Sora 700 · 1.15 lh · -0.02em */
  --fs-h3: 24px;        /* Sora 600 · 1.3 lh */
  --fs-lead: 20px;      /* Hanken 400 · 1.6 lh */
  --fs-body: 17px;      /* Hanken 400 · 1.65 lh */
  --fs-small: 15px;     /* Hanken / Sora · UI default */
  --fs-caption: 12px;   /* Sora 600 · 0.16em · uppercase */

  /* Line heights */
  --lh-display: 0.9;   /* @kind other */
  --lh-tight: 1.05;    /* @kind other */
  --lh-snug: 1.3;      /* @kind other */
  --lh-body: 1.65;     /* @kind other */

  /* Letter spacing */
  --ls-display: -0.035em;  /* @kind other */
  --ls-heading: -0.025em;  /* @kind other */
  --ls-eyebrow: 0.16em;    /* uppercase labels @kind other */
  --ls-wordmark: 0.06em;   /* L STUDIO lockup @kind other */
}
