/* FGO design tokens - single source of truth for the static site's type.
   Change a value here to restyle every static page at once.
   Colour tokens are added in Phase A2 (see docs/refactor/2026-06-07-design-tokens-plan.md).
   The Astro budget bundle and assets/css/deep-dive.css carry their own equivalents
   (--font-sans / --font-emphasis); those are aligned by name, not merged. */
:root{
  --font-display:'Fraunces',Georgia,serif;   /* headings, editorial */
  --font-body:'Hanken Grotesk',sans-serif;   /* body, UI, card titles */
  --font-mono:'JetBrains Mono',monospace;     /* eyebrows, labels, data */
}

/* Colour tokens (Phase A2). Canonical = homepage source of truth; drift resolved.
   Editorial --accent retired to clay; logo family kept orange. Change a value here = sitewide. */
:root{
  --charcoal:#1a1a1a;
  --ink:#111111;
  --text-primary:#111111;
  --text-secondary:#4a4a4a;
  --cream:#F5F2EC;
  --off-white:#fafaf8;
  --warm-beige:#b8a887;
  --paper:#F4F2EC;
  --white:#FFFDF8;
  --text-light:#999999;
  --muted:#6b6760;
  --body-grey:#8a857b;
  --ink-faint:#8c887c;
  --clay:#B5703F;
  --dark-green:#2c4a3e;
  --mist:#eaeee4;
  --sage:#dde4d5;
  --line:#D9D3C6;
  --logo-orange:#FF9933;
  --light-orange:#FFBB77;
  --soft-gold:#d4af6a;
  --accent:#B5703F;
  --accent-deep:#9C5F34;
  --accent-soft:rgba(181,112,63,0.10);
}

/* Type-scale tokens (Phase B, role-based). See docs/refactor/2026-06-07-type-scale-spec.md.
   font-size = --fs-*, line-height = --lh-*. Editorial titles use --font-display (Fraunces),
   card titles + body use --font-body (Hanken). Additive only; pages adopt these incrementally.
   --fs-* deliberately distinct from the --text-* COLOUR tokens above. */
:root{
  --fs-display: clamp(2.6rem, 5.6vw, 5rem);  /* homepage hero only */
  --fs-page: clamp(36px, 5vw, 56px);          /* blog/case-studies hub h1 */
  --fs-section: 32px;                          /* section headings (h2) */
  --fs-cta: 36px;                             /* CTA block headers */
  --fs-card: 22px;                            /* card titles */
  --fs-lead: 18px;                            /* intros / standfirst */
  --fs-body: 16px;                            /* default copy */
  --fs-small: 14px;                           /* labels / secondary */
  --fs-caption: 13px;                         /* meta / timestamps */
  --fs-eyebrow: 11px;                         /* mono labels */
  --lh-display: 1.02;
  --lh-title: 1.1;                            /* page / section / cta titles */
  --lh-card: 1.25;
  --lh-body: 1.6;
  --lh-small: 1.5;
  --lh-caption: 1.4;
}

/* Reading scale for templated long-form pages (blog articles, case-study details).
   Distinct from the marketing scale above - long-form reading type is its own thing.
   Values = the existing template's values (value-preserving); -m = mobile override. */
:root{
  --fs-art-title: 48px;   --fs-art-title-m: 36px;   /* article h1 */
  --fs-art-lead: 20px;    --fs-art-lead-m: 18px;    /* article standfirst */
  --fs-art-h2: 28px;      --fs-art-h2-m: 24px;      /* article subhead */
  --fs-art-body: 17px;    --fs-art-body-m: 16px;    /* article copy */
  --fs-art-meta: 14px;                              /* byline / meta */
  --fs-cs-title: 42px;    --fs-cs-title-m: 30px;    /* case-study h1 */
}
