
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

::-webkit-scrollbar {
  display: none;
}

@font-face {
  font-family: 'Prototype';
  src: url('./Prototype.woff') format('woff');
}

@font-face{
  font-family: 'Ttl';
  src: url('./good_times_rg.woff') format('woff');
}

@font-face {
  font-family: 'Aquire';
  src: url('./AquireRegular.woff2') format('woff2'),
      url('./AquireRegular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
.loader {
  position: fixed;
  top: 0;
  left: 0;
  background: rgb(0, 0, 0);
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 100;
}

.ai-text {
  color:     rgb(0, 119, 255);
}

.loader img{
  width: 200px;
  height: auto;
}

.down-arrow {
  width: 30px;
  height: 30px;
  border-bottom: 4px solid white;
  border-right: 4px solid white;
  position: fixed;
  top: 60%;
  left: 50%;
}

.disppear {
  animation: vanish 1s forwards;
}

@keyframes vanish {
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  background-color: black;
}

.intro {
  height: 100vh;
  font-size: 40px;
  font-family: 'Ttl', 'san-serif';
  font-weight: normal;
  font-style: normal;
}

.intro video {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.intro h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: calc(1em + 3vw);
  color: white;
  align-items: center;
  text-align: center;
}

section {
  height: 0vh;
  color: black;
}

section h1 {
  padding-top: 0px;
  text-align: center;
  font-size: 80px;
}

#quote {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  text-align: center;
  width: clamp(10vw, 25vw, 40vw);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.25em + 0.75vw);
}

#question {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 40em);
  text-shadow: 2px 2px 2px black;
  font-family: 'Aquire', 'san-serif';
  font-weight: normal;
  font-style: normal;
  font-size: calc(0.25em + 1vw);
}

#sec1a {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 40em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.25em + 1vw);
}

#sec1b {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) translate(0px, 0.2031px) scale(2, 2);
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 40em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.25em + 1vw);
}

@media (max-width: 500px) {
  #sec1b{
    width: auto;
  }
  #sec1a{
    width: auto;
  }
  .down-arrow{
    left: 47.6%;
  }
}

#sec2-title{
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  text-align: center;
  width: clamp(10em, 19em, 19em);
  text-shadow: 2px 2px 2px black;
  font-size: 40px;
  font-family: 'Aquire', 'san-serif';
  font-weight: normal;
  font-style: normal;
  font-size: calc(1em + 1.5vw);
}

@media (max-width: 1400px) {
  #sec2-title{
    width: clamp(10em, 10em, 10em);
  }
}
.gif{
  display: block;
  position: fixed;
  top: 40%;
  height: 100%;
}

#gif1{
  left:15%;
}

#gif2{
  left: 50%;
}

#gif3{
  left: 85%;
}

#sec2a-title{
  top: 45%;
  left: 20%;
  transform: translate(-50%, -30%) !important;
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 5px rgb(0, 0, 0);
  font-size: calc(0.1em + 2vw);
  font-weight: 1000;
}

#sec2a-p{
  top: 65%;
  left: 20%;
  transform: translate(-50%, -50%) !important;
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.25em + 1.5vw);
  margin-top: 10px;
}

#sec2b-title{
  top: 45%;
  left: 50%;
  transform: translate(-50%, -30%) !important;
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 25em);
  text-shadow: 2px 2px 5px rgb(0, 0, 0);
  font-size: calc(0.1em + 2vw);
  font-weight: 1000;
}

#sec2b-p{
  top: 67.5%;
  left: 50%;
  transform: translate(-50%, -40%) !important;
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.25em + 1.5vw);
  margin-top: 10px;
}

#sec2c-title{
  top: 45%;
  left: 80%;
  transform: translate(-50%, -30%) !important;
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 5px rgb(0, 0, 0);
  font-size: calc(0.1em + 2vw);
  font-weight: 1000;
}

#sec2c-p{
  top: 65%;
  left: 80%;
  transform: translate(-50%, -50%) !important;
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.25em + 1.5vw);
  margin-top: 10px;
}

#image{
  border-color: white; 
  box-shadow: 0 0 10px rgb(255, 255, 255);
  height: 5em;
  display: block;
  margin: auto;
  border-radius: 20px;
}

#sec3a {
  position: fixed;
  top: 50%;
  left: 17.5%;
  transform: translate(-50%, -50%) !important;
  color: white;
  text-align: left;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.2em + 1.5vw);
}

#sec4a {
  position: fixed;
  top: 50%;
  left: 17.5%;
  transform: translate(-50%, -50%) !important;
  color: white;
  text-align: left;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.2em + 1.5vw);
}

#sec5a {
  position: fixed;
  top: 50%;
  left: 17.5%;
  transform: translate(-50%, -50%) !important;
  color: white;
  text-align: left;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.2em + 1.5vw);
}

#sec3b{
  position: fixed;
  top: 50%;
  left: 82.5%;
  transform: translate(-50%, -50%) !important;
  color: white;
  text-align: right;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.2em + 1.5vw);
}

