/* Reset CSS */

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

a {
	text-decoration: none;
	color: #fff;
}

@font-face{
	font-family:ChunkFive;
	src: url(fonts/ChunkFive-Regular.otf)
	format("truetype");
	font-weight: normal;
	font-style: normal;
}

@font-face{
	font-family:ChunkFive-Print;
	src: url(fonts/Chunk Five Print.otf)
	format("truetype");
	font-weight: normal;
	font-style: normal;
}

@font-face{
	font-family:AvenirNext;
	src: url(fonts/AvenirNextLTPro-Regular.otf)
	format("truetype");
	font-weight: normal;
	font-style: normal;
}

@font-face{
	font-family:AvenirNext-Bold;
	src: url(fonts/AvenirNextLTPro-Bold.otf)
	format("truetype");
	font-weight: bold;
	font-style: normal;
}

/* General */

li{
	display: inline;
    margin-left: 5px;
    margin-right: 5px;
}

p{
	font-family: AvenirNext;
	font-size: 24px;
}

h1{
	font-size: 55px;
	font-family: ChunkFive;
	line-height: 70px;
	font-weight: bold;
	text-align: center;
}

h2{
	font-size: 35px;
	font-family: ChunkFive;
}

h3{
	font-size: 23px;
	font-family: Dongle;
}

body{
	
}

form{
	width: 100%;
	background-color: rgba(0,41,59,1);
	box-sizing: border-box;
	padding: 10px 20px;
	font-family: Dongle;
}

form h2{
	text-align: center;
	color:rgba(255,65,80,1);
	padding-bottom: 20px;
}

form input, textarea {
	width: 100%;
	margin-bottom: 20px;
	margin-top: 20px;
	padding: 7px;
	box-sizing: border-box;
	font-size: 17px;
	border:none;
	background-color: rgba(0,0,0,.3);
}

.asunto{
	width: 100%;
	margin-bottom: 50px;
	box-sizing: border-box;
	font-size: 17px;
	border:none;
	background-color: rgba(0,0,0,.3);
    padding: 10px 20px;
    font-family: AvenirNext ;
    color: grey;
}

textarea{
	max-width:100%;
}

/*clases */

/*Aviso de privacidad */
.ap-p{
	color:#fff;
	margin:2% 10%;
	line-height:28px;
	font-size:20px; 
}

.ap-h1{
	color: rgb(255,65,80);
}

.ap-h3{
	color: #fff;
	margin:2% 10%;
	font-size:30px;
	font-family: ChunkFive; 
}

.ap-ul{
	list-style-type: disc;
	margin: 0 10%;
	list-style-position: inside;
	font-family: AvenirNext;
	font-size: 18px;
	line-height: 30px;
}

.ap-ul li{
	display: list-item;
	color: #fff;
}

/* Pantalla de Carga */
#contenedor_carga{
	background: linear-gradient(180deg, rgba(0,41,120,1) 0%, rgba(0,41,59,1) 100%);
	height: 100%;
	width: 100%;
	position: fixed;
	-webkit-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
	z-index: 10000;
}

#carga{
	position: absolute;
	top:35%;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	text-align: center;
}

/* Sistema de navegación */

header{
	background-color:rgba(0,41,120,1);
}

#btn-menu{
	display: none;
}

header label {
	display: block;
	width: 50px;
	height: 50px;
	display: none;
}

header label:hover{
	cursor: pointer;
	background: rgba(0,0,0,0.3)
}

.navegacion{
  	font-family: 'Dongle', sans-serif;
    z-index: 1;
}

.navegacion ul{
	margin: 0;
	display: flex;
	list-style: none;
	padding: 20px;
	justify-content: flex-end;
	font-size: 40px;
}

.navegacion li{
	text-decoration: none;
	padding: 10px;
}

.navegacion a:hover{
	color: rgb(255,65,80);
}

.logo{
	position: absolute;
    left: 0px;
    top: 0px;
}

#boton{
	background: rgba(255,65,80,1);
	color: #fff;
	padding: 20px;
}

#boton:hover {
cursor: pointer;
}


.header {
  position:relative;
  text-align:center;
  background: linear-gradient(180deg, rgba(0,41,120,1) 0%, rgba(0,41,59,1) 100%);
  color:white;
}
.lineas {
  fill:white;
  display:inline-block;
  vertical-align: middle;
  z-index: 1;
}

.inner-header {
  height:65vh;
  width:100%;
  margin: 0;
  padding: 0;
}

.gracias {
  height:36vh;
  width:100%;
  margin: 0;
  padding: 0;
}

