@import url('https://fonts.googleapis.com/css2?family=Yanone+Kaffeesatz&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans&display=swap');
*{
	box-sizing: border-box;
}
img {
	display: block;
	width: 100%; /*max-width: 100%;*/
}
body {
	margin:0;
	font-family: 'Open Sans', sans-serif;
	background-color: #f7f7f7;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Yanone Kaffeesatz', sans-serif;
	letter-spacing: 1.5px;
}

.contenedor {
	margin: auto;
	width: 98%;
}

.decoracion {
	text-decoration: none;
	color: #fff;
}

.decoracion:hover { /* Cuando se pasa el mouse por encima 
	background: #768FA5;
	color: #000;*/
	font-weight: bold;
	text-decoration: revert;
}

/*------------------------------ ESTILOS DEL HEADER ------------------------------*/
.header {
	height: 120px;
}

.header .contenedor {
	display: flex;
	justify-content: space-between; /*Para poner el logo menu y el titulo uno a cada extremo*/
}

.logo, .icon-menu {
	width: 300px;
}

.icon-menu {
	margin-top: 35px;
	display: block;
	width: 40px;
	height: 40px;
	font-size: 30px;
	background: #768FA5;
	color: #fff; /* black; poner el de arriba (.logo, .icon-menu) y borrar este*/
	text-align: center;
	line-height: 45px;
	border-radius: 5px;
	margin-left: auto; /*Para que se ponga en la esquina el logo menu*/
	cursor: pointer; /*Parezca que es un botón*/
}

/*------------------------------ ESTILOS DEL MENU ------------------------------*/
.nav {
	position: absolute;
	top: 60px;
	left: -100%; /*Para que se vaya a la izquierda*/
	width: 100%;
	transition: all 0.4s;
}
.menu {
	list-style: none;
	padding: 0;
	margin: 50;
}
.menu__link {
	display: block;
	padding: 15px;
	background: #fff;
	text-decoration: none;
	color: #768FA5;
}
.menu__link:hover, .select { /* Cuando se pasa el mouse por encima */
	background: #768FA5;
	color: #fff;
}

.mostrar {
	left:0;
}


/*------------------------------ ESTILOS DEL BANNER ------------------------------*/
.banner {
	position: relative;
	z-index: -1000;
	margin-bottom: 20px;
	margin-top: 40px;
}

.banner .contenedor {
	position: absolute;
	top:50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%); /* Para centrarlo */
	width: 100%;
	color: black;
	text-align: center;
}

.banner__txt { /*En movil no se verá 
	display: none;*/
}

/*------------------------------ ESTILOS DE INFO ------------------------------*/
.info__columna {
	background: #768FA5;
	color: #fff;
	padding: 15px;
	margin-bottom: 30px;
}

.info__titulo {
	text-align: center;
}

.info__txt {
	text-align: center;
}

/*------------------------------ ESTILOS DE PROYECTOS ------------------------------*/
.section__titulo {
	text-align: center;
	font-size: 40px;
	color: #768FA5;
}

.proyectos__columna {
	position: relative;
	margin-bottom: 20px;
}
.proyectos__descripcion {
	position: absolute;
	top: 0;
	left: 0;
	color: #fff;
	background: rgba(0,0,0,0.5);
	width: 60%;
	height: 100%;
	padding: 5px;
}

.proyectos__titulo {
	font-size: 25px;
	margin: 5px 0;
}
.proyectos__img {
	width: 100%;
}

/*------------------------------ ESTILOS DEL FOOTER ------------------------------*/
.footer {
	background: #333;
	color: #fff;
	padding: 10px;
	text-align: center;
}

.footer .social [class^="icon-"] { /*Todos los clases que comiencen con icon- dentro de social y a la vez dentro de footer */
	display: inline-block;
	color: #fff;
	text-decoration: none;
	font-size: 30px;
	padding: 10px;
}

/*------------------------------ ESTILOS RESPONSIVE ------------------------------*/
@media(min-width: 507px) { /*480 Movil*/
	.logo {
		font-size: 40px;
	}
	.banner__titulo {
		font-size: 30px;
		margin: 5px 0;
	}
	.banner__txt {
		display: block;
		font-size: 16px;
		margin: 7px 0;
	}
	.info {
		display: flex;
		justify-content: space-between;
		/*margin-top: -60px;*/ /*No hace falta ponerlo */
	}
	.info__columna {
		width: 32%;
	}
	.info__titulo {
		font-size: 30px;
		margin: 15px 0;
		text-align: center;
	}
	.proyectos {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.section__titulo{
		width:100%;
		margin-top: 0px;
	}
	.proyectos__columna {
		width: 49%;
	}
}


@media(min-width: 768px) { /*Tablet*/
	.banner__titulo {
		font-size: 50px;
	}

	.proyectos__titulo {
		font-size: 40px;
	}

	.info__titulo {
		font-size: 30px;
		text-align: center;
	}
}

@media(min-width: 1024px) { /*Escritorio*/
	.contenedor { /* Todo ajustado a ese tamaño*/
		width: 1000px;
	}
	.section__titulo{
		font-size: 50px;
		margin: 30px 0;
		margin-bottom: 10px;
	}
	.nav {
		position: static;
		width:auto;
	}
	.menu {
		margin-top: 30px;
		display: flex;
	}
	.menu__link {
		background: none;
		font-size: 20px;
	}
	.select {
		background: #768FA5;
		color: #fff;
	}
	.icon-menu {
		display:none;
	}
	.banner__titulo {
		font-size: 60px;
	}
	.banner__txt {
		font-size: 30px;
	}
	
	.info__titulo {
		font-size: 40px;
		text-align: center;
	}
	.proyectos__descripcion{
		padding: 10px;
		display: flex; /*Se puedo borrar todo el resto*/
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		align-content: center;
	}
	.proyectos__titulo {
		font-size: 50px;
	}
	.proyectos__txt {
		font-size: 20px;
	}
}

@media(min-width: 1280px) {
	.contenedor { /* Todo ajustado a ese tamaño*/
		width: 1200px;
	}
	.logo {
		font-size: 50px;
	}
	.banner .contenedor {
		top: 40%;
	}

}