/* ============================================================
   neumAC R&I — CANONICAL DESIGN TOKENS
   Consolidation Phase 1
   One source of truth. Do not redefine these variables per page.
   ============================================================ */
:root{
  --ease-clinical: cubic-bezier(.16,1,.3,1);
  --navy: #0C3868;
  --navy-2: #0C447C;
  --navy-3: #185FA5;
  --navy-footer: #07111F;

  /* Institutional tonal hierarchy — surface roles, not replacement brand colours. */
  --institutional-anchor-light: #0D3D58;
  --institutional-anchor: #0B3652;
  --institutional-anchor-deep: #092B3F;
  --institutional-mid-1: #15495E;
  --institutional-mid-2: #195367;
  --institutional-mid-3: #1D5C6D;
  --institutional-atmosphere: #E8EFF0;

  --teal: #007A7A;
  --teal-2: #00B3B3;
  --teal-lt: #E2F0F0;
  --teal-mid: rgba(0,122,122,.12);
  --blue-50: #E6F1FB;
  --blue-100: #B5D4F4;
  --blue-200: #85B7EB;
  --blue-400: #378ADD;
  --blue-600: #185FA5;
  --blue-800: #0C447C;
  --blue-900: #042C53;
  --white: #FFFFFF;
  --surface: #F7F6F3;
  --border-l: rgba(0,0,0,.06);
  --border-d: rgba(255,255,255,.1);
  --ink: #111111;
  --ink-2: #3A3A3A;
  --ink-3: #6B6B6B;
  --ink-4: #767676;
  --accent: var(--teal);
  --ff-display: "Fraunces",Georgia,serif;
  --ff-body: "DM Sans",system-ui,sans-serif;
  --ff-mono: "DM Mono","Courier New",monospace;
  --hdr: 68px;
  --hdr-mobile: 62px;
  --max: 1380px;
  --pad: clamp(1.25rem,4vw,3rem);
  --r-xs: 4px;
  --r-sm: 6px;
  --r-md: 8px;
  --r-lg: 12px;
  --fs-label: .75rem;
  --fs-meta: .875rem;
  --fs-body-sm: .9375rem;
  --fs-body: 1.0625rem;
  --fs-body-lg: 1.1875rem;
  --fs-h4: 1.3125rem;
  --fs-h3: clamp(1.375rem, 2vw, 1.75rem);
  --fs-h2: clamp(1.75rem, 3vw, 2.375rem);
  --fs-h1: clamp(2.25rem, 4.4vw, 3.25rem);
  --fs-hero-title: clamp(1.875rem,2.6vw,2.25rem);
  --rule-l: var(--border-l);
  --rule-d: var(--border-d);
  --teal-dim: rgba(0,122,122,.12);
  --off-white: #F7F6F3;
  --light-grey: #EAEAE5;
  --mid-grey: #D4D4CE;
  --rule: rgba(255,255,255,.1);
  --rule-light: rgba(255,255,255,.14);
  --text-on-dark: #F5F5F0;
  --text-on-dark-2: #9DAEC4;
  --text-on-dark-3: #5D7494;
  --text-on-light: #111111;
  --text-on-light-2: #3A3A3A;
  --text-on-light-3: #6B6B6B;
  --accent-2: var(--teal-2);
  --text-primary: #F5F5F0;
  --text-secondary: #9DAEC4;
  --text-muted: #5D7494;
  --header-h: var(--hdr);
  --max-w: var(--max);
  --r-xl: 20px;
  --shadow-xs: 0 1px 2px rgba(12,56,104,.04), 0 1px 3px rgba(12,56,104,.06);
  --shadow-sm: 0 2px 4px rgba(12,56,104,.04), 0 4px 12px rgba(12,56,104,.06);
  --shadow-md: 0 4px 8px rgba(12,56,104,.05), 0 12px 28px rgba(12,56,104,.08);
  --shadow-lg: 0 8px 16px rgba(12,56,104,.06), 0 24px 56px rgba(12,56,104,.10);
  --ring: 0 0 0 3px rgba(0,179,179,.32);
  --editorial-surface-bg:#fff;
  --editorial-surface-border:rgba(12,56,104,.095);
  --editorial-surface-border-soft:rgba(12,56,104,.068);
  --editorial-float-radius:14px;
  --editorial-float-radius-tablet:12px;
  --editorial-float-radius-mobile:10px;
  --editorial-raised-radius:10px;
  --editorial-raised-radius-compact:8px;
  --editorial-float-shadow:0 18px 48px rgba(7,38,65,.085),0 4px 14px rgba(7,38,65,.03);
  --editorial-float-shadow-tablet:0 14px 34px rgba(7,38,65,.075),0 3px 10px rgba(7,38,65,.026);
  --editorial-float-shadow-mobile:0 10px 26px rgba(7,38,65,.07),0 2px 7px rgba(7,38,65,.022);
  --editorial-raised-shadow:0 8px 24px rgba(7,38,65,.048),0 2px 7px rgba(7,38,65,.022);
  --editorial-raised-shadow-compact:0 6px 18px rgba(7,38,65,.042);
  --editorial-rule:rgba(12,56,104,.10);
  --editorial-rule-strong:rgba(12,56,104,.16);
  --editorial-media-edge:rgba(12,56,104,.09);
  --editorial-media-bg:#e8eef0;
  --editorial-dark-rule:rgba(255,255,255,.10);
  --fs-display-xl: clamp(2.75rem, 5.2vw, 4.25rem);
  --fs-display-lg: clamp(2.25rem, 4vw, 3.25rem);
  --fs-display-md: clamp(1.75rem, 3vw, 2.5rem);
  --lh-tight: 1.08;
  --lh-snug: 1.28;
  --lh-normal: 1.6;
  --lh-relaxed: 1.72;

  /* ============================================================
     ELITE INSTITUTIONAL REFINEMENT 01–04
     Canonical editorial typography, rhythm, media and figure tokens.
     ============================================================ */
  /* Typography roles */
  --type-label:clamp(.58rem,.10vw + .55rem,.64rem);
  --type-meta:clamp(.68rem,.10vw + .65rem,.74rem);
  --type-body-sm:clamp(.78rem,.12vw + .75rem,.84rem);
  --type-body:clamp(.88rem,.16vw + .84rem,.97rem);
  --type-lead:clamp(.98rem,.26vw + .92rem,1.12rem);
  --type-subhead:clamp(1.45rem,1.85vw,2rem);
  --type-section:clamp(2.4rem,3.65vw,3.9rem);
  --type-hero:clamp(3.1rem,4.85vw,5.15rem);
  --type-hero-line:clamp(2.7rem,4.55vw,4.7rem);
  --type-reading:clamp(.91rem,.14vw + .88rem,.98rem);

  --track-display:-.044em;
  --track-hero:-.05em;
  --track-label:.12em;

  --leading-display:.96;
  --leading-title:1.04;
  --leading-body:1.65;
  --leading-reading:1.74;

  --measure-reading:68ch;
  --measure-lead:58ch;
  --measure-caption:72ch;

  /* Vertical rhythm */
  --space-section:clamp(3.6rem,5vw,5.2rem);
  --space-section-compact:clamp(2.8rem,4vw,4rem);
  --space-section-tight:clamp(2.2rem,3.1vw,3rem);
  --space-section-head:clamp(1.75rem,2.55vw,2.6rem);
  --space-content-gap:clamp(1.15rem,2vw,2rem);
  --space-grid-gap:clamp(1.25rem,2.6vw,2.75rem);

  /* Scientific media / figure language */
  --sci-rule:#d4e0e4;
  --sci-rule-soft:#e3eaec;
  --sci-ink:#143b5f;
  --sci-muted:#6d7f8f;
  --sci-accent:#087f87;
  --sci-surface:#fbfaf7;
  --sci-caption-bg:#f3f6f6;
  --sci-node:5px;

  /* Elite refinements 05–08 — photography, icons, motion and states */
  --photo-documentary-bg:#e7edef;
  --photo-placeholder-bg:#edf2f3;
  --photo-edge:rgba(12,56,104,.10);

  --icon-size-xs:12px;
  --icon-size-sm:14px;
  --icon-size-md:18px;
  --icon-size-lg:22px;
  --icon-stroke:1.7;

  --motion-instant:120ms;
  --motion-fast:160ms;
  --motion-base:220ms;
  --motion-slow:320ms;
  --motion-distance:6px;

  --state-border:rgba(12,56,104,.14);
  --state-bg:#f7f9f9;
  --state-error:#9f3d3d;
  --state-error-bg:#fbf3f2;
  --state-success:#20714f;
  --state-success-bg:#f0f8f4;
}
