/* ============================================================
   Design tokens — Conceito "Convergência"
   ============================================================ */
:root {
  /* Cores */
  --ink:        #08001C;
  --ink-90:     rgba(8, 0, 28, 0.92);
  --ink-70:     rgba(8, 0, 28, 0.70);
  --ink-50:     rgba(8, 0, 28, 0.50);
  --ink-20:     rgba(8, 0, 28, 0.20);
  --ink-10:     rgba(8, 0, 28, 0.10);

  --paper:      #FAFAF7;
  --paper-90:   rgba(250, 250, 247, 0.92);
  --paper-70:   rgba(250, 250, 247, 0.70);
  --paper-50:   rgba(250, 250, 247, 0.50);
  --paper-20:   rgba(250, 250, 247, 0.20);
  --paper-10:   rgba(250, 250, 247, 0.10);

  --cyan:       #43CBFF;
  --cyan-soft:  rgba(67, 203, 255, 0.18);
  --cyan-glow:  rgba(67, 203, 255, 0.08);
  --coral:      #F55555;

  /* Tipografia */
  --font-display: "Loretto", "Fraunces", "Times New Roman", serif;
  --font-text:    "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono:    "JetBrains Mono", "SF Mono", Menlo, monospace;

  /* Escala fluida */
  --fs-xs:   clamp(0.7rem, 0.65rem + 0.2vw, 0.8rem);
  --fs-sm:   clamp(0.85rem, 0.8rem + 0.25vw, 0.95rem);
  --fs-base: clamp(0.95rem, 0.9rem + 0.3vw, 1.1rem);
  --fs-md:   clamp(1.1rem, 1rem + 0.5vw, 1.35rem);
  --fs-lg:   clamp(1.4rem, 1.2rem + 0.9vw, 1.85rem);
  --fs-xl:   clamp(1.9rem, 1.5rem + 1.8vw, 2.85rem);
  --fs-2xl:  clamp(2.5rem, 2rem + 2.8vw, 4.5rem);
  --fs-3xl:  clamp(3.5rem, 2.5rem + 5vw, 7rem);
  --fs-4xl:  clamp(4.5rem, 3rem + 8vw, 10rem);

  /* 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: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;
  --space-10: 8rem;

  /* Layout */
  --slide-pad-x: clamp(1.5rem, 5vw, 6rem);
  --slide-pad-y: clamp(1.5rem, 4vh, 4rem);
  --max-content: 1480px;
  --max-stage: 1700px;
}

/* Telas grandes (>1800px): nada no token — a centralização
   acontece via wrapper interno nos templates (slides.css). */

  /* Easing & duração */
  --ease-out-quint:  cubic-bezier(0.22, 1, 0.36, 1);
  --ease-in-out:     cubic-bezier(0.65, 0, 0.35, 1);
  --ease-deck:       cubic-bezier(0.50, 0, 0.12, 1);   /* transição entre slides (fluida) */
  --ease-content:    cubic-bezier(0.16, 1, 0.3, 1);    /* reveal de conteúdo */
  --dur-fast:   180ms;
  --dur-base:   320ms;
  --dur-slow:   620ms;
  --dur-xslow:  980ms;
  --dur-deck:   880ms;   /* duração da troca de slide */

  /* Stroke (motif Convergência) */
  --hairline: 1px solid rgba(67, 203, 255, 0.35);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-fast: 1ms;
    --dur-base: 1ms;
    --dur-slow: 1ms;
    --dur-xslow: 1ms;
  }
}
