:root {
	--anim-ease-out: cubic-bezier(0.2, 0.7, 0.2, 1);
	--anim-duration-base: 560ms;
	--anim-duration-fast: 300ms;
	--anim-distance: 18px;
	--anim-hover-lift: -3px;
	--anim-sheen-duration: 440ms;
	--anim-parallax-transition: 120ms;
	--anim-faq-expand: 320ms;
	--anim-faq-fade: 220ms;
}

body.animaciones-ready [data-anim] {
	opacity: 0;
	transform: translate3d(0, var(--anim-distance), 0) scale(0.985);
	filter: saturate(0.92);
	transition:
		opacity var(--anim-duration-base) var(--anim-ease-out),
		transform var(--anim-duration-base) var(--anim-ease-out),
		filter var(--anim-duration-base) var(--anim-ease-out);
	transition-delay: var(--anim-delay, 0ms);
	will-change: opacity, transform;
}

body.animaciones-ready [data-anim="slide-left"] {
	transform: translate3d(calc(var(--anim-distance) * -1), 0, 0) scale(0.99);
}

body.animaciones-ready [data-anim="slide-right"] {
	transform: translate3d(var(--anim-distance), 0, 0) scale(0.99);
}

body.animaciones-ready [data-anim="zoom-in"] {
	transform: translate3d(0, 10px, 0) scale(0.96);
}

body.animaciones-ready [data-anim].is-visible {
	opacity: 1;
	transform: translate3d(0, 0, 0) scale(1);
	filter: saturate(1);
}

.container-home_derecha img {
	transform: translate3d(0, var(--hero-parallax-y, 0px), 0) scale(1.02);
	transform-origin: center top;
	transition: transform var(--anim-parallax-transition) linear;
}

.container-home_logos-clientes {
	transform: translate3d(0, var(--logos-parallax-y, 0px), 0);
	transition: transform var(--anim-parallax-transition) linear;
}

.container-home_izquierda a:not(.logos-partnership_link),
.container-webinar_descripcion a,
.container-featured_cta,
.customers_reveal-toggle {
	position: relative;
	overflow: hidden;
}

.container-home_izquierda a:not(.logos-partnership_link)::after,
.container-webinar_descripcion a::after,
.container-featured_cta::after,
.customers_reveal-toggle::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(105deg, transparent 30%, color-mix(in srgb, var(--color-primary) 26%, var(--color-secondary)), transparent 70%);
	transform: translateX(-120%);
	opacity: 0;
	transition: transform var(--anim-sheen-duration) var(--anim-ease-out), opacity var(--anim-duration-fast) ease;
	pointer-events: none;
}

.container-home_izquierda a:not(.logos-partnership_link):hover::after,
.container-webinar_descripcion a:hover::after,
.container-featured_cta:hover::after,
.customers_reveal-toggle:hover::after {
	transform: translateX(120%);
	opacity: 0.7;
}

.container-rates_pais,
.container-technology_tech,
.testimonio-cliente,
.conjunto-pregunta {
	transition: transform var(--anim-duration-fast) var(--anim-ease-out), box-shadow var(--anim-duration-fast) var(--anim-ease-out), border-color var(--anim-duration-fast) var(--anim-ease-out);
}

.container-rates_pais:hover,
.container-technology_tech:hover,
.testimonio-cliente:hover,
.conjunto-pregunta:hover {
	transform: translateY(var(--anim-hover-lift));
}

.container-faq .faq-respuesta {
	overflow: hidden;
	max-height: 0;
	opacity: 0;
	transform: translateY(-6px);
	transition:
		max-height var(--anim-faq-expand) var(--anim-ease-out),
		opacity var(--anim-faq-fade) ease,
		transform var(--anim-faq-expand) var(--anim-ease-out);
}

.container-faq .faq-respuesta.is-open {
	opacity: 1;
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	body.animaciones-ready [data-anim],
	body.animaciones-ready [data-anim].is-visible {
		opacity: 1;
		transform: none;
		filter: none;
		transition: none;
	}

	.container-home_derecha img,
	.container-home_logos-clientes,
	.container-home_izquierda a:not(.logos-partnership_link)::after,
	.container-webinar_descripcion a::after,
	.container-featured_cta::after,
	.customers_reveal-toggle::after,
	.container-faq .faq-respuesta {
		transition: none;
	}
}
