/* Scroll Reveal — CSS transition-based (works with View Transitions) */

/* Hidden state: each direction class sets an offset + opacity 0 */
.wow {
	opacity: 0;
	transition-property: opacity, transform;
	transition-timing-function: ease;
	transition-duration: 1s;
}

.wow.fadeInUp       { transform: translateY(20px); }
.wow.fadeInLeft      { transform: translateX(-20px); }
.wow.fadeInRight     { transform: translateX(20px); }
.wow.slideInRight    { transform: translateX(100px); }
.wow.bannerFadeInDown  { transform: translateY(-50px); }
.wow.bannerFadeInLeft  { transform: translateX(-50px); }
.wow.bannerFadeInRight { transform: translateX(50px); }

/* Revealed state */
.wow.animated {
	opacity: 1;
	transform: none;
}

/* Respect reduced motion preference */
@media (prefers-reduced-motion: reduce) {
	.wow {
		opacity: 1;
		transform: none;
		transition: none;
	}
}
