/* ============================================================
   Compradores / KPEG — Typography tokens
   Single primary family: GC North Sans (subbed by "Outfit").
   Weights used by the brand: Light · Regular · Medium · Demi Bold.
   IBM Plex Mono for figures / codes.
   ============================================================ */

:root {
  /* ---- Families ---- */
  --font-sans: 'Outfit', system-ui, -apple-system, 'Segoe UI', sans-serif; /* GC North Sans */
  --font-mono: 'IBM Plex Mono', 'SFMono-Regular', ui-monospace, monospace;

  /* Semantic family aliases (one family drives the whole system) */
  --font-display: var(--font-sans);
  --font-heading: var(--font-sans);
  --font-body:    var(--font-sans);
  --font-ui:      var(--font-sans);
  --font-figure:  var(--font-mono);

  /* ---- Weights (mapped to the brand's four cuts) ---- */
  --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-extra:    800;  /* @kind font */

  /* ---- Type scale (1.25 major-third, rounded) ---- */
  --text-2xs: 11px;
  --text-xs:  12px;
  --text-sm:  14px;
  --text-md:  16px;   /* base body */
  --text-lg:  18px;
  --text-xl:  20px;
  --text-2xl: 24px;
  --text-3xl: 30px;
  --text-4xl: 38px;
  --text-5xl: 48px;
  --text-6xl: 62px;
  --text-7xl: 80px;
  --text-8xl: 104px;

  /* ---- Line heights ---- */
  --lh-tight:   1.04;  /* @kind font */
  --lh-snug:    1.14;  /* @kind font */
  --lh-heading: 1.18;  /* @kind font */
  --lh-normal:  1.5;   /* @kind font */
  --lh-relaxed: 1.65;  /* @kind font */

  /* ---- Letter spacing (geometric sans: slightly negative on display) ---- */
  --ls-tighter: -0.035em;  /* @kind font */
  --ls-tight:   -0.02em;   /* @kind font */
  --ls-normal:  0em;       /* @kind font */
  --ls-wide:    0.03em;    /* @kind font */
  --ls-wider:   0.14em;    /* overlines @kind font */
  --ls-widest:  0.24em;    /* @kind font */
}
