/* ==========================================================================
   Design tokens — ALLCAR Auto Center
   Fonte única de verdade para cores, espaçamento, tipografia e transições.
   ========================================================================== */

:root {
  /* --- Cores: superfícies ------------------------------------------------ */
  --bg: #121212;
  --bg-deep: #0d0d0d;
  --surface: #1a1a1a;
  --surface-2: #222222;
  --surface-3: #2a2a2a;
  --border: #2e2e2e;
  --border-soft: #262626;

  /* --- Cores: marca ------------------------------------------------------ */
  --brand: #f5a623;
  --brand-strong: #ff8c00;
  --brand-dark: #c67f12;
  --brand-soft: rgba(245, 166, 35, 0.12);
  --brand-softer: rgba(245, 166, 35, 0.06);

  /* --- Cores: texto ------------------------------------------------------ */
  --text: #f2f2f2;
  --text-muted: #a8a8a8;
  --text-dim: #7a7a7a;
  --text-on-brand: #1a1200;

  /* --- Cores: apoio ------------------------------------------------------ */
  --whatsapp: #25d366;
  --star: #f5a623;
  /* Fundo dos cartões de logo de marcas parceiras: sempre branco, para as
     cores originais de cada logo baterem certo independente do tema escuro. */
  --logo-card-bg: #ffffff;

  /* --- Espaçamento ------------------------------------------------------- */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 2.5rem;
  --space-8: 3rem;
  --space-9: 4rem;
  --space-10: 5rem;
  --space-11: 6rem;
  --space-12: 8rem;

  /* Respiro vertical entre seções, fluido conforme a largura da tela. */
  --section-gap: clamp(4rem, 9vw, 7.5rem);

  /* --- Tipografia -------------------------------------------------------- */
  --font-body: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial,
    sans-serif;
  --font-display: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial,
    sans-serif;

  --fs-eyebrow: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-base: 1rem;
  --fs-lg: 1.125rem;
  --fs-xl: clamp(1.25rem, 2vw, 1.5rem);
  --fs-h3: clamp(1.25rem, 2.2vw, 1.625rem);
  --fs-h2: clamp(1.875rem, 4vw, 3rem);
  --fs-h1: clamp(2.5rem, 7vw, 4.5rem);
  --fs-display: clamp(3.5rem, 9vw, 6rem);

  --lh-tight: 1.1;
  --lh-snug: 1.3;
  --lh-normal: 1.65;

  --fw-regular: 400;
  --fw-medium: 500;
  --fw-bold: 700;
  --fw-black: 800;

  /* --- Formas e profundidade --------------------------------------------- */
  --radius-sm: 8px;
  --radius: 14px;
  --radius-lg: 22px;
  --radius-pill: 999px;

  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);
  --shadow: 0 12px 32px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 24px 60px rgba(0, 0, 0, 0.5);
  --shadow-glow: 0 0 60px rgba(245, 166, 35, 0.18);
  --shadow-brand: 0 12px 28px rgba(245, 166, 35, 0.25);

  /* --- Layout ------------------------------------------------------------ */
  --container: 1200px;
  --container-narrow: 900px;
  --header-h: 76px;

  /* --- Movimento --------------------------------------------------------- */
  --ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-fast: 160ms;
  --dur: 280ms;
  --dur-slow: 560ms;

  /* --- Camadas ----------------------------------------------------------- */
  --z-base: 1;
  --z-sticky: 50;
  --z-header: 100;
  --z-fab: 200;
  --z-overlay: 300;
}

/* O usuário pediu menos movimento: zera as durações globalmente.
   O JS também checa essa preferência para não iniciar animações imperativas. */
@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-fast: 0ms;
    --dur: 0ms;
    --dur-slow: 0ms;
  }
}
