@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900&display=swap');

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

header{
    height: 100px;
    background: cadetblue;
    width: 100% ;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

header .logo h2{
    padding: 30px 20px;
}

header .boton a{
    text-decoration: none;
    margin-right: 40px;
    color: rgba(0,0,0,1);
    background: rgba(255,255,255,.5);
    border-radius: 20px;
    font-size: 20px;
    text-align: center;
    width: 100%;
    padding: 15px;
}

header .boton a:hover{
    transition: .5s ease;
    background: rgba(255,255,255,1);
}

.foto{
    width: 100%;
    display: flex;
    justify-content: center;
}

.foto img{
    width: 100%;
}


/*  MENU */

.menu {
    padding: 60px 0px;
}

.menu h2{
    font-size: 30px;
    text-align: center;
    color: #000;
}
.menuBx{
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
}

section{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    transform-style: preserve-3d;
    width: 1100px;
}

section .card{
    position: relative;
    width:  260px;
    height: 260px;
    margin: 20px;
    transform-style: preserve-3d;
    perspective: 1000px;
}



section .card .box{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    transition: 1s ease;
}

section .card:hover .box{
    transform: rotateY(180deg);
}

section .card .box .imgBx{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

section .card .box .imgBx img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

section .card .box .contentBx{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #333;
    backface-visibility: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    transform-style: preserve-3d;
    transform: rotateY(180deg);
}

section .card .box .contentBx div{
    transform-style: preserve-3d;
    padding: 20px;
    background: linear-gradient(45deg,#fe0061,#ffeb3b);
    transform: translateZ(100px);
}

section .card .box .contentBx div h2{
    color: #fff;
    font-size: 20px;
    letter-spacing: 1px;
}

section .card .box .contentBx div p{
    color: #fff;
    font-size: 16px;
}

section .card .box .contentBx div [type="submit"]{
    background: rgba(0,0,0,0);
    border: 1px solid #fff;
    color: #fff;
    padding: 3px 8px;
    margin-top: 10px;
    cursor: pointer;
}

section .card .box .contentBx div [type="submit"]:hover{
    background: #fff;
    color: #000;
    transition: .5s ease;
}


.lista{
    display: grid;
    grid-template-columns: repeat(4,1fr);
    width: 80%;
    margin: auto;
    text-align: center;
}

.lista1,
.lista2,
.lista3,
.lista4{
    list-style: none;
    width: 100%;
}

.lista1 a,
.lista2 a,
.lista3 a,
.lista4 a{
    text-decoration: none;
    font-size: 13px;
}

.lista ul li a{
    color: rgba(0,0,0,.8);
}

.lista ul li:hover a {
    color: royalblue;
}

.lista1 span,
.lista2 span,
.lista3 span,
.lista4 span{
    font-size: 14px;
    font-weight: 500;
    color: firebrick;
    margin-right: 10px;
    text-align: center;
}

.lista1 .a1,
.lista2 .a1,
.lista3 .a1,
.lista4 .a1{
    margin-left: 20px;
}



/* Pie de pagina */

footer {
    margin-top:50px;
    margin-bottom: 0;
    width: 100%;
    height: 200px;
    background: rgba(0,0,0,.3);
}

footer .colum{
    margin: 30px 0px;
    width: 70%;
    margin: auto;
    height: 100px;
    padding: 30px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

footer .colum .acerca,
footer .colum .servicios,
footer .colum .contacto{
    text-align: center;
    height: 100px;
}

footer .colum .contacto{
    margin-top: 0;
}

footer .colum strong{
    color: rgba(0,0,0,.8);
}

footer .colum ul{
    list-style: none;
}

footer .colum ul li a{
    text-decoration: none;
    color: rgba(0,0,0,.7);
}

footer .colum ul li a:hover{
    transition: .3s ease;
    color: royalblue;
}



@media screen and (max-width:900px){
    .lista{
        grid-template-columns: repeat(2,1fr);
        width: 100%;
        font-size: 25px;
    }
}

@media screen and (max-width:700px){

    header{
        display: block;
        height: 150px;
    }

    header .logo{
        width: 100%;
        text-align: center;
    }

    header .logo h2{
        font-size: 20px;
    }

    header .boton{
        width: 100%;
        text-align: center;
    }

    header .boton a{
        margin-right: 0px;
        font-size: 20px;
    }

}

@media screen and (max-width:650px){
    .lista{
        grid-template-columns: repeat(1,1fr);
    }

    footer {
        margin-top:50px;
        width: 100%;
        height: 350px;
        background: rgba(0,0,0,.3);
    }

    footer .colum{
        grid-template-columns: 1fr;
    }

    footer .colum div{
        padding: 10px 0px;
    }
}