/* ============================================================
   B-8 VERMIETUNG — TYPOGRAPHY TOKENS
   ============================================================ */

:root {
  /* ---- Families ---- */
  --font-display: 'Archivo', 'Helvetica Neue', Arial, sans-serif;
  --font-sans:    'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
  --font-mono:    'IBM Plex Mono', 'SFMono-Regular', Menlo, monospace;

  /* ---- Weights ---- */
  --fw-regular:  400; /* @kind font */
  --fw-medium:   500; /* @kind font */
  --fw-semibold: 600; /* @kind font */
  --fw-bold:     700; /* @kind font */
  --fw-black:    800; /* @kind font */

  /* ---- Fluid display sizes (headings, usually UPPERCASE) ---- */
  /* hero */
  --text-display-xl: clamp(2.75rem, 1.6rem + 4.6vw, 5rem); /* @kind spacing */
  --text-display-lg: clamp(2.25rem, 1.5rem + 3vw, 3.5rem); /* @kind spacing */
  --text-display-md: clamp(1.75rem, 1.25rem + 2vw, 2.5rem); /* @kind spacing */
  --text-display-sm: 1.5rem;                                  /* 24px @kind spacing */

  /* ---- Body & UI scale ---- */
  --text-xs:   0.75rem;   /* 12 — labels, captions */
  --text-sm:   0.875rem;  /* 14 — secondary, meta */
  --text-base: 1rem;      /* 16 — body default */
  --text-md:   1.125rem;  /* 18 — lead body */
  --text-lg:   1.25rem;   /* 20 — section intro */
  --text-xl:   1.5rem;    /* 24 — subhead */

  /* ---- Line heights ---- */
  --leading-tight:   1.05;  /* display caps @kind other */
  --leading-snug:    1.2; /* @kind other */
  --leading-normal:  1.5; /* @kind other */
  --leading-relaxed: 1.7;   /* long-form German body @kind other */

  /* ---- Letter spacing ---- */
  --tracking-display: -0.01em;  /* large grotesque @kind other */
  --tracking-caps:    0.08em;   /* uppercase headings & eyebrows @kind other */
  --tracking-wide:    0.14em;   /* small eyebrow labels @kind other */
  --tracking-normal:  0; /* @kind other */

  /* ---- Semantic roles ---- */
  --heading-font:  var(--font-display);
  --heading-weight: var(--fw-bold);
  --heading-case:  uppercase; /* @kind other */
  --body-font:     var(--font-sans);
  --eyebrow-font:  var(--font-mono);
}
