html.tp-preloader-lock,
html.tp-preloader-lock body { overflow: hidden; }

.site-preloader {
  --preloader-brand-y: 72vh;
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  overflow: hidden;
  display: block;
  color: #f8fbfd;
  background:
    radial-gradient(900px 620px at 82% -8%, rgba(73,200,242,.06), transparent 62%),
    radial-gradient(720px 520px at 8% 22%, rgba(255,216,74,.025), transparent 65%),
    #06111b;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: opacity;
  contain: strict;
  transition: opacity .56s cubic-bezier(.22,1,.36,1), visibility 0s linear 0s;
  animation: tp-preloader-failsafe .01s linear 4s forwards;
  isolation: isolate;
}

.site-preloader[data-state="hidden"] {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .5s cubic-bezier(.4,0,.2,1), visibility 0s linear .5s;
}

.site-preloader__canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  opacity: 1;
  will-change: opacity;
  transition: opacity .62s cubic-bezier(.22,1,.36,1);
}

.site-preloader[data-state="boot"] .site-preloader__canvas,
.site-preloader[data-state="hidden"] .site-preloader__canvas { opacity: 0; }

.site-preloader__brand {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: var(--preloader-brand-y);
  overflow: hidden;
  padding: 8px 14px;
  transform: translateX(-50%);
  white-space: nowrap;
  opacity: 1;
  will-change: opacity, clip-path, transform;
  transition: opacity .5s cubic-bezier(.22,1,.36,1);
}

.site-preloader[data-state="boot"] .site-preloader__brand,
.site-preloader[data-state="hidden"] .site-preloader__brand { opacity: 0; }

.site-preloader__brand strong {
  display: block;
  color: #f4fbff;
  font: 800 clamp(18px,2.1vw,25px)/1 Manrope,Inter,system-ui,sans-serif;
  letter-spacing: .075em;
  text-shadow: 0 0 18px rgba(113,215,255,.24);
}

.site-preloader__brand span {
  color: #ffd84a;
  letter-spacing: -.02em;
  text-shadow: 0 0 16px rgba(255,180,81,.28);
}

.site-preloader[data-state="visible"] .site-preloader__brand {
  clip-path: inset(0 100% 0 0);
  animation: tp-preloader-brand-reveal .72s cubic-bezier(.22,.72,.18,1) .12s forwards;
}

.site-preloader__brand::after {
  content: "";
  position: absolute;
  top: 2px;
  bottom: 2px;
  left: -16px;
  width: 16px;
  background: linear-gradient(90deg,transparent,rgba(165,238,255,.9),transparent);
  filter: blur(3px);
}

.site-preloader[data-state="visible"] .site-preloader__brand::after {
  animation: tp-preloader-brand-sweep .72s cubic-bezier(.22,.72,.18,1) .12s forwards;
}

@keyframes tp-preloader-brand-reveal {
  from { clip-path: inset(0 100% 0 0); transform: translateX(calc(-50% - 10px)); }
  to { clip-path: inset(0 0 0 0); transform: translateX(-50%); }
}

@keyframes tp-preloader-brand-sweep {
  from { left: -16px; }
  to { left: 100%; }
}

@keyframes tp-preloader-failsafe {
  to { opacity: 0; visibility: hidden; pointer-events: none; }
}

@media (max-width:700px) {
  .site-preloader__brand { padding-inline: 10px; }
  .site-preloader__brand strong { font-size: 18px; }
}

@media (prefers-reduced-motion:reduce) {
  .site-preloader { transition-duration: .01ms; }
  .site-preloader__canvas,
  .site-preloader__brand { transition-duration: .01ms; }
  .site-preloader[data-state="visible"] .site-preloader__brand {
    clip-path: none;
    animation: none;
  }
  .site-preloader__brand::after { display: none; }
}
