/* tokens.css
 * Custom properties only. No selectors other than :root.
 * Palette matches the existing Here For You funnel.
 *
 *   cream       #f5f3ed   page background
 *   paper       #ffffff   cards, surfaces
 *   warm        #ece7dc   alternating section background
 *   ink         #26322c   body text
 *   muted       #64736b   secondary text
 *   green       #365c4b   primary accent, buttons
 *   dark green  #234234   hover, deep sections
 *   gold        #c6a24a   eyebrows, rules, small emphasis
 *   line        #d9dfdb   hairlines, borders
 */

:root {
  /* Required token set */
  --bg: #f5f3ed;
  --surface: #ffffff;
  --surface-alt: #ece7dc;
  --ink: #26322c;
  --ink-muted: #64736b;
  --accent: #365c4b;
  --accent-ink: #ffffff;
  --font-display: Georgia, "Iowan Old Style", "Times New Roman", Times, serif;
  --font-body: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    "Helvetica Neue", Arial, sans-serif;
  --radius: 14px;
  --section-y: clamp(3.25rem, 7vw, 6rem);

  /* Supporting palette */
  --accent-dark: #234234;
  --gold: #c6a24a;
  --line: #d9dfdb;

  /* Type scale */
  --step--1: clamp(0.875rem, 0.85rem + 0.15vw, 0.9375rem);
  --step-0: clamp(1rem, 0.97rem + 0.2vw, 1.0625rem);
  --step-1: clamp(1.125rem, 1.05rem + 0.35vw, 1.25rem);
  --step-2: clamp(1.375rem, 1.2rem + 0.8vw, 1.75rem);
  --step-3: clamp(1.75rem, 1.45rem + 1.4vw, 2.375rem);
  --step-4: clamp(2.125rem, 1.6rem + 2.4vw, 3.25rem);

  /* Spacing scale */
  --space-3xs: 0.25rem;
  --space-2xs: 0.5rem;
  --space-xs: 0.75rem;
  --space-s: 1rem;
  --space-m: 1.5rem;
  --space-l: 2rem;
  --space-xl: 3rem;
  --space-2xl: 4rem;

  /* Layout */
  --container: 1120px;
  --container-narrow: 760px;
  --measure: 66ch;
  --gap: clamp(1.5rem, 3vw, 3rem);
  --split-breakpoint: 768px;

  /* Surfaces, edges and depth */
  --radius-sm: 8px;
  --radius-lg: 22px;
  --shadow-sm: 0 1px 2px rgba(38, 50, 44, 0.06);
  --shadow-md: 0 8px 24px rgba(38, 50, 44, 0.08);
  --shadow-lg: 0 18px 44px rgba(38, 50, 44, 0.12);
  --border: 1px solid var(--line);

  /* Motion */
  --ease: cubic-bezier(0.2, 0.6, 0.3, 1);
  --speed: 160ms;

  /* Focus ring, used by every interactive element */
  --focus-ring: 0 0 0 3px rgba(54, 92, 75, 0.28);
}
