/* ANIMACIE */
@keyframes fadeIn {
	0% { opacity: 0; transform: translateY(20px); }
	100% { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInLeft {
	0% { opacity: 0; transform: translateX(-20px); }
	100% { opacity: 1; transform: translateX(0); }
}

@keyframes flipIn {
	0% { opacity: 0; transform: perspective(600px) rotateY(90deg); }
	100% { opacity: 1; transform: perspective(600px) rotateY(0); }
}

@keyframes glow-pulse {
	0%, 100% { filter: drop-shadow(0 0 8px rgb(var(--bs-main-rgb))) drop-shadow(0 0 20px rgb(var(--bs-main-rgb))); }
	50% { filter: drop-shadow(0 0 16px rgb(var(--bs-main-rgb))) drop-shadow(0 0 40px rgb(var(--bs-main-rgb))); }
}

@keyframes pulse {
	0% { transform: scale(1); }
	50% { transform: scale(1.25); }
	100% { transform: scale(1); }
}

@keyframes rotateIn {
	0% { opacity: 0; transform: rotate(-15deg); }
	100% { opacity: 1; transform: rotate(0); }
}

@keyframes slideDown {
	0% { opacity: 0; transform: translateY(-20px); }
	100% { opacity: 1; transform: translateY(0); }
}

@keyframes slideInLeft {
	0% { opacity: 0; transform: translateX(-40px); }
	100% { opacity: 1; transform: translateX(0); }
}

@keyframes slideUp {
	0% { opacity: 0; transform: translateY(40px); }
	100% { opacity: 1; transform: translateY(0); }
}

@keyframes zoomIn {
	0% { opacity: 0; transform: scale(0.8); }
	100% { opacity: 1; transform: scale(1); }
}

/* ANIMACIE PRE IKONY */
.glow-icon { animation: glow-pulse 1.3s infinite alternate; }
.pulse-icon { animation: pulse 2s infinite; display: inline-block; }

/* EFEKTY */
.animate { animation-fill-mode: forwards; animation-play-state: paused; opacity: 0; transform-origin: center center; }
.animate-delay-1 { animation-delay: 0.25s; }
.animate-delay-2 { animation-delay: 0.5s; }
.animate-delay-3 { animation-delay: 0.75s; }
.animate-delay-4 { animation-delay: 1s; }
.fade-in { animation-duration: 0.75s; animation-name: fadeIn; }
.fade-in-left { animation-duration: 1s; animation-name: fadeInLeft; }
.flip-in { animation-duration: 1s; animation-name: flipIn; }
.rotate-in { animation-duration: 0.75s; animation-name: rotateIn; }
.slide-down { animation-duration: 0.75s; animation-name: slideDown; }
.slide-in-left { animation-duration: 0.75s; animation-name: slideInLeft; }
.slide-up { animation-duration: 0.75s; animation-name: slideUp; }
.zoom-in { animation-duration: 0.75s; animation-name: zoomIn; }