:root {
  /* Editorial firm — navy + amber, contraste AA */
  --color-primary: #0b1f33;
  --color-primary-deep: #061018;
  --color-primary-soft: #152a40;
  --color-surface: #eef2f6;
  --color-surface-elevated: #ffffff;
  --color-ink: #0b1f33;
  --color-ink-muted: #4a5c6a;
  --color-ink-on-primary: #f1f5f9;
  --color-ink-on-primary-muted: #94a3b8;
  --color-accent: #b45309;
  --color-accent-hover: #92400e;
  --color-accent-soft: #ffedd5;
  --color-border: #d0d7e0;
  --color-success: #047857;
  --color-wa: #25d366;
  --color-wa-dark: #1ebe57;
  --color-warning: #b45309;
  --color-error: #dc2626;
  --color-focus: #1e3a8a;

  --font-heading: "Libre Baskerville", "Times New Roman", serif;
  --font-sans: "Source Sans 3", "Segoe UI", system-ui, sans-serif;
  --font-serif: var(--font-heading);

  --text-xs: 0.8125rem;
  --text-sm: 0.9375rem;
  --text-base: 1.0625rem;
  --text-md: 1.125rem;
  --text-lg: 1.4rem;
  --text-xl: 1.65rem;
  --text-2xl: 2.15rem;
  --text-3xl: 2.85rem;

  --leading-tight: 1.15;
  --leading-body: 1.65;
  --measure: 40ch;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3.25rem;
  --space-8: 5rem;
  --space-9: 7rem;

  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-btn: 0;
  --shadow-sm: 0 10px 30px rgba(11, 31, 51, 0.08);
  --container: 1140px;
  --header-h: 80px;
  --transition: 220ms ease;
}
