body{
  font-family: 'Instrument Sans', sans-serif;
  -moz-font-feature-settings: "kern";
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 /* background-color: #fdfdfd; */
 background-color: #1f1f1f;
}
/* @font-face {
    font-family: 'monument_extendedblack';
    src: url('../webfont/monumentextended-black-webfont.woff2') format('woff2'),
         url('../webfont/monumentextended-black-webfont.woff') format('woff'),
         url('../webfont/monumentextended-black-webfont.svg#monument_extendedblack') format('svg');
    font-weight: normal;
    font-style: normal;
} */
/* ----- GENERAL ----- */
p{
  font-size: .9rem;
  line-height: 1.1rem;
}
.pd0{
  padding: 0;
}
.form-control{
  background-color: transparent;
  border-radius: 0;
  border: none;
  border-bottom: 1px solid #a9a9a9;
  color: #fdfdfd;
}
.form-label{
  font-size: .9rem;
}
.form-control:focus{
  background-color: transparent;
  box-shadow: none;
  border-bottom: 1.5px solid #fff;
  color: #fff;
}
.m-left{
  margin-left: auto;
}
.m-right{
  margin-right: auto;
}
/* ----- BUTTON ----- */
.cont-btn a{
  display: inline-block!important;
}
.button {
	pointer-events: auto;
	cursor: pointer;
	background: #ffb547;
	border: none;
	padding: 1.5rem 3rem;
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	position: relative;
	display: inline-block;
}

.button::before,
.button::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.button--hyperion {
  font-size: .8rem;
	font-weight: 600;
	padding: .8rem 2.5rem;
  text-transform: uppercase;
	border: 1px solid #000;
	overflow: hidden;
	color: #000;
  display: block;
  margin: 1rem 0 1rem auto;
}

.button--hyperion span {
	display: block;
	position: relative;
}

.button--hyperion > span {
	overflow: hidden;
}

/* .button--hyperion > span > span {
	overflow: hidden;
	mix-blend-mode: difference;
} */

.button--hyperion:hover > span > span {
	animation: MoveUpInitial 0.2s forwards, MoveUpEnd 0.2s forwards 0.2s;
  color: #fff;
}

@keyframes MoveUpInitial {
	to {
		transform: translate3d(0,-105%,0);
	}
}

@keyframes MoveUpEnd {
	from {
		transform: translate3d(0,100%,0);
	}
	to {
		transform: translate3d(0,0,0);
	}
}

.button--hyperion::before {
	content: '';
	background: #ffb547;
	transition: transform 0.3s cubic-bezier(0.7, 0, 0.2, 1);
	transform-origin: 100% 50%;
}

.button--hyperion:hover::before {
	transform: scale3d(0,1,1);
	transform-origin: 0% 50%;
}

