body {
  background: #D0EFFF;
  height: 500vh;
}

.vignette {
  width: 100%;
  height: 110vh;
  content: "";
  position: absolute;
  top: -10px !important;
  inset: 0;
  background: radial-gradient(
    ellipse at center,
    rgba(0, 0, 0, 0) 40%,
    rgba(0, 0, 0, 0.5) 100%
  );
  pointer-events: none; 
  opacity: 0;
  transition: opacity 0.4s ease-in-out;
}
.hidden{
  display: none !important;
}
.dark{
  opacity: 0;
}
.bright{
  opacity: 100 !important;
}
.mobile-container{
  display: none;
}
.laptop-download{
  display: block;
}
.mobile-download{
  display: none;
}
.device{
  position: fixed;
  top: -40%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: transform 0.1s ease-out;
  pointer-events: none;
  animation: top-center-device 2s forwards ease-in-out;
  transition: left 1s ease-in-out;
  animation-delay: 1s;
}

@keyframes top-center-device {
  0%{
    top: -40%;
    opacity: 0;
  }
  100%{
    top: 50%;
    opacity: 1;
  }
  
}

.left-device{
  transition: left 1s ease-in-out;
  left: 30%;
}


.download-btn {
  position: absolute;
  top: 4%;
  right: 4%;
  cursor: pointer;
  width: 263px;
  height: 65px;
  background: #0582FF;
  border-radius: 30px;
  border: none;
  z-index: 10;
  animation: top-top-button 1s forwards ease-in-out;
}

@keyframes top-top-button {
  0%{
    top: -25%;
  }
  100%{
    top: 4%;
  }
  
}

.download-btn-mobile .fa-download {
  display: inline-block;
  transform-origin: top center;
  animation: swing 2s ease-in-out infinite;
}


@keyframes swing {
  0% { transform: rotate(0deg); }
  25% { transform: rotate(15deg); }
  50% { transform: rotate(-10deg); }
  75% { transform: rotate(5deg); }
  100% { transform: rotate(0deg); }
}


.button-m{
  overflow: hidden;
  position: fixed;
  bottom: 4%;
  right: 4%;
  opacity: 0;
  z-index: 99999;
  transition: opacity 0.5s ease-in-out;
}

.download-btn-mobile {
  cursor: pointer;
  width: 62px;
  height: 62px;
  background: #0582FF;
  border-radius: 30px;
  border: none;
  z-index: 10;
  animation: bottom-bottom-button 1s forwards ease-in-out;
}

@keyframes bottom-bottom-button {
  0%{
    bottom: -25%;
  }
  100%{
    bottom: 4%;
  }
  
}

.expanded-mobile{
    width: 62px;
    height: 62px;
    opacity: 1;
}
.expanded-mobile-txt{
  font-size: 29px;
}

.button-text{
  font-family: 'Brick', sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 29px;
  line-height: 27px;
  color: #FFFFFF;
}
.up-arrow{
  display: flex;
  flex-direction: column;
  gap: 5px;
  position: fixed;
  top: 2%;
  right: 50%;
  transform: translateX(50%);
  /* z-index: 10; */
  font-size: 24px;
  color: black;
}

.up-arrow span {
  opacity: 0;
}
.up-arrow-mobile{
  display: flex;
  flex-direction: column;
  gap: 5px;
  position: fixed;
  top: 2%;
  left: 0%;
  transform: translateX(50%);
  font-size: 24px;
  color: black;
}
.up-arrow-mobile span {
  opacity: 0;
}
.down-arrow {
  display: flex;
  flex-direction: column;
  gap: 5px;
  position: fixed;
  bottom: 2%;
  right: 50%;
  transform: translateX(50%);
  /* z-index: 10; */
  font-size: 24px;
  color: black;
}

.down-arrow span {
  opacity: 0;
}
.down-arrow-mobile {
  display: flex;
  flex-direction: column;
  position: fixed;
  bottom: 2%;
  left: 0%;
  transform: translateX(50%);
  font-size: 24px;
  color: black;
}

