body{
  overflow: hidden; /* Hide scrollbars */
}

.site-container{
  max-height: 100vh;
}
iframe{
  position: fixed;
  z-index: -10;
}
.video-shadow{
  position: fixed;
  width: 100%;
  height: 100%;
}
.page-wrapper{
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
}
.page-content{
  width: 100%;
  max-width: 1920px;
}

/* Footer */
.custom-footer-wrapper{
  position: fixed;
  width: 100%;
  max-width: 1920px;
  margin: 0px auto;
  bottom: 0;
}
.custom-footer{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.left-footer-group{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  max-height: 40px;
  width: 19%;
  margin: 0px 0px 23px 23px;
}
.left-footer-group a{
  width: 45%;
}
.middle-footer-group{
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 26%;
  max-width: 450px;
  margin: 0px 0px 23px 0px;
}
.icon-group{
  display: flex;
  justify-content: space-around;
  align-items: flex-end;
  width: 50%;
}
.footer-text{
  font-size: 8px;
  width: 50%;
}
.right-footer-group{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  max-width: 835px;
  width: 43%;
  margin: 0px 23px 23px 0px;
}
/* Mobile Footer */
.custom-footer-mobile{
  display: flex;
  justify-content: space-between;
  display: none;
}
.left-mobile-footer-group{
  width: 35%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  padding: 0 0 15px 15px;
}
.mobile-logo-group a img{ 
  margin-top: 10px;
  width: 100%;
  max-width: 170px;
}
.right-mobile-footer-group{
  width: 60%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
  padding: 0 15px 15px 0;
}
.right-mobile-footer-group div{
  margin-bottom: 10px;
}

/* Mobile Adjustment */
@media only screen and (max-width: 850px) {
  .custom-footer{
    display: none;
  }
  .custom-footer-mobile{
    display: flex;
  }
  .footer-text {
    width: 100%;
    text-align: right;
  }
  .reg-today-break{
    display: none;
  }
  .flex-form-top-left span.reg-today{
    font-size: 20px;
    line-height: 30px;
  }
  .flex-form{
    flex-direction: column;
  }

}

/* Main content */
.show-reg-button{
  position: absolute;
  top:0;
  right: 0;
  text-transform: uppercase;
  cursor: pointer;
  font-size: 30px;
  padding: 24px 14px 0 0;
  z-index: 10;
}
.main-container{
  width: 100%;
  height: 100vh;
}
.flex-center{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.text-container{
  width: 73%;
  height: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  overflow: hidden;
}
.text-container span{
  font-size: 50px;
  letter-spacing: 3.5px;
  line-height: 60px;
  text-transform: uppercase;
  width: fit-content;
}
.bottom-right{
  align-self: flex-end;
}

/* Form CSS */
.flex-form{
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: space-between;
  
}
.flex-form-top-left{
  display: flex;
  justify-content: flex-start;
}
.flex-form-top-left span{
  width:fit-content;
  height: fit-content;
  text-transform: uppercase;
  height: fit-content;
  padding: 24px 0 0 14px;
  font-size: 50px;
  line-height: 60px;
}
.flex-form-top-right{
  display: flex;
  justify-content: flex-end;
  margin: 25px;
  width: 30%;
  height: 22%;
  max-height: 70vh;
}

@media only screen and (max-width: 1200px) {
  .text-container span.top-left{
    width: 60%;
  }
  .text-container span.bottom-right{
    width: 60%;
    text-align: right;
  }
}

@media only screen and (max-width: 600px) {
  .text-container span.top-left{
    width: 100%;
  }
  .text-container span.bottom-right{
    width: 100%;
    text-align: right;
    margin-top: 10%;
  }
}

@media only screen and (max-width: 850px) {
  .flex-form{
    flex-direction: column;
  }
  .flex-form-top-left{
    justify-content: center;
  }
  .flex-form-top-right{
    width: 100%;
    height: 100%;
    margin: 0px;
    padding: 10px;
    max-height: 60vh;
  }
  .flex-form-top-left span{
    font-size: 30px;
    line-height: 40px;
  }
  .no-mobile-break{
    display: none;
  }

}

@media only screen and (max-height: 580px) {
  .flex-form-top-right{
    overflow: auto;
  }
}


/* Animation CSS */
.slide-in {
  position: absolute;
  overflow: hidden; /* to prevent scrollbar appearing */
  width: 100%;
  height: 100%;
}

.slide-out{
  position: absolute;
  overflow: hidden; /* to prevent scrollbar appearing */
  width: 100%;
  height: 100%;
}

.slide-out-content {
  transition: transform 2s ease; /* our nice transition */
  width: 100%;
  height: 100%;
}

.slide-in.from-right {
  right: 0;
  top: 0;
}

.slide-in-content {
  transition: transform 2s ease; /* our nice transition */
}

.slide-in.from-right .slide-in-content {
  transform: translateX(150%);
  -webkit-transform: translateX(150%);
}

.slide-in.show .slide-in-content {
  transform: translateX(0);
  -webkit-transform: translateX(0);
}
.slide-out.hide .slide-out-content {
  transform: translateX(-150%);
  -webkit-transform: translateX(-150%);
}


/* Other Screen size Adjustments */
@media only screen and (max-width: 1855px) {
  .text-container span{
    font-size: 45px;
    line-height: 55px;
  }
}
@media only screen and (max-width: 1680px) {
  .text-container span{
    font-size: 40px;
    line-height: 50px;
  }
}
@media only screen and (max-width: 1525px) {
  .text-container span{
    font-size: 35px;
    line-height: 45px;
  }
}
@media only screen and (max-width: 1355px) {
  .text-container span{
    font-size: 30px;
    line-height: 40px;
  }
}
@media only screen and (max-height: 750px) {
  .text-container {
    height: 60%;
  }
}
@media only screen and (max-height: 470px) {
  .custom-footer-wrapper{
    display: none;
  }
}