/* Exatta — Typography tokens */
:root {
  /* Families */
  --font-display: 'Sora', system-ui, sans-serif;
  --font-body:    'Plus Jakarta Sans', system-ui, sans-serif;
  --font-mono:    'Plus Jakarta Sans', system-ui, sans-serif; /* numbers use the text font */

  /* Weights */
  --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-ish, tuned) */
  --text-2xs:  0.6875rem; /* 11 */
  --text-xs:   0.75rem;   /* 12 */
  --text-sm:   0.875rem;  /* 14 */
  --text-base: 1rem;      /* 16 */
  --text-md:   1.125rem;  /* 18 */
  --text-lg:   1.375rem;  /* 22 */
  --text-xl:   1.75rem;   /* 28 */
  --text-2xl:  2.25rem;   /* 36 */
  --text-3xl:  3rem;      /* 48 */
  --text-4xl:  3.75rem;   /* 60 */

  /* Line heights */
  --leading-tight:   1.1;
  --leading-snug:    1.25;
  --leading-normal:  1.5;
  --leading-relaxed: 1.65;

  /* Letter spacing */
  --tracking-tight:  -0.02em;
  --tracking-snug:   -0.01em;
  --tracking-normal: 0;
  --tracking-wide:   0.04em;
  --tracking-caps:   0.08em; /* eyebrows / labels */

  /* Semantic roles */
  --type-display:  var(--fw-extra) var(--text-3xl)/var(--leading-tight) var(--font-display);
  --type-h1:       var(--fw-bold) var(--text-2xl)/var(--leading-tight) var(--font-display);
  --type-h2:       var(--fw-bold) var(--text-xl)/var(--leading-snug) var(--font-display);
  --type-h3:       var(--fw-semibold) var(--text-lg)/var(--leading-snug) var(--font-display);
  --type-body:     var(--fw-regular) var(--text-base)/var(--leading-normal) var(--font-body);
  --type-body-sm:  var(--fw-regular) var(--text-sm)/var(--leading-normal) var(--font-body);
  --type-label:    var(--fw-semibold) var(--text-sm)/var(--leading-snug) var(--font-body);
}
