/* Scroll reveal system */
[data-reveal] {
  opacity: 0;
  transition: opacity var(--transition-slow), transform var(--transition-slow);
}

[data-reveal="fade-up"] { transform: translateY(30px); }
[data-reveal="fade-down"] { transform: translateY(-30px); }
[data-reveal="fade-left"] { transform: translateX(-30px); }
[data-reveal="fade-right"] { transform: translateX(30px); }
[data-reveal="scale-in"] { transform: scale(0.92); }
[data-reveal="fade-in"] { transform: none; }

[data-reveal].revealed {
  opacity: 1;
  transform: translate(0) scale(1);
}

/* Stagger delays */
[data-reveal-delay="100"] { transition-delay: 100ms; }
[data-reveal-delay="200"] { transition-delay: 200ms; }
[data-reveal-delay="300"] { transition-delay: 300ms; }
[data-reveal-delay="400"] { transition-delay: 400ms; }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  [data-reveal] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* Pendulum swing for logo (optional) */
@keyframes pendulum-swing {
  0%, 100% { transform: rotate(0deg); }
  25% { transform: rotate(8deg); }
  75% { transform: rotate(-8deg); }
}

.logo-animate {
  transform-origin: top center;
  animation: pendulum-swing 3s ease-in-out 1;
}

/* Pulse for CTA */
@keyframes pulse-glow {
  0%, 100% { box-shadow: 0 0 0 0 rgba(245, 197, 24, 0.4); }
  50% { box-shadow: 0 0 0 12px rgba(245, 197, 24, 0); }
}

.btn-pulse {
  animation: pulse-glow 2s ease-in-out 3;
}

/* Counter animation helper */
@keyframes count-up {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
