/* ── «Время пробовать» · typography tokens ────────────────────────
   Nunito is the ONLY font family — display, headings, body, numbers.
   Warm, rounded, highly legible. Numbers stay medium-bold (700 max),
   never extra-black, so they read clean and balanced.
------------------------------------------------------------------ */
:root {
  /* ---- Families (single family everywhere) ---- */
  --font-display: 'Nunito', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-body:    'Nunito', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-num:     'Nunito', system-ui, sans-serif;

  /* ---- Weights ---- */
  --w-regular:   400; /* @kind other */
  --w-medium:    500; /* @kind other */
  --w-semibold:  600; /* @kind other */
  --w-bold:      700; /* @kind other */

  /* ---- Type scale (mobile-first) ---- */
  --fs-display:  31px;   /* hero                     */
  --fs-h1:       25px;   /* page title               */
  --fs-h2:       20px;   /* section heading          */
  --fs-h3:       17px;   /* card title               */
  --fs-body:     16px;   /* default body             */
  --fs-sm:       14px;   /* secondary / list meta    */
  --fs-xs:       13px;   /* captions, labels         */
  --fs-2xs:      12px;   /* tiny labels              */

  /* ---- Statistic sizes (balanced, not dominant) ---- */
  --fs-stat-lg:  30px;   /* large statistic · weight 700 */
  --fs-stat-md:  24px;   /* medium statistic · weight 700 */
  --fs-stat-sm:  17px;   /* small statistic · weight 600 */

  /* ---- Line heights ---- */
  --lh-tight:    1.18; /* @kind other */
  --lh-snug:     1.3; /* @kind other */
  --lh-normal:   1.5; /* @kind other */
  --lh-relaxed:  1.6; /* @kind other */

  /* ---- Letter spacing ---- */
  --ls-tight:   -0.01em;
  --ls-normal:   0em;
  --ls-wide:     0.04em;   /* eyebrows / overlines  */
}

/* ---- Reusable type helpers ---- */
.t-display    { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-display); line-height: var(--lh-tight); letter-spacing: var(--ls-tight); color: var(--text-strong); }
.t-h1         { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-h1); line-height: 1.2; letter-spacing: var(--ls-tight); color: var(--text-strong); }
.t-h2         { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-h2); line-height: var(--lh-snug); color: var(--text-strong); }
.t-h3         { font-family: var(--font-display); font-weight: 600; font-size: var(--fs-h3); line-height: var(--lh-snug); color: var(--text-strong); }
.t-body       { font-family: var(--font-body); font-weight: 400; font-size: var(--fs-body); line-height: var(--lh-normal); color: var(--text-body); }
.t-body-strong{ font-family: var(--font-body); font-weight: 600; font-size: var(--fs-body); line-height: var(--lh-normal); color: var(--text-strong); }
.t-sm         { font-family: var(--font-body); font-weight: 500; font-size: var(--fs-sm); line-height: var(--lh-normal); color: var(--text-secondary); }
.t-xs         { font-family: var(--font-body); font-weight: 500; font-size: var(--fs-xs); line-height: var(--lh-snug); color: var(--text-secondary); }
.t-stat       { font-family: var(--font-num); font-weight: 700; font-size: var(--fs-stat-lg); line-height: 1.1; letter-spacing: 0; color: var(--text-strong); }
.t-eyebrow {
  font-family: var(--font-body);
  font-weight: 700;
  font-size: var(--fs-2xs);
  line-height: 1;
  letter-spacing: var(--ls-wide);
  text-transform: uppercase;
  color: var(--text-muted);
}
