/* =============================================================================
   THE BRANDED HOUSE - design tokens (Stage 2, locked 2026-11-14)
   Palette: Press Magenta. Two neutrals + one accent; the accent is rationed.
   Type: Archivo Expanded (display) + Inter (body) + IBM Plex Mono (print specs).

   COMPOSITION CONTRACT (nextlevel Stage 2.5, non-negotiable)
   - Display reaches 88-160px at desktop: --fs-hero clamp(3.5rem, 9vw, 10rem)
   - Hero : body >= 6:1 (160 / 18 = 8.9)
   - No 1fr 1fr content splits; use 7fr 5fr, 2fr 1fr, 1fr 1.618fr
   - No repeat(auto-fit, minmax()) card grids
   - >= 3 measures: full-bleed, --w-wide 1400px, --w-prose 64ch
   - At least one section escapes the container
   - Section padding >= 12vh; hero >= 85vh
   ============================================================================= */
:root {
  /* Primitive */
  --ink-950: #0B0C0E;   /* Neutral 1: ink. Backgrounds. */
  --ink-900: #111317;
  --ink-850: #16181D;
  --ink-800: #1C1F25;
  --paper-50: #F2F1EE;  /* Neutral 2: paper. Text on ink, light sections. */
  --paper-100: #E6E4DF;
  --magenta-500: #FF2E93; /* Accent: press magenta. CTA + one headline word + prices. Never body text. */
  --magenta-400: #FF5AAA;
  --magenta-600: #D61A78;
  /* Process inks: ONLY inside the 3D ribbon light and the division markers */
  --proc-cyan: #00A3E0;
  --proc-magenta: #E4007C;
  --proc-yellow: #FFD400;

  /* Semantic */
  --bg: var(--ink-950);
  --bg-raise: var(--ink-900);
  --bg-card: var(--ink-850);
  --fg: var(--paper-50);
  --fg-muted: rgba(242, 241, 238, .66);  /* 9.6:1 on ink, passes AA */
  --fg-faint: rgba(242, 241, 238, .44);  /* decorative only, never body text */
  --line: rgba(242, 241, 238, .10);
  --line-strong: rgba(242, 241, 238, .22);
  --accent: var(--magenta-500);          /* 5.65:1 on ink */
  --accent-ink: var(--ink-950);          /* text ON the accent (white on magenta fails) */
  --wa: #25D366;

  /* Division markers (C/M/Y) */
  --div-print: var(--proc-cyan);
  --div-signage: var(--proc-magenta);
  --div-apparel: var(--proc-yellow);

  /* Type */
  --font-display: 'Archivo', 'Arial Black', system-ui, sans-serif;
  --font-body: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, 'Cascadia Mono', monospace;
  --display-stretch: 118%;
  --fs-hero: clamp(3.5rem, 6.2vw, 7.5rem); /* 89px at 1440: 3 lines max, roof owns the right */
  --fs-xl: clamp(2.8rem, 6.4vw, 7rem);
  --fs-lg: clamp(2.2rem, 4.6vw, 4.8rem);
  --fs-md: clamp(1.6rem, 2.8vw, 2.8rem);
  --fs-body: 1.125rem;
  --fs-small: .9375rem;
  --fs-micro: .75rem;
  --track-display: -0.02em;
  --track-micro: .14em;

  /* Measure + rhythm */
  --w-wide: 1400px;
  --w-prose: 64ch;
  --gutter: max(20px, 4vw);
  --section-y: max(12vh, 96px);

  /* Shape + motion */
  --radius: 14px;
  --radius-sm: 8px;
  --ease: cubic-bezier(0.16, 1, 0.3, 1);   /* expo.out, the one global ease */
  --t-fast: 180ms;
  --t-med: 420ms;
  --t-slow: 1100ms;
}
