:root {
  --primary: var(--awb-color-primary);
  --primary-dark: color-mix(in srgb, var(--awb-color-primary) 80%, black);
  --primary-light: color-mix(in srgb, var(--awb-color-primary) 60%, white);
  --primary-soft: color-mix(in srgb, var(--awb-color-primary) 15%, white);
  --secondary: var(--awb-color-secondary);
  --text-dark: var(--awb-color-text);
  --text-muted: color-mix(in srgb, var(--awb-color-text) 60%, white);
  --gray-border: var(--awb-color-border);
  --white: var(--awb-color-bg);
  --bg: color-mix(in srgb, var(--awb-color-bg) 98%, black);
}

/* ─── GLOBAL ANIMATIONS ─── */
@keyframes revealUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes pulse {
  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(45, 106, 79, 0.4);
  }
  50% {
    box-shadow: 0 0 0 5px rgba(45, 106, 79, 0);
  }
}
@keyframes underline {
  to {
    transform: scaleX(1);
  }
}
@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* ─── GLOBAL REVEAL ─── */
.reveal {
  opacity: 0;
  transform: translateY(32px);
  transition:
    opacity 0.7s ease,
    transform 0.7s cubic-bezier(0.23, 1, 0.32, 1);
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}
.reveal-delay-1 {
  transition-delay: 0.1s;
}
.reveal-delay-2 {
  transition-delay: 0.2s;
}
.reveal-delay-3 {
  transition-delay: 0.3s;
}
.reveal-delay-4 {
  transition-delay: 0.4s;
}
