/* ===================================================================
   Animate Compat — جایگزین سبک‌وزن برای کلاس‌های انیمیشن قدیمی سایت
   (چون نسخه animate.css موجود در پروژه v4 با پیشوند animate__ بود و
   با کلاس‌های خام استفاده‌شده تو ویوها مثل fadeInDown هم‌خونی نداشت)
   =================================================================== */

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

.animated.infinite {
	animation-iteration-count: infinite;
}

@keyframes fadeInDown {
	from { opacity: 0; transform: translate3d(0, -30px, 0); }
	to   { opacity: 1; transform: translate3d(0, 0, 0); }
}
.fadeInDown { animation-name: fadeInDown; }

@keyframes fadeInUp {
	from { opacity: 0; transform: translate3d(0, 30px, 0); }
	to   { opacity: 1; transform: translate3d(0, 0, 0); }
}
.fadeInUp { animation-name: fadeInUp; }

@keyframes slideInDown {
	from { opacity: 0; transform: translate3d(0, -15px, 0); }
	to   { opacity: 1; transform: translate3d(0, 0, 0); }
}
.slide-in-down { animation-name: slideInDown; }

@keyframes zoomInLeft {
	from { opacity: 0; transform: scale3d(.4, .4, .4) translate3d(-40px, 0, 0); }
	60%  { opacity: 1; }
	to   { transform: translate3d(0, 0, 0); }
}
.zoomInLeft { animation-name: zoomInLeft; animation-duration: .9s; }

@keyframes pulse {
	0%   { transform: scale3d(1, 1, 1); }
	50%  { transform: scale3d(1.12, 1.12, 1.12); }
	100% { transform: scale3d(1, 1, 1); }
}
.pulse { animation-name: pulse; animation-duration: 1.1s; }

@media (prefers-reduced-motion: reduce) {
	.animated { animation: none !important; }
}
