/* Hugelmann — Typography tokens
   Headlines: Fira Sans 700/800 (Brandkit "Fira Sans Bold").
   Body: Fira Sans 500 (Brandkit "Fira Sans Medium"). */
:root {
  --font-sans: 'Fira Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-display: 'Fira Sans', system-ui, sans-serif;
  --font-script: 'Caveat', 'Segoe Script', cursive; /* substitute — see readme */

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

  /* Type scale (1.250 major third, 16px base) */
  --fs-xs: 0.75rem;    /* 12 */
  --fs-sm: 0.875rem;   /* 14 */
  --fs-base: 1rem;     /* 16 */
  --fs-md: 1.125rem;   /* 18 */
  --fs-lg: 1.375rem;   /* 22 */
  --fs-xl: 1.75rem;    /* 28 */
  --fs-2xl: 2.25rem;   /* 36 */
  --fs-3xl: 2.75rem;   /* 44 */
  --fs-4xl: 3.5rem;    /* 56 */
  --fs-5xl: 4.5rem;    /* 72 */

  /* Line heights */
  --lh-tight: 1.08; /* @kind font */
  --lh-snug: 1.25; /* @kind font */
  --lh-normal: 1.5; /* @kind font */
  --lh-relaxed: 1.65; /* @kind font */

  /* Letter spacing — Fira Sans headlines are set slightly tight; eyebrows are tracked out */
  --ls-tight: -0.02em; /* @kind font */
  --ls-normal: 0; /* @kind font */
  --ls-wide: 0.02em; /* @kind font */
  --ls-eyebrow: 0.14em; /* @kind font */

  /* Semantic roles */
  --text-display-size: var(--fs-5xl);
  --text-h1-size: var(--fs-4xl);
  --text-h2-size: var(--fs-3xl);
  --text-h3-size: var(--fs-2xl);
  --text-h4-size: var(--fs-xl);
  --text-body-size: var(--fs-base);
  --text-small-size: var(--fs-sm);
}