.logo-header{
	width: 80%;
}

.flex { /*Flexbox for containers*/
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #ffffff;
}

.waves {
  position:relative;
  width: 100%;
  height:15vh;
  margin-bottom:-7px; /*Fix for safari gap*/
  min-height:100px;
  max-height:150px;
}

.content {
  position:relative;
  height:20vh;
  text-align:center;
  background-color: rgb(255,255,255);
  font-size: 20px;
}

/* Animation */

.parallax > use {
  animation: move-forever 25s cubic-bezier(.55,.5,.45,.5)     infinite;
}
.parallax > use:nth-child(1) {
  animation-delay: -2s;
  animation-duration: 7s;
}
.parallax > use:nth-child(2) {
  animation-delay: -3s;
  animation-duration: 10s;
}
.parallax > use:nth-child(3) {
  animation-delay: -4s;
  animation-duration: 13s;
}
.parallax > use:nth-child(4) {
  animation-delay: -5s;
  animation-duration: 20s;
}
@keyframes move-forever {
  0% {
   transform: translate3d(-90px,0,0);
  }
  100% { 
    transform: translate3d(85px,0,0);
  }
}
.caja1{
	background-image: var(--gradient);
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    color:  #f5f0ed;
    background-size: cover;
    background-position: center;
    min-height: 350px;
    padding: 15%;
}

.linea{
	background-color: #f5f0ed;
    width: 180px;
    height: 5px;
    margin: 45px auto;
}

.linea2{
    width: 100%;
    height: 5px;
    display: block;
}

.portafolio{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	width: 69%;
	margin: auto;
	grid-gap: 10px;
	overflow: hidden;
}

.portafolio > a{
	display: block;
	position: relative;
	overflow: hidden;
	box-shadow: 0 0 6px rgba(0,0,0,0.5)
}

.img-side{
	background: #E7E7E9;
	color: #000000;
	width: 100%;
	height: 100%;
	margin-top:-100%;
	opacity: 0;
	-webkit-transition:all .5s ease-in-out; 
}

.imagen1{
	grid-column-start: 1;
  	grid-column-end: 4;
  	grid-row-start: 1;
  	grid-row-end: 3;
  	max-height: 600px;
  	max-width: 1050px;
  	margin: auto;
}

.imagen2{
	grid-column-start: 1;
	grid-column-end: 2;
  	grid-row-start: 3;
  	grid-row-end: 5;
  	max-height: 600px;
  	max-width: 350px;
  	margin: auto;
}

.imagen3{
	grid-column-start: 2;
	grid-column-end: 3;
  	grid-row-start: 3;
  	grid-row-end: 4;
  	max-height: 300px;
  	max-width: 300px;
  	margin: auto;
}

.imagen4{
	grid-column-start: 3;
	grid-column-end: 4;
  	grid-row-start: 3;
  	grid-row-end: 5;
  	max-height: 600px;
  	max-width: 350px;
  	margin: auto;
}

.imagen5{
	grid-column-start: 2;
	grid-column-end: 3;
  	grid-row-start: 4;
  	grid-row-end: 5;
  	max-height: 300px;
  	max-width: 300px;
  	margin: auto;
}

.imagen6{
	grid-column-start: 1;
	grid-column-end: 4;
  	grid-row-start: 5;
  	grid-row-end: 7;
  	max-height: 300px;
  	max-width: 1050px;
  	margin: auto;
}

.imagen7{
	grid-column-start: 1;
	grid-column-end: 3;
  	grid-row-start: 7;
  	grid-row-end: 8;
  	max-height: 300px;
  	max-width: 700px;
  	margin: auto;
}

.imagen8{
	grid-column-start: 3;
	grid-column-end: 4;
  	grid-row-start: 7;
  	grid-row-end: 8;
  	max-height: 300px;
    max-width: 300px;
    margin: auto;
}

.imagen9{
	grid-column-start: 1;
	grid-column-end: 2;
  	grid-row-start: 8;
  	grid-row-end: 9;
  	max-height: 300px;
    max-width: 300px;
    margin: auto;
}

.imagen10{
	grid-column-start: 2;
	grid-column-end: 4;
  	grid-row-start: 8;
  	grid-row-end: 9;
  	max-height: 300px;
  	max-width: 700px;
  	margin: auto;

  }

.portafolio img{
width: 100%;
vertical-align: top;
object-fit: cover;
transition: 0.5s;
}

.light-box{
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.5);
	width: 100%;
	height: 100%;
	z-index: 1000;
	display: flex;
	justify-content: center;
	align-items: center;
	transform: scale(0);
}

