@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;300;400;500;600&display=swap");
* {
  font-family: 'Poppins', sans-serif;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  text-decoration: none;
  outline: none;
  border: none;
  /*text-transform: capitalize;*/
  transition: all .2s linear;
}
body {
	display: grid;
}
html {
  font-size: 62.5%;
  overflow-x: hidden;
}
.btn {
	font-size: 2rem;
	padding: .7rem 3.5rem;
	border-radius: 5rem;
	color: #130460;
	margin-top: 1rem;
	box-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
	cursor: pointer;
	border: none;
	overflow: hidden;
	position: relative;
	z-index: 0;
}
.btn::before {
	content: '';
	position: absolute;
	top: 0; right: 0;
	height: 100%;
	width: 0;
	background: #333;
	z-index: -1;
	transition: .2s linear;
}
.btn:hover::before {
	left: 0;
	width: 100%;
}
.heading {
  text-align: center;
  background: #4a4a4a;
}

.heading h3 {
  font-size: 3rem;
  text-transform: uppercase;
  color: #fff;
}
.sub-titulo {
  text-align: center;
  background: #E4E3E3;
}
.sub-titulo h2 {
padding: 0.5rem 0;
  font-size: 2rem;
  text-transform: uppercase;
  color:#2B2B2B;
}
.sub-titulo span {
	color: #737373;
}
section {
    padding: 0 7%;
}

/*////////// ENCABEZADO //////////*/
.header {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: #fff;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  padding: 0 9%;
}

/*.header .logo {
  font-size: 2.5rem;
  color: #bbdb57;
  font-weight: bolder;
  margin-right: auto;
}*/
.header .logo {
	margin-right: auto;
}
.header .logo img {
    height: 7rem;
}
.header .navbar ul {
  list-style: none;
}

.header .navbar ul li {
  position: relative;
  float: left;
}

.header .navbar ul li:hover ul {
  display: block;
}

.header .navbar ul li a {
  font-size: 1.7rem;
  color: #666;
  padding: 2rem;
  display: block;
}

.header .navbar ul li a:hover {
  color: #FFFFFF;
  background: #dc011c;
}

.header .navbar ul li ul {
  position: absolute;
  left: 0;
  width: 20rem;
  background: #fff;
  display: none;
}

.header .navbar ul li ul li {
  width: 100%;
}

.header .icons div,
.header .icons a {
  font-size: 2.5rem;
  color: #333;
  cursor: pointer;
  margin-left: 2rem;
}

.header .icons div:hover,
.header .icons a:hover {
  color: #dc011c; /*color iconos redes */
}

/* --------  CONTENIDO PRINCIPAL INDEX ---- */

.home {
	position: relative;
	width: 100%;
	height: calc(75vh - 50px);
	background-color: #F5F5F5;
	background-size: cover;
	background-position: center;
	transition: all .1s ease-out;
	background-image: url("../img/banner-1.jpg");
	animation: banner 28s infinite linear;
}
.banner-content{
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	color: #FFF;
	background-color: rgba(0, 22, 40, .6);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.banner-content h1{
	margin: 0;
	padding: 0;
	padding-bottom: 10px;
	font-size: 40px;
	text-align: center;
}
.banner-content h2{
	margin: 0;
	padding: 0;
	padding-bottom: 10px;
	font-size: 20px;
	text-align: center;
}
.banner-content a{
	text-decoration: none;
	color: #FFF;
	padding: 9px 20px;
	border: 1px solid #FFF;
	text-transform: uppercase;
	transition: all .3s ease-in-out;
}
.banner-content a:hover{
	background-color: #fff;
	color: #333;
}
@keyframes banner{
	0%{
		background-image: url('../img/banner-1.jpg');
	}
	25%{
		background-image: url('../img/banner-1.jpg');
	}
	26%{
		background-image: url('../img/banner-2.jpg');
	}
	50%{
		background-image: url('../img/banner-2.jpg');
	}

	51%{
		background-image: url('../img/banner-3.jpg');
	}
	75%{
		background-image: url('../img/banner-3.jpg');
	}
	
	76%{
		background-image: url('../img/banner-4.jpg');
	}
	100%{
		background-image: url('../img/banner-4.jpg');
	}

}

/* --------  CONTENIDO NOSOTROS ---- */

.nosotros video {
	margin: 2% 2% 0 2%;
	width: 96%;
	display:  grid;
	grid-template-columns: 1fr;
}
.contenido-n {
	width: 90%;
	margin: 0 auto;
	align-items: center;
	display: grid;
	grid-gap: 2rem;
	grid-template-rows: repeat(1, 1fr);
}
.contenido-n img {
	width: 80%;
	border:rgba(255,255,255,1.00) 2px solid;
	box-shadow: 0 0 20px 1px rgba(0,0,0,0.3);
}
.ima-n1 {
	width: 100%;
	border:rgba(255,255,255,1.00) 1px solid;
	padding: 2%;
	text-align: center;
	grid-column: 1/3;
	box-shadow: 0 0 20px 1px rgba(0,0,0,0.2);
	
}
.texto-n {
	grid-column: 1/3;
}
.texto-n h3 {
	padding:1rem 0;
    font-size: 3rem;
    color:#6E8F0D;
	font-weight: 500;
}
.texto-n p {
	font-size: 16px;
	line-height: 26px;
	padding-bottom: 15px;
	text-align: justify;
}
.mision h3 {
	padding:1rem 0;
    font-size: 3rem;
    color:#6E8F0D;
	font-weight: 500;
}
.mision p {
	font-size: 16px;
	line-height: 26px;
	padding-bottom: 15px;
	text-align: justify;
}
.ima-n2 {
	width: 100%;
	text-align: center;
	border:rgba(255,255,255,1.00) 1px solid;
	padding: 2%;
	box-shadow: 0 0 20px 1px rgba(0,0,0,0.2);
}
.ima-n2 img {
	width: 100%;
}
.vision h3 {
	padding:1rem 0;
    font-size: 3rem;
    color:#6E8F0D;
	font-weight: 500;
}
.vision p {
	font-size: 16px;
	line-height: 26px;
	padding-bottom: 15px;
	text-align: justify;
}
.ima-n3 {
	width: 100%;
	text-align: center;
	border:rgba(255,255,255,1.00) 1px solid;
	padding: 2%;
	box-shadow: 0 0 20px 1px rgba(0,0,0,0.2);
}
.ima-n3 img {
	width: 100%;
}
.valores h3 {
	padding:1rem 0;
    font-size: 3rem;
    color:#6E8F0D;
	font-weight: 500;
}
.valores ul {
	font-size: 16px;
	line-height: 20px;
	padding-bottom: 15px;
	text-align: justify;
}
.ima-n4 {
	width: 100%;
	text-align: center;
	border:rgba(255,255,255,1.00) 1px solid;
	padding: 2%;
	box-shadow: 0 0 20px 1px rgba(0,0,0,0.2);
}
.ima-n4 img {
	width: 100%;
}
/* --------  CONTENIDO PRODUCTOS ---- */
.menu .box-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    gap:1.5rem;
}

