/* ============================================================
   Typography — editorial serif display + humanist sans body
   ============================================================ */

:root {
  /* ---- Font families ---- */
  --font-display: 'Newsreader', 'Tiempos Headline', Georgia, 'Times New Roman', serif;
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

  /* ---- Weights ---- */
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;

  /* ---- Display scale (Newsreader / serif, weight 400) ---- */
  --type-display-xl: 400 64px/1.05 var(--font-display);
  --type-display-lg: 400 48px/1.1 var(--font-display);
  --type-display-md: 400 36px/1.15 var(--font-display);
  --type-display-sm: 400 28px/1.2 var(--font-display);

  --tracking-display-xl: -1.5px;
  --tracking-display-lg: -1px;
  --tracking-display-md: -0.5px;
  --tracking-display-sm: -0.3px;

  /* ---- Title scale (Inter / sans, weight 500) ---- */
  --type-title-lg: 500 22px/1.3 var(--font-sans);
  --type-title-md: 500 18px/1.4 var(--font-sans);
  --type-title-sm: 500 16px/1.4 var(--font-sans);

  /* ---- Body scale (Inter / sans) ---- */
  --type-body-md: 400 16px/1.55 var(--font-sans);
  --type-body-sm: 400 14px/1.55 var(--font-sans);

  /* ---- Utility ---- */
  --type-caption: 500 13px/1.4 var(--font-sans);
  --type-caption-uppercase: 500 12px/1.4 var(--font-sans);
  --tracking-caption-uppercase: 1.5px;

  --type-code: 400 14px/1.6 var(--font-mono);
  --type-button: 500 14px/1 var(--font-sans);
  --type-nav-link: 500 14px/1.4 var(--font-sans);
}
