/* ==========================================================================
   Typography — pairing "Bookish"
   Display: Fraunces (opsz, warm old-style serif)
   Body:    Source Serif 4 (refined reading serif)
   UI/meta: IBM Plex Sans (kickers, tags, captions, controls)
   ========================================================================== */

:root {
  --font-display: "Fraunces", Georgia, "Times New Roman", serif;
  --font-body:    "Source Serif 4", Georgia, "Times New Roman", serif;
  --font-ui:      "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;

  /* Type scale — fluid where it matters (clamp: min, preferred, max) */
  --fs-display:  clamp(3rem, 1.6rem + 5.2vw, 5.5rem);      /* @kind spacing */ /* 48→88px */
  --fs-h1:       clamp(2.4rem, 1.6rem + 2.6vw, 3rem);      /* @kind spacing */ /* 38→48px */
  --fs-h2:       clamp(1.85rem, 1.4rem + 1.6vw, 2.125rem); /* @kind spacing */ /* 30→34px */
  --fs-h3:       1.5rem;     /* @kind spacing */ /* 24px */
  --fs-h4:       1.15rem;    /* @kind spacing */ /* ~18px */
  --fs-lead:     clamp(1.3rem, 1.1rem + 0.7vw, 1.6rem);    /* @kind spacing */ /* 21→26px */
  --fs-body:     1.1875rem;  /* @kind spacing */ /* 19px — reading size */
  --fs-small:    1rem;       /* @kind spacing */ /* 16px */
  --fs-caption:  0.8125rem;  /* @kind spacing */ /* 13px */
  --fs-footnote: 0.875rem;   /* @kind spacing */ /* 14px */

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

  --lh-tight:    1.05;   /* @kind font */
  --lh-heading:  1.15;   /* @kind font */
  --lh-snug:     1.4;    /* @kind font */
  --lh-body:     1.65;   /* @kind font */

  --ls-display: -0.01em;   /* @kind font */
  --ls-heading: -0.005em;  /* @kind font */
  --ls-ui:       0.08em;   /* @kind font */
  --ls-tag:      0.03em;   /* @kind font */
}
