﻿/**
 * entmomo — animation-only rules.
 * Keyframes and motion helpers kept out of the Tailwind utility build.
 */

/* GSAP reveal targets start hidden only when JS is available. */
.js [data-reveal] {
	opacity: 0;
}

/* Marquee-style slow pan available for future hero treatments. */
@keyframes entmomo-pan {
	from { transform: scale(1.05) translateX(0); }
	to   { transform: scale(1.05) translateX(-2%); }
}

/* ---- Hero slider — Ken Burns pan + slide-content entrance ---
   Swiper toggles .swiper-slide-active on the visible slide; the
   animation restarts each time a slide re-enters that state. */
.hero-slider .swiper-slide img {
	transform: scale(1.05);
}
.hero-slider .swiper-slide-active img {
	animation: entmomo-pan 7s ease-out forwards;
}

@keyframes entmomo-hero-in {
	from { opacity: 0; transform: translateY(24px); }
	to   { opacity: 1; transform: translateY(0); }
}
.js .hero-slider .hero-title,
.js .hero-slider .hero-cta {
	opacity: 0;
}
.hero-slider .swiper-slide-active .hero-title {
	animation: entmomo-hero-in 0.8s ease-out 0.15s both;
}
.hero-slider .swiper-slide-active .hero-cta {
	animation: entmomo-hero-in 0.8s ease-out 0.35s both;
}

/* Respect user motion preferences across the board. */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}

	.js [data-reveal] {
		opacity: 1;
	}

	.js .hero-slider .hero-title,
	.js .hero-slider .hero-cta {
		opacity: 1;
	}

	.hero-slider .swiper-slide img {
		transform: none;
	}
}
