/* ══════════════════════════════════════════════════
   VALOR MEDICAL REVIEWS — Design Tokens
   All visual decisions live here. Change once,
   the whole site updates.
   ══════════════════════════════════════════════════ */

:root {
  /* ── Brand Colors ── */
  --color-navy:        #17334F;   /* Primary: headings, nav, structural */
  --color-navy-deep:   #0e2236;   /* Footer background */
  --color-burgundy:    #8A1E2D;   /* Accent: rules, highlights, hover states */
  --color-white:       #ffffff;
  --color-surface:     #F8FAFC;   /* Light backgrounds, alternating sections */
  --color-body:        rgba(0,0,0,0.85);  /* Body text */
  --color-muted:       rgba(0,0,0,0.55);  /* Metadata, sub-labels, footer */
  --color-border:      rgba(23,51,79,0.08);

  /* ── Typography ── */
  --font-heading: 'Cinzel', serif;
  --font-body:    'Inter', system-ui, sans-serif;

  --text-xs:    0.8125rem;   /* 13px - legal, footer */
  --text-sm:    0.875rem;    /* 14px - captions, nav, labels */
  --text-base:  1rem;        /* 16px - body */
  --text-md:    1.125rem;    /* 18px - process headings */
  --text-lg:    1.1875rem;   /* 19px - footer CTA sub */
  --text-xl:    1.25rem;     /* 20px - hero sub */
  --text-2xl:   1.375rem;    /* 22px - feature h3 */
  --text-3xl:   2.25rem;     /* 36px - features heading */
  --text-4xl:   2.5rem;      /* 40px - section titles */
  --text-hero:  4.25rem;     /* 68px - hero headline */
  --text-cta:   2.875rem;    /* 46px - footer CTA heading */

  --weight-regular:  400;
  --weight-medium:   500;
  --weight-semibold: 600;
  --weight-bold:     700;

  --leading-tight:  0.98;
  --leading-snug:   1.15;
  --leading-heading: 1.2;
  --leading-body:   1.6;
  --leading-loose:  1.7;
  --leading-prose:  1.75;

  --tracking-tight:  0.01em;
  --tracking-normal: 0.02em;
  --tracking-wide:   0.03em;
  --tracking-label:  0.04em;

  /* ── Spacing (8-point grid) ── */
  --space-1:  0.25rem;   /* 4px */
  --space-2:  0.5rem;    /* 8px */
  --space-3:  0.75rem;   /* 12px */
  --space-4:  1rem;      /* 16px */
  --space-5:  1.25rem;   /* 20px */
  --space-6:  1.5rem;    /* 24px */
  --space-8:  2rem;      /* 32px */
  --space-10: 2.5rem;    /* 40px */
  --space-12: 3rem;      /* 48px */
  --space-16: 4rem;      /* 64px */
  --space-20: 5rem;      /* 80px */
  --space-24: 6rem;      /* 96px */
  --space-32: 8rem;      /* 128px */

  /* ── Layout ── */
  --nav-height:      72px;
  --nav-height-mobile: 60px;
  --container-max:   1100px;
  --container-wide:  1200px;
  --container-narrow: 700px;
  --section-pad:     80px 20px;

  /* ── Z-Index Stack ── */
  --z-base:     0;
  --z-above:    10;
  --z-nav:      100;
  --z-dropdown: 200;
  --z-overlay:  300;
  --z-modal:    400;

  /* ── Shadows ── */
  --shadow-sm:   0 2px 8px rgba(0,0,0,0.06);
  --shadow-md:   0 10px 25px rgba(0,0,0,0.08);
  --shadow-lg:   0 14px 34px rgba(0,0,0,0.10);

  /* ── Borders & Radii ── */
  --radius-sm:   4px;
  --radius-md:   6px;
  --radius-lg:   10px;
  --radius-pill: 999px;
  --border-default: 1px solid var(--color-border);

  /* ── Transitions ── */
  --transition-fast: 150ms ease;
  --transition-base: 250ms ease;
  --transition-slow: 300ms ease;
}
