@charset "utf-8";
/* CSS Document */

/* Div layer for the entire container. */
#dc_container {
  position: fixed;
  width: 100%;
  height: 100%;
  margin: auto;
  font-size: 0;
  top: 0;
  left: 0;
  z-index: 99998;
  display:none;
}
#dc_content {
  position: absolute;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  z-index: 100;
}

/* Invisible button for background clickthrough. */
#dc_background_exit {
  position: absolute;
  width: 25px;
  height: 25px;
  top: 10px;
  left: 10px;
  z-index: 998;
  cursor: pointer;
  opacity: 0;
}
#dc_bgImage {
  position: absolute;
  bottom: 0px;
  left: 0px;
}
#dc_expand_logo {
  position: absolute;
  left: 5px;
  top: 5px;
}

#dc_content img, #dc_content svg, #dc_content object {
  width: 100%;
  height: auto
}

a.exit_link {
  position:absolute;
  z-index:900;
  width:100%;
  height:100%;
  left:0;
  top:0;
  touch-action:manipulation;
  -webkit-user-select:none;
  user-select:none;
  -webkit-touch-callout:none;
  touch-callout:none;
  display: none;
}

#dc_btnClose {
  display: block;
  display: none;
  position: fixed;
  width: 25px;
  height: auto;
  top: 0;
  right: 55px;
  z-index: 99999;
  cursor: pointer;
  touch-action: manipulation;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  touch-callout: none;
}

.content-wrapper {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #000000aa;
  opacity: 0;
  animation: fadein 0.5s ease-out forwards;
}

.content-container {
  width: 100vw;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
}

.content {
  width: 100vw;
  height: 100vh;
  position: relative;
}

.background-container {
  position: absolute;
  top: 0;
  right: -170px;
  height: 100vh;
  opacity: 0;
  animation: fadein 0.5s ease-out 0.5s forwards;
}

.background-container img {
  height: 100% !important;
  width: auto;
}

.car-container {
  position: absolute;
  min-width: 300px;
  width: min(530px, 93%);
  right: min(15px, 0.2%);
  bottom: -2vh;
  transform: translate3d(550px, -80px, 0px);
  animation: slideinLeft 1.3s ease-out 1s forwards;
  z-index: 999998;
}

.text-container {
  position: absolute;
  width: min(62%, 350px);
  right: min(80px, 10%);
  top: min(5vh, 100px);
  z-index: 999999;
  display: flex;
  flex-direction: column;
  align-items: end;
  gap: min(3vh, 30px);
}

@media only screen and (min-height: 577px) {
  .text-container {
    top: 10vh;
  }
}

@media only screen and (max-width: 967px) and (max-height: 577px) {
  .text-container {
    position: absolute;
    width: min(62%, 260px);
    right: min(80px, 10%);
  }
}

.text-container img {
  opacity: 0;
  animation: fadein 1.3s ease-out 2s forwards;
}

.text-container .learn-btn {
  font-family: Arial, Helvetica, sans-serif;
  color: #000;
  text-align: center;
  font-size: min(16px, 3vw);
  width: fit-content;
  padding-left: min(20px, 3vw);
  padding-right: min(20px, 3vw);
  padding-top: min(10px, 3vh);
  padding-bottom: min(10px, 3vh);
  border-radius: 8px;
  background-color: #fff;
  margin-top: -10px;
  opacity: 0;
  animation: fadein 1.3s ease-out 2.5s forwards;
}

.video-container {
  position: absolute;
  right: min(80px, 10%);
  bottom: min(94px, 16vh);
  z-index: 999997;
  overflow: hidden;
  border-radius: 20px;
  border: 4px solid #000;
  box-shadow: 0px 6px 30px #000;
  height: 0px;
  width: min(80%, 680px);
  opacity: 0;
  animation: scaleup 1s ease-in-out 2s forwards;
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 332px) {
  .video-container {
    bottom: min(38px, 16vh);
  }
}

.video-frame {
  width: 100%;
}

@keyframes scaleup {
  0% {
    opacity: 0;
    height: 0px;
  }

  20% {
    opacity: 1;
    height: 0px;
  }

  100% {
    opacity: 1;
    height: min(400px, 48vh);
  }
}

@keyframes slideinLeft {
  0% {
    transform: translate3d(550px, -100px, 0px) scale(0.5);
  }

  100% {
    transform: translate3d(0px, 0px, 0px) scale(1);
  }
}

@keyframes fadein {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

body {
  background-image: url('img/website-mockup.png');
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  height: 200vh;
  overflow-y: scroll;
}