/* Cape Events design tokens — the source of truth for colour, type, space, motion and layers.
   Locked system: see design.md. style.css imports this file; build_publish.py copies both. */

:root {
  --color-paper:      oklch(15% 0.015 230);
  --color-paper-2:    oklch(19% 0.016 230);
  --color-paper-3:    oklch(24% 0.016 230);
  --color-ink:        oklch(94% 0.008 80);
  --color-ink-2:      oklch(76% 0.010 80);
  --color-muted:      oklch(62% 0.012 230);
  --color-rule:       oklch(32% 0.014 230);
  --color-rule-2:     oklch(26% 0.014 230);
  --color-accent:     oklch(74% 0.140 45);
  --color-accent-ink: oklch(15% 0.015 230);
  --color-focus:      oklch(78% 0.190 45);
  --color-bloom:      oklch(45% 0.120 45);
  --color-bloom-2:    oklch(38% 0.090 200);
  --shadow-glow:      0 18px 40px -22px oklch(74% 0.14 45 / 0.35);

  --font-display: "Geist", ui-sans-serif, system-ui, sans-serif;
  --font-body:    "Geist", ui-sans-serif, system-ui, sans-serif;
  --font-mono:    "Geist Mono", ui-monospace, Menlo, monospace;

  --text-xs: 0.8rem; --text-sm: 0.875rem; --text-base: 1rem; --text-md: 1.125rem; --text-lg: 1.375rem; --text-xl: 1.75rem; --text-2xl: 2.25rem;
  --text-display: clamp(2.5rem, 4.5vw + 1rem, 4.5rem);

  --space-3xs: 0.125rem; --space-2xs: 0.25rem; --space-xs: 0.5rem; --space-sm: 0.75rem; --space-md: 1rem; --space-lg: 1.5rem; --space-xl: 2.5rem; --space-2xl: 4rem; --space-3xl: 6rem;
  --page-gutter: clamp(1rem, 4vw, 2.5rem);
  --measure: 72rem;

  --rule-hair: 1px;
  --radius-card: 14px; --radius-pill: 999px; --radius-input: 10px;

  --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-micro: 120ms; --dur-short: 220ms; --dur-long: 420ms;

  --z-base: 1; --z-raised: 10; --z-sticky: 200; --z-sticky-nav: 300;
  --banner-height: 72px;   /* fixed pill: 44px pill + top offset */
}
