:root {
  /* ── Paleta Impactante ── */
  --forest: #1A3C2A;
  --forest-light: #2D5A3E;
  --moss: #4A7C59;
  --moss-light: #6B9E7A;
  --petrol: #0A3D4F;
  --petrol-light: #1A5C72;
  --gold: #C9A84C;
  --gold-light: #E0C66A;
  --gold-dark: #A8892E;
  --earth: #D4C5A9;
  --earth-light: #E8DFCE;
  --clay: #8B6F5A;
  --charcoal: #1A1A1A;
  --off-white: #F5F0E8;
  --cream: #FAF6EE;
  --snow: #FEFCF8;
  --ink: #2C2C2C;
  --stone: #6B6B6B;
  --fog: #A8A8A8;

  /* ── Tokens Semânticos ── */
  --bg-primary: var(--off-white);
  --bg-secondary: #EDE6D6;
  --bg-dark: var(--forest);
  --bg-card: #FFFFFF;
  --text-primary: var(--charcoal);
  --text-secondary: #4A4A4A;
  --text-muted: #7A7A7A;
  --text-on-dark: var(--cream);
  --text-on-dark-muted: rgba(245, 240, 232, 0.7);
  --border-color: #C4B49A;
  --border-strong: var(--charcoal);

  --accent: var(--gold);
  --accent-hover: var(--gold-dark);
  --primary: var(--forest);
  --primary-hover: var(--forest-light);
  --secondary: var(--petrol);
  --secondary-hover: var(--petrol-light);
  --tertiary: var(--moss);

  /* ── Sombras Brutais ── */
  --shadow-sm: 4px 4px 0px rgba(26, 26, 26, 0.08);
  --shadow-md: 6px 6px 0px rgba(26, 26, 26, 0.12);
  --shadow-lg: 8px 8px 0px rgba(26, 26, 26, 0.15);
  --shadow-xl: 12px 12px 0px rgba(26, 26, 26, 0.18);
  --shadow-2xl: 16px 16px 0px rgba(26, 26, 26, 0.2);
  --shadow-glow: 0 0 40px rgba(201, 168, 76, 0.25);
  --shadow-glow-forest: 0 0 40px rgba(26, 60, 42, 0.25);

  /* ── Glass ── */
  --glass-bg: rgba(255, 255, 255, 0.75);
  --glass-border: 2px solid var(--charcoal);
  --glass-shadow: 8px 8px 0px rgba(26, 26, 26, 0.12);

  /* ── Bordas ── */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-2xl: 24px;
  --radius-full: 9999px;
  --border-thick: 3px;

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

  --fs-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.8125rem);
  --fs-sm: clamp(0.8125rem, 0.775rem + 0.2vw, 0.875rem);
  --fs-base: clamp(0.9375rem, 0.9rem + 0.2vw, 1rem);
  --fs-md: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  --fs-lg: clamp(1.125rem, 1.05rem + 0.4vw, 1.3125rem);
  --fs-xl: clamp(1.375rem, 1.2rem + 0.9vw, 1.75rem);
  --fs-2xl: clamp(1.75rem, 1.4rem + 1.8vw, 2.5rem);
  --fs-3xl: clamp(2.25rem, 1.7rem + 2.8vw, 3.5rem);
  --fs-4xl: clamp(2.75rem, 2rem + 3.8vw, 4.5rem);
  --fs-5xl: clamp(3.5rem, 2.5rem + 5vw, 5.5rem);

  /* ── Espaçamento ── */
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;
  --space-3xl: 4rem;
  --space-4xl: 6rem;
  --space-5xl: 8rem;
  --space-6xl: 10rem;

  /* ── Transições ── */
  --transition-fast: 150ms cubic-bezier(0.34, 1.56, 0.64, 1);
  --transition-base: 300ms cubic-bezier(0.34, 1.56, 0.64, 1);
  --transition-slow: 600ms cubic-bezier(0.22, 1, 0.36, 1);
  --transition-spring: 500ms cubic-bezier(0.34, 1.56, 0.64, 1);

  /* ── Z-index ── */
  --z-header: 1000;
  --z-modal: 2000;
  --z-chat: 900;
  --z-whatsapp: 950;

  /* ── Container ── */
  --container-max: 1280px;
  --container-padding: clamp(1rem, 3vw, 2rem);
}

/* ══════════════════════════════════
   DARK MODE
   ══════════════════════════════════ */
[data-theme="dark"] {
  --bg-primary: #0D0D0D;
  --bg-secondary: #141414;
  --bg-dark: #0A0A0A;
  --bg-card: #1A1A1A;
  --text-primary: #E8E0D8;
  --text-secondary: #9A9A9A;
  --text-muted: #6A6A6A;
  --text-on-dark: #E8E0D8;
  --text-on-dark-muted: rgba(232, 224, 216, 0.6);
  --border-color: #2A2A2A;
  --border-strong: #E8E0D8;

  --accent: var(--gold-light);
  --accent-hover: var(--gold);
  --primary: var(--moss);
  --primary-hover: var(--moss-light);
  --secondary: var(--petrol-light);

  --shadow-sm: 4px 4px 0px rgba(0, 0, 0, 0.4);
  --shadow-md: 6px 6px 0px rgba(0, 0, 0, 0.5);
  --shadow-lg: 8px 8px 0px rgba(0, 0, 0, 0.6);
  --shadow-xl: 12px 12px 0px rgba(0, 0, 0, 0.7);
  --shadow-2xl: 16px 16px 0px rgba(0, 0, 0, 0.8);
  --shadow-glow: 0 0 40px rgba(224, 198, 106, 0.2);
  --shadow-glow-forest: 0 0 40px rgba(74, 124, 89, 0.2);

  --glass-bg: rgba(13, 13, 13, 0.88);
  --glass-border: 2px solid rgba(232, 224, 216, 0.15);
  --glass-shadow: 8px 8px 0px rgba(0, 0, 0, 0.5);
}
