body {
  overflow: hidden;
}
.black_cover {
  height: 100%;
  width: 100%;
  background-color: #00bbff;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 1;
  transition: opacity 0.3s ease-out,
    transform 3s cubic-bezier(0.1, 0.82, 0.165, 1.2);
  z-index: 999999999;
}

.black_cover.hide,
.preloader.hide {
  transform: translateY(-170%);
  -webkit-transform: translateY(-170%);
}

.preloader {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

/* Box */

.spinner {
  width: 70.4px;
  height: 70.4px;
  --clr: rgb(247, 197, 159);
  --clr-alpha: rgb(247, 197, 159, 0.1);
  animation: spinner 1.6s infinite ease;
  transform-style: preserve-3d;
}

.spinner > div {
  height: 100%;
  position: absolute;
  width: 100%;
  border: 3px solid black;
}

.spinner div:nth-of-type(1) {
  transform: translateZ(-35.2px) rotateY(180deg);
}

.spinner div:nth-of-type(2) {
  transform: rotateY(-270deg) translateX(50%);
  transform-origin: top right;
}

.spinner div:nth-of-type(3) {
  transform: rotateY(270deg) translateX(-50%);
  transform-origin: center left;
}

.spinner div:nth-of-type(4) {
  transform: rotateX(90deg) translateY(-50%);
  transform-origin: top center;
}

.spinner div:nth-of-type(5) {
  transform: rotateX(-90deg) translateY(50%);
  transform-origin: bottom center;
}

.spinner div:nth-of-type(6) {
  transform: translateZ(35.2px);
}

@keyframes spinner {
  0% {
    transform: rotate(45deg) rotateX(-25deg) rotateY(25deg);
  }

  50% {
    transform: rotate(45deg) rotateX(-385deg) rotateY(25deg);
  }

  100% {
    transform: rotate(45deg) rotateX(-385deg) rotateY(385deg);
  }
}

.custom-loader {
  width: 120px;
  height: 13px;
  border-radius: 20px;
  color: black;
  border: 2px solid;
  position: relative;
  margin-top: 0.2em;
}
.custom-loader::before {
  content: "";
  position: absolute;
  margin: 2px;
  inset: 0 100% 0 0;
  border-radius: inherit;
  background: black;
  animation: p6 2s infinite;
}

@keyframes p6 {
  100% {
    inset: 0;
  }
}

#loading_text {
  font-size: 1.5em;
  font-family: Spacer;
  color: black;
  margin-top: 2em;
}

.custom-shape-divider-top-1707225707 .shape-fill {
  fill: #00bbff;
}
.custom-shape-divider-top-1707225707 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 500px;
}
.custom-shape-divider-top-1707225707 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  line-height: 0;
  transform: rotate(180deg) translateY(-99%);
}

@media screen and (max-width: 600px) {
  .black_cover.hide,
  .preloader.hide {
    transform: translateY(-180%) !important;
  }
}