.down-arrow-mobile span {
  opacity: 0;
}

.dot1m {
  text-align: center;
  color: #0582FF;
  font-size: 25px;
  font-weight: 900;
}

.dot2m {
  text-align: center;
  color: #0582FF;
  font-size: 20px;
  font-weight: 900;
}

.downm {
  text-align: center;
  color: #0582FF;
  font-size: 30px;
  font-weight: 900;
}
.down-arrow-mobile.mobile span{
  opacity: 100 !important;
}
.dot1 {
  text-align: center;
  color: #0582FF;
  font-size: 30px;
  animation: blink-sequence 3s infinite steps(1);
  animation-delay: 1s;
  font-weight: 900;
}

.dot2 {
  text-align: center;
  color: #0582FF;
  font-size: 20px;
  animation: blink-sequence 3s infinite steps(1);
  animation-delay: 2s;
  font-weight: 900;
}

.down {
  text-align: center;
  color: #0582FF;
  font-size: 30px;
  animation: blink-sequence 3s infinite steps(1);
  animation-delay: 3s;
  font-weight: 900;
}

@keyframes blink-sequence {
  0%, 33.32%   { opacity: 1; }
  33.33%, 100% { opacity: 0; }
}

.section-content.laptop{
  display: flex;
  flex-direction: column;
  gap: 0px;
}
.download-btn-below {
  position: fixed;
  bottom: 5%;
  right: 50%;
  transform: translateX(50%);
  cursor: pointer;
  width: 0px;
  height: 0px;
  background: #0582FF;
  border-radius: 30px;
  border: none;
  z-index: 10;
  transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
  padding: 0px;
}

.button-text-below{
  font-family: 'Brick', sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 0px;
  line-height: 27px;
  color: #FFFFFF;
  transition: font-size 0.4s ease-in-out;
}

.expanded{
  width: 263px;
  height: 65px;
}
.expanded-txt{
  font-size: 29px;
}





.content{
  color: white;
  position: relative;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}


.main-container {
    width: 100%;
    height: 100vh;
    position: fixed;
}
.logo-container{
  position: absolute;
  top: 1%;
  left: 1%;
  z-index: 10;
  animation: top-top-logo 1s forwards ease-in-out;
  text-align: center;
}
.logo-container-last{
  text-align: center;
  margin-bottom: -40px;
}
@keyframes top-top-logo {
  0%{
    top: -25%;
  }
  100%{
    top: 1%;
  }
  
}
.logo{
  height: 150px;
}
.logo.below{
  height: 180px !important;
}
.mobile-logo-container{
  text-align: center;
  margin-top: 20px;
  margin-bottom: -40px;
}
.section-content .mobile-logo-container{
  margin-bottom: unset !important;
}
.mobile-logo{
  height: 200px;
}
.texts {
  position: relative;
  font-family: 'Bigerside Expanded';
  font-style: normal;
  font-size: 100px;
  width: 100%;
  height: 100vh;
  /* pointer-events: none; */
  transition: font-size 0.4s ease-in-out;
}

.mobile.text{
  font-family: 'Bigerside Expanded';
  font-style: normal;
  text-shadow: none !important;
}

.text {
  position: absolute;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  transition: top 1s ease, bottom 1s ease, left 1s ease, right 1s ease, opacity 0.3s ease-in-out;
  cursor: pointer;
}

.plan{
  color: black;
  top: 39.7vh;
  left: 26.6vw;
}
.mark {
  color: black;
  animation-delay: 0s;
  top: 39.7vh;
  right: 26.2vw;
}

.shoot {
  color: black;
  animation-delay: 0s;
  bottom: 39.5vh;
  left: 22.8vw;
}

.sync {
  color: #0180FF;
  bottom: 39.5vh;
  right: 22.8vw;
}

