:root {
  --color-paper: #f8f7fc;
  --color-surface: #fffdf9;
  --color-ink: #251d2c;
  --color-muted: #6d6571;
  --color-accent: #6b3fa0;
  --color-accent-deep: #3b2945;
  --color-accent-soft: #eee8f2;
  --color-peach: #efe1d7;
  --color-sage: #e7ede3;
  --color-line: rgba(48, 35, 56, .15);
  /* Dark bands reuse the deep accent, with the same text tones as the contact note. */
  --color-night: var(--color-accent-deep);
  --color-night-line: rgba(255, 255, 255, .14);
  --color-on-night: #fffaf5;
  --color-on-night-muted: #ded4e3;

  --font-body: "DM Sans", Arial, sans-serif;
  --font-display: "Bricolage Grotesque", Arial, sans-serif;
  --text-xs: .6875rem;
  --text-sm: .875rem;
  --text-body: 1rem;
  --text-label: .6875rem;
  --leading-body: 1.7;
  --tracking-label: .14em;
  --text-lead: clamp(1.0625rem, 1.45vw, 1.25rem);
  --text-h3: clamp(1.5rem, 2.4vw, 2rem);
  --text-h2: clamp(2.625rem, 5vw, 4.375rem);
  --text-display: clamp(3.25rem, 7vw, 5.75rem);
  --text-h1: var(--text-display);
  --leading-display: 1.03;
  --leading-h2: 1.07;
  --leading-h3: 1.12;
  --tracking-display: -.02em;
  --tracking-h2: -.025em;
  --tracking-h3: -.02em;

  --space-1: .5rem;
  --space-2: .75rem;
  --space-3: 1rem;
  --space-4: 1.5rem;
  --space-5: 2rem;
  --space-6: 3rem;
  --space-7: 4rem;
  --space-8: 5.5rem;
  --space-section: clamp(5rem, 9vw, 7.5rem);
  --grid-gap: clamp(1.5rem, 2vw, 2.25rem);

  --radius-sm: 1rem;
  --radius-md: 1.375rem;
  --radius-lg: 1.875rem;
  --radius-pill: 999px;
  --control-height: 2.75rem;
  --page-max: 100rem;
  --page-gutter: 5%;
  --page-inline: max(var(--page-gutter), calc((100vw - var(--page-max)) / 2));
  --shadow-soft: 0 1.5rem 4.375rem rgba(48, 35, 56, .09);

  /* Backward-compatible aliases while legacy page styles are removed. */
  --paper: var(--color-paper);
  --surface: var(--color-surface);
  --ink: var(--color-ink);
  --muted: var(--color-muted);
  --accent: var(--color-accent);
  --purple: var(--color-accent);
  --accent-soft: var(--color-accent-soft);
  --peach: var(--color-peach);
  --sage: var(--color-sage);
  --line: var(--color-line);
  --section-space: var(--space-section);
}
