/* Interiia-style Orchid Gold startup preloader: right-aligned % counter */

@font-face {
  font-family: "PP Neue Montreal";
  src: url("../fonts/interiia/pp-neue-montreal-book.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "PP Neue Montreal";
  src: url("../fonts/interiia/pp-neue-montreal-medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "PP Neue Montreal";
  src: url("../fonts/interiia/pp-neue-montreal-bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

html.ogi-loading,
html.ogi-loading body {
  overflow: hidden !important;
}

#de-loader,
#de-loader .lds-roller {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.ogi-preloader {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 clamp(1.25rem, 4vw, 3.5rem);
  background: #1a1a1a;
  pointer-events: all;
  isolation: isolate;
  overflow: hidden;
  opacity: 1;
  transform: translate3d(0, 0, 0);
  will-change: transform, opacity;
}

.ogi-preloader.is-done {
  pointer-events: none;
}

.ogi-preloader__counter {
  font-family: "PP Neue Montreal", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: clamp(5.5rem, 18vw, 11.5rem);
  line-height: 0.85;
  letter-spacing: -0.04em;
  color: #f5f5f5;
  display: flex;
  align-items: flex-start;
  gap: 0.08em;
  user-select: none;
  opacity: 0;
  transform: translateY(12px);
}

.ogi-preloader.is-ready .ogi-preloader__counter {
  opacity: 1;
  transform: none;
  transition:
    opacity 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.ogi-preloader__num {
  font-variant-numeric: tabular-nums;
}

.ogi-preloader__pct {
  font-size: 0.28em;
  line-height: 1;
  margin-top: 0.35em;
  letter-spacing: -0.02em;
  font-weight: 400;
}

.ogi-preloader.is-opening {
  transition:
    transform 0.9s cubic-bezier(0.76, 0, 0.24, 1),
    opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1) 0.15s;
  transform: translate3d(0, -105%, 0);
  opacity: 0;
}

.ogi-preloader.is-opening .ogi-preloader__counter {
  opacity: 0;
  transform: translateY(-18px);
  transition: opacity 0.35s ease, transform 0.45s ease;
}

.ogi-preloader.is-gone {
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s linear 0.05s, opacity 0.05s linear;
}

html.ogi-boot-anim body {
  animation: ogi-page-in 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes ogi-page-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ogi-preloader,
  .ogi-preloader__counter,
  html.ogi-boot-anim body {
    animation: none !important;
    transition-duration: 0.01ms !important;
  }
}