.animate-plan {
  animation: left-right-plan 1.5s ease-in-out forwards;
  animation-delay: 1.4s;
}
.animate-mark {
  animation: right-left-mark 1s ease-in-out forwards;
}
.animate-shoot {
  animation: left-right-shoot 1.5s ease-in-out forwards;
}
.animate-sync {
  animation: right-left-sync 1s ease-in-out forwards;
  animation-delay: 1.4s;
}



@keyframes left-right-plan {
  0%{
    top: 39.7vh;
    left: -20vw;
    opacity: 0;
  }
  100%{
    top: 39.7vh;
    left: 26.6vw;
    opacity: 1;
  }
}
@keyframes left-right-shoot {
  0%{
    bottom: 39.5vh;
    left: -25vw;
    opacity: 0;
  }
  100%{
    bottom: 39.5vh;
    left: 22.8vw;
    opacity: 1;
  }
}
@keyframes right-left-mark {
  0%{
    top: 39.7vh;
    right: -20vw;
    opacity: 0;
  }
  100%{
    top: 39.7vh;
    right: 26.2vw;
    opacity: 1;
  }
}
@keyframes right-left-sync {
  0%{
    bottom: 39.5vh;
    right: -20vw;
    opacity: 0;
  }
  100%{
    bottom: 39.5vh;
    right: 22.8vw;
    opacity: 1;
  }
}

.text.move-plan {
  top: 1vh;
  left: 2vw !important;
}

.text.move-mark {
  top: 1vh;
  right: 2vw !important;
}

.text.move-shoot {
  bottom: 3vh;
  left: 2vw !important;
}

.text.move-sync {
  bottom: 3vh;
  right: 2vw !important;
}


/* .text.move-plan-ii {
  top: 1vh !important;
  left: 0.1vw !important;
}

.text.move-mark-ii {
  top: 1vh !important;
  right: 0.1vw !important;
} */

.text.move-shoot-ii {
  bottom: 39.5 !important;
  left: 27vw !important;
}

.text.move-sync-ii {
  bottom: 39.5 !important;
  right: 27vw !important;
}

.last-text{
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

.slow-dark{
    transition: top 1s ease, bottom 1s ease, left 1s ease, right 1s ease, opacity 1s ease-in-out;
}



.move-plan-box {
  top: 39.7vh !important;
  left: 26.6vw !important;
  max-width: 0px !important;
  max-height: 0px !important;
  padding: 0px !important;
  opacity: 0;
  transform: scale(0.5);
}

.move-mark-box {
  top: 39.7vh !important;
  right: 26.2vw !important;
  max-width: 0px !important;
  max-height: 0px !important;
  padding: 0px !important;
  opacity: 0;
  transform: scale(0.5);
}

.move-shoot-box {
  bottom: 39.5vh !important;
  left: 22.8vw !important;
  max-width: 0px !important;
  max-height: 0px !important;
  padding: 0px !important;
  opacity: 0;
  transform: scale(0.5);
}

.move-sync-box {
  bottom: 39.5vh !important;
  right: 22.8vw !important;
  max-width: 0px !important;
  max-height: 0px !important;
  padding: 0px !important;
  opacity: 0;
  transform: scale(0.5);
}


.cursor {
  display: inline-block;
  animation: blink 0.8s step-end infinite;
}

@keyframes blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}



.info-box {
  position: absolute;
  max-width: 360px;
  max-height: 250px;
  padding: 20px;
  background-color: #dbf3ff; 
  border-radius: 10px;
  font-family: monospace;
  font-size: 18px;
  white-space: pre-wrap;
  color: #333;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  z-index: -4;
  gap: 0;
  display: flex;
  flex-direction: column;
  transition: font-size 0.4s ease-in-out, max-height 0.8s ease-in-out, max-width 0.8s ease-in-out, padding 0.8s ease-in-out, top 0.8s ease-in-out, bottom 0.8s ease-in-out, left 0.8s ease-in-out, right 0.8s ease-in-out, opacity 0.8s ease-in-out, transform 0.8s ease-in-out;
  transform-origin: center;
}

