@import url(https://fonts.googleapis.com/css?family=Montserrat:400,700);
body {
  margin: 0;
  padding: 0;
  background: -webkit-radial-gradient(center, ellipse cover, rgba(199, 85, 252, 0) 34%, rgba(0, 0, 0, 0.69) 190%);
  height: 100vh;
  overflow: hidden;
}
body .center {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
  height: 62px;
  margin: auto;
}

.stage {
  height: 100vh;
  position: relative;
  transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateX(0px) translateY(0px) translateZ(0px) scale(1.45);
}

.scene {
  perspective: 600;
  height: 100vh;
}
.scene .header, .scene .subheader {
  display: block;
  transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateX(0px) translateY(0px) translateZ(0px) scale(1) !important;
}
.scene h1, .scene .header {
  font-family: montserrat;
  color: #424242;
  font-size: 31px;
  font-weight: 700;
  margin: 0;
  left: -4px;
  letter-spacing: -3.4px;
  text-transform: uppercase;
}
.scene h1 span, .scene .header span {
  transform: scale(0);
  transition-property: transform;
  transition-duration: 1s;
  opacity: 0;
  position: relative;
  top: 20px;
  display: inline;
}
.scene h2 {
  top: -28px;
}
.scene h2, .scene .subheader {
  font-family: montserrat;
  text-transform: uppercase;
  letter-spacing: -2.9px;
  font-size: 22px;
  transform-origin: 0px 0%;
  color: #FF8D3F;
  transform: rotateX(-87deg);
  left: -3px;
  font-weight: 400;
  position: relative;
}
.scene .sub {
  opacity: 0;
}
.scene line {
  width: 200px;
  height: 2px;
  background: red;
}

.drop_swing {
  -webkit-animation: drop_swing 2s forwards, wipe_left 0.7s 2.8s forwards cubic-bezier(0.19, 1, 0.22, 1);
          animation: drop_swing 2s forwards, wipe_left 0.7s 2.8s forwards cubic-bezier(0.19, 1, 0.22, 1);
}

.intro_s {
  -webkit-animation: intro_3d 0.7s 0.8s forwards cubic-bezier(0.19, 1, 0.22, 1);
          animation: intro_3d 0.7s 0.8s forwards cubic-bezier(0.19, 1, 0.22, 1);
}

.intro {
  -webkit-animation: wipe_right 0.7s 2.85s forwards cubic-bezier(0.19, 1, 0.22, 1);
          animation: wipe_right 0.7s 2.85s forwards cubic-bezier(0.19, 1, 0.22, 1);
  position: relative;
  opacity: 1;
}

.code {
  -webkit-animation: up 0.5s 4s forwards cubic-bezier(0.19, 1, 0.22, 1), nudge 0.26s 4.45s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_right 0.7s 6s forwards cubic-bezier(0.19, 1, 0.22, 1);
          animation: up 0.5s 4s forwards cubic-bezier(0.19, 1, 0.22, 1), nudge 0.26s 4.45s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_right 0.7s 6s forwards cubic-bezier(0.19, 1, 0.22, 1);
  position: relative;
  top: 1000px;
}

.pro {
  -webkit-animation: down 0.45s 4.3s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_left 0.7s 6s forwards cubic-bezier(0.19, 1, 0.22, 1);
          animation: down 0.45s 4.3s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_left 0.7s 6s forwards cubic-bezier(0.19, 1, 0.22, 1);
  position: relative;
  top: 1000px;
}

.don {
  -webkit-animation: down 0.45s 7s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_left 0.7s 8.7s forwards cubic-bezier(0.19, 1, 0.22, 1);
          animation: down 0.45s 7s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_left 0.7s 8.7s forwards cubic-bezier(0.19, 1, 0.22, 1);
  position: relative;
  top: 1000px;
}

.years {
  -webkit-animation: up 0.5s 6.7s forwards cubic-bezier(0.19, 1, 0.22, 1), nudge 0.26s 7.15s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_right 0.7s 8.7s forwards cubic-bezier(0.19, 1, 0.22, 1);
          animation: up 0.5s 6.7s forwards cubic-bezier(0.19, 1, 0.22, 1), nudge 0.26s 7.15s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_right 0.7s 8.7s forwards cubic-bezier(0.19, 1, 0.22, 1);
  position: relative;
  top: 1000px;
}

.call, .not {
  display: none;
  opacity: 0;
}

.calc {
  -webkit-animation: down 0.45s 9.7s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_left 0.7s 11.4s forwards cubic-bezier(0.19, 1, 0.22, 1);
          animation: down 0.45s 9.7s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_left 0.7s 11.4s forwards cubic-bezier(0.19, 1, 0.22, 1);
  position: relative;
  top: 1000px;
}

.build {
  -webkit-animation: up 0.5s 9.4s forwards cubic-bezier(0.19, 1, 0.22, 1), nudge 0.26s 9.85s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_right 0.7s 11.4s forwards cubic-bezier(0.19, 1, 0.22, 1);
          animation: up 0.5s 9.4s forwards cubic-bezier(0.19, 1, 0.22, 1), nudge 0.26s 9.85s forwards cubic-bezier(0.19, 1, 0.22, 1), wipe_right 0.7s 11.4s forwards cubic-bezier(0.19, 1, 0.22, 1);
  position: relative;
  top: 1000px;
}

@-webkit-keyframes drop_swing {
  0% {
    transform: rotateX(-87deg);
  }
  50% {
    transform: rotateX(-87deg);
    opacity: 0;
  }
  70% {
    transform: rotateX(40deg);
    opacity: 1;
  }
  80% {
    transform: rotateX(-20deg);
    opacity: 1;
  }
  90% {
    transform: rotateX(15deg);
    opacity: 1;
  }
  100% {
    transform: rotateX(0deg);
    opacity: 1;
  }
}

@keyframes drop_swing {
  0% {
    transform: rotateX(-87deg);
  }
  50% {
    transform: rotateX(-87deg);
    opacity: 0;
  }
  70% {
    transform: rotateX(40deg);
    opacity: 1;
  }
  80% {
    transform: rotateX(-20deg);
    opacity: 1;
  }
  90% {
    transform: rotateX(15deg);
    opacity: 1;
  }
  100% {
    transform: rotateX(0deg);
    opacity: 1;
  }
}
@-webkit-keyframes intro_3d {
  100% {
    transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateX(0px) translateY(0px) translateZ(0px) scale(1);
  }
}
@keyframes intro_3d {
  100% {
    transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateX(0px) translateY(0px) translateZ(0px) scale(1);
  }
}
@-webkit-keyframes wipe_left {
  from {
    left: 0;
    transform: rotateX(0deg);
    opacity: 1;
  }
  to {
    opacity: 0;
    left: -200px;
    transform: rotateX(0deg);
    display: none;
  }
}
@keyframes wipe_left {
  from {
    left: 0;
    transform: rotateX(0deg);
    opacity: 1;
  }
  to {
    opacity: 0;
    left: -200px;
    transform: rotateX(0deg);
    display: none;
  }
}
@-webkit-keyframes wipe_right {
  from {
    left: 0;
    transform: rotateX(0deg);
    opacity: 1;
  }
  to {
    opacity: 0;
    left: 200px;
    transform: rotateX(0deg);
    display: none;
  }
}
@keyframes wipe_right {
  from {
    left: 0;
    transform: rotateX(0deg);
    opacity: 1;
  }
  to {
    opacity: 0;
    left: 200px;
    transform: rotateX(0deg);
    display: none;
  }
}
@-webkit-keyframes up {
  0% {
    top: -1000px;
  }
  50% {
    top: 10px;
  }
  100% {
    top: 0px;
  }
}
@keyframes up {
  0% {
    top: -1000px;
  }
  50% {
    top: 10px;
  }
  100% {
    top: 0px;
  }
}
@-webkit-keyframes nudge {
  0% {
    top: 0;
  }
  50% {
    top: -10px;
  }
  100% {
    top: 0px;
  }
}
@keyframes nudge {
  0% {
    top: 0;
  }
  50% {
    top: -10px;
  }
  100% {
    top: 0px;
  }
}
@-webkit-keyframes down {
  0% {
    top: 1000px;
  }
  50% {
    top: -10px;
  }
  100% {
    top: 0px;
  }
}
@keyframes down {
  0% {
    top: 1000px;
  }
  50% {
    top: -10px;
  }
  100% {
    top: 0px;
  }
}