/**
 * Moteur d'animations du template Bitelo, reproduit en autonome.
 * Keyframes : sous-ensemble d'Animate.css 3.7.0 (celles utilisées par le
 * template). Durées .adr-N et délais .adl-N : animation_utility.css
 * (oyethemes). Les classes sont posées par theme.js quand les éléments
 * entrent dans le viewport, et rejouées à chaque passage comme sur le
 * template d'origine.
 */

/* État d'attente : masqué jusqu'à l'entrée dans le viewport */
.bt-theme .bt-anim-wait {
	opacity: 0;
}

.bt-theme .animated {
	animation-duration: 1s;
	animation-fill-mode: both;
}

/* ---- Keyframes (Animate.css 3.7.0) ---- */
@keyframes fadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

.bt-theme .fadeIn { animation-name: fadeIn; }

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translate3d(0, 100%, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

.bt-theme .fadeInUp { animation-name: fadeInUp; }

@keyframes fadeInDown {
	from {
		opacity: 0;
		transform: translate3d(0, -100%, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

.bt-theme .fadeInDown { animation-name: fadeInDown; }

@keyframes fadeInLeft {
	from {
		opacity: 0;
		transform: translate3d(-100%, 0, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

.bt-theme .fadeInLeft { animation-name: fadeInLeft; }

@keyframes fadeInRight {
	from {
		opacity: 0;
		transform: translate3d(100%, 0, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

.bt-theme .fadeInRight { animation-name: fadeInRight; }

@keyframes zoomIn {
	from {
		opacity: 0;
		transform: scale3d(0.3, 0.3, 0.3);
	}
	50% {
		opacity: 1;
	}
}

.bt-theme .zoomIn { animation-name: zoomIn; }

/* ---- Durées (adr) et délais (adl) — valeurs du template ---- */
.bt-theme .adr-1 { animation-duration: 0.3s; animation-fill-mode: both; }
.bt-theme .adr-2 { animation-duration: 0.6s; animation-fill-mode: both; }
.bt-theme .adr-3 { animation-duration: 0.9s; animation-fill-mode: both; }
.bt-theme .adr-4 { animation-duration: 1.2s; animation-fill-mode: both; }
.bt-theme .adr-5 { animation-duration: 1.5s; animation-fill-mode: both; }

.bt-theme .adl-1 { animation-delay: 0.3s; animation-fill-mode: both; }
.bt-theme .adl-2 { animation-delay: 0.6s; animation-fill-mode: both; }
.bt-theme .adl-3 { animation-delay: 0.9s; animation-fill-mode: both; }
.bt-theme .adl-4 { animation-delay: 1.2s; animation-fill-mode: both; }

/* Les animations débordent pendant les glissements : ne pas créer
   d'ascenseur horizontal */
.bt-theme .et_pb_section,
.bt-theme .et_pb_row {
	overflow-x: clip;
}

/* Désactivation via le Customizer uniquement */
body.bt-no-animations .bt-anim-wait {
	opacity: 1 !important;
}

body.bt-no-animations .animated {
	animation: none !important;
}
