/* Luwte — Typography tokens
 * Display & wordmark: Gelasio (Georgia) Bold, ink.
 * Body & taglines: Carlito (Calibri), blue. Generous line-height; calm, unhurried.
 */
:root {
  /* ---- Families ---- */
  --font-display: "Gelasio", "Georgia", "Times New Roman", serif;
  --font-body:    "Carlito", "Calibri", "Segoe UI", system-ui, sans-serif;
  --font-mono:    "SFMono-Regular", "Menlo", "Consolas", monospace;

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

  /* ---- Type scale (rem, 16px base) — calm, restrained steps ---- */
  --text-xs:   0.75rem;   /* 12px — fine print */
  --text-sm:   0.875rem;  /* 14px — captions, labels */
  --text-base: 1rem;      /* 16px — body */
  --text-md:   1.125rem;  /* 18px — lead body */
  --text-lg:   1.375rem;  /* 22px — sub-heading */
  --text-xl:   1.75rem;   /* 28px — H3 */
  --text-2xl:  2.25rem;   /* 36px — H2 */
  --text-3xl:  3rem;      /* 48px — H1 */
  --text-4xl:  4rem;      /* 64px — display */
  --text-5xl:  5.25rem;   /* 84px — hero display */

  /* ---- Line heights ---- */
  --leading-tight:   1.1;
  --leading-snug:    1.25;
  --leading-normal:  1.55;
  --leading-relaxed: 1.7;

  /* ---- Letter spacing ---- */
  --tracking-tight:  -0.01em;
  --tracking-normal: 0;
  --tracking-wide:   0.04em;
  --tracking-caps:   0.16em;  /* taglines, eyebrows set in caps */

  /* ---- Semantic roles ---- */
  --type-display-family: var(--font-display);
  --type-display-weight: var(--weight-bold);
  --type-heading-family: var(--font-display);
  --type-heading-weight: var(--weight-bold);
  --type-body-family:    var(--font-body);
  --type-body-weight:    var(--weight-regular);
  --type-eyebrow-family: var(--font-body);
}
