/* Scroll-reveal animation: initial state (before in viewport) */
.reveal {
  opacity: 0;
  transform: translate3d(0, 40px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);
  transition:
    opacity 0.6s ease,
    transform 0.6s ease;
}

/* Visible state when element has entered viewport */
.reveal.in-view {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);
}

/* Optional stagger delays (add class reveal-delay-1, reveal-delay-2, ...) */
.reveal.reveal-delay-1 { transition-delay: 0.1s; }
.reveal.reveal-delay-2 { transition-delay: 0.2s; }
.reveal.reveal-delay-3 { transition-delay: 0.3s; }
.reveal.reveal-delay-4 { transition-delay: 0.4s; }
.reveal.reveal-delay-5 { transition-delay: 0.5s; }
