
  @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700;800;900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

*{
    max-width: 100dvw;
    margin: 0;
    padding: 0;
    text-decoration: none;
    list-style: none;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
    scroll-behavior: smooth;
}

:root{
    --text-black : #2e2f31;
    --text-blue: #3498db;
    --text-lightblue: #6dc6f7;

    --text-darkblue: #221d5c;
    --text-gray : #808291;
    --text-verdeagua : #00b894;
    --text-purple : #58329e;
    --text-light : #c6e6ff;
    --text-white : #f3f3f3;
}

/*Body*/

body{
    background-color: #e3e9f7;
    height: min-content;
    max-width: 100%;
    overflow-x: hidden;
}

h1{
    font-size: 300%;
    font-weight: 700;
}

h2{
    font-size: 250%;
}

h3{
    font-size: 150%;
    font-weight: 600;
}

h4{
    font-size: auto;
}

h5{
    font-size: 200%;
    font-weight: 600;
}

h6{
    font-size: 100%;
    letter-spacing: .02rem;
    color: var(--text-gray);
    text-transform: uppercase;
    font-weight: 500;
}

.banner-info p{
    font-size: 150%;
    padding-bottom: 2%;
    width: 60%;
    color: var(--text-darkblue);
}

p{
   font-size: 100%; 
}

@media screen and (max-width:1100px) {

    h1{
        font-size: 250%;
    }

    h6{
        font-size: 90%;
    }

    h2{
        font-size: 200%;
    }

    h3{
        font-size: 150%;
    }

    i{
        font-size: 80%;
    }

    h5{
        font-size: 150%;
    }

    p{
        font-size: 90%;
    }

    .about-articles .article-img img{
        transform: scale(0.9);
    }

    .banner-info p{
        font-size: 120%;
    }

}

@media screen and (max-width:845px) {
    
    h1{
        font-size: 200%;
    }
    
    h2{
        font-size: 150%;
    }

    h3{
        font-size: 130%;
    }

    h5{
        font-size: 150%;
    }

    .banner-info p{
        font-size: 100%;
    }
    
}

@media screen and (max-width:400px) {
    
    h1{
        font-size: 180%;
    }
    
    h2{
        font-size: 130%;
    }

    h3{
        font-size: 110%;
    }

    h5{
        font-size: 130%;
    }

    p{
        font-size: 90%;
    }

    .banner-info p{
        font-size: 90%;
    }
    
}




/*Header*/

header{
    position: fixed;
    top: 0; left: 0;
    width: 100%;
    height: 20vh;
    background: #fefefe;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 4%;
    padding-bottom: 0%;
    border-radius: 0 0 10px 10px;
    margin: 0 auto;
    transition: 0.6s;
    z-index: 10;
}

header.sticky{
    padding: 0px 4%;
    height: 12vh;
    background: #fff;

}

header.sticky .logo{
    transform: scale(0.85);
}

.logo{
    height: 50%;
    width: auto;
    margin-top: 2%;
    margin-bottom: 2%;
    transition: 0.5s;
}

nav .logo{
    display: none;
}

nav ul{
    display: flex;
}

nav ul li{
    display: flex;
    flex-direction: row;
    align-items: center;
    border-radius: 0;
}

nav ul a{
    color: var(--text-black);
    display: flex;
    margin: 0 2px;
    font-size: 120%;
    font-weight: 600;
    letter-spacing: 0.5px;
    padding: 8px 18px;
    transition: 0.2s;
    border-radius: 0;
}

nav ul li a:hover, nav .nav-item .active{
    border-bottom: 3px solid var(--text-lightblue);
    color: var(--text-darkblue);
    transform: translateY(-10%);
}

nav ul li a:active{
    color: var(--text-blue);
}

.hamburger{
    display: none;
    height: fit-content;
    cursor: pointer;
    padding: 2%;
    margin: 2%;
    border-radius: 5px;
    transition: 0.5s;
}

.hamburger:hover{
    background-color: #f6f4ff;
}

.hamburger div{
    width: 30px;
    height: 2px;
    margin: 6px 0;
    background-color: #212526;
}


