@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: 55px 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 img{
    width: 100%;
    margin: auto;
}

.logo {
    height: 150px;
}

.logo img{
    width: 15%;
    border-radius: 50%;
    transform: translate(80%,-55%);
}

.contenido .titulo h1{
    margin: 10px 0px;
    font-size: 30px;
    text-align: center;
    color: tomato;
}

.texto{
    width: 80%;
    margin: auto;
    margin-top: 50px;
}

.texto p{
    margin: 20px 0px;
}


.contacto{
    margin: 80px 0px;
}

.contacto h2{
    text-align: center;
    margin: 10px 0px;
    color: royalblue;
    font-size: 30px;
}

.contacto ul{
    list-style: none;
}

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

.contacto ul li i{
    font-size: 30px;
    margin: 10px 0px;
    color: royalblue;
}

.contacto ul li a{
    margin-left: 20px;
    text-decoration: none;
    line-height: 20px;
    color: #000;
}


.galeria h2{
    text-align: center;
    margin: 20px 0px;
    color: royalblue;
    font-size: 30px;
}

.galeria img{
    width: 250px;
}

/* Social middle */

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

.btn{
	display: inline-block;
	width: 50px;
	height: 50px;
	background: #f1f1f1;
	margin: 10px;
	border-radius: 30%;
	box-shadow: 0 5px 15px -5px #00000070;
	color: #3498db;
	overflow: hidden;
	position: relative;
}

.btn i{
	line-height: 50px ;
	font-size: 26px;
	transition: 0.2s linear;
}

.btn:hover i{
	transform: scale(1.3);
	color: #f1f1f1;
}

.btn:before{
	content: "";
	position: absolute;
	width: 120%;
	height: 120%;
	background: #3498db;
	transform: rotate(45deg);
	left: -110%;
	top: 90%;
}

.btn:hover::before{
	animation: aaa .7s 1;
	top: -10%;
	left: -10%;
}

/* Maps */

.mapa{
    width: 100%;
    margin-top: 40px;
}

.mapa h2{
    text-align: center;
    margin: 20px 0px;
    color: royalblue;
    font-size: 30px;
}


/* 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:700px){

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

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

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

    header .boton{
        transform: translateY(-60px);
        width: 100%;
        text-align: center;
    }

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

}

@media screen and (max-width:650px){
    
    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;
    }

    footer .colum .contacto li{
        margin-left: 0;
    }

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

    .galeria img{
        width: 100%;
        margin: auto;
    }
}

@keyframes aaa{
	0%{
		left: -110;
		top: 90%;
	}50%{
		left: 10%;
		top: -30%;
	}100%{
		top: -10%;
		left: -10%;
	}
}