/* Scroll reveal (see assets/js/reveal.js).
   Only active when JS is running: <html class="reveal-on"> is set by an inline script in the head
   (not in the Elementor editor). Uses a keyframe animation with "backwards" fill (no "to" frame),
   so after the animation the element's own transforms (hover effects etc.) are untouched. */

.reveal-on [data-reveal='up']:not([data-revealed]) { opacity: 0; }

.reveal-on [data-reveal='up'][data-revealed] {
  animation: reveal-up .9s var(--ease) var(--reveal-delay, 0ms) backwards;
}

@keyframes reveal-up {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .reveal-on [data-reveal]:not([data-revealed]) { opacity: 1; }
}
