@font-face {
  font-family: varela-font;
  src: url(../fonts/VarelaRound-Regular.ttf);
}
html {
  scroll-behavior: smooth;
}
body{
    position: relative;
}
a{
  color: #1dccc5;
}
a:hover{
  color: #308ecd;
}

/* Top Section */
#top-section{
    position: relative;
    width: 100%;
    height: 100vh; 
    background: linear-gradient(156deg, rgba(52,133,207,1) 0%, rgba(26,214,196,1) 100%);
    background-image: url("images/top-section-bg.jpg");
    overflow: hidden;
    background-size: cover;
    background-repeat: no-repeat;
}
.navbar{
    background-color: transparent;
    font-size: 1.5em;
    font-weight: 500;
    padding-top: 4%;
    font-family: varela-font;
}
.navbar-brand{
  font-size: 2.5rem;
}
.nav-item{
  margin: 0 30px;
}
.navbar-toggler{
  border: 2px solid #fff !important;
}
#top-section-info{
    text-align: center;
    height: auto;
    width: 50%;
    color: #fff;
    margin: 0 auto;
    margin-top: 10vh;
    position: relative;
    z-index: 2;
}
#top-section-info h1, #top-section-info h2, #top-section-info h3, #top-section-info h4, #top-section-info h5, #top-section-info h6{
    color: #fff;
}
#top-section-info p{
    color: #fff;
}
.top-section-btn{
  border: none;
  padding: 10px 30px;
  background: linear-gradient(156deg, rgba(52,133,207,1) 0%, rgba(26,214,196,1) 100%);
  border-radius: 21px;
  color: #fff;
  width: 100%;
  font-weight: bold;
}
.top-section-btns > .col-md-6:nth-child(2) > a{
  background: linear-gradient(156deg, rgb(52, 202, 207) 0%, rgb(26, 214, 82) 100%);
  text-decoration: none;
}
.top-section-btns > .col-md-6:nth-child(2) > a:hover{
  color: #fff;
}
@media (max-width: 991px){
  .event_api_description{
      padding: 30px;
  }  
  .event_api_btn{
      margin: 0 auto;
      margin-bottom: 20px;
  }
  .nav-link{
    text-align: center;
  }
  .navbar-nav{
    background: #7ab5c3;
    border-radius: 12px;
    z-index: 2;
    position: relative;
  }
  .nav-item{
    padding: 20px 0px;
  }
  #top-section-info{
    width: 70%;
  }
  .dropdown-item{
    padding: 1rem;
    text-align: center;
  }
}

/* Features */
#features-section{
  min-height: 100vh;
  position: relative;
  overflow: hidden;
}
.feature-box{
  width: 95%;
  min-height: 250px;
  box-shadow: 0 0 12px #ccc;
  border-radius: 9px;
  text-align: center;
  margin: 0 auto;
  background-color: #fff;
}
.feature-box img{
  margin: 0 auto;
  display: block;
  width: 100px;
}
@media (max-width: 768px){
  #features-section{
    padding-bottom: 150px;
  }
}

/* Schedule */
.reserve-btn{
  border: none;
  border-radius: 22px;
  padding: 10px 30px;
  color: rgb(141, 141, 141);
}
.list-group{
  z-index: 2;
}
.list-group > div{
  background-color: rgba(255,255,255,0.8);
}
.list-group > div:hover{
  border: solid 1px #22bdc8;
  background-color: rgb(238 253 255 / 42%);
}
.list-group > div:hover .reserve-btn{
  background: linear-gradient(156deg, rgba(52,133,207,1) 0%, rgba(26,214,196,1) 100%);
  color: #fff;
}
.accordion-item{
  border: none;
}
.accordion-button{
  margin: 0 auto;
  width: 240px;
  background: linear-gradient(156deg, rgba(52,133,207,1) 0%, rgba(26,214,196,1) 100%);
  border-radius: 25px !important;
  color: #fff;
  font-weight: bold;
  display: block;
  text-align: center;
}
.accordion-body{
  padding: 0;
}
.accordion-button:not(.collapsed){
  color: #fff;
  background-color: transparent;
}
.accordion-button::after{
  /*content: "^" !important;
  transform: rotate(180%);*/
  background-image: none !important;
}
@media(max-width: 991px){
  .list-group a{
    text-align: center;
  }                                   
}

/*Extra Section*/
#extra-section{
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  background: #e7e7e7;
}
#extra-section img{
  width: 100%;
  display: inline-block;
}
#extra-section ul li{
 padding:2% 0;
 list-style: none;
}
#extra-section ul li h3{
  font-size: 1.5rem;
  display: inline-block;
 }
@media (min-width:991px) and (max-width: 1337px){
  #extra-section ul li h3{
    font-size: 1rem !important;
   }
   #extra-section img{
    width: 130%;
  }
}
@media (min-width:768px) and (max-width: 990px){
  #extra-section ul li h3{
    font-size: 0.6rem !important;
   }
   #extra-section ul li{
    padding:0;
   }
   #extra-section img{
    width: 130%;
   }
}

@media (min-width:320px) and (max-width: 767px) {
  #extra-section ul li h3 {
    font-size: 1rem;
    text-align: center;
  }    
  #extra-section img{
    display: block;
    margin: 0 auto;
  }
  #extra-section ul li {
    text-align: center;
  }  
}

