:root {
  /* ── Cores ── */
  --marsala:        oklch(35% 0.12 8);
  --marsala-dark:   oklch(28% 0.10 8);
  --marsala-hover:  oklch(31% 0.11 8);
  --creme-light:    oklch(97% 0.012 60);
  --creme-mid:      oklch(93% 0.018 50);
  --creme-text:     oklch(28% 0.025 50);
  --creme-muted:    oklch(55% 0.020 50);
  --white:          #ffffff;

  /* ── Tipografia — famílias ── */
  --font-display:  'Gloock', Georgia, serif;
  --font-body:     'Jost', system-ui, sans-serif;
  --font-ornament: 'Allura', cursive;

  /* ── Tipografia — escala (clamp mobile → desktop) ── */
  --text-display-xl:  clamp(2.5rem, 5vw, 4.5rem);    /* hero H1 */
  --text-display-lg:  clamp(2rem,   4vw, 3.25rem);   /* seções H2 */
  --text-display-md:  clamp(1.5rem, 2.5vw, 2rem);    /* cards H3 */
  --text-display-sm:  clamp(1.25rem, 2vw, 1.75rem);  /* manifesto */
  --text-body-lg:     clamp(1rem,   1.5vw, 1.125rem);
  --text-body-md:     0.9375rem;   /* 15px */
  --text-body-sm:     0.8125rem;   /* 13px */
  --text-eyebrow:     clamp(1rem, 1.5vw, 1.125rem);
  --text-ornament-lg: clamp(1.75rem, 3vw, 2.5rem);
  --text-ornament-xl: clamp(2rem, 3.5vw, 3rem);

  /* ── Espaçamentos ── */
  --space-section-gap: clamp(5rem, 8vw, 7.5rem);
  --space-section-pad: clamp(4rem, 6vw, 6rem);
  --container-max:     1200px;
  --container-pad:     clamp(1.25rem, 4vw, 1.5rem);
  --gap-grid:          1.5rem;

  /* ── Motion ── */
  --ease-out: cubic-bezier(0.2, 0.65, 0.3, 1);
  --dur-fast: 180ms;
  --dur-mid:  400ms;
  --dur-slow: 600ms;

  /* ── Miscelânea ── */
  --radius-sm:   4px;
  --radius-card: 8px;
  --shadow-1:    0 2px 12px oklch(35% 0.12 8 / 0.12);
  --shadow-2:    0 4px 24px oklch(35% 0.12 8 / 0.18);
}
