/* ==========================================================================
   tokens.css — design system variables (Colin Wilson)
   Derived from the Home.svg comp. Values are the single source of truth;
   modules reference these (so the WP theme port can mirror them in ACF).
   ========================================================================== */
:root {
  /* --- neutrals --- */
  --ink: #111111;          /* near-black text / dark sections */
  --ink-2: #454545;        /* body copy on light */
  --ink-3: #666666;        /* muted captions */
  --paper: #ffffff;        /* page background */
  --paper-soft: #f4f2f0;   /* warm off-white section band */
  --black: #000000;        /* hero / footer true black */
  --on-dark: #ffffff;      /* text on dark sections */
  --on-dark-soft: #cfcfcf; /* muted text on dark */

  /* --- accent / brand --- */
  --accent: #f05a1e;       /* brand orange */
  --accent-ink: #ffffff;   /* text on accent */
  --accent-deep: #c8430f;  /* darker orange for hover */
  --accent-tint: rgba(240, 90, 30, 0.12);

  /* hero ambient glow (bottom-right orange bloom over the black hero) */
  --hero-glow: radial-gradient(
    120% 90% at 92% 88%,
    rgba(240, 90, 30, 0.55) 0%,
    rgba(240, 90, 30, 0.16) 32%,
    rgba(0, 0, 0, 0) 62%
  );

  /* --- hairlines / borders --- */
  --line: #e3e0dd;
  --line-strong: #cfcfcf;
  --line-dark: rgba(255, 255, 255, 0.14);

  /* --- typography --- */
  --font-display: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-text: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;

  --tracking-tight: -0.02em;
  --tracking-snug: -0.01em;
  --tracking-normal: 0;
  --tracking-label: 0.14em;  /* uppercase kickers */

  /* fluid type scale (min @375px … max @1440px) */
  --fs-display: clamp(2.5rem, 1.5rem + 4.4vw, 4.15rem);  /* hero H1 ~66px */
  --fs-hero: var(--fs-display);
  --fs-h2: clamp(2rem, 1.15rem + 3.6vw, 3.35rem);        /* section H2 ~54px */
  --fs-h3: clamp(1.4rem, 1.05rem + 1.5vw, 1.9rem);       /* card / topic titles ~30px */
  --fs-stat: clamp(2.125rem, 1.632rem + 2.022vw, 3.25rem);          /* big stat numbers ~64px */
  --fs-lead: clamp(1.0625rem, 1.035rem + 0.112vw, 1.125rem);     /* intros / subheads */
  --fs-body: clamp(1rem, 0.96rem + 0.2vw, 1.0625rem);    /* base body ~17px */
  --fs-label: clamp(0.78rem, 0.74rem + 0.15vw, 0.875rem);/* kickers / captions */

  --lh-tight: 1.04;
  --lh-snug: 1.16;
  --lh-body: 1.6;

  /* --- spacing rhythm --- */
  --gutter: clamp(1.25rem, 0.6rem + 2.6vw, 2.75rem);
  --section: clamp(4rem, 2.5rem + 5vw, 7.5rem);   /* vertical section padding */
  --section-sm: clamp(2.75rem, 2rem + 3vw, 4.5rem);
  --maxw: 1320px;     /* outer container */
  --content: 760px;   /* readable measure */
  --radius: 14px;
  --radius-lg: 28px;
  --radius-pill: 999px;

  /* --- chrome --- */
  --header-h: 84px;
  --z-header: 80;
  --z-menu: 90;

  /* --- motion --- */
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out: cubic-bezier(0.22, 0.61, 0.36, 1);
  --dur: 0.45s;
  --dur-slow: 1.1s;
  --dur-fast: 0.25s;
}