.light-box img{
	max-height: 70vh;
}

.light-box:target{
	transform: scale(1);
}

.close{
	direction: block;
	position: absolute;
	top: 40px;
	right: 40px;
	color: white;
	text-decoration: none;
	width: 50px;
	height: 50px;
	text-align: center;
	line-height: 40px;
	border-radius: 50%;

}

.next{
	display: block;
	color: white;
	height: 40px;
	width: 40px;
	line-height: 30px;
	text-decoration: none;
	text-align: center;
	padding-left: 30px;
}

.preview{
	display: block;
	color: white;
	height: 40px;
	width: 40px;
	padding-right: 40px;
	line-height: 30px;
	text-decoration: none;
	text-align: center;
}

.contenedor1{
	min-height: 400px;
	background-color: rgb(255,255,255);
	color: #00293f;
}

.contenedor1 h2{
text-align: center;
font-size: 50px;
}

#servicios{
	text-align: center;
	font-size: 50px;
	background-color:#00293b;
	color: #fff;
	padding-bottom: 15px;
}

.servicios{
	height: 400px;
	padding-bottom: 50px;
	text-align: center;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
	background-color: #00293b;
   	grid-row-gap: 1em;
   	background-image: url("Imagenes/logo-gigante.png");
   	background-size: 500px;
   	background-repeat: no-repeat;
   	background-position: 110% -320%;
}

.servicios img{
	width: 100px;
	height: 100px;
}

.servicios ul{
	display: block;
    list-style-type: disc;
}

.servicios li{
	display:list-item;
	margin: 5.5%;
	font-family: AvenirNext;
	color: #fff;
	font-size: 25px;
}

.servicios h3{
	padding-top: 10px;
	font-family:AvenirNext-Bold;
	color: rgb(255,65,80);
	font-style: bold;
}

.servicios-1{
	grid-column-start: 1;
	grid-column-end: 2;
	grid-row-start: 1;
	grid-row-end: 2;	
}
.servicios-2{
	grid-column-start: 2;
	grid-column-end: 4;
	grid-row-start: 1;
	grid-row-end: 3;
}
.servicios-3{
	grid-column-start: 4;
	grid-column-end: 5;
	grid-row-start: 1;
	grid-row-end: 2;
}

.servicios-4{
	grid-column-start: 5;
	grid-column-end: 7;
	grid-row-start: 1;
	grid-row-end: 3;
}
.servicios-5{
	grid-column-start: 1;
	grid-column-end: 2;
	grid-row-start: 3;
	grid-row-end: 4;
}

.servicios-6{
	grid-column-start: 2;
	grid-column-end: 4;
	grid-row-start: 3;
	grid-row-end: 5;
}

.nosotros{
	background-color: rgb(255,65,80);
	color: #ffffff;
	display: grid;
	grid-template-columns: 1fr 1fr;
}

#nosotros{
	text-align: center;
	font-size: 50px;
	background-color: rgb(255,65,80);
	color: #fff;
	padding: 15px;
}

.nosotros-1{
	text-align: center;
	padding: 10% 0;
	font-size: 30px;
}

.nosotros-1 h2{
	color: #00293b;
	padding-bottom: 30px;
}

.nosotros-2{
	background-image: url(Imagenes/nosotros-1.jpg);
	background-repeat: repeat;
	background-size: 10%;
	background-attachment: fixed;
	min-height: 400px;
}

.nosotros-3{
	text-align: center;
	padding: 10% 0;
	font-size: 30px;
}

.nosotros-3 h2{
	color: #00293b;
	padding-bottom: 30px;
}

.nosotros-4{
	background-image: url(Imagenes/nosotros-1.jpg);
	background-repeat: repeat;
	background-size: 10%;
	background-attachment: fixed;
	min-height: 400px;
}

.nosotros-5{
	text-align: center;
	padding: 15% 0;
	font-size: 30px;
}

.nosotros-6{
	background-image: url(Imagenes/nosotros-1.jpg);
	background-repeat: repeat;
	background-size: 10%;
	background-attachment: fixed;
	min-height: 400px;
}

.ejes{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}

.ejes h3{
	font-size: 25px;
	font-family: ChunkFive;
}

.ejes p{
  background-color: #00293b;
  border-radius: 40px;
  padding: 10px;
}

.eje-1{
  grid-column-start: 1;
  grid-column-end: 2;
  grid-row-start: 1;
  grid-row-end: 2;
}


.eje-2{
  grid-column-start: 3;
  grid-column-end: 4;
  grid-row-start: 1;
  grid-row-end: 2;
}


