/* Shared section entrance animation */
html.reveal-ready main > section.section-reveal {
	opacity: 0;
	transform: translate3d(0, 28px, 0);
	transition:
		opacity 900ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 1000ms cubic-bezier(0.22, 1, 0.36, 1);
	will-change: opacity, transform;
}

html.reveal-ready main > section.section-reveal.is-revealed {
	opacity: 1;
	transform: none;
}

html.reveal-ready main > section.section-reveal.is-reveal-complete {
	transition: none;
	will-change: auto;
}

html.reveal-ready .reveal-item {
	opacity: 0;
	filter: blur(2px);
	transform: translate3d(0, 30px, 0);
	transition:
		opacity 800ms cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0ms),
		filter 900ms cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0ms),
		transform 900ms cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0ms);
	will-change: opacity, filter, transform;
}

html.reveal-ready .reveal-item.is-revealed {
	opacity: 1;
	filter: blur(0);
	transform: none;
}

html.reveal-ready .reveal-item.is-reveal-complete {
	will-change: auto;
}

@media (prefers-reduced-motion: reduce) {
	html.reveal-ready main > section.section-reveal {
		opacity: 1;
		transform: none;
		transition: none;
		will-change: auto;
	}

	html.reveal-ready .reveal-item {
		opacity: 1;
		filter: none;
		transform: none;
		transition: none;
		will-change: auto;
	}
}