.menu .box-container .box {
    padding:5rem;
    text-align: center;
    border:.1rem solid rgba(200,200,200,.3);
	background: #EFEDED;
}

.menu .box-container .box img {
    height: 15rem;
}

.menu .box-container .box h3 {
    color: #B1080B;
    font-size: 2rem;
    padding:1rem 0;
}
.box {
	display: grid;
	grid-template-rows: repeat(3, 1fr):
}
.texto-p {
	height: 10rem;
}
.menu .box-container .box:hover{
    background: rgba(108,108,108,.3);
}

.menu .box-container .box:hover > *{
	color: #333;
}
.menu .box-container .box .btn:hover {
	color: #fff;
}
/* --------  CONTENIDO SUB-PRODUCTOS ---- */
.banner-productos {
	text-align: center;
}
.contenedor-max {
	margin: 1% 10% 5% 10%;
	display: grid;
	text-align: center;
	grid-template-columns: 48% 4% 48%;
}
.contenedor-max1 {
	margin: 1% 30% 5% 30%;
	display: grid;
	text-align: center;
	grid-template-columns: 1fr;
}
.contenedor-max2 {
	margin: 1% 20% 5% 20%;
	display: grid;
	text-align: center;
	grid-template-columns: 1fr;
}

.contenedor-esparrago {
	width: 100%;
	font-size: 1.5rem;
	background: #E7E5E5;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.contenedor-esparrago div {
	padding-top: 1rem;
	height: 4rem;
	border: 0.1rem solid #FFFFFF;
}
.contenedor-tuerca {
	width: 100%;
	font-size: 1.5rem;
	background: #E7E5E5;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.contenedor-tuerca div {
	padding-top: 1rem;
	height: 4rem;
	border: 0.1rem solid #FFFFFF;
}
.unida-m {
	font-size: 2rem;
	background-color: #A9CD53;
	grid-column: 1/3;
}
.unida-mm {
	font-size: 1.5rem;
	background-color:#C1C1C1;
	grid-column: 1/3;
}
.sub-u {
	font-size: 1.5rem;
	background: #ADADAD;
}
.nombre-p {
	padding-left: 3rem;
	text-align: left;
}
.vacio {
	grid-column: 1/3;
	background: #FFFFFF;
}
.gris {
	background: #F1EFEF;
}
.boton {
	text-align: center;
}
.boton a {
	padding: 2%;
}
.boton .btn:before {
	color: #FFFFFF;
	background: #A9CD53;
}
/* --------  CONTENIDO SERVICIOS ---- */
.servicios {
	width: 90%;
	margin: 0 auto;
    align-items: center;
    justify-content: center;
}

