:root{
  /* ===== primitivos — paleta azul/teal (extraída do criativo do Instagram,
     ver midias-sociais/DNA_SYSTEM.md — decisão de 02/08/2026, reverte a
     paleta preto/branco/amarelo anterior) ===== */
  --gs-black:#043D57;        /* azul-marinho profundo — só hero/CTA final */
  --gs-black-soft:#0A4E6D;   /* variação p/ profundidade dentro do azul-marinho */
  --gs-white:#FFFFFF;
  --gs-paper:#F1F6F9;        /* fundo claro dominante — tingido de azul, não branco puro */
  --gs-ink:#146C94;          /* texto principal sobre fundo claro — contraste ~5.8:1 */
  --gs-muted:#4C6478;        /* texto secundário sobre fundo claro — contraste ~6.2:1 */
  --gs-accent:#19A7CE;       /* ciano vibrante — ação/destaque, nunca texto de leitura sobre claro (contraste ~2.8:1) */
  --gs-accent-dim:rgba(25,167,206,.14);
  --gs-accent-glow:rgba(25,167,206,.35);
  --gs-line:rgba(20,108,148,.14);
  --gs-line-dark:rgba(255,255,255,.10);

  /* ===== semânticos ===== */
  --ink:var(--gs-ink);
  --muted:var(--gs-muted);
  --paper:var(--gs-paper);
  --surface-dark:var(--gs-black);
  --surface-dark-2:var(--gs-black-soft);
  --accent:var(--gs-accent);
  --accent-soft:var(--gs-accent-dim);
  --accent-glow:var(--gs-accent-glow);
  --line:var(--gs-line);
  --line-dark:var(--gs-line-dark);
  --radius:20px;
  --radius-sm:14px;
  --shadow:0 20px 60px rgba(11,58,82,.12);
  --shadow-accent:0 16px 40px rgba(25,167,206,.22);

  /* ===== motion ===== */
  --dur-fast:150ms;
  --dur-base:350ms;
  --dur-slow:600ms;
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-standard:cubic-bezier(.4,0,.2,1);

  /* aliases de compatibilidade com nomes antigos usados nos demais CSS
     (guaru-official/conversion/motion/case-realism/landing ainda não
     migrados nesta rodada) — agora apontam pra paleta azul/teal real,
     não mais valores neutros de transição */
  --navy:var(--gs-ink);
  --blue:var(--gs-ink);
  --blue-dark:var(--gs-black);
  --bg:var(--gs-paper);
  --white:var(--gs-white);
  --soft:rgba(20,108,148,.05);
}