.plan-box {
  top: 12vh;
  left: 2vw;
}
.mark-box {
  top: 12vh;
  right: 2vw;
}
.shoot-box {
  bottom: 14vh;
  left: 2vw;
}
.sync-box {
  bottom: 14vh;
  right: 2vw;
}

.test-img{
  width:350px;
  height:200px;
}
.boxP{
  margin: unset !important;
}
.boxul{
  display: flex;
  flex-direction: column;
  gap: 15px;
  margin-top: 10px;
}

.msg-line {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 6px;
  transition: margin-bottom 0.4s ease-in-out;
}

.arrow {
  width: 1em;
  color: #0180FF;
  font-size: 25px;
  margin-top: -6px;
  display: inline-block;
  animation: backfront 0.8s ease-in-out infinite alternate;
}

@keyframes backfront {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(0.2em);
  }
}


.box-text {
  flex: 1;
  text-align: justify;
}
.side-contents{
  color: black;
}
.side-content{
  max-width: 450px;
  position: absolute;
  font-family: monospace;
  color: black;
  font-size: 18px;
  transition: left 0.5s ease-in-out, right 0.5s ease-in-out, opacity 0.5s ease-in-out;
  display: flex;
  flex-direction: column;
  transition: font-size 0.4s ease-in-out, max-width 0.4s ease-in-out;
  pointer-events: none;
}
.top-left{
  top: 3vh;
  left: -10vw;
  opacity: 0;
}
.bottom-left{
  bottom: 6vh;
  left: -10vw;
  opacity: 0;
}
.top-right{
  top: 3vh;
  right: -10vw;
  opacity: 0;
}
.bottom-right{
  bottom: 6vh;
  right: -10vw;
  opacity: 0;
}
.top-left.moved{
  left: 3vw;
  opacity: 100;
}
.bottom-left.moved{
  left: 3vw;
  opacity: 100;
}
.top-right.moved{
  right: 3vw;
  opacity: 100;
}
.bottom-right.moved{
  right: 3vw;
  opacity: 100;
}
.topic{
  font-family: 'Brick', sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 80px;
  line-height: 90px;
  color: #0180FF;
  transition: font-size 0.4s ease-in-out;
}
.blur{
  opacity: 20%;
}

@keyframes flicker {
  0%, 20%, 40%, 55%, 57%, 59%, 80% ,100%{
    color: black;
    text-shadow: none;
  }
  10%, 30%, 50%, 56%, 58%, 60%,70%, 90%{
    color: #0180FF;
    text-shadow:
    0 0 2px #0180FF,
    0 0 5px #0180FF,
    0 0 10px #0180FF,
    0 0 20px #0180FF;
  }
}

.glow {
  text-shadow:
    0 0 2px #0180FF,
    0 0 4px #0180FF;
}
.z-index-0{
  z-index: 0 !important;
}

.center-text{
  font-family: 'Brick', sans-serif;
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 170px;
  color: #ea6919;
  transform: rotate(-15deg) translateX(-48%) translateY(-95%);
  transform-style: preserve-3d;
  opacity: 0;
  transition:  opacity 0.5s ease-in-out;
  z-index: -1;
}

.flicker{
  animation: flicker 5s ease-in-out infinite forwards;
}
.download-moved{
  top: 6%;
  right: 48.7%;
  width: 63px;
  height: 60px;
}

.download-frame{
  animation: flashWhite 0.4s ease-in-out;
}

@keyframes flashWhite {
  0%   { filter: none; }
  50%  { filter: brightness(10) saturate(0); }
  100% { filter: none; }
}



