/* ==========================================================
 * WT ANIMATIONS
 * ========================================================== */

[data-wt-animation] {
	transition-property:
		opacity,
		transform;

	transition-duration:
		var(--wtsbk-animation-duration, 600ms);

	transition-delay:
		var(--wtsbk-animation-delay, 0ms);

	transition-timing-function:
		cubic-bezier(0.2, 0.7, 0.2, 1);

	will-change:
		opacity,
		transform;
}


/* ==========================================================
 * FADE
 * ========================================================== */

[data-wt-animation="fade"] {
	opacity: 0;
}

[data-wt-animation="fade"].is-wt-visible {
	opacity: 1;
}


/* ==========================================================
 * SLIDE
 * ========================================================== */

/* Dal basso */

[data-wt-animation="slide"][data-wt-animation-direction="up"] {
	transform:
		translateY(
			var(--wtsbk-slide-distance)
		);
}


/* Dall'alto */

[data-wt-animation="slide"][data-wt-animation-direction="down"] {
	transform:
		translateY(
			calc(
				0px - var(--wtsbk-slide-distance)
			)
		);
}


/* Da sinistra */

[data-wt-animation="slide"][data-wt-animation-direction="left"] {
	transform:
		translateX(
			calc(
				0px - var(--wtsbk-slide-distance)
			)
		);
}


/* Da destra */

[data-wt-animation="slide"][data-wt-animation-direction="right"] {
	transform:
		translateX(
			var(--wtsbk-slide-distance)
		);
}


/* Stato finale */

[data-wt-animation="slide"].is-wt-visible {
	transform: translate3d(0, 0, 0);
}


/* ==========================================================
 * ZOOM
 * ========================================================== */

[data-wt-animation="zoom"] {
	transform: scale(0.88);
}

[data-wt-animation="zoom"].is-wt-visible {
	transform: scale(1);
}


/* ==========================================================
 * SLIDE + FADE
 * ========================================================== */

[data-wt-animation="slide-fade"] {
	opacity: 0;
}


/* Dal basso */

[data-wt-animation="slide-fade"][data-wt-animation-direction="up"] {
	transform:
		translateY(
			var(--wtsbk-slide-distance)
		);
}


/* Dall'alto */

[data-wt-animation="slide-fade"][data-wt-animation-direction="down"] {
	transform:
		translateY(
			calc(
				0px - var(--wtsbk-slide-distance)
			)
		);
}


/* Da sinistra */

[data-wt-animation="slide-fade"][data-wt-animation-direction="left"] {
	transform:
		translateX(
			calc(
				0px - var(--wtsbk-slide-distance)
			)
		);
}


/* Da destra */

[data-wt-animation="slide-fade"][data-wt-animation-direction="right"] {
	transform:
		translateX(
			var(--wtsbk-slide-distance)
		);
}


/* Stato finale */

[data-wt-animation="slide-fade"].is-wt-visible {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}


/* ==========================================================
 * ZOOM + FADE
 * ========================================================== */

[data-wt-animation="zoom-fade"] {
	opacity: 0;
	transform: scale(0.88);
}

[data-wt-animation="zoom-fade"].is-wt-visible {
	opacity: 1;
	transform: scale(1);
}


/* ==========================================================
 * ACCESSIBILITÀ
 * ========================================================== */

@media (prefers-reduced-motion: reduce) {

	[data-wt-animation] {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		will-change: auto;
	}
}