html.fnt-loading {
	overflow: hidden;
}

#fnt-page-loader {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity .4s ease, visibility .4s ease, transform .4s ease;
	opacity: 1;
	visibility: visible;
	transform: none;
}

#fnt-page-loader.fnt-loader-hide {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

#fnt-page-loader.fnt-exit-zoom.fnt-loader-hide {
	transform: scale(1.08);
}

#fnt-page-loader.fnt-exit-slide.fnt-loader-hide {
	transform: translateY(-6%);
}

/* Animacije loga (tip "Slika / GIF / SVG") dok je loader vidljiv */
.fnt-anim-pulse {
	animation: fnt-anim-pulse 1.6s ease-in-out infinite;
}
@keyframes fnt-anim-pulse {
	0%, 100% { transform: scale(1); opacity: 1; }
	50% { transform: scale(1.08); opacity: .85; }
}

.fnt-anim-rotate {
	animation: fnt-anim-rotate 2s linear infinite;
}
@keyframes fnt-anim-rotate {
	to { transform: rotate(360deg); }
}

.fnt-anim-fade {
	animation: fnt-anim-fade 1.4s ease-in-out infinite;
}
@keyframes fnt-anim-fade {
	0%, 100% { opacity: 1; }
	50% { opacity: .3; }
}

.fnt-anim-bounce {
	animation: fnt-anim-bounce 1s ease-in-out infinite;
}
@keyframes fnt-anim-bounce {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-14px); }
}

#fnt-page-loader .fnt-spinner {
	border: 4px solid rgba(0, 0, 0, .12);
	border-top-color: #222;
	border-radius: 50%;
	animation: fnt-spin .8s linear infinite;
}

@keyframes fnt-spin {
	to { transform: rotate(360deg); }
}

#fnt-page-loader img {
	object-fit: contain;
}
