/* [project]/src/components/intro/netflix-intro.css [app-client] (css) */
.netflix-intro-stage {
  z-index: 100;
  background: #000;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.netflix-intro {
  transform-origin: 30%;
  width: min(300px, 55vw);
  height: min(300px, 55vw);
  animation: 3.5s ease-in .5s forwards netflix-zoom-in;
  display: block;
  position: relative;
  overflow: hidden;
}

.netflix-intro:before {
  content: "";
  z-index: 5;
  transform-origin: 0;
  background-color: #000;
  border-radius: 50%;
  width: 150%;
  height: 30%;
  display: block;
  position: absolute;
  bottom: -27%;
  left: -25%;
}

.netflix-intro[data-letter="N"] .helper-1 {
  background-color: #e4091380;
  width: 19.5%;
  height: 100%;
  animation: 2s .6s forwards netflix-fading-box;
  position: absolute;
  top: 0;
  left: 22.4%;
  transform: rotate(180deg);
}

.netflix-intro[data-letter="N"] .helper-1 .effect-brush {
  animation: 2.5s 1.2s forwards netflix-brush-moving;
}

.netflix-intro[data-letter="N"] .helper-2 {
  width: 19.5%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 57.8%;
  overflow: hidden;
  transform: rotate(180deg);
}

.netflix-intro[data-letter="N"] .helper-2 .effect-brush {
  animation: 2s .5s forwards netflix-brush-moving;
}

.netflix-intro[data-letter="N"] .helper-3 {
  width: 19%;
  height: 150%;
  position: absolute;
  top: -25%;
  left: 40.5%;
  overflow: hidden;
  transform: rotate(-19.5deg);
  box-shadow: 0 0 35px -12px #0006;
}

.netflix-intro[data-letter="N"] .helper-3 .effect-brush {
  animation: 2s .8s forwards netflix-brush-moving;
}

.netflix-intro[data-letter="N"] .helper-4 {
  display: none;
}

.netflix-intro .effect-brush {
  width: 100%;
  height: 300%;
  position: absolute;
  top: 0;
  overflow: hidden;
}

.netflix-intro .effect-brush:before {
  content: "";
  background-color: #e40913;
  width: 100%;
  height: 70%;
  display: block;
  position: absolute;
  box-shadow: 0 0 29px 24px #e40913;
}

.netflix-intro [class*="fur-"] {
  height: 30%;
  display: block;
  position: absolute;
  bottom: 10%;
}