/* ----- HOME ----- */
main.home{
  background-image: url('../img/bg-main-home.webp');
  padding: 10% 5%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
main.home h2{
  font-family: 'monument_extendedblack';
  color: #ffb547;
}
main.home h1{
  font-family: 'monument_extendedblack';
  color: #faf9f9;
  text-transform: uppercase;
  font-size: 4.2rem;
}
main.home p{
  font-weight: 500;
  font-size: .8rem;
  color: #faf9f9;
  line-height: 1rem;
}
form{
  padding: 5% 0;
  color: #faf9f9;
}
form .title-form{
  font-weight: 900;
  font-size: 2rem;
  display: block;
  margin: 2rem auto 1rem auto;
}
section.experiencia{
  background: #1f1f1f;
  overflow: hidden;
  color: #fff;
  padding-bottom: 2rem;
}
section.experiencia .titulo-experiencia{
  margin-left: 40%;
  display: block;
  font-family: 'monument_extendedblack';
  font-size: 3rem;
  line-height: 3.8rem;
  text-transform: uppercase;
  margin-bottom: 1rem;
}
section.experiencia .txt-20{
  margin-left: 40%;
}
section.experiencia .bullets{
  font-family: 'monument_extendedblack';
  font-size: 1.4rem;
  line-height: 2rem;
  text-transform: uppercase;
}
section.experiencia .cont-bullet-1{
  margin: 2rem auto 1rem 35%;
  display: block;
  max-width: 60%;
}
section.experiencia .cont-bullet-2{
  margin: 2rem auto 1rem auto;
  display: block;
}
section.experiencia .titulo-experiencia span{
  color: #ffb547;
}
section.experiencia p{
  color: #ffb547;
  text-align: justify;
}
section.experiencia video{
  max-width: 100%;
}
section.productos-h{
  padding: 5rem;
  overflow: hidden;
  background-color: #fff;
}
section.productos-h h2{
  font-family: 'monument_extendedblack';
  text-transform: uppercase;
  font-size: 4.8rem;
  text-align: center;
  margin-bottom: 2rem;
}
section.productos-h h3{
  font-family: 'monument_extendedblack';
  text-align: center;
  font-size: 1.4rem;
}
section.productos-h .subtitle-productos-h::after{
  content: '';
  background-image: url('../img/linea-amarilla.webp');
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  margin-top: -2rem;
  height: 5rem;
  width: 100%;
  width: 120%;
  margin-left: -10%;
}
section.productos-h .cont-producto{
  max-width: 72%;
  display: block;
  margin: 5rem auto;
}
section.productos-h .cont-producto h3{
  text-align: left;
  margin: 2rem auto;
}
section.productos-h .cont-producto p{
  text-align: justify;
}
section.productos-h .cont-producto a{
  color: #000;
  display: block;
  margin: 1rem auto;
  text-transform: uppercase;
  transition: all .5s ease;
}
section.productos-h .cont-producto a:hover .btn-circulo{
  background-color: #ffb547;
  margin-right: 1rem;
  color: #fff;
  font-weight: 700;
}
section.productos-h .cont-producto .btn-circulo{
  width: 2rem;
  height: 2rem;
  line-height: 2rem;
  border: 2px solid #ffb547;
  text-align: center;
  border-radius: 1rem;
  display: inline-block;
  margin-right: .5rem;
  transition: all .5s ease;
}
section.productos-h .cont-img-producto{
  position: relative;
}
section.productos-h .img-producto{
  transition: all .5s ease;
  position: relative;
  display: block;
  overflow: hidden;
  background: transparent;
  border: 1px solid #e6e6e6;
  margin: 2rem auto;
  padding: 2rem;
}
section.productos-h .img-producto:hover{
  box-shadow: 0 5px 15px rgba(0,0,0,0.5);
}
section.elegirnos{
  background-image: url('../img/bg-main-home.webp');
  color: #fff;
  overflow: hidden;
}
section.elegirnos .cont-info-el{
  max-width: 60%;
  display: block;
  margin: 2rem auto;
}
section.elegirnos .cont-info-el p{
  text-align: justify;
  font-size: .9rem;
}
section.elegirnos .title-elegirnos{
  font-family: 'monument_extendedblack';
  text-align: center;
  font-size: 5rem;
  display: block;
  position: relative;
  margin: 2rem auto 0 auto;
}
section.elegirnos .title-elegirnos::after{
  content: '';
  background-image: url('../img/linea-amarilla.webp');
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  margin-top: 2rem;
  height: 5rem;
  width: 100%;
}
section.elegirnos .title-txt{
  font-family: 'monument_extendedblack';
  font-size: 1.2rem;
  margin: 1rem auto;
  display: block;
}
section.pemsa{
  background-color: #1f1f1f;
  border-top: 1px solid #be9144;
  padding: 2rem;
  overflow: hidden;
  color: #fff;
}
section.pemsa .cont-txt1-pemsa, section.pemsa .cont-txt2-pemsa{
  display: block;
  margin-left: auto;
  max-width: 80%;
}
section.pemsa .cont-txt2-pemsa{
  margin-right: auto;
  margin-left: 0;
}
section.pemsa .cont-txt1-pemsa p{
  max-width: 80%;
  margin: 1rem 0;
  text-align: justify;
}
section.pemsa .title-pemsa{
  color: #be9144;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 1.4rem;
  margin: auto;
}
section.pemsa img:first-child{
  display: block;
  margin: auto;
  max-width: 30%;
}
section.pemsa img:last-child{
  display: block;
  margin: auto;
  max-width: 80%;
}
section.pemsa .cont-btn-pemsa{
  margin: 2rem auto;
  display: block;
}
section.pemsa .cont-btn-pemsa a{
  background: #918e8d;
  width: 30%;
  display: block;
  color: #fff;
  padding: .2rem 1rem;
  text-align: center;
  margin-left: auto;
  font-size: .9rem;
}
section.pemsa .cont-img-pemsa{
  border-left: 1px solid #3e3e3e;
  border-right: 1px solid #3e3e3e;
}
section.enviamos{
  overflow: hidden;
  position: relative;
  margin-bottom: -.5rem;
}
section.enviamos .cont-info{
  position: absolute;
  padding: 0 10%;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  top: 20%;
}
section.enviamos .cont-info span{
  font-family: 'monument_extendedblack';
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  display: block;
  font-size: 4rem;
}
section.enviamos .cont-info p{
  color: #fff;
  text-align: center;
}
section.testimonios{
  background-color: #1f1f1f;
  padding: 4rem 0;
  overflow: hidden;
}
section.testimonios span{
  font-family: 'monument_extendedblack';
  color: #f8b046;
  display: block;
  text-align: center;
  font-size: 1.5rem;
  line-height: 2rem;
}
section.testimonios p{
  font-family: 'monument_extendedblack';
  font-size: 6rem;
  line-height: 6rem;
  color: #fff;
  display: block;
  text-align: center;
}
section.testimonios .carousel{
  margin: 5rem auto;
}
section.testimonios .carousel-caption {
  position: relative;
  right: 0;
  left: 0;
}
section.testimonios .carousel-caption h5{
  text-align: left;
  text-transform: uppercase;
  font-family: 'monument_extendedblack';
  color: #f8b046;
  padding-left: 1rem;
  font-size: 1.5rem;
}
section.testimonios .carousel-caption p{
  font-family: 'Instrument Sans', sans-serif;
  font-size: 1rem;
  text-align: left;
  line-height: 1rem;
  text-align: justify;
  padding: 1rem;
}
section.testimonios .carousel-control-next:focus, .carousel-control-next:hover, .carousel-control-prev:focus, .carousel-control-prev:hover{
  background: transparent!important;
}
section.colaboraciones{
  background-image: url('../img/bg-colaboradores.webp');
  background-size: contain;
  background-repeat: no-repeat;
  padding: 10rem 0 0 0;
  min-height: 90vh;
  overflow: hidden;
}
section.colaboraciones span{
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-family: 'monument_extendedblack';
  font-size: 5rem;
  margin: 0 auto 2rem auto;
}
section.colaboraciones img{
  margin: 1rem auto;
  padding: 1rem;
}
section.contacto-h{
  padding: 10%;
  background-image: url('../img/bg-main-home.webp');
  background-size: cover;
  background-position: bottom;
  margin-top: -5%;
}
section.contacto-h .img-form{
  margin: 5rem auto;
}
main.somos{
  background-image: url('../img/bg-main-home.webp');
  padding: 10% 5%;
  background-position: bottom;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
}
main.somos .title-somos{
  font-family: 'monument_extendedblack';
  color: #fff;
  font-size: 5rem;
  text-transform: uppercase;
  display: block;
  position: relative;
}
main.somos .subtitle-somos{
  font-family: 'monument_extendedblack';
  font-size: 1.4rem;
  color: #ffb547;
  position: relative;
}
main.somos p{
  color: #fff;
  margin: 2rem auto;
  text-align: justify;
}
main.somos .foto-main-somos{
  position: absolute;
  right: 0;
  top: 10%;
  max-width: 40%;
}
section.bullets-somos{
  padding: 2%;
  color: #fff;
  position: relative;
  overflow: hidden;
}
section.bullets-somos .linea-bullet-b{
  border-bottom: 1px solid #494949;
}
section.bullets-somos .linea-bullet-r{
  border-right: 1px solid #494949;
}
section.bullets-somos .cont-bullet-somos{
  display: flex;
  align-items: center;
  margin-left: auto;
  /* max-width: 80%; */
  padding: 8%;
}
section.bullets-somos .cont-bullet-somos hgroup{
  display: inline-block;
  margin: 0 2rem;
  max-width: 40%;
}
section.bullets-somos .cont-bullet-somos hgroup span{
  font-family: 'monument_extendedblack';
  font-size: 1.4rem;
  margin: 1rem auto;
  display: block;
}
/* ----- SERVICIOS ----- */
main.servicios{
  background-image: url('../img/bg-servicios.webp');
  padding: 10% 5%;
  background-position: bottom;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
}
main.servicios .title-servicios{
  font-size: 3rem;
  font-family: 'monument_extendedblack';
  color: #fff;
  display: block;
  text-align: center;
}
main.servicios .cont-btn{
  margin: 2rem auto;
  text-align: center;
}
main.servicios .words{
  font-family: 'monument_extendedblack';
  color: #fff;
  font-size: 10rem;
  line-height: 20rem;
  font-weight: 800;
  display: inline-block;
  white-space: nowrap;
  width: 130rem;
  animation: move-text 15s linear infinite;
  text-shadow: 130rem 0, 260rem 0;
}
@keyframes move-text {
  100% {
      transform: translateX(-100%);
  }
}
section.servicios-3{
  overflow: hidden;
}
section.servicios-3 .overlay-b{
  background-color: rgba(0,0,0,.8);
  padding: 8rem;
}
section.servicios-3 .bg-maquinaria{
  background-image: url('../img/bg-venta-maquinaria.webp');
  background-size: cover;
  background-repeat: no-repeat;
}
section.servicios-3 .bg-asesoria{
  background-image: url('../img/bg-asesoria.webp');
  background-size: cover;
  background-repeat: no-repeat;
}
section.servicios-3 .bg-exportacion{
  background-image: url('../img/bg-exportacion.webp');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom;
}
section.servicios-3 hgroup h2{
  font-family: 'monument_extendedblack';
  color: #fff;
  font-size: 2rem;
}
section.servicios-3 hgroup {
  color: #fff;
}
section.servicios-3 hgroup h3{
  font-size: 1.2rem;
  padding-right: 60%;
  margin: 2rem auto;
}
section.servicios-3 hgroup p{
  padding-right: 60%;
}
section.desarrollo-proyectos{
  padding: 8rem;
}
section.desarrollo-proyectos .title-proyectos{
  font-family: 'monument_extendedblack';
  color: #fff;
  font-size: 3rem;
  display: block;
  text-align: center;
}
section.desarrollo-proyectos .subtitle-proyectos{
  color: #ffb547;
  text-align: center;
  font-size: 1.8rem;
  display: block;
  margin: 2rem auto;
}
section.desarrollo-proyectos .cont-proyecto{
  position: relative;
  padding: 1rem;
}
section.desarrollo-proyectos .cont-proyecto .text-info-proy{
  color: #fff;
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  padding: .5rem;
}
section.desarrollo-proyectos .cont-proyecto .text-info-proy h2{
  font-family: 'monument_extendedblack';
  font-size: 1.5rem;
}
section.desarrollo-proyectos .cont-proyecto img{
  border: 2px solid #ffb547;
}
section.desarrollo-proyectos .cont-btn{
  margin: auto;
  display: block;
  text-align: center;
}
/* ----- PRODUCTOS  ----- */
main.productos{
  background-image: url('../img/bg-main-home.webp');
  padding: 10% 5%;
  background-position: bottom;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
}
main.productos .title-productos{
  font-family: 'monument_extendedblack';
  color: #fff;
  display: block;
  font-size: 4rem;
  margin: 1rem auto;
  text-transform: uppercase;
}
main.productos h2{
  font-family: 'monument_extendedblack';
  color: #ffb547;
  font-size: 1.2rem;
}
main.productos .cont-btn{
  margin-top: 50%;
  display: block;
}
section.productos-p{
  /* margin-top: -5rem; */
}
/* ----- PRODUCTOS DETALLE ----- */
main.productos-detalle{
  background-image: url('../img/bg-main-home.webp');
  padding: 10% 5%;
  background-position: bottom;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  color: #fff;
}
main.productos-detalle .title-detalle-producto{
  font-family: 'monument_extendedblack';
  font-size: 1.4rem;
  margin: 2rem auto 1rem;
  display: block;
}
section.especificacion-producto{
  padding: 10% 5%;
  color: #fff;
  overflow: hidden;
}
section.especificacion-producto p{
  color: #fff;
  text-align: justify;
}
section.especificacion-producto ul{
  font-family: 'monument_extendedblack';
  margin-top: 3rem;
  font-size: 1.5rem;
  text-align: center;
  list-style: none;
}
section.especificacion-producto ul li{
  font-family: 'Instrument Sans', sans-serif;
  margin: 1.5rem auto;
  font-size: 1rem;
}
section.especificacion-producto .btn-pdf{
  display: block;
  margin: auto;
}
section.especificacion-producto .btn-pdf img{
  display: block;
  margin: auto;
}
section.video-detalle{
  overflow: hidden;
}
section.video-detalle .img-video-detalle{
  max-width: 100%;
}
section.productos-d {
  background-image: url('../img/bg-colaboradores.webp');
  background-color: transparent;
  background-repeat: no-repeat;
  padding-bottom: 10%;
}
section.productos-d span{
  font-family: 'monument_extendedblack';
  margin-top: 5%;
  display: block;
  font-size: 1.5rem;
}
section.productos-d .cont-producto{
  margin: 1rem;
}
section.productos-ext .cont-producto{
  margin: 5rem auto;
}
section.productos-d .cont-producto h3{
  line-height: 1.4rem;
}
section.productos-ext{
  background-image: url(../img/bg-colaboradores.webp);
  background: rgb(255,255,255);
}
section.productos-ext .img-producto{
  padding: 0;
}
/* Start: Video Responsive */
.cont-video {
    overflow:hidden;
    padding-bottom:50%; /* Adecua este valor para controlar la altura del video */
    position:relative;
    height:0;
}
.cont-video iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}
/* End: Video Responsive */
/* .cont-video {
  background: white;
  height: 100vh;
  max-width: 400px;
  margin: 0 auto;
  padding: 1rem;
} */
.title-adicional{
  font-family: 'monument_extendedblack';
  text-align: center;
  font-size: 2.8rem;
}
.txt-adicional{
  font-family: 'monument_extendedblack';
  color: #ffb546;
  display: block;
  margin: 1rem auto;
}
/* ----- GALERIA ----- */
main.galeria{
  background-image: url('../img/bg-galeria.webp');
  padding: 10% 5%;
  background-position: bottom;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  color: #fff;
}
main.galeria .img-video-detalle{
  max-width: 100%;
}
main.galeria .title-detalle-galeria{
  font-family: 'monument_extendedblack';
  font-size: 5rem;
  display: block;
  text-transform: uppercase;
  margin: 2rem auto;
}
main.galeria .subtitle-detalle-galeria{
  font-family: 'monument_extendedblack';
  font-size: 1.2rem;
  display: block;
  max-width: 50%;
}
main.galeria p{
  margin-top: 3rem;
}
section.grid-galeria{
  overflow: hidden;
}
section.grid-galeria .cont-img-galeria img{
  opacity: .5;
  width: 100%;
  transition: all .3s ease;
}
section.grid-galeria .cont-img-galeria:hover img{
  opacity: 1;
}
section.grid-galeria .overlay-galeria{
  background-color: #0f0f0f;
}
/* ----- CONTACTO ----- */
main.contacto{
  background-image: url('../img/bg-cotact-form.webp');
  padding: 10% 5%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  overflow: hidden;
}
main.contacto .title-contacto{
  font-family: 'monument_extendedblack';
  color: #fff;
  display: block;
  font-size: 3rem;
  margin-left: 10%;
  text-transform: uppercase;
}
main.contacto .title-form{
  font-family: 'monument_extendedblack';
}
main.contacto .tex-info-contacto{
  color: #fff;
  text-align: center;
  display: block;
  margin: 2rem auto;
}
main.contacto .cont-info-contato{
  background-color: #494949;
  color: #fff;
  padding: 2rem;
}
main.contacto .cont-info-contato span{
  font-family: 'monument_extendedblack';
  font-size: 1.2rem;
  margin: 1.2rem auto;
  display: block;
}
main.contacto .cont-info-contato a{
  color: #fff;
}
main.contacto .cont-mapa{
  margin-top: 2rem;
}
main.contacto .cont-mapa iframe{
  max-width: 100%;
  max-height: 300px;
  height: 300px;
}
main.contacto .cont-social-contacto{
  margin-left: 2rem;
}
.cont-social-contacto img{
  max-width: 2rem;
  margin: .5rem;
  display: inline-block;
}
/* ----- GRACIAS ----- */
main.gracias{
  background-color: #efbb3c;
  height: 100vh;
  width: 100vw;
  color: #fff;
  text-align: center;
}
main.gracias .container, main.gracias .row{
  height: 100vh;
}
main.gracias .title-gracias{
  display: block;
  font-weight: 700;
  font-size: 1.2rem;
  margin: 2rem auto;
}
main.gracias p{
  max-width: 80%;
  display: block;
  margin: auto;
  font-weight: 700;
}
main.gracias .cont-btn .button{
  /* background: #fff; */
  border: none;
}
main.gracias .cont-btn .button--hyperion::before{
  background: #fff;
}
footer .linea-footer{
  width: 100%;
  margin-bottom: 2rem;
}
footer{
  padding: 3rem 0;
}
footer .cont-social-contacto{
  margin: auto;
  display: block;
  text-align: center;
}
footer .cont-social-contacto a{
  display: inline-block;
}
footer, footer a, footer p{
  color: #fff;
  display: block;
  margin: .5rem auto;
  font-size: .9rem;
  line-height: 1.2rem;
}
footer p{
  margin-bottom: 1.5rem;
}
footer .linea{
  margin: 4rem auto;
}