.eje-3{
  grid-column-start: 2;
  grid-column-end: 3;
  grid-row-start: 2;
  grid-row-end: 3;
}

.clientes{
	text-align: center;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;

}

#clientes{
	text-align: center;
	font-size: 50px;
}

.cliente-final img{
	height: 200px;
	width: 200px;
}

.cliente img{
	height: 200px;
	width: 200px;
}

.td-feed{
	padding: 0 20px;
}

.contacto h3{
	font-size: 35px;
	color: #fff;
}

.formulario{
	display: grid;
	grid-template-columns: 1fr 1fr;
    grid-column-gap: 0px;
    grid-row-gap: 1em;
    font-family: Dongle;
}

.info-contacto{
	display: grid;
	grid-template-columns: 1fr 1fr;
    grid-column-gap: 50px;
    grid-row-gap: 0em;
    text-align: center;
    background-color: rgba(0,0,0,.4);
    color: #fff;
    padding: 10px 20px;
}

.info-contacto-1{
	grid-column-start: 1;
  grid-column-end: 3;
  grid-row-start: 1;
  grid-row-end: 2;
}

.info-contacto-2{
	grid-column-start: 1;
  grid-column-end: 3;
  grid-row-start: 2;
  grid-row-end: 3;
  font-size: 50px;
}

.info-contacto-3{
	font-size: 30px;
}

.info-contacto-4{
	font-size: 30px;
}

.table-header{
	margin: 0 auto;
}

.feed{
	background-color:#3c3c3b;
	min-height: 100px;
	padding: 30px;
	color: #f5f0ed;
	text-align: center;
	font-size: 24px;
}

.logofeed {
	margin: auto;
}

/*Shrinking for mobile*/
@media (max-width: 768px) {

	iframe {
		max-width: 200px;
	}

	.contenedor1 article img {
		max-width: 200px
	}

	.contenedor1 article img {
		max-height: 200px
	}


  .waves {
    height:40px;
    min-height:40px;
  }
  .content {
    height:30vh;
  }
  h1 {
    font-size:24px;
  }

  header label {
  	display: block;
  }

  .navegacion {
  	background: rgba(0,0,0,.3);
  	position: absolute;
  	width: 60%;
 	margin-left: -60%;
 	transition: all .5s;
  }

  .navegacion ul {
  	flex-direction: column;
  }

  .navegacion li {
  	border-top: 1px solid #fff;
  }

  #btn-menu:checked ~ .navegacion {
  	margin: 0;
  }

  .logo {
  	display: none;
  }

 .clientes{
 	grid-template-columns: 1fr 1fr;
 }

 .cliente img{
	height: 180px;
	width: 180px;
}


 .cliente-vacio{
 	display: none;
 }

.formulario{
	display: block;
}

.info-contacto-3 {
    font-size: 20px;
}

.info-contacto-4{
	font-size: 20px;
}

.ejes{
	grid-template-columns: 1fr;
}

.eje-1{
  grid-column-start: 1;
  grid-column-end: 2;
  grid-row-start: 1;
  grid-row-end: 2;
  padding: 8px 0;
}


.eje-2{
  grid-column-start: 1;
  grid-column-end: 2;
  grid-row-start: 2;
  grid-row-end: 3;
  padding: 8px 0;
}


.eje-3{
  grid-column-start: 1;
  grid-column-end: 2;
  grid-row-start: 3;
  grid-row-end: 4;
  padding: 8px 0;
}

p { 
    font-size: 15px;
}

.cliente-final{
    grid-column-start: 1;
    grid-column-end: 3;
}

}

@media (max-width: 600px) {
	.servicios{
		grid-template-columns: 1fr 1fr 1fr;
		height: 600px;
		background-position: 110% 237%;
	}

	.servicios-1{
		grid-column-start:1;
		grid-column-end:2;
		grid-row-start:1;
		grid-row-end:2;	
	}
	.servicios-2{
		grid-column-start:2;
		grid-column-end:4;
		grid-row-start:1;
		grid-row-end:2;
	}
	.servicios-3{
		grid-column-start:1;
		grid-column-end:2;
		grid-row-start:2;
		grid-row-end:3;
	}

	.servicios-4{
		grid-column-start:2;
		grid-column-end:4;
		grid-row-start:2;
		grid-row-end:3;
	}
	.servicios-5{
		grid-column-start:1;
		grid-column-end:2;
		grid-row-start:3;
		grid-row-end:4;
	}

	.servicios-6{
		grid-column-start:2;
		grid-column-end:4;
		grid-row-start:3;
		grid-row-end:4;
	}
}