.last-section-name{
  font-family: 'Bigerside Expanded';
  font-style: normal;
  font-size: 100px;
  pointer-events: none;
  position: absolute;
  bottom: 39vh;
  left: 50%;
  width: fit-content;
  height: fit-content;
  padding: 10px 25px;
  overflow: hidden;
  white-space: nowrap;
  transform: translateX(-50%);
  opacity: 0;
  transition: top 1s ease, bottom 1s ease, left 1s ease, right 1s ease, opacity 1s ease-in-out;
}
.right-name-expanded{
  bottom: 2vh;
  opacity: 1;
}

.last-section-right-content {
  gap: 15px;
  position: absolute;
  top: 50%;
  left: 65%;
  transform:translateX(-50%) translateY(-50%);
  width: 0vh;
  height: 0px;
  text-align: center;
  overflow: hidden;
  /* background-color: #7cd3ff; */
  /* border: 2px solid black; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  overflow: hidden;
  transition: height 0.5s ease-in-out, width 0.5s ease-in-out, border-radius 1s ease-in-out, opacity 1s ease-in-out, left 0.4s ease-in-out;
}
.background-last{
  background-color: #499ff5;
  position: absolute;
  z-index: -1;
  opacity: 0.4;
  width: -webkit-fill-available;
  height: -webkit-fill-available;
}
.download-now-last{
  display: flex;
  align-items: center;
  justify-content: center;
  padding: unset;
  margin: unset;
  border: none;
  cursor: pointer;
  text-decoration: none;
  background-color: transparent;
  width: fit-content;
  height: fit-content;
}
.download-img{
    width: 180px;
    height: 54px;
}

.right-expanded{
  width: 500px;
  height: 583px;
  border-radius: 10%;
  transition: width 0.4s ease-in-out, height 0.4s ease-in-out, left 0.4s ease-in-out;
}

.platforms {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin: 15px 0;
}

.ios, .android {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
}

.qr{
  width: 150px;
  height: 150px;
  background-color: rgb(122, 120, 120);
  border-radius: 5px;
}
.qr-img{
  width: 150px;
  height: 150px;
  background-color: rgb(122, 120, 120);
  border-radius: 5px;
}
.device-button{
  width: fit-content;
  height: fit-content;
  background: transparent;
  border-radius: 30px;
  border: none;
}
.section-title{
  font-family: 'Bigerside Expanded';
  font-style: normal;
  font-weight: 400;
  font-size: 50px;
  line-height: 44px;
  color: #0180FF;
  margin: unset;
}
.device-text{
  font-family: 'Brick', sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 35px;
  line-height: 27px;
  color: #FFFFFF;
}
.description {
  margin-top: 10px;
  font-size: 14px;
  color: #444;
}


@media (max-width:1300px) {
  .download-btn-below{
    display: none;
  }
  .topic{
    font-size: 60px;
  }
  .side-content{
    max-width: 300px;
    font-size: 14px;
  }
  .info-box{
    font-size: 13px;
  }
  .msg-line{
    margin-bottom: 0px;
  }
  .arrow{
    font-size: 20px;
  }
  .texts{
    font-size: 80px;
  }
  /* .right-expanded{
    width: 420px;
    height: 500px;
  } */
}

@media (max-width: 1050px){
  #device{
    display: none;
  }
  .last-section-right-content{
    left: 50%;
  }
  .mark{
    right: 18vw;
  }
  .shoot{
    left: 13vw;
  }
  .plan{
    left: 22vw;
  }
  .sync{
    right: 19vw;
  }



@keyframes left-right-plan {
  0%{
    top: 39.7vh;
    left: -20vw;
    opacity: 0;
  }
  100%{
    top: 39.7vh;
    left: 22vw;
    opacity: 1;
  }
}
@keyframes left-right-shoot {
  0%{
    bottom: 39.5vh;
    left: -25vw;
    opacity: 0;
  }
  100%{
    bottom: 39.5vh;
    left: 13vw;
    opacity: 1;
  }
}
@keyframes right-left-mark {
  0%{
    top: 39.7vh;
    right: -20vw;
    opacity: 0;
  }
  100%{
    top: 39.7vh;
    right: 18vw;
    opacity: 1;
  }
}
@keyframes right-left-sync {
  0%{
    bottom: 39.5vh;
    right: -20vw;
    opacity: 0;
  }
  100%{
    bottom: 39.5vh;
    right: 19vw;
    opacity: 1;
  }
}
}


