/* KIWI Group — Typography
   Fraunces for display/headings (warm, "smiling"); Inter Tight for body/UI/labels.
   Fraunces axes: SOFT (soft terminals) + WONK (wonky/playful). Playfulness scales UP
   on big hero headings, stays restrained on small headings. */

:root {
  /* ---- Families ---- */
  --font-display: "Fraunces", Georgia, "Times New Roman", serif;
  --font-body:    "Inter Tight", system-ui, -apple-system, "Segoe UI", sans-serif;

  /* ---- Fraunces variable-axis presets (apply via font-variation-settings) ---- */
  --fraunces-hero:    "opsz" 144, "SOFT" 60, "WONK" 1; /* @kind other */
  --fraunces-section: "opsz" 72,  "SOFT" 40, "WONK" 0; /* @kind other */
  --fraunces-card:    "opsz" 36,  "SOFT" 25, "WONK" 0; /* @kind other */

  /* ---- Weights ---- */
  --fw-body:      400; /* @kind other */
  --fw-medium:    500; /* @kind other */
  --fw-semibold:  600; /* @kind other */
  --fw-display:   600; /* @kind other */
  --fw-display-bold: 700; /* @kind other */

  /* ---- Type scale (fluid) ---- */
  --fs-hero:    clamp(2.75rem, 1.6rem + 5.6vw, 5.5rem);  /* @kind other */
  --fs-h2:      clamp(2rem, 1.3rem + 3.2vw, 3.25rem);    /* @kind other */
  --fs-h3:      clamp(1.3rem, 1.05rem + 1vw, 1.6rem);    /* @kind other */
  --fs-lead:    clamp(1.125rem, 1.02rem + 0.45vw, 1.375rem); /* @kind other */
  --fs-body:    1.0625rem; /* @kind other */
  --fs-small:   0.9375rem; /* @kind other */
  --fs-label:   0.75rem;   /* @kind other */
  --fs-stat:    clamp(2.75rem, 1.8rem + 4vw, 4.5rem);    /* @kind other */

  /* ---- Line heights ---- */
  --lh-tight:   1.04; /* @kind other */
  --lh-heading: 1.12; /* @kind other */
  --lh-body:    1.6;  /* @kind other */
  --lh-snug:    1.35; /* @kind other */

  /* ---- Letter spacing ---- */
  --ls-hero:    -0.02em; /* @kind other */
  --ls-heading: -0.01em; /* @kind other */
  --ls-label:   0.14em;  /* @kind other */
  --ls-body:    0;       /* @kind other */
}

/* ---- Base element defaults consumers inherit ---- */
:root {
  color: var(--text-primary);
  font-family: var(--font-body);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
