/* =============================================================
   DAXTON DIGITAL — DESIGN TOKENS (brand trunk)
   Aligned to DAXTON-DIGITAL-BRAND-CANON.png (ratified 2026-08-07)

   family.css is loaded before this file and provides the shared
   root: --daxton-black, --heritage-gold, --gold-quiet, spacing,
   motion, resets, layout primitives.

   This file only declares Digital-specific canon: sapphire, the
   Digital surface ramp, ink ramp, typography, and Digital-only
   hairlines. Studios and Holdings will have parallel files.

   RULE: nothing below tokens.css/site.css may declare a raw hex
   or rgba() value. Colors come from here.
   ============================================================= */

/* ---------- 1. DIGITAL CANON PALETTE — do not edit ---------- */
:root {
  --sapphire-digital:  #0A307A;
  --digital-slate:     #27313A;
  --cloud-white:       #F4F2EC;
}

/* ---------- 2. DERIVED RAMPS ----------
   Derived values only. Each is a documented extension of a canon
   colour — not a new colour.
   ------------------------------------------------------ */
:root {
  /* Surfaces: black → slate, four steps */
  --surface-0: var(--daxton-black);   /* page canvas          */
  --surface-1: #0C1013;               /* section lift         */
  --surface-2: #12171B;               /* card                 */
  --surface-3: var(--digital-slate);  /* raised / accented    */

  /* Gold aliases (Digital may reference family gold as --gold in
     component rules; keep the alias so rename cost stays low).  */
  --gold: var(--heritage-gold);

  /* Sapphire: the INTERFACE colour. This is what makes Digital
     read as Digital rather than Holdings. #0A307A is 1.7:1 on
     black — unusable as text — so text and interactive states
     use the lifted ramp below, while the canon value is retained
     for fills and surfaces. */
  --sapphire:        var(--sapphire-digital);
  --sapphire-line:   #17408F;
  --sapphire-lift:   #3D6FD4;
  --sapphire-bright: #6E96E8;

  /* Ink */
  --ink-1: var(--cloud-white);  /* 16.9:1 — headings, body     */
  --ink-2: #AEB6BD;             /*  8.4:1 — secondary body     */
  --ink-3: #7C868E;             /*  4.8:1 — labels, meta       */

  /* Hairlines — warm neutral, NOT gold. */
  --rule-faint:  rgba(244, 242, 236, 0.07);
  --rule:        rgba(244, 242, 236, 0.13);
  --rule-strong: rgba(244, 242, 236, 0.24);
}

/* ---------- 3. TYPE ----------
   Canon: Trajan Pro Bold display / Montserrat SemiBold subhead /
   Inter Regular body. Cinzel substitutes for Trajan (free,
   self-hostable, same inscriptional skeleton).
   ------------------------------------------------------ */
:root {
  --font-display: 'Cinzel', 'Trajan Pro', Georgia, serif;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --font-label:   'Montserrat', var(--font-body);

  /* Scale — 1.25 major third, fluid where it earns it */
  --fs-hero:  clamp(2.25rem, 5.4vw, 4.25rem);
  --fs-h1:    clamp(1.875rem, 3.6vw, 3rem);
  --fs-h2:    clamp(1.5rem, 2.6vw, 2.125rem);
  --fs-h3:    clamp(1.25rem, 1.9vw, 1.5rem);
  --fs-lead:  clamp(1.0625rem, 1.35vw, 1.25rem);
  --fs-body:  1.0625rem;
  --fs-small: 0.9375rem;
  --fs-label: 0.75rem;
  --fs-micro: 0.6875rem;

  --lh-display: 1.1;
  --lh-heading: 1.22;
  --lh-body:    1.65;
  --lh-label:   1.4;

  --track-lockup: 0.32em;
  --track-label:  0.14em;
  --track-tight:  -0.01em;
}
