:root{
    --main-color: #43d9ad;
    --text-color: #7a7a7a;
}
body{
    background: #f5efe0 !important;
    letter-spacing: -.015em;
    font-family: inter var,-apple-system,BlinkMacSystemFont,helvetica neue,Helvetica,sans-serif;
}
h1, h2, h3, h4, h5{
    letter-spacing: -.0415625em !important;
}
.hidden-scroll{overflow-y: hidden;}
a:hover{text-decoration: none !important;}
.heading-title {
    padding: 0;
    margin: 0;
    line-height: 1;
}
.main-content{max-width: 1140px;}
.content-max-page{width: 90%;}
.no-decoration a:hover{
    -webkit-box-shadow: none;
    box-shadow: none;
    text-decoration: none;
}
.btn-defaul{
    font-size: 15px;
    padding: 12px 24px;
    color: #fff;
    fill: #fff;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    text-align: center;
    -webkit-transition: all .15s linear;
    -o-transition: all .15s linear;
    transition: all .15s linear;
}
.title-color{color: var(--main-color)}
.width-full{width: 100%;margin: 0 !important;}
.font-style-title-h4{
    font-family: 'Roboto';
    font-weight: 600;
    line-height: 1;
    margin: 0;
}
.header{ opacity: 0; transition: background .3s,border .3s,border-radius .3s,box-shadow .3s;}
.header-fixed{
    position: fixed;
    width: 100%;
    margin-top: 0px;
    margin-bottom: 0px;
    top: 0px;
    background: #fff;
    z-index: 99;
}
.header .nav{height: 100%;}
.header .navbar-collapse{height: 90px;}
.header .navbar-collapse a{
    font-family: lato,Sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .4px;
    color: var(--main-color);
    padding: 1px 26px 1px 1px;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.header .navbar-collapse ul li a:hover{color: #1c1f5b !important;}

/** Section Cover Page **/

.box-cover-page{width: 50%;}
.main-cover-page .box-img-cover{width: 100%;}
.main-cover-page .box-img-cover img{
    max-width: 100%;
    height: auto;
}
.main-cover-page .text-cover-page div{margin-bottom: 2rem;}
.main-cover-page .title h1 {
    margin: 0;
    font-family: roboto,Sans-serif;
    font-size: 56px;
    font-weight: 600;
    line-height: 1.2em;
    color: var(--main-color);
}
.main-cover-page .sub-title h2 {
    margin: 0;
    color: #000;
    font-family: roboto,Sans-serif;
    font-size: 28px;
    font-weight: 500;
    line-height: 1;
}
.main-cover-page .description-cover-page{
    color: #000;
    font-family: roboto,Sans-serif;
    font-size: 19px;
    font-weight: 400;
    line-height: 1.5em;
    
}
.main-cover-page .btn-cta-reservar{margin-top: 5rem;}
.main-cover-page .btn-cta-reservar a{
    font-family: roboto,Sans-serif;
    font-size: 20px;
    font-weight: 500;
    text-transform: capitalize;
    letter-spacing: 1.5px;
    background-color: #0076ff;
    padding: 20px 30px;
    color: #fff;
}
.main-cover-page .btn-cta-reservar a:hover,
.main-cover-page .btn-cta-reservar a:focus{background: #000;}

/** Section info **/
.main-info, .main-info > div > div{overflow: hidden; background: #fff;}
.main-info h4, .main-info h5{
    font-family: 'Roboto';
    font-weight: 600;
    line-height: 1;
}
.main-info .description-info p{
    color: var( --text-color);
    font-family: roboto,Sans-serif;
    font-size: 15px;
    font-weight: 400;
    margin-top: 1.3rem;
}

/** Section category **/
.box-category {height: 100%;}
.main-category > div > div{width: 100%;}
.main-category h6{font-weight: 700; font-family: 'Roboto';}
.main-category hr{border-top: 1px solid #000; margin-bottom: 0.5rem !important; margin-top: 0.7rem !important;}
.main-category .items-subcategory ul li{
    list-style: none;
    line-height: 1.3;
    letter-spacing: -0.3px;
}
.main-category .items-subcategory ul li a{
    color: var(--text-color);
    pointer-events: none;
    font-size: 15px;
}
.main-category .items-subcategory ul .active a{
    color: #0000ff;
    text-decoration: underline;
    pointer-events: initial;
}

/** Section programs **/
.main-programs{background: #fff;}
.main-programs .box-programs div{margin-bottom: 20px;}
.main-programs .title-programs h5{
    font-family: 'Roboto';
    font-weight: 600;
    font-size: 1.5rem;
}
.main-programs .text-programs p{
    color: var(--text-color);
    font-family: 'Roboto', 'Sans-serif';
    font-size: 15px;
}
.main-programs .btn-cta-programs{margin-top: 1.8rem;}
.main-programs .btn-cta-programs a{
    background: var(--main-color);
    color: #fff;
    font-size: 13px;
    padding: 10px 20px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    font-weight: 500;
}

/** Section testimonials **/
.main-testimonials h4{border-top: 8.5px solid #54595f;}
.main-testimonials .btn-cta-testimonials i{color: #ffffffd1;}
.main-testimonials .btn-cta-testimonials a{
    font-family: 'Roboto';
    font-weight: 500;
    background: #61ce70;
    color: #fff;
    font-size: 15px;
    padding: 12px 24px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    transition: all .3s;
}
.main-testimonials .img-avatar img{
    width: 75px;
    min-width: 75px;
    height: 75px;
    border-radius: 90px;
}
.main-testimonials .name{text-transform: uppercase;color: #1abc9c;}
.text-testimonials p{
    color: #808080;
    position: relative;
    padding: 15px;
    background: #f1f1f1;
    border: 1px solid #efefef;
    border-radius: 3px;
    margin-bottom: 0px;
    margin-top: 10px;
    font-size: 14px;
    font-family: roboto,Sans-serif;
}
.text-testimonials p::before {
    content: "";
    width: 15px;
    height: 15px;
    display: block;
    background: #f1f1f1;
    border: 1px solid #efefef;
    border-width: 0 0 1px 1px;
    position: absolute;
    top: -8px;
    left: 46px;
    transform: rotateZ(-46deg);
}
.footer-testimonials{
    font-size: 13px;
    color: #707070;
}

/** Section events **/
.main-events .box-video-events{
    height: 100%;
    width: 100%;
    border-style: double; 
    padding-bottom: 56.25%;
    position: relative;   
}
.main-events .content-video-events .iframe{
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
}
.main-events .box-description-events a{color: #000;}
.main-events .box-description-events ul{padding: 0; margin: 0 0 4rem 2rem; padding: 0; }
.main-events .box-description-events ul li{
    font-family: inter var,-apple-system,BlinkMacSystemFont,helvetica neue,Helvetica,sans-serif;
    line-height: 1.4;
    margin: .5rem 0 0 1rem;
    font-size: 1.2rem;
}
.main-events .box-description-events h5{
    font-weight: 700;
    font-size: 1.5rem;
    display: inline-grid;
    line-height: 1.1;
    font-family: inter var,-apple-system,BlinkMacSystemFont,helvetica neue,Helvetica,sans-serif;
    margin: 3.1rem auto 1rem;
}
.main-events .box-video-events .iframe{height: 100%; width: 100% !important; border: none;}

/** Section contact **/
.main-contact p {
    font-family: roboto,Sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: var(--text-color);
}
.main-contact h2 {
    font-family: roboto,Sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    letter-spacing: 1.5px !important;
}
.btn-cta-contact{display: grid;}
.btn-cta-contact a{
    line-height: 1;
    font-size: 15px;
    font-family: 'Roboto';
    font-weight: 500;
    color: #fff;
    padding: 12px 24px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    text-align: center;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    margin-right: auto;
    margin-left: 3rem;
    margin-top: 11px;
}
.btn-cta-contact a:hover{color: #fff;}
.btn-cta-contact a span{white-space: pre;}
.btn-cta-contact .btn-ws{background-color: #5cb85c;}
.btn-cta-contact .btn-agenda{background-color: #4357ae; margin-top: 11px;}

/** Section footer **/
.footer p{
    color: #393f3d;
    font-family: roboto,Sans-serif;
    font-size: 14px;
    font-weight: 400;
}

/** NAVIGATION MOVIL **/
.modal-movil, .nav-movil{
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    
}
.modal-movil{
    background-color: rgba(51,51,51,0.5);
    transform: translateX(-100%);
    transition: transform .7s;
}
.nav-movil{
    background: #f7f7f7;
    transform: translateX(-100%);
    transition: transform .7s .4s;
    z-index: 999;
}
.show-menu-movil, .show-menu-movil .nav-movil{transform: translateX(0%); }
.nav-movil{overflow-y: scroll;}
.nav-movil .body-nav-movil ul li{list-style: none;;}
.nav-movil .body-nav-movil ul li a{
    color: #000;
    font-size: 1.2rem;
    font-weight: 500;
}
.collaps-movil-open{
    position: absolute;
    top: calc(60% / 2);
    background: none;
    border: 1px solid;
    border-radius: 3px;
    width: 45px;
    padding: 4px;
    right: 20px;
}
.nav-movil .collaps-movil-close{
    background: none;
    color: #000;
    border: 1px solid;
    border-radius: 3px;
    padding: 8px;
    width: 45px;
}

/** ANIMATION **/
.animation-opacity{animation: opacityShow 1.5s forwards}
@keyframes opacityShow {
    0%{ opacity: 0; }
    100%{ opacity: 1;}
}
@-webkit-keyframes opacityShow{
    0%{ opacity: 0; }
    100%{ opacity: 1;}
}

/*** RESPONSIVE ***/
@media (max-width: 1140px){
    .content-max-page{
        width: 100%;
    }
}
@media (max-width: 1024px){
    #navbar-desktop{display: none !important;}

    .main-cover-page > div > div {padding: 20px 30px 0px 30px;}
    .header .brand-logo {padding-left: 0.6rem;}
    .main-cover-page .btn-cta-reservar{
        padding-bottom: 50px;
        margin-top: 3rem;
    }
    .main-cover-page .sub-title h2 {font-size: 21px;}
    .main-cover-page .description-cover-page p{font-size: 17px; line-height: 1.5;}
    .main-cover-page .btn-cta-reservar a{font-size: 16px;}
    .header-fixed{position: relative;}
    .main-cover-page{margin: 0 !important;}
}
@media (max-width: 991px){

    .menu-desktop .collaps-movil-open, .nav-movil {
        display: block !important;
    }
}
@media (max-width: 872px){
    
}
@media (max-width: 767px){
    .main-cover-page > div > div{
        word-break: break-word;
        width: 100%;
        text-align: center;
        display: inline-block !important;
    }
    .box-cover-page{width: 100%;}
    .main-cover-page .title h1{font-size: 50px;}
    .main-cover-page .sub-title{margin-bottom: 1.5rem !important;}
    .main-cover-page .sub-title h2 {font-size: 18px;}
    .main-cover-page .description-cover-page p {font-size: 15px;}
    .main-cover-page .btn-cta-reservar a{display: flex; padding: 17px 30px;}  
    .main-cover-page .btn-cta-reservar {margin-top: 2rem; margin-bottom: 0px !important; padding-bottom: 1.5rem;}

    .main-info .box-info{padding: 0 1rem !important;}

    .main-events .box-description-events h5{font-size: 1.37rem; margin: 2.1rem auto 1rem;}
}
@media (min-width: 768px){
    .header .menu-desktop{width: 62.523%;}
    .header  .brand-logo{width: 37.477%;}

    .main-events > div > div div:nth-child(5) { padding-left: 0 !important; }
}
@media (max-width: 719px){
    .main-info h4{padding: 0 1rem;}
}
@media (min-width: 700px){
    h4{font-size: 2rem !important;}
    .main-info .title-info h5{font-size: 1.5rem;}
    h6{font-size: 1.1rem !important; letter-spacing: .03125em;}
    
}
@media (max-width: 563px){
    .navbar-brand img{
        max-width: 80%;
    }
}
@media (max-width: 519px){
    .nav-movil{width: 100%;}
}
@media (min-width: 520px){
    .nav-movil{width: 50%;}
}
@media (max-width: 479px){
    .main-events .box-description-events ul{margin: 0 0 2rem 1rem;}
}
@media (max-width: 462px){
    .navbar-brand img{max-width: 100%;}
    .navbar-brand{width: 80% !important;}
}
@media (max-width: 316px){
    .main-info h4{padding: 0 0.5rem;}
    
    .btn-cta-contact a{margin-left: 0;}

    .navbar-brand img {max-width: 60%;}

    .collaps-movil-open{
        top: calc(30% / 2);
        padding: 2px;
    }
}
