/* WP Scroll Reveal Blocks — frontend animation styles.
   All selectors are prefixed (wpsr-) and scoped to elements explicitly
   opted in via the editor, so this cannot affect unrelated markup. */

.wpsr-reveal {
	transition-property: transform, opacity;
	transition-timing-function: var(--wpsr-easing, ease-out);
	transition-duration: var(--wpsr-duration, 600ms);
	transition-delay: var(--wpsr-delay, 0ms);
	will-change: transform, opacity;
}

.wpsr-reveal.wpsr-init {
	transform: translate3d(var(--wpsr-x, 0), var(--wpsr-y, 0), 0);
}

.wpsr-reveal[data-wpsr-fade="true"].wpsr-init {
	opacity: 0;
}

.wpsr-reveal.wpsr-revealed {
	transform: translate3d(0, 0, 0);
	opacity: 1;
}

/* Word / letter reveal pieces */
.wpsr-piece {
	display: inline-block;
	transition-property: transform, opacity;
	transition-timing-function: var(--wpsr-easing, ease-out);
	transition-duration: var(--wpsr-duration, 600ms);
	will-change: transform, opacity;
}

.wpsr-piece.wpsr-init {
	opacity: 0;
	transform: translate3d(var(--wpsr-x, 0), var(--wpsr-y, 0), 0);
}

.wpsr-piece.wpsr-revealed {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

@media (prefers-reduced-motion: reduce) {
	.wpsr-reveal,
	.wpsr-piece {
		transition: none !important;
		transform: none !important;
		opacity: 1 !important;
	}
}
