/**
 * Scroll reveal styles. See assets/js/reveal.js.
 *
 * Children of .chasmg-reveal start slightly lower and transparent, then settle
 * in sequence. Timing and easing come from theme.json tokens, so every section
 * shares one rhythm.
 */

.chasmg-reveal-ready .chasmg-reveal > * {
	opacity: 0;
	transform: translateY(20px);
	transition:
		opacity 0.7s var(--wp--custom--motion--easing),
		transform 0.7s var(--wp--custom--motion--easing);
	will-change: opacity, transform;
}

.chasmg-reveal-ready .chasmg-reveal.is-visible > * {
	opacity: 1;
	transform: none;
	will-change: auto;
}

/* Sequential, not all at once (Figma: "smooth, controlled and sequential"). */
.chasmg-reveal-ready .chasmg-reveal.is-visible > *:nth-child(1) { transition-delay: 0ms; }
.chasmg-reveal-ready .chasmg-reveal.is-visible > *:nth-child(2) { transition-delay: 90ms; }
.chasmg-reveal-ready .chasmg-reveal.is-visible > *:nth-child(3) { transition-delay: 180ms; }
.chasmg-reveal-ready .chasmg-reveal.is-visible > *:nth-child(4) { transition-delay: 270ms; }
.chasmg-reveal-ready .chasmg-reveal.is-visible > *:nth-child(5) { transition-delay: 360ms; }
.chasmg-reveal-ready .chasmg-reveal.is-visible > *:nth-child(6) { transition-delay: 450ms; }
.chasmg-reveal-ready .chasmg-reveal.is-visible > *:nth-child(n+7) { transition-delay: 540ms; }

/* Safety net: never hide content for reduced motion, whatever the markup. */
@media (prefers-reduced-motion: reduce) {

	.chasmg-reveal-ready .chasmg-reveal > * {
		opacity: 1;
		transform: none;
		transition: none;
	}
}
