:root {
  /* Paleta da marca — marca-vinicius-modesto.pdf */
  --teal-950: #0d201f;
  --teal-900: #163332;
  --teal-800: #204745;
  --teal-700: #2c5f5d;
  --teal-600: #3c857f;
  --teal-500: #4fb3a9;
  --mint-400: #85c7bf;
  --mint-300: #acd8d3;
  --mint-200: #cae5e2;
  --mint-100: #e2f0ef;
  --mint-50: #edf5f5;
  --slate-700: #3c4a4a;
  --offwhite: #f4f8f8;

  --whatsapp: var(--teal-700);
  --whatsapp-dark: var(--teal-800);

  --font-display: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-sans: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-base: 1.0625rem;
  --fs-md: 1.125rem;
  --fs-lead: clamp(1.0625rem, 0.99rem + 0.34vw, 1.25rem);
  --fs-h4: 1.0625rem;
  --fs-h3: clamp(1.1875rem, 1.11rem + 0.36vw, 1.4375rem);
  --fs-h2: clamp(1.875rem, 1.35rem + 2.1vw, 3rem);
  --fs-h1: clamp(2.375rem, 1.55rem + 3.4vw, 4.25rem);
  --fs-display: clamp(2.75rem, 1.6rem + 4.6vw, 5rem);

  --lh-tight: 1.06;
  --lh-snug: 1.22;
  --lh-body: 1.65;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;
  --section-y: clamp(4.5rem, 3rem + 6vw, 8rem);

  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 22px;
  --radius-xl: 32px;
  --radius-pill: 999px;

  --container: 1180px;
  --container-narrow: 900px;
  --gutter: clamp(1.25rem, 0.7rem + 2.4vw, 2.5rem);
  --header-h: 76px;

  --ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --transition: 0.28s var(--ease);
  --theme-transition: 0.4s var(--ease);
}

:root,
:root[data-theme="light"] {
  color-scheme: light;

  --paper: var(--offwhite);
  --surface: #ffffff;
  --surface-2: var(--mint-50);
  --surface-3: var(--mint-100);

  --ink: var(--teal-950);
  --ink-soft: var(--slate-700);
  --muted: #567673;

  --line: rgba(44, 95, 93, 0.14);
  --line-strong: rgba(44, 95, 93, 0.26);

  --accent: var(--teal-700);
  --accent-hover: var(--teal-800);
  --accent-text: var(--teal-800);
  --accent-quiet: var(--teal-600);
  --accent-soft: var(--mint-400);
  --on-accent: #ffffff;

  --glass: rgba(255, 255, 255, 0.92);
  --chip-bg: rgba(255, 255, 255, 0.7);
  --header-bg: rgba(244, 248, 248, 0.85);
  --nav-bg: rgba(244, 248, 248, 0.98);
  --hero-glow: var(--mint-100);
  --arc: var(--mint-300);
  --selection-bg: var(--mint-200);
  --selection-ink: var(--teal-900);

  --cta-bg: var(--teal-700);
  --footer-bg: var(--teal-900);

  --map-filter: saturate(0.85);

  --shadow-xs: 0 1px 2px rgba(13, 32, 31, 0.05);
  --shadow-sm: 0 2px 8px -2px rgba(13, 32, 31, 0.08);
  --shadow-md: 0 12px 32px -12px rgba(13, 32, 31, 0.18);
  --shadow-lg: 0 32px 70px -28px rgba(13, 32, 31, 0.3);
}

:root[data-theme="dark"] {
  color-scheme: dark;

  --paper: var(--teal-950);
  --surface: var(--teal-900);
  --surface-2: rgba(133, 199, 191, 0.07);
  --surface-3: rgba(133, 199, 191, 0.12);

  --ink: var(--offwhite);
  --ink-soft: var(--mint-200);
  --muted: var(--mint-400);

  --line: rgba(133, 199, 191, 0.16);
  --line-strong: rgba(133, 199, 191, 0.32);

  --accent: var(--mint-400);
  --accent-hover: var(--mint-300);
  --accent-text: var(--mint-300);
  --accent-quiet: var(--mint-400);
  --accent-soft: var(--mint-400);
  --on-accent: var(--teal-950);

  --glass: rgba(22, 51, 50, 0.92);
  --chip-bg: rgba(133, 199, 191, 0.06);
  --header-bg: rgba(13, 32, 31, 0.85);
  --nav-bg: rgba(13, 32, 31, 0.98);
  --hero-glow: rgba(60, 133, 127, 0.28);
  --arc: rgba(133, 199, 191, 0.22);
  --selection-bg: var(--mint-400);
  --selection-ink: var(--teal-950);

  --cta-bg: var(--teal-800);
  --footer-bg: #081514;

  --map-filter: invert(0.9) hue-rotate(180deg) saturate(0.7) brightness(0.95);

  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-sm: 0 2px 8px -2px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 12px 32px -12px rgba(0, 0, 0, 0.6);
  --shadow-lg: 0 32px 70px -28px rgba(0, 0, 0, 0.75);
}

@media (max-width: 640px) {
  :root {
    --header-h: 64px;
  }
}
