[data-reveal] {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity 0.8s var(--ease), transform 0.8s var(--ease);
}

[data-reveal="fade-left"] {
	transform: translateX(-32px);
}

[data-reveal="fade-right"] {
	transform: translateX(32px);
}

[data-reveal="zoom-in"] {
	transform: scale(0.96);
}

[data-reveal].is-in {
	opacity: 1;
	transform: none;
}

@supports (animation-timeline: view()) {
	[data-scroll-scale] img {
		animation: bella-scroll-scale linear both;
		animation-timeline: view();
		animation-range: entry 0% cover 45%;
	}
}

@keyframes bella-scroll-scale {
	from { transform: scale(1.12); }
	to { transform: scale(1); }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }

	[data-reveal] {
		opacity: 1;
		transform: none;
		transition: none;
	}

	[data-scroll-scale] img {
		animation: none;
	}
}