.servicios video {
	margin: 2%;
	width: 96%;
	display:  grid;
	grid-template-columns: 1fr;
	grid-gap: 5% 1%;
}
.servicios .row {
  width: 80%;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.servicios .row form {
  flex: 1 1 42rem;
  border-radius: 1rem;
  background: #f5f5f5;
  padding: 2rem;
}

.servicios .row form h3 {
  font-size: 2.5rem;
  color: #302851;
  margin-bottom: .5rem;
}

.servicios .row form .box, .servicios .row form textarea, .servicios .row form select {
  width: 100%;
  padding: 1rem 1.2rem;
  font-size: 1.6rem;
  color: #666;
  text-transform: none;
  margin: 1rem 0;
  border-radius: .5rem;
  background: #fff;
}

.servicios .row form textarea {
  height: 15rem;
  resize: none;
}
.servicios .row form h2 {
  font-size: 1.5rem;
  padding: 0 2%; 
  color: #302851;
  margin-bottom: .5rem;
}
/* ----------- CONTACTO -------------*/

.contact .icons-container {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.contact .icons-container .icons {
  flex: 1 1 42rem;
  text-align: center;
  padding: 2rem;
  border-radius: 1rem;
  background: #f5f5f5;
  margin-bottom: 2rem;
}

.contact .icons-container .icons i {
  height: 6.5rem;
  width: 6.5rem;
  line-height: 6.5rem;
  font-size: 2.5rem;
  color: #E0080C; /* color de los iconos */
  background: #e9edfb;
  border-radius: 50%;
  text-align: center;
  margin-bottom: .5rem;
}

.contact .icons-container .icons h3 {
  font-size: 2rem;
  color: #302851;
  padding: .7rem 0;
}

.contact .icons-container .icons p {
  line-height: 2;
  font-size: 1.4rem;
  color: #666;
}

.contact .row {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.contact .row form {
  flex: 1 1 42rem;
  border-radius: 1rem;
  background: #f5f5f5;
  padding: 2rem;
}

.contact .row form h3 {
  font-size: 2.5rem;
  color: #302851;
  margin-bottom: .5rem;
}

.contact .row form .box, .contact .row form textarea {
  width: 100%;
  padding: 1rem 1.2rem;
  font-size: 1.6rem;
  color: #666;
  text-transform: none;
  margin: 1rem 0;
  border-radius: .5rem;
  background: #fff;
}

.contact .row form textarea {
  height: 15rem;
  resize: none;
}

.contact .row .map {
  flex: 1 1 42rem;
  width: 100%;
  border-radius: 1rem;
}


/* ----------- DESHABILITA -------------*/

#menu-btn {
  display: none;
}

/* ------------ FOOTER --------------*/
.linea {
	margin-top: 2.5rem;
	height: 0.5rem;
	border-top: 0.2rem solid #333;
}
.footer .credit {
  text-align: center;
  padding: 1rem;
  padding-top: 0;
  margin-top: 0;
  font-size: 2rem;
  color: #666;
}

.footer .credit span {
  color: #dc011c;
}

/* --------- RESPONSIVE -----------*/
@media (max-width: 1200px) {
  html {
    font-size: 55%;
  }
  .header {
    padding: 0 1.5rem;
  }
		.contenedor-esparrago {
	font-size: 1.2rem;
}
	.contenedor-esparrago div {
	height: 5rem;
}
   
}

@media (max-width: 1000px) {
.contenedor-max {
	margin: 1% 10% 0 10%;
	display: grid;
	text-align: center;
	grid-template-columns: repeat(1, 1fr);
}
	.boton a {
	padding: 0;
}
	.contenido-n {
	grid-template-rows: repeat(1, 1fr);
}
}


@media (max-width: 768px) {
  #menu-btn {
    display: inline-block;
  }
  .header {
    padding: 1.5rem;
  }
  .header .navbar {
    position: absolute;
    top: 99%;
    left: 0;
    right: 0;
    background: #fff;
    clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  }
  .header .navbar.active {
   clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
  .header .navbar ul li {
    width: 100%;
  }
  .header .navbar ul li ul {
    position: relative;
    width: 100%;
  }
  .header .navbar ul li ul li a {
    padding-left: 4rem;
  }
  .home .contenido h1{
	text-align: center;
	}
  .hpulgadas {
		font-size: 1.3rem;
	}
  .tabla-items {
	font-size: 1rem;
	}
	.contenedor-tuerca {
	font-size: 1rem;
}
	.contenedor-tuerca div {
	height: 5rem;
}
	.contenedor-esparrago {
	font-size: 1rem;
}
	.contenedor-esparrago div {
	height: 5rem;
}
}

@media (max-width: 450px) {
  html {
    font-size: 50%;
  }
	.home .contenido h1{
		font-size: 3.5rem;
	}
	.footer .credit {
		font-size: 1.5rem;
	}
	.tabla-productos {
	margin: 1% 5% 0 5%;
	display: grid;
}
	.hpulgadas {
		font-size: 1.5rem;
	}
	.tabla-items {
	font-size: 1.2rem;

}
	}