@media only screen and (max-width: 1150px){
    header{
        width: 100%;
        padding: 0 20px;
        height: 15%;
    }

    .logo img{
        height: 80%;
        width: auto;
    }

    nav{
        position: absolute;
        left: -80%;
        top: 0;
        z-index: 10000;
        width: 40%;
        height: 150vh;
        background-color: #f6f4ff;
        transition: 0.4s ;
        box-shadow: 2px 0 20px 0 rgba(0, 0, 0, 0.05);
        overflow-x: hidden;
    }

    #nav_check:checked ~ nav{
        left: 0px;
        overflow-y: hidden;
    }


    #nav_check:checked ~ #main-header-logo{
        position: absolute;
        left: -400px;
        top: 0;
    }

    nav ul li a:hover{
        transform: translate(0%);
        border-bottom: 2px solid var(--text-blue);
    }

    nav i{
        font-size: 120%;
        color: var(--text-blue);
    }

    nav .logo{
        display: block;
        height: 15%;
        display: flex;
        align-items: center;
        margin-left: 30px;
    }

    nav .logo img{
        width: fit-content;
        height: auto;
        max-width: 200px;

    }

    nav ul li{
        margin-bottom: 4%;
    }

    nav ul li a{
        margin-bottom: 0;
        padding: 1% 0%;
        margin-left: 5%;
        border-radius: 0px;
        font-size: 120%;
        transition: 0.4s all;
    }   


    nav ul{
        display: block;
        padding: 0 20px;
    }

    .hamburger{
        display: block;
    }
}

@media screen and (min-width:1150px){
    header img{
        height: 80%;
        width: auto;
    }

    nav i{
        visibility: hidden;
    }

    .hidden-right{
        transition: 0s ease;
    }
}

@media screen and (max-width:650px) {
    header{
        height: 15% ;
    }

    .logo{
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #nav_check{
        display: none;
    }
    .hamburger{
        display: none;
    }

    header nav{
        display: none;
    }

    .logo img{
        width: auto;
        height: 80%;
    }
}

@media screen and (max-width:600px){
    nav{
        width: 60%;
    }
}

/*Banner*/

.banner{
    position: relative;
    width: 100%;
    height: 80vh;
    background: url(../img/home2.jpg);
    background-size: cover;    
    margin-top: 11%;
    padding-top: 5%;
}

.banner img{
    opacity: -1;
}

.banner-info{
    width: 80%;
    padding: 10%;
    margin-top: 2%;
    margin-left: 0;
}

.banner-info h1{
    color: var(--text-black);
}


.btn-1{
    width: 20%;
    min-width: 200px;
    padding: 10px;
    cursor: pointer;
    appearance: none;
    outline: none;
    border: none;
    background: transparent;
    border-radius: 8px;
    border: 1px lightgray solid;
    transition: 0.4s all;
    background-color: var(--text-blue);
    
}

.banner .btn-1 a{
    color: #fefefe;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 1px;
    text-decoration: none;
}

.btn-1:hover{
    box-shadow: 5px 5px 30px rgb(92, 92, 92);
    background-color: var(--text-lightblue);
    transform: translate(0, -10px);
}

.btn-1:active{
    transform: scale(0.9);
}

@media screen and (max-width:1100px){
    .banner{
        display: flex;
        align-items: center;
    }
}


@media screen and (max-width:910px){
    .banner-info{
        width: 100%;
    }
}


@media screen and (max-width:600px) {
    .banner{
        width: 100%;
        height: 70vh;
        margin-top: 25%;
        padding-bottom: 7%;
        padding-top: 10%;
    }
}    



/*Inicio About*/

.about-us{
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    padding-top: 5%;
}

.about-container{
    width: 95%;
    height: auto;
    margin-top: 8%;
    display: flex;
    justify-content: center;
    flex-direction: column;

}

.about-titles{
    width: 100%;
    height: 40%;
    padding-left: 20%;
    padding-right: 20%;
    display: flex;
    justify-content: center;
    text-align: center;
}

.about-us h6{
    text-align: center;
    color: var(--text-gray);
}

.about-titles h2{
    color: var(--text-black);
}

.about-articles-container{
    width: 100%;
    height: auto;
    display: flex;
    flex: row;
    flex-wrap:wrap;
    justify-content: space-between;
    padding-top: 4%;
}

.about-articles{
    width: 30%;
    height: max-content;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    text-align: center;
    gap: 32px;
    min-width: 400px;
    padding: 0% 1% 5% 1%;
    margin-bottom: 5%;
    transition: all 0.6s ease;
}

.about-articles .article-img{
    width: 70%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0%;
}

