@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap');
*{
    margin: auto;
    padding: 10px;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    text-shadow: #02784f 0.5px 0.5px 0.5px;
}
header{
    position: fixed;
    top: 0%; left: 0%; right: 0;
    background: #ffffff;
    box-shadow: 0.5px 10px #ffffff;
    padding: 0px 7%; 
    border-bottom: solid 1px #02a56c;
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 100;
}

nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: fff;
    padding: 5px 20px;
}

.logo {
    position:relative;
    margin-left: 0%;
    padding: 0%;
}

.logo img{
    width: 150px;
}

.menu {
    list-style: none;
    display: flex;
    align-items: center;
}

.menu li {
    position: relative;
}

.menu a {
    text-decoration: none;
    color: rgb(11, 11, 11);
    font-size: 18px;
    padding: 10px;
    display: block;
}

.menu li:hover > a {
    background-color: #ffffff;
    border-radius: 5px;
    border-bottom: #02784f solid 1px;
}

/* Submenú desplegable */
.submenu {
    display: none;
    position: absolute;
    background-color: #f5f2f2;
    top: 40px;
    left: 0;
    list-style: none;
    width: 300px;
    z-index: 10;
}

.submenu li {
    margin: 0;
    padding: 0;
}

.submenu a {
    padding: 10px;
    text-align: left;
}

.menu li:hover .submenu {
    display: block;
}

.menu-toggle {
    display: none;
    cursor: pointer;
}

.hamburger {
    width: 30px;
    height: 3px;
    background-color: white;
    position: relative;
    transition: all 0.3s ease;
}

.hamburger::before,
.hamburger::after {
    content: '';
    width: 30px;
    height: 3px;
    background-color: white;
    position: absolute;
    left: 0;
    transition: all 0.3s ease;
}

.hamburger::before {
    top: -8px;
}

.hamburger::after {
    top: 8px;
}
/*section*/
.caja-titulo{
    display: flex;
    text-align: center;
    text-shadow: #0b8546 0.5px 0.5px 0.5px;
    margin-top: 10px;
}

.caja-madre{
    display: inline-block;
    width: 30%;
    height: auto;
}
.caja-texto{
    text-shadow: #02a56c 0.3px 0.3px 0.3px;
}
.caja-subtitulo{
    text-align: center;
    text-shadow: #0b8546 0.5px 0.5px 0.5px;
}

.caja-img img{
    width: 100%;
    border-radius:5%;
}


.galery{
    margin-top: 4rem;
}



h2{
    display: block;
    text-align: center;
    font-weight: 200;
    letter-spacing: 2px;
}

.item2{
    display:grid;
    grid-template-columns: 40% 30%;
    margin-top: 30px;
    padding-left: 20%;
    
    
}

.item2 img{
    display: flex;
    position: relative;
    width: 100%;
    border-radius: 20px;
}

.item2 .description{
    display: flex;
    margin-left: 10%;
}

.item:hover .description{
    display: flex;
}

.sol-madre{
    margin-top: 10%;
    border-top: #02a56c 1px solid ;
    display: inline-block;
}


.sol{
    width: 90%;
    height: auto;
}

.sol h3{
    text-align: center;
    display: flex;
}



.icono{
    display: flex;
    margin-left: 25%;
    border-radius: 5px;
}

.img-img{
    margin-top: 5rem;
    width: 500px;
    border-radius: 5px;
    padding-left: 30%;
}



footer{
    width: 100%;
    padding: 0%;
    margin: 0%;
    height: auto;
    border-top: solid #02784f 1px;
    border-radius: 0.3% ;
}

.caja-r{
    display:grid;
    grid-template-columns: 300px 450px  450px;
    width: 100%;
    height: auto;
    margin-left: 0%;
    
}

.sub-cajas{
    display: flex;
    align-content: center;
    justify-content: center;
    text-align: center;
    padding-right: 10%;
}

.sub-cajas img{
    width: 150px
}

@media only screen and (max-width: 768px) {
    header nav{
        background-color: rgba(255, 255, 255, 0.961);
    }

    .logo {
        margin-left: -10%;
    }
    nav .menu{
        margin-top: 12%;
        margin-left: -10%;
        width: 90%;
         
    }    
    .menu-toggle {
        display: block;
        background-color: #040404;   
    }

    .hamburger p{
        padding-top: 30px;
        margin-left: -12px;
    }

    /* Submenú para móviles */
    .submenu {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        background-color: #444;
    }

    .caja-madre{
        width: 100%;
        text-align: center;
    }
    .caja-r{
        display: inline-block;
        width: 100%;
    }
    .sub-cajas{
        display: flex;
        width: 90%;
        align-content: center;
        justify-content: center;
        padding-left: 0%;
        margin-bottom:0%;
    }
    .galery{
        margin-top: 16rem;
    }
    .banner-slider{
        margin-top: 80%;
        padding: 0%;
        margin-left: 0;
        margin-right: 0%;
    }
    .banner{
        margin-top: 60%;
        margin-left:0% ;
        height:300px;
        width: 100%;
    }

    .logo{
        width: 50%;
        margin-bottom: 100%;
        position:none;        
    }
   
    
    .sol-madre{
        padding-left: 0%;
        margin-left: 0;
    }

    .img-img{
        width: 300px;
        padding-left: 0%;
        margin-left: 0;
    }

    .caja-l{
        width: 100%;
    
    }


    .caja-r{
        display: inline-block;
        width: 100%;
    }
    .sub-cajas{
        display: flex;
        width: 90%;
        align-content: center;
        justify-content: center;
        padding-left: 0%;
        margin-bottom:0%;
    }

    .sub-cajas img {
        width: 250px;
        margin-bottom: 0%;
    }

    .caja-img2 img{
        width: 150px;
        margin-left:20% ;
    }

    /*galry*/

    .item2{
        display:inline-block;
    }
    
}
