:root {
  /* Cores institucionais */
  --color-primary: #2B3F91;
  --color-primary-dark: #202F6E;
  --color-primary-light: #EEF0FA;
  --color-accent: #D2AC67;
  --color-accent-dark: #B8914F;
  --color-accent-light: #F7EFDF;
  --color-bg: #FFFFFF;

  /* Texto (nunca preto puro) */
  --color-heading: #1E2340;
  --color-text: #4A4F6B;
  --color-text-muted: #7A7FA0;
  --color-border: #E7E9F5;

  /* Tipografia */
  --font-heading: 'Playfair Display', Georgia, serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

  --fs-hero: clamp(1.35rem, 2.3vw, 2rem);
  --fs-h1: clamp(2rem, 3.5vw, 3rem);
  --fs-h2: clamp(1.5rem, 2.5vw, 2.25rem);
  --fs-h3: 1.25rem;
  --fs-h4: 1.05rem;
  --fs-lead: clamp(1.05rem, 1.5vw, 1.25rem);
  --fs-body: 1rem;
  --fs-small: 0.875rem;
  --fs-xs: 0.75rem;

  /* Espaçamento (escala base 4px) */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;
  --space-32: 128px;

  /* Superfícies */
  --radius-sm: 8px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-pill: 999px;

  --shadow-card: 0 4px 24px rgba(43, 63, 145, 0.08);
  --shadow-card-hover: 0 8px 32px rgba(43, 63, 145, 0.14);
  --shadow-header: 0 1px 0 rgba(43, 63, 145, 0.08);

  /* Layout */
  --container-max: 1280px;
  --container-padding: clamp(20px, 5vw, 64px);
  --header-height: 88px;

  --transition-base: 220ms ease;
  --transition-slow: 420ms ease;
}