#sec4b{
  position: fixed;
  top: 50%;
  left: 82.5%;
  transform: translate(-50%, -50%) !important;
  color: white;
  text-align: right;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.2em + 1.5vw);
}

#sec5b{
  position: fixed;
  top: 50%;
  left: 82.5%;
  transform: translate(-50%, -50%) !important;
  color: white;
  text-align: right;
  width: clamp(10em, 25em, 15em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.2em + 1.5vw);
}

.caption{
  position: fixed;
  bottom: 2%;
  left: 50%;
  transform: translate(-50%, -50%) !important;
  text-align: center;
  font-size: calc(0.2em + 1.5vw);
  color: white;
  width: clamp(10em, 50em, 50em);
}

#future-title{
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) translate(0px, 0.2031px) scale(2, 2);
    color: white;
    text-align: center;
    width: clamp(10em, 25em, 15em);
    text-shadow: 5px 5px 8px black;
    font-size: calc(0.5em + 2vw);
    font-family: 'Aquire', 'san-serif';
    font-weight: normal;
    font-style: normal;
}

@media (max-width: 575px) {
  #future-title{
    width: auto;
  }
}

#coolButton {
  background-color: rgb(29, 14, 143);
  border: none;
  color: white;
  padding: 1.5vw 2.5vw;
  text-align: center;
  text-decoration: none;
  font-size: calc(1.5vw + 0.25em);
  margin: 4px 2px;
  cursor: pointer;
  border-radius: 64px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease;
}

#coolButton:hover {
  background-color: rgb(0, 119, 255);
  box-shadow: 0 8px 16px rgba(255, 255, 255, 0.2);
}

.deep-dive-button{
  top: 75%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  text-align: center;
  margin-top: 50px;
}

#deep-dive-title{
  top: 35%;
  left: 50%;
  transform: translate(-50%, -50%) translate(0px, 0.2031px) scale(2, 2);
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 15em);
  text-shadow: 5px 5px 8px black;
  font-size: calc(0.5em + 2vw);
  font-family: 'Aquire', 'san-serif';
  font-weight: normal;
  font-style: normal;
}

#deep-dive-text{
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  text-align: center;
  width: clamp(10em, 25em, 25em);
  text-shadow: 2px 2px 2px black;
  font-size: calc(0.5em + 1.5vw);
  margin-top: 50px;
}

@media (max-width: 450px) {
  #deep-dive-title{
    width: clamp(10em, 10em, 10em);
  }
  #deep-dive-text{
    width: clamp(15em, 15em, 15em);
    font-size: 1.5em;
  }
  .deep-dive-button{
    transform: translate(-50%, -50%);
    color: white;
    text-align: center;
    margin-top: 10px;
    font-size: 4em;
    padding: 25%;
  }
  .caption{
    font-size: 4vw;
    max-width: 90%;
  }
  #coolButton {
    padding: 3vw 4vw;
  }
  #sec1a{
    font-size: 0.7em;
  }
  #sec1b{
    font-size: 0.7em;
  }
  #gif1{
    top: 10%;
    left: 50%;
  }
  #gif2{
    top: 40%;
    left: 50%;
  }
  #gif3{
    top: 70%;
    left: 50%;
  }
  #sec2a-p{
    font-size: 1em;
  }
  #sec2a-title{
    font-size: 1.5em;
  }
  #sec2b-p{
    font-size: 1em;
  }
  #sec2b-title{
    font-size: 1.5em;
  }
  #sec2c-p{
    font-size: 1em;
  }
  #sec2c-title{
    font-size: 1.5em;
  }
}

.timeline {
  position: fixed;
  bottom: 2.5%;
  left: 50%;
  transform: translate(-50%, 0%);
  width: 80%;
  height: 10px;
  background-color: rgba(255,255,255,0.3); 
  border-radius: 64px;
  z-index: 100;
}

.progress {
  position: fixed;
  bottom: 2.5%;
  top: 0;
  left: 0;
  height: 10px;
  background-color: #007bff;
  transition: width 0s ease-in-out;
  z-index: 100;
  border-radius: 64px;
}

.tl-button{
  position: fixed;
  bottom: 2.5%;
  transform: translate(-50%, 0%);
  width: 10px;
  height: 10px;
  background-color: rgba(255, 255, 255); 
  border-radius: 64px;
  overflow: hidden;
  scale: 1;
  z-index: 110;
  border: 0;
}

.tl-button:hover{
  cursor: pointer;
}

#btn1{
  left: 12.5%;
}

#btn2{
  left: 18%;
}

#btn3{
  left: 33%;
}

#btn4{
  left: 37.5%;
}

#btn5{
  left: 47.5%;
}

#btn6{
  left: 56%;
}

#btn7{
  left: 67.25%;
}

#btn8{
  left: 78%;
}

#btn9{
  left: 86.5%;
}

#btn10{
  left: 92.5%;
}

#btn11{
  left: 100%;
}

.deep-dive-sec {
  display: block;
  position: fixed;
  height: 100%;
  top: 40%;
  left: 50%;
}