/* Sessions */
.accordion-header{
    position: relative;
    z-index: 1;
}
#simpleContactSubmitButton{
    background: linear-gradient(156deg, rgb(52, 133, 207) 0%, rgb(26, 214, 196) 100%);
    border: none;
}
.modal-body > form > .form-group > input{
    background-color: rgb(237, 237, 237);
    border: none;
}
.modal-body > form > .form-group{
    margin: 20px 0;
}
/* Footer */
#footer{
  width: 100%;
  min-height: auto;
  background: linear-gradient(156deg, rgba(52,133,207,1) 0%, rgba(26,214,196,1) 100%);
}
#footer ul li{
  list-style: none;
  color: #fff;
  padding: 5px 0;
}
#footer ul li a, #footer h4, #footer a, #footer p{
  color: #fff;
}
#button-addon2{
  color: #fff;
  background: #25b3c9;
  border: none;
}
@media (max-width: 768px){
  #footer{
    text-align: center;
  }
  .services-modal-content{
    padding: 2%;
  }
  #top-section{
      height: auto;
  }
  #top-section h1, #top-section p{
      text-shadow: 1px 1px 9px #004662;
}
  }
  #top-section > div.container > div > div > p{
      text-shadow: none;
  }


/* Gallery */
#imageGallery{
    display: inline-table;
}

/*Inner Page*/
.inner-header{
    background-color: #25b3c9;
    padding-bottom: 120px;
}
.inner-content-wrapper{
    margin-top: -50px;
    background-color: #fff;
    -webkit-box-shadow: 0px -15px 19px -4px rgba(0,0,0,0.2); 
    box-shadow: 0px -15px 19px -4px rgba(0,0,0,0.2);
}
.soc-list{
    list-style: none;
}
.soc-list li{
    display: inline-block;
    padding: 5px;
}
/* Animations */
@keyframes wave {
    0% {
      transform: translateX(0) translateZ(0) scaleY(1)
    }
    50% {
      transform: translateX(-25%) translateZ(0) scaleY(0.55)
    }
    100% {
      transform: translateX(-50%) translateZ(0) scaleY(1)
    }
  }
  .wave {
    position: absolute;
    width: 220%;
    height: 100%;
    left: 0;
    bottom: 0;
    background-image: url('images/wave.png');
    background-position: 0 bottom;
    transform-origin: center bottom;
    background-repeat: repeat no-repeat;
    background-size: 50% 420px;
    pointer-events: none;
  }
  .wave:nth-child(1) {
    animation: wave 10s linear infinite;
  }
  .wave:nth-child(2) {
    animation: wave 20s linear infinite;
  }
  .wave:nth-child(3) {
    animation: wave 30s linear infinite;
  }


  .wave2 {
    position: absolute;
    z-index: 0;
    width: 220%;
    height: 100%;
    left: 0;
    bottom: 0;
    background-image: url('images/wave.png');
    background-position: 0 bottom;
    transform-origin: center bottom;
    background-repeat: repeat no-repeat;
    background-size: 50% 420px;
    pointer-events: none;
  }
  .wave2:nth-child(1) {
    animation: wave 10s linear infinite;
  }
  .wave2:nth-child(2) {
    animation: wave 20s linear infinite;
  }
  .wave2:nth-child(3) {
    animation: wave 30s linear infinite;
  }
  


/* On-site Editor Plugin */
.redactor-editor, .redactor-box{
    background-color: transparent !important;
    background: transparent !important;
}
.redactor-toolbar li a{
    color: rgb(28, 28, 28) !important;
}

/* Services plugin Modals */
.service-modal{
    overflow-y: scroll;
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 101;
    background-color: rgba(0, 0, 0, 0.522);
}
.services-modal-content{
    position: relative;
    width: 90%;
    height: auto;
    margin: 5%;
    background-color: #fff;
    text-align: center;
    padding: 5%;
    word-break: break-word;
}

.services-modal-content h2{
    color: #000 !important;
}
.service-modal-close-btn{
    right: -20px;
    top: -20px;
    padding: 0;
    position: absolute;
    width: 50px;
    height: 50px;
    border: none;
    font-weight: bold;
    color: #fff;
    background: #6ac0e0;
    border-radius: 50%;
}
.dropdown-menu li button{
    width: 100%;
    background: none;
    border: none;
    border-bottom: 1px solid #ccc;
    padding: 5px;
}

/* Eventrbrite API */
.event_api_btn{
    text-decoration: none;
    color: #fff;
    background: #25b3c9;
    padding: 5px 20px;
    border-radius: 21px;
}
.list-group-item{
    border:none;
    border-radius: 12px;
    background: #f4fbfc;
}
.event_api_img > img{
    border-radius:12px;
    object-fit: cover; /* Ensures the image covers the entire height */
    width: 100%;       /* Matches the width of the column */
    height: 100%;      /* Stretches to fill the column or row height */
}

/* How To .. Page */

.page-howto .modal-dialog{
    max-width: 85%;
    margin: 10px auto;

}


/*Intro Welcome */
#intro-wrapper {
    background: #77bedd;
    display: none;
    justify-content: center;
    position: fixed;
    left: 0;
    right: 0;
    z-index: 9999999;
    align-items: center;
    min-height: 100vh;
    transition: opacity 1.4s;
    -webkit-transition: opacity 1.4s;
    color: #fff;
    opacity: 1;
}
.loader {
    position: relative;
    width: 200px;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}
.loader h2{
    color: #fff;
}
.loader span {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    pointer-events: none;
    animation: animate 5s linear infinite;
}
.loader span:nth-child(1) {
    border-radius: 38% 62% 64% 36% / 43% 35% 65% 57%;
    border: 2px solid #fff;
}
.loader span:nth-child(2) {
    animation-direction: reverse;
    border-radius: 41% 59% 40% 60% / 65% 66% 34% 35%;
     border: 2px solid rgba(255, 255, 255, 0.8);
}
.loader span:nth-child(3) {
    animation-duration: 3s;
    border-radius: 73% 27% 56% 44% / 57% 74% 26% 43%;
    border: 2px solid rgba(255, 255, 255, 0.4);
}
@keyframes animate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}