/* Hallmark · custom theme · genre: editorial
 * vibe: warm, vertrouwd, rustig, hoog-leesbaar
 * paper #FFFFFF (light) · accent #2E8B6F (cool blue) · display slab-serif (Bitter)
 * 50Plus Hub merkfamilie — web-variant (groen). Per-site: override --color-accent*.
 * contrast: body 15:1 · links/knoppen 6–7:1 (AA+/AAA) · pre-emit critique P5 H4 E5 S5 R5 V4
 */
:root {
  /* — Kleuren (gids = blauw) — */
  --color-paper: #FFFFFF;
  --color-paper-2: #F2F8F5;
  --color-paper-3: #E6F1EC;
  --color-ink: #1A2330;
  --color-ink-2: #3D4B5C;
  --color-accent: #2E8B6F;
  --color-accent-strong: #236E58;
  --color-accent-ink: #14493A;
  --color-accent-soft: #DCEFE7;
  --color-success: #2E7D52;
  --color-warning: #9A5E12;
  --color-warning-soft: #FBF1DF;
  --color-danger: #B3261E;
  --color-focus: #0B4E3A;
  --color-rule: #D2E0DA;

  /* — Typografie — */
  --font-display: "Bitter", Georgia, "Times New Roman", serif;
  --font-body: "Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  /* tekstvergroter: A=1, A+=1.15, A++=1.3 (gezet op :root via JS) */
  --text-scale: 1;
  --text-sm: calc(1.0625rem * var(--text-scale));
  --text-base: calc(1.25rem * var(--text-scale));
  --text-lead: calc(1.5rem * var(--text-scale));
  --text-h3: calc(1.875rem * var(--text-scale));
  --text-h2: calc(2.375rem * var(--text-scale));
  --text-h1: calc(3rem * var(--text-scale));
  --text-display: clamp(3rem, 6vw, 4rem);

  --leading-body: 1.7;
  --leading-lead: 1.6;
  --leading-h: 1.25;
  --measure: 68ch;

  /* — Spacing (8pt) — */
  --space-3xs: 4px;
  --space-2xs: 8px;
  --space-xs: 12px;
  --space-sm: 16px;
  --space-md: 24px;
  --space-lg: 40px;
  --space-xl: 64px;
  --space-2xl: 96px;
  --space-3xl: 128px;

  /* — Radius — */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;

  /* — Klikdoel — */
  --tap-min: 48px;

  /* — Motion — */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in: cubic-bezier(0.7, 0, 0.84, 0);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 150ms;
  --dur-base: 220ms;
}

/* Hoog-contrast modus (toggle in toegankelijkheidsbalk) */
:root[data-contrast="high"] {
  --color-ink: #000000;
  --color-ink-2: #1A1A1A;
  --color-paper: #FFFFFF;
  --color-paper-2: #FFFFFF;
  --color-paper-3: #F2F2F2;
  --color-accent: #0B4E3A;
  --color-accent-strong: #0B3E2E;
  --color-rule: #6B7785;
}

@media (prefers-reduced-motion: reduce) {
  :root { --dur-fast: 0ms; --dur-base: 120ms; }
}
