/* Lightweight, theme-owned motion system. It uses transforms/opacity only,
 * so it never causes layout reflow or scroll jitter. */
@media (prefers-reduced-motion: no-preference) {
  .eterna-motion-reveal {
    opacity: 0;
    transform: translate3d(0, 22px, 0);
    transition: opacity .72s cubic-bezier(.22, .61, .36, 1), transform .72s cubic-bezier(.22, .61, .36, 1);
    will-change: opacity, transform;
  }
  .eterna-motion-reveal.eterna-motion-in {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    will-change: auto;
  }
  .eterna-motion-reveal.eterna-motion-delay-1 { transition-delay: .08s; }
  .eterna-motion-reveal.eterna-motion-delay-2 { transition-delay: .16s; }
  .eterna-motion-reveal.eterna-motion-delay-3 { transition-delay: .24s; }

  /* Slider copy is intentionally animated independently from the image
   * transition. The active slide alone receives this, avoiding timer-driven
   * class changes and the resulting header/slider jitter. */
  .bdt-prime-slider .swiper-slide-active .bdt-prime-slider-title,
  .bdt-prime-slider .swiper-slide-active .bdt-main-title,
  .swiper-slide-active .elementor-slide-heading,
  .swiper-slide-active .elementor-slide-title {
    animation: eterna-motion-hero-up .85s cubic-bezier(.22, .61, .36, 1) both;
  }
  .bdt-prime-slider .swiper-slide-active .bdt-prime-slider-desc,
  .bdt-prime-slider .swiper-slide-active .elementor-slide-description,
  .swiper-slide-active .elementor-slide-description {
    animation: eterna-motion-hero-up .85s .12s cubic-bezier(.22, .61, .36, 1) both;
  }
  .bdt-prime-slider .swiper-slide-active .bdt-prime-slider-button,
  .swiper-slide-active .elementor-slide-button {
    animation: eterna-motion-hero-up .85s .24s cubic-bezier(.22, .61, .36, 1) both;
  }

  @media (hover: hover) {
    main .eterna-event-poster a,
    main .eterna-ba-card,
    main .elementor-widget-image img {
      transition: transform .38s cubic-bezier(.22, .61, .36, 1), filter .38s ease;
    }
    main .eterna-event-poster a:hover,
    main .eterna-ba-card:hover,
    main .elementor-widget-image:hover img {
      transform: translate3d(0, -5px, 0);
    }
  }
}

@keyframes eterna-motion-hero-up {
  from { opacity: 0; transform: translate3d(0, 28px, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}
