/* =========================================================
   GMx — Design Tokens
   Baseado no Manual de Marca GMx Advisor v1.0
   ========================================================= */

:root{
  /* ---- Cores primárias ---- */
  --navy:            #001F3F; /* Confiança & Estratégia */
  --emerald:         #069F66; /* Ação & Resultado */

  /* ---- Cores secundárias ---- */
  --graphite:        #434343; /* Texto corpo, subtítulos */
  --light-gray:       #F5F5F5; /* Fundos de seção */
  --strategic-green: #00C853; /* CTAs e elementos de energia (site) */

  /* ---- Neutros derivados ---- */
  --white:           #FFFFFF;
  --navy-05:         rgba(0,31,63,0.05);
  --navy-08:         rgba(0,31,63,0.08);
  --navy-12:         rgba(0,31,63,0.12);
  --navy-60:         rgba(0,31,63,0.6);
  --emerald-10:      rgba(6,159,102,0.10);
  --emerald-20:      rgba(6,159,102,0.20);
  --line:            rgba(0,31,63,0.10);
  --line-strong:     rgba(0,31,63,0.18);

  /* ---- Tipografia ---- */
  --font-display: "Montserrat", "Helvetica Neue", Arial, sans-serif;
  --font-body:    "Open Sans", "Helvetica Neue", Arial, sans-serif;

  /* Escala tipográfica (clamp = fluida entre mobile e desktop) */
  --fs-h1:   clamp(2.1rem, 1.6rem + 2.2vw, 3.4rem);
  --fs-h2:   clamp(1.65rem, 1.35rem + 1.3vw, 2.4rem);
  --fs-h3:   clamp(1.3rem, 1.1rem + 0.8vw, 1.75rem);
  --fs-h4:   clamp(1.05rem, 0.95rem + 0.4vw, 1.25rem);
  --fs-lead: clamp(1.05rem, 0.95rem + 0.4vw, 1.2rem);
  --fs-body: 1rem;
  --fs-small:0.85rem;
  --fs-eyebrow: 0.95rem;

  /* ---- Espaçamento — sistema de 8px (do manual) ---- */
  --sp-1: 8px;
  --sp-2: 16px;
  --sp-3: 24px;
  --sp-4: 32px;
  --sp-6: 48px;
  --sp-8: 64px;
  --sp-12: 96px;
  --sp-16: 128px;

  /* ---- Layout ---- */
  --container-w: 1180px;
  --container-pad: clamp(20px, 5vw, 64px);
  --radius-s: 6px;
  --radius-m: 12px;
  --radius-l: 20px;

  /* ---- Motion ---- */
  --ease: cubic-bezier(.4,0,.2,1);
  --dur-s: 180ms;
  --dur-m: 320ms;
  --dur-l: 560ms;

  /* ---- Sombra sutil (uso comedido — a marca é flat) ---- */
  --shadow-card: 0 1px 2px rgba(0,31,63,0.04), 0 8px 24px rgba(0,31,63,0.06);
  --shadow-hover: 0 4px 8px rgba(0,31,63,0.06), 0 16px 32px rgba(0,31,63,0.10);
}

@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}
