/**
 * Einblend-Animationen (Werte 1:1 von prixo.ch: Elementor-Animationen, überschrieben durch uicore-global.css):
 * .animated { animation-duration: 1.9s }
 * .fadeIn   { animation-name: uicoreFadeIn; timing cubic-bezier(0,0,.2,1) }
 * .fadeInUp { animation-name: uicoreFadeInUp, uicoreFadeIn; timing cubic-bezier(.22,1,.36,1), cubic-bezier(0,0,.2,1) }
 * uicoreFadeInUp: translate3d(0,7vh,0) -> translateZ(0)
 * Vor dem Start: visibility hidden (wie .elementor-invisible), nur wenn JavaScript läuft.
 */
.js .prixo-anim:not(.is-animated) {
	visibility: hidden;
}

.prixo-anim.is-animated {
	animation-duration: var(--prixo-anim-duration, 1.9s);
}

.prixo-anim--fade-in.is-animated {
	animation-name: prixo-fade-in;
	animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.prixo-anim--fade-in-up.is-animated {
	animation-name: prixo-fade-in-up, prixo-fade-in;
	animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1), cubic-bezier(0, 0, 0.2, 1);
}

@keyframes prixo-fade-in {
	0% {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes prixo-fade-in-up {
	0% {
		transform: translate3d(0, 7vh, 0);
	}

	to {
		transform: translateZ(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.js .prixo-anim:not(.is-animated) {
		visibility: visible;
	}

	.prixo-anim.is-animated {
		animation: none;
	}
}
