/* ═══════════════════════════════════════════════════════════════════════════
   Design Tokens — Typography v2
   Manrope (headings) + Hanken Grotesk (body)
   Display scale for hero impact, weight contrast, fluid scaling.
   ═══════════════════════════════════════════════════════════════════════════ */

:root {

  /* ── Font Families ─────────────────────────────────────────────────── */

  --font-family-heading: 'Manrope', system-ui, -apple-system, sans-serif;
  --font-family-body:    'Hanken Grotesk', system-ui, -apple-system, sans-serif;
  --font-family-mono:    'JetBrains Mono', 'Fira Code', 'Consolas', monospace;

  /* ── Fluid Font Sizes ──────────────────────────────────────────────── */

  /* 12px fix (vorher fluid 11–12px): 11px war auf dem Handy zu klein für
     Meta-, Label- und Rechtstexte — gemessen 23.09.2026 auf allen Seiten. */
  --font-size-xs:   0.75rem;
  --font-size-sm:   clamp(0.8125rem, 0.78rem + 0.15vw, 0.875rem);
  --font-size-base: clamp(0.9375rem, 0.88rem + 0.25vw, 1.0625rem);
  --font-size-md:   clamp(1.0625rem, 1rem + 0.25vw, 1.1875rem);
  --font-size-lg:   clamp(1.1875rem, 1.1rem + 0.35vw, 1.375rem);
  --font-size-xl:   clamp(1.5rem, 1.35rem + 0.6vw, 1.875rem);
  --font-size-2xl:  clamp(1.875rem, 1.65rem + 0.9vw, 2.5rem);
  --font-size-3xl:  clamp(2.25rem, 1.9rem + 1.4vw, 3.25rem);
  --font-size-4xl:  clamp(2.75rem, 2.25rem + 2.2vw, 4.5rem);
  --font-size-5xl:  clamp(3.25rem, 2.5rem + 3.5vw, 6.5rem);   /* Display — hero statements */

  /* ── Font Weights — Clear differentiation ──────────────────────────── */

  --font-weight-light:     300;
  --font-weight-regular:   400;
  --font-weight-medium:    500;
  --font-weight-semibold:  600;
  --font-weight-bold:      600;   /* Headings — slick, not heavy */
  --font-weight-extrabold: 600;   /* Same as bold for clean look */

  /* ── Legacy alias (backward compat) ─────────────────────────────────── */

  /* --font-weight-bold was 600 in v1, now 700. Components that want 600 use --font-weight-semibold */

  /* ── Line Heights ──────────────────────────────────────────────────── */

  --line-height-tight:   1.1;
  --line-height-snug:    1.25;
  --line-height-normal:  1.5;
  --line-height-relaxed: 1.65;

  /* ── Letter Spacing ────────────────────────────────────────────────── */

  --letter-spacing-tight:  -0.025em;
  --letter-spacing-normal:  -0.01em;
  --letter-spacing-wide:    0.03em;
  --letter-spacing-wider:   0.08em;
  --letter-spacing-widest:  0.12em;

  /* ── Max Text Measure ──────────────────────────────────────────────── */

  --measure-narrow: 30ch;
  --measure-normal: 55ch;
  --measure-wide:   70ch;
}