@media (max-width: 975px){
  body{
    height: fit-content;
  }
  .main-container{
    display: none;
  }
  .mobile-container{
    width: 100%;
    display: flex !important;
    flex-direction: column;
    gap: 35px;
    height: -webkit-fill-available;
  }
  .logo-container{
    display: none;
  }
  .first-part-mobile, .second-part-mobile, .third-part-mobile{
    position: relative;
  }
  .content{
  justify-content: start;
  }
  .first-part-mobile{
    height: fit-content;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 25px;
  }
  .mobile.text{
    position: unset;
  }
  .big-font{
    font-size: 60px;
  }
  .small-font{
    font-size: 16px;
  }
  .animate-plan, .animate-shoot, .plan-box-mobile, .shoot-box-mobile, .callsheet-block-mobile, .management-block-mobile{
  animation: left-right 0.5s ease-in-out forwards;
  }
   .animate-mark, .animate-sync, .mark-box-mobile, .sync-box-mobile, .finance-block-mobile, .wrap-block-mobile{
  animation: right-left 0.5s ease-in-out forwards;
}
  .right-left{
    animation: right-left 0.5s ease-in-out forwards;
  }
  @keyframes left-right {
    0%{
      margin-left: -100px;
      opacity: 0;
    }
    100%{
      margin-left: 0px;
      opacity: 1;
    }
  }
  @keyframes right-left {
    0%{
      margin-right: -100px;
      opacity: 0;
    }
    100%{
      margin-right: 0px;
      opacity: 1;
    }
  }
  .info-box {
    position: relative;
    padding: 0px;
  }
  .up-arrow, .down-arrow{
    display: none;
  }
  .side-content{
    position: unset;
  }

.last-section-right-content-mobile {
  text-align: center;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  transition: height 0.5s ease-in-out, width 0.5s ease-in-out, border-radius 1s ease-in-out, opacity 1s ease-in-out, left 0.4s ease-in-out;
}
 .mobile.section-content{
  background-color: rgba(73, 159, 245, 0.4);
  padding: 20px;
  border-radius: 15px;
 }
 .width-100{
  width: 100%;
 }
 .plan-block-mobile, .mark-block-mobile,.shoot-block-mobile, .sync-block-mobile,.callsheet-block-mobile, .finance-block-mobile,.management-block-mobile, .wrap-block-mobile{
    display: flex;
    flex-direction: column;
    align-items: center;
 }

.plan-box-mobile,
.mark-box-mobile,
.shoot-box-mobile,
.sync-box-mobile,
.callsheet-box-mobile,
.finance-box-mobile,
.management-box-mobile,
.wrap-box-mobile {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.1s ease-in-out, padding 0.1s ease-in-out;
}
.middle-box-section{
  text-align: center;
}
.plan-box-mobile.open,
.mark-box-mobile.open,
.shoot-box-mobile.open,
.sync-box-mobile.open { max-height: 300px; padding: 20px;}

.callsheet-box-mobile.open,
.finance-box-mobile.open,
.management-box-mobile.open,
.wrap-box-mobile.open  { max-height: 300px; padding: 0px 20px 20px 20px;}

.below-titles{
  text-align: center;
}
.platforms {
  flex-wrap: wrap;
}
.laptop-download{
  display: none;
}
.mobile-download{
  display: block;
}

}


@media (max-width:500px) {
  .section-title{
    font-size: 35px;
    line-height: 36px;
  }
}
@media (max-width:400px) {
  .big-font{
    font-size: 55px;
  }
  .small-font{
    font-size: 14px;
  }
}