html.three-kb-preloader-lock,
html.three-kb-preloader-lock body {
	overflow: hidden !important;
}

.three-kb-preloader {
	position: fixed;
	inset: 0;
	z-index: 2147483647;
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	height: 100dvh;
	background: #040030;
	opacity: 1;
	visibility: visible;
	pointer-events: all;
	transition:
		opacity 420ms ease,
		visibility 420ms ease;
}

.three-kb-preloader.is-hidden {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.three-kb-preloader__logo {
	display: block;
	width: clamp(130px, 24vw, 240px);
	height: auto;
	max-width: 54vw;
	animation: three-kb-preloader-pulse 1.05s cubic-bezier(.4, 0, .2, 1) infinite;
	transform-origin: center;
	will-change: transform, opacity;
	user-select: none;
	-webkit-user-drag: none;
}

@keyframes three-kb-preloader-pulse {
	0%,
	100% {
		transform: scale(.92);
		opacity: .76;
	}

	50% {
		transform: scale(1.07);
		opacity: 1;
	}
}

@media (prefers-reduced-motion: reduce) {
	.three-kb-preloader__logo {
		animation: none;
	}

	.three-kb-preloader {
		transition-duration: 1ms;
	}
}