.netflix-intro .fur-1 {
  background: linear-gradient(#e40913 0% 15%, #0000 81%);
  width: 3.8%;
  left: 0%;
}

.netflix-intro .fur-2 {
  background: linear-gradient(#e40913 0% 10%, #0000 62%);
  width: 2.8%;
  left: 3.8%;
}

.netflix-intro .fur-3 {
  background: linear-gradient(#e40913 0% 37%, #0000 100%);
  width: 4.8%;
  left: 6.6%;
}

.netflix-intro .fur-4 {
  background: linear-gradient(#e40913 0% 23%, #0000 100%);
  width: 4%;
  left: 11.4%;
}

.netflix-intro .fur-5 {
  background: linear-gradient(#e40913 0% 15%, #0000 86%);
  width: 4%;
  left: 15.4%;
}

.netflix-intro .fur-6 {
  background: linear-gradient(#e40913 0% 27%, #0000 89%);
  width: 2.5%;
  left: 19.4%;
}

.netflix-intro .fur-7 {
  background: linear-gradient(#e40913 0% 20%, #0000 100%);
  width: 4%;
  left: 21.9%;
}

.netflix-intro .fur-8 {
  background: linear-gradient(#e40913 0% 30%, #0000 100%);
  width: 2%;
  left: 25.9%;
}

.netflix-intro .fur-9 {
  background: linear-gradient(#e40913 0% 35%, #0000 95%);
  width: 4%;
  left: 27.9%;
}

.netflix-intro .fur-10 {
  background: linear-gradient(#e40913 0% 39%, #0000 95%);
  width: 3.5%;
  left: 31.9%;
}

.netflix-intro .fur-11 {
  background: linear-gradient(#e40913 0% 34%, #0000 95%);
  width: 2%;
  left: 35.4%;
}

.netflix-intro .fur-12 {
  background: linear-gradient(#e40913 0% 22%, #0000 95%);
  width: 2.6%;
  left: 37.4%;
}

.netflix-intro .fur-13 {
  background: linear-gradient(#e40913 0% 47%, #0000 100%);
  width: 6%;
  left: 40%;
}

.netflix-intro .fur-14 {
  background: linear-gradient(#e40913 0% 36%, #0000 100%);
  width: 2%;
  left: 46%;
}

.netflix-intro .fur-15 {
  background: linear-gradient(#e40913 0% 29%, #0000 100%);
  width: 5.5%;
  left: 48%;
}

.netflix-intro .fur-16 {
  background: linear-gradient(#e40913 0% 39%, #0000 95%);
  width: 3%;
  left: 53.5%;
}

.netflix-intro .fur-17 {
  background: linear-gradient(#e40913 0% 45%, #0000 100%);
  width: 4.1%;
  left: 56.5%;
}

.netflix-intro .fur-18 {
  background: linear-gradient(#e40913 0% 34%, #0000 100%);
  width: 2.4%;
  left: 60.6%;
}

.netflix-intro .fur-19 {
  background: linear-gradient(#e40913 0% 47%, #0000 100%);
  width: 4%;
  left: 63%;
}

.netflix-intro .fur-20 {
  background: linear-gradient(#e40913 0% 27%, #0000 95%);
  width: 1.5%;
  left: 67%;
}

.netflix-intro .fur-21 {
  background: linear-gradient(#e40913 0% 37%, #0000 100%);
  width: 2.8%;
  left: 68.5%;
}

.netflix-intro .fur-22 {
  background: linear-gradient(#e40913 0% 9%, #0000 100%);
  width: 2.3%;
  left: 71.3%;
}

.netflix-intro .fur-23 {
  background: linear-gradient(#e40913 0% 28%, #0000 92%);
  width: 2.2%;
  left: 73.6%;
}

.netflix-intro .fur-24 {
  background: linear-gradient(#e40913 0% 37%, #0000 100%);
  width: 1%;
  left: 75.8%;
}

.netflix-intro .fur-25 {
  background: linear-gradient(#e40913 0% 28%, #0000 100%);
  width: 2.1%;
  left: 76.8%;
}

.netflix-intro .fur-26 {
  background: linear-gradient(#e40913 0% 34%, #0000 100%);
  width: 4.1%;
  left: 78.9%;
}

.netflix-intro .fur-27 {
  background: linear-gradient(#e40913 0% 21%, #0000 100%);
  width: 2.5%;
  left: 83%;
}

.netflix-intro .fur-28 {
  background: linear-gradient(#e40913 0% 39%, #0000 100%);
  width: 4.5%;
  left: 85.5%;
}

.netflix-intro .fur-29 {
  background: linear-gradient(#e40913 0% 30%, #0000 100%);
  width: 2.8%;
  left: 90%;
}

.netflix-intro .fur-30 {
  background: linear-gradient(#e40913 0% 19%, #0000 100%);
  width: 3.5%;
  left: 92.8%;
}

.netflix-intro .fur-31 {
  background: linear-gradient(#e40913 0% 37%, #0000 100%);
  width: 3.7%;
  left: 96.3%;
}

.netflix-intro .effect-lumieres {
  opacity: 0;
  width: 100%;
  height: 100%;
  animation: 2s 1.6s forwards netflix-show-lumieres;
  position: absolute;
}

.netflix-intro [class*="lamp-"] {
  background: var(--lamp-color);
  height: 100%;
  box-shadow: 0 0 10px 0 color-mix(in srgb, var(--lamp-color) 75%, transparent);
  animation-duration: 5s;
  animation-fill-mode: forwards;
  display: block;
  position: absolute;
}

.netflix-intro [class*="lamp-"]:before {
  content: " ";
  background: var(--lamp-color);
  width: 100%;
  height: 100%;
  box-shadow: 0 0 10px 0 color-mix(in srgb, var(--lamp-color) 75%, transparent);
  animation-duration: 5.5s;
  animation-fill-mode: forwards;
  display: block;
  position: absolute;
}

.netflix-intro .lamp-1, .netflix-intro .lamp-3, .netflix-intro .lamp-5, .netflix-intro .lamp-7, .netflix-intro .lamp-9, .netflix-intro .lamp-11, .netflix-intro .lamp-13, .netflix-intro .lamp-15, .netflix-intro .lamp-17, .netflix-intro .lamp-19, .netflix-intro .lamp-21, .netflix-intro .lamp-23, .netflix-intro .lamp-25, .netflix-intro .lamp-27 {
  animation-name: netflix-lumiere-left;
}

.netflix-intro .lamp-2, .netflix-intro .lamp-4, .netflix-intro .lamp-6, .netflix-intro .lamp-8, .netflix-intro .lamp-10, .netflix-intro .lamp-12, .netflix-intro .lamp-14, .netflix-intro .lamp-16, .netflix-intro .lamp-18, .netflix-intro .lamp-20, .netflix-intro .lamp-22, .netflix-intro .lamp-24, .netflix-intro .lamp-26, .netflix-intro .lamp-28 {
  animation-name: netflix-lumiere-right;
}

@keyframes netflix-brush-moving {
  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(-100%);
  }
}

@keyframes netflix-lumiere-left {
  0% {
    transform: translate(0);
  }

  40% {
    transform: translate(10px)scaleX(1);
  }

  50% {
    transform: translate(60px);
  }

  100% {
    transform: translate(120px)scaleX(3);
  }
}

@keyframes netflix-lumiere-right {
  0% {
    transform: translate(0);
  }

  40% {
    transform: translate(-10px)scaleX(1);
  }

  50% {
    transform: translate(-60px);
  }

  100% {
    transform: translate(-120px)scaleX(3);
  }
}

@keyframes netflix-zoom-in {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(15);
  }
}

@keyframes netflix-show-lumieres {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes netflix-fading-box {
  0% {
    background-color: #e4091380;
  }

  100% {
    background-color: #e4091300;
  }
}

.netflix-intro-stage--exit {
  animation: .7s ease-in forwards netflix-stage-fade;
}

@keyframes netflix-stage-fade {
  to {
    opacity: 0;
  }
}

.netflix-intro-title {
  text-align: center;
  opacity: 0;
  z-index: 20;
  animation: .8s 2.2s forwards netflix-title-in;
  position: absolute;
  bottom: 12%;
}

@keyframes netflix-title-in {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.netflix-intro-tap {
  letter-spacing: .2em;
  text-transform: uppercase;
  color: #ffffff59;
  z-index: 20;
  font-size: .75rem;
  position: absolute;
  bottom: 6%;
}

@media (prefers-reduced-motion: reduce) {
  .netflix-intro {
    animation: none;
    transform: scale(8);
  }

  .netflix-intro .effect-brush, .netflix-intro .effect-lumieres {
    opacity: 1;
    animation: none !important;
  }
}

.intro-boot-stage, .intro-tap-stage {
  z-index: 100;
  cursor: pointer;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  background: #000;
  border: none;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0;
}

.intro-boot-glow {
  pointer-events: none;
  background: radial-gradient(#e5091424, #0000 68%);
  position: absolute;
  inset: 0;
}

.intro-boot-content, .intro-tap-content {
  z-index: 1;
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 2rem;
  display: flex;
  position: relative;
}

.intro-boot-eyebrow {
  letter-spacing: .32em;
  text-transform: uppercase;
  color: #e50914d9;
  font-size: .7rem;
}

.intro-boot-title {
  font-family: var(--font-bebas), sans-serif;
  letter-spacing: .12em;
  color: #fff;
  text-transform: uppercase;
  font-size: clamp(2.5rem, 8vw, 4rem);
}

.intro-boot-subtitle {
  letter-spacing: .22em;
  text-transform: uppercase;
  color: #ffffff61;
  font-size: .8rem;
}

.intro-boot-progress-track {
  background: #ffffff1a;
  border-radius: 999px;
  width: min(280px, 70vw);
  height: 3px;
  margin-top: 1.5rem;
  overflow: hidden;
}

.intro-boot-progress-fill {
  border-radius: inherit;
  background: linear-gradient(90deg, #b20710, #e50914);
  height: 100%;
  transition: width .35s;
}

.intro-tap-title {
  font-family: var(--font-bebas), sans-serif;
  letter-spacing: .14em;
  color: #fff;
  text-transform: uppercase;
  font-size: clamp(1.75rem, 6vw, 3rem);
  animation: 2.4s ease-in-out infinite intro-tap-pulse;
}

.intro-tap-subtitle {
  letter-spacing: .18em;
  color: #ffffff6b;
  font-size: .85rem;
}

@keyframes intro-tap-pulse {
  0%, 100% {
    opacity: .88;
    transform: translateY(0);
  }

  50% {
    opacity: 1;
    transform: translateY(-2px);
  }
}

/*# sourceMappingURL=src_components_intro_netflix-intro_0ll8ysy.css.map*/