.about-articles .article-img img{
    width: 100%;
    height: auto;
}

.about-articles .article-info{
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
}

.about-articles .article-info p{
    width: 100%;
}

.about-articles h3{
    color: var(--text-dark);
    visibility: hidden;
}

.about-articles:hover{
    box-shadow: 0px 0px 10px var(--text-lightblue);
    transform: translateY(-5%);
}


@media screen and (max-width:1263px) {
    .about-articles-container{
        justify-content: space-evenly;
    }
}

@media screen and (max-width:1100px) {
    .about-articles:hover{
        box-shadow: none;
        transform: none;
    }

}

@media screen and (max-width:900px) {
    .second-banner{
        height: auto;
    }
}

@media screen and (max-width:845px) {

    .about-articles-container{
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 4%;
    }

    .about-articles-container .extra{
        display: none;
    }

    .about-articles:hover{
        transform: translate(0);
        box-shadow: 0;
    }

    .about-articles{
        gap: 0px;
        margin-bottom: 36px;
        padding: 0;
    }
}

@media screen and (max-width:420px) {
    .about-articles{
        transform: scale(0.8);
    }
}

@media screen and (max-width:400px) {
    .second-banner-info{
        padding: 10% inherit;
        height: 140%;
    }
}


/*Second Banner*/

.second-banner{
    width: 100%;
    height: 70vh;
    max-height: 100vh;
    margin-top: 6%;
    display: flex;
    flex-direction: row;
}

