@import "https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap";
body.page-index0 {
  cursor: none;
}
:root {
  --acte-fade-in: 1200ms;
  --acte-fade-out: 700ms;
  --acte-w: min(92vw, 1500px);
}
.acte {
  position: fixed;
  inset: 0;
  z-index: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--acte-fade-out) ease, visibility var(--acte-fade-out);
}
.acte.is-open {
  opacity: 1;
  visibility: visible;
  transition: opacity var(--acte-fade-in) ease, visibility var(--acte-fade-in);
}
.acte__image {
  max-width: var(--acte-w);
  max-height: 92vh;
  object-fit: contain;
  display: block;
}
.intro {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
  transition: opacity 900ms ease;
}
.intro.is-hidden {
  opacity: 0;
  pointer-events: none;
}
.intro__image {
  display: block;
  animation: intro-breathe 4s ease-in-out infinite;
}
@keyframes intro-breathe {
  0%, 100% {
    opacity: .62;
  }
  50% {
    opacity: 1;
  }
}
.intro__loading {
  position: absolute;
  bottom: 8%;
  left: 50%;
  transform: translateX(-50%);
  color: #4a4a4a;
  font-size: clamp(9px, .75vw, 12px);
  letter-spacing: .3em;
  opacity: 0;
  transition: opacity 400ms ease;
}
.intro__loading.is-visible {
  opacity: 1;
}
.intro__loading::after {
  content: "";
  animation: loading-dots 1.4s steps(4, end) infinite;
}
@keyframes loading-dots {
  0% {
    content: "";
  }
  25% {
    content: ".";
  }
  50% {
    content: "..";
  }
  75% {
    content: "...";
  }
  100% {
    content: "";
  }
}
.trailer {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #000;
  opacity: 0;
  transition: opacity 600ms ease;
}
.trailer.is-playing {
  opacity: 1;
}
.skip {
  position: fixed;
  right: 3vw;
  bottom: 3vh;
  z-index: 200;
  color: rgba(255, 255, 255, .34);
  font-size: clamp(9px, .72vw, 12px);
  letter-spacing: .24em;
  opacity: 0;
  pointer-events: none;
  transition: opacity 900ms ease;
}
.skip.is-visible {
  opacity: 1;
}