.second-banner-img{
    width: 50%;
    height: 100%;
    background: url(../img/secondbanner2.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.second-banner-img img{
    object-fit: cover;
    width: 100%;
    height: 100%;

    /*Oculto la imagen para utilizarla en el fondo*/
    visibility: hidden;
}


.second-banner-info{
    max-width: 60%;
    height: 100%;
    padding-left: 5%;
    height: inherit;
    background-color: #f1eeee;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.second-banner-articles-container{
    width: 85%;
    display: flex;
    flex-direction: column;
}

.second-banner-articles{
    display: flex;
    flex-direction: row;
    padding-top: 3%;
}

.second-banner-articles-icon{
    width: 10%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--text-blue);
    margin-right: 2%;
}

.second-banner-articles-icon i{
    width: 50%;
    font-size: 180%;
}


.second-banner-info h2{
    color: var(--text-black);
    margin-bottom: 3vh;
}

.second-banner-info .second-banner-articles-text h3{
    color: var(--text-black);
}

.second-banner-info p{
    color: var(--text-gray);   
}

@media screen and (max-width:1100px) {
    
    .second-banner{
        height: auto;
    }
    
    .second-banner-img{
        display: none;
    }

    .second-banner-info{
        width: 100%;
        max-width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 10%;
    }

    .second-banner-info .second-banner-tittles{
        width: 100%;
        padding: 0 10%;
        
    }
}

@media screen and (max-width:550px) {
    .second-banner{
        height: 80vh;
    }

    .second-banner-articles-icon{
        display: none;
    }

    .second-banner-articles{
        padding-left: 3%;
    }
}





/*Ready*/

.ready{
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fefefe;
    background-color:var(--text-blue);
    margin-top: 5%;
    padding-top: 3%;
    padding-bottom: 3%;
    text-align: center;
}


.ready-button a{
    text-decoration: none;
    color: var(--text-white);

}

.ready-button{
    width: 15%;
    min-width: 200px;
    margin-top: 1%;
    padding: 10px;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 1px;
    cursor: pointer;
    appearance: none;
    outline: none;
    background: transparent;
    border-radius: 8px;
    transition: 0.4s all;
    

    /* From https://css.glass */
    background: rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.ready-button:hover{
    box-shadow: 5px 5px 30px rgb(92, 92, 92);
    background-color: var(--text-lightblue);
    transform: translate(0, -10px);
}

.ready-button:active{
    transform: scale(0.9);
}

@media screen and (max-width:500px) {
    .ready h3, .ready-button{
        transform: scale(0.7);
    }
}

/*Location*/

.location{
    width: 100%;
    height: fit-content;
    padding-bottom: 5%;
    padding-top: 5%;
    display: flex;
    justify-content: space-evenly;
}

.location-container{
    width: 100%;
    height: auto;
    min-height: 65vh;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.location-titles{
    display: flex;
    justify-content: center;
    text-align: center;
    padding-top: 1%;
    padding-bottom: 3%;
    width: 100%;
    height: 30%;
}

.location-titles h3{
    color: var(--text-black);
}

.location h5{
    text-align: center;
    color: var(--text-gray);

}

.location-map-container{
    width: 100%;
    height: 70%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.location-map-container iframe{
    width: 100%;
    height: 60vh;
}


@media screen and (max-width: 1100px) {
    .location-titles{
        margin-bottom: 0;
        padding: 0;
    }
}

@media screen and (min-width:847px) and (max-width:1100px)  {
    .location{
        height: fit-content;
    }

    iframe{
        max-height: 50vh;
        transform: translateY(-7vh);
    }
}

@media screen and (max-width: 846px) {

    .location{
        height: fit-content;
    }

    iframe{
        max-height: 45vh;
        transform: translateY(-10vh);
    }
    
}


/*Footer*/

footer{
    height: auto;
    min-height: 40vh;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    align-items: start;
    padding-top: 5%;
    padding-left: 15%;
    padding-right: 15%;
    background-color: #190d4e;
}

footer .col{
    width: 50%;
    height: 70%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 5%;
}

footer .logo{
    margin-bottom: 30px;
    width: 200px;
    height: auto;
}

footer h4{
    font-size: 14px;
    padding-bottom: 20px;
    color: #e3e9f7;
}

footer p{
    font-size: 13px;
    margin: 0 0 8px 0;
    color: #c7c7c7;
}


footer a{
    font-size: 13px;
    text-decoration: none;
    color: #c7c7c7;
    margin-bottom: 10px;
}

footer .copyright{
    width: 100%;
    height: 10%;
    text-align: center;
}

/*Fades In*/


.hidden-fade{
    opacity: 0;
    filter: blur(5px);
    transition:  all 1s ;
}


.show-fade{
    opacity: 1;
    filter: blur(0px);
    transform: translateX(0);
}


.fade-in:nth-child(2){
    transition-delay: 200ms;
}

.fade-in:nth-child(3){
    transition-delay: 400ms;
}

.fade-in:nth-child(4){
    transition-delay: 600ms;
}

.nav-item:nth-child(2){
    transition-delay: 100ms;
}


.nav-item:nth-child(3){
    transition-delay: 200ms;
}


.nav-item:nth-child(4){
    transition-delay: 300ms;
}


.nav-item:nth-child(5){
    transition-delay: 400ms;
}


.nav-item:nth-child(6){
    transition-delay: 500ms;
}


/*Max HEIGHTS*/

@media screen and (max-height:950px) {
    .banner, .about-us{
        transform: translateY(-5vh);
    }
}

@media screen and (max-height:900px) {

    .about-us{
        transform: translateY(-5vh);
    }

    .about-articles .article-img .square-image{
        padding-bottom: 5%;
    }

    .second-banner{
        transform: translateY(-10vh);
    }

    .second-banner-info{
        padding: 10% inherit;
        height: 120%;
    }

    .second-banner-img{
        height: 120%;
    }

    .ready{
        transform: translateY(5vh);
    }

    .location{
        transform: translateY(8vh);
        margin-bottom: 10vh;
    }
}

@media screen and (max-height:800px) {
    .banner{
        transform: translateY(-7vh);
    }

    .about-us, .second-banner, .ready, .location{
        transform: translateY(0vh);
    }

    .banner{
        height: 85vh;
        padding-top: 0;
        padding-bottom: 10%;
        margin-bottom: 0;
    }

    .about-us{
        margin-top: 0;
    }

    .second-banner{
        margin-bottom: 20vh;
    }
}


@media screen and (max-height:700px) {
    .banner{
        transform: translateY(-10vh);
    }

    .about-us, .second-banner, .ready, .location{
        transform: translateY(-10vh);
    }

    .banner{
        min-height: 90vh;
        padding: 10% inherit;
    }


    .second-banner{
        max-width: 100%;
        transform: translateY(-12vh);
    }

    .second-banner-info{
        padding: 10% inherit;
        height: 130%;
    }

    .second-banner-img{
        height: 130%;
    }

    .ready{
        margin-top: 30vh;
    }

    iframe{
        margin-top: 10vh;
    }
}

@media screen and (max-height:650px) {
    .second-banner{
        height: 140%;
    }
}

@media screen and (max-height:600px) {
    .banner{
        transform: translateY(-7vh);
        padding-top: 10%;
    }

    .about-us, .second-banner, .ready, .location{
        transform: translateY(-10vh);
    }

    .second-banner{
        transform: translateY(-15vh);
    }

    .ready{
        height: 25vh;
    }

    .location{
        margin-top: 5vh;
        height: 65vh ;
    }

    .location iframe{
        height: 80vh;
        transform: translateY(-5vh);
    }
}

@media screen and (max-height:550px) {
    header.sticky{
        height: 15vh;
    }

    .banner-info{
        transform: translateY(-5vh);
    } 

    .second-banner-info{
        padding: 10% inherit;
        height: 130%;
        margin-top: 10vh;
    }

    .second-banner-img{
        height: 130%;
    }

    .ready{
        transform: translateY(10vh) ;
        margin-bottom: 25vh;
    }

}

@media screen and (max-height:500px) {

    header{
        height: 20vh;
    }

    header.sticky .logo{
        transform: scale(1.1);
    }

    .about-us{
        transform: translateY(-10vh);
    }

    .second-banner{
        transform: translateY(-10vh);
    }

    .second-banner-info{
        padding: 10% inherit;
        height: 140%;
    }

    .second-banner-img{
        height: 140%;
    }

    .ready{
        transform: translateY(30vh);
        margin-bottom: 50vh;
    }

    .ready-button{
        transform: scale(0.8);
    }
}

@media screen and (max-height: 470px) {
    .ready{
        margin-top: 30vh;
        height: 30vh;
    }
}

@media screen and (max-height: 450px) {

    .banner{
        min-height: 100vh;
        transform: translateY(-25vh);
    }

    .banner-info{
        transform: translateY(0vh);
    } 

    .about-us{
        transform: translateY(-20vh);
    }

    .second-banner{
        transform: translateY(-20vh);
    }

    .second-banner-info{
        padding: 10% inherit;
        height: 160%;
    }

    .second-banner-img{
        height: 160%;
    }

    .ready{
        height: 30vh;
    }
}

@media screen and (max-height: 400px) {

    .banner{
        height: 120vh;
        transform: translateY(-20vh);
    }

    .about-us{
        transform: translateY(-20vh);
    }

    .second-banner{
        transform: translateY(-25vh);
    }

    .ready{
        margin-top: 35vh;
    }

    .location{
        height: 80vh;
    }

    .location iframe{
        height: 100vh;
        transform: translateY(0vh);
    }
}

@media screen and (max-height: 350px) {

    .second-banner{
        transform: translateY(-30vh);
    }

    .second-banner-info{
        padding: 10% inherit;
        height: 200%;
    }

    .second-banner-img{
        height: 200%;
    }

    .ready{
        margin-top: 65vh;
    }
}

@media screen and (max-height: 350px) {
    header{
        height: 23vh;
    }

    .ready{
        height: 35vh;
        margin-top: 100vh;
    }
}


/*TV MediaQuerys*/

@media screen and (min-width:2000px){

    h1{
        font-size: 70px;
    }

    .banner-info p{
        font-size: 30px;
    }

    .banner-info{
        transform: translateY(-10vh);
    }

    h6{
        font-size: 130%;
    }

    h2{
        font-size: 300%;
    }

    h3{
        font-size: 180%;
    }

    i{
        font-size: 100%;
    }

    h5{
        font-size: 230%;
    }

    p{
        font-size: 110%;
    }

    footer p{
        font-size: large;
    }


}

@media screen and (min-width:2000px) {
    .about-articles:hover{
        box-shadow: none;
        transform: none;
    }
}


@media screen and (min-width:2560px){

    nav{
        width: 50%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        padding-right: 0;
    }

    nav ul{
        width: 100%;
        height:  100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    nav li{
        width: 15%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
    }

    nav li a{
        font-size: xx-large;
    }

    h1{
        font-size: 90px;
    }

    .banner-info p{
        font-size: 35px;
    }

    .banner-info{
        transform: translateY(-10vh);
    }

    h6{
        font-size: 150%;
    }

    h2{
        font-size: 70px;
    }

    h3{
        font-size: 250%;
    }

    i{
        font-size: 100%;
    }

    h5{
        font-size: 300%;
    }

    p{
        font-size: 150%;
    }

    .article-info p{
        margin-top: 5%;
    }


    footer p{
        font-size: larger;
    }

    footer h4{
        font-size: x-large;
    }

}