/*
Theme Name:Tecton v2.0
Author:Paula Villanueva
Author URI:http://www.paulavillanueva.cl
*/
body{
	overflow-x:hidden !important;
	background:#F6F5F1;
	animation:myfadeInAnimation 3s;
}
.body{
	overflow-x:hidden !important;
}
body.open-pop{
	overflow:hidden;
}
body.page-template-template-contacto{
	background:#262626;
}
a,object{
	outline:none !important;
}
*:focus{
	outline:none !important;
}
.nopd{
	padding-right:0;
	padding-left:0;
}
.nopdl{
	padding-left:0;
}
.nopdr{
	padding-right:0;
}
.nopdb{
	padding-bottom:0 !important;
}
.nopdt{
	padding-top:0 !important;
}
.gutter > [class*='col-']{
    padding-right:8px;
    padding-left:8px;
}
.row.gutter{
	margin-left:-8px;
	margin-right:-8px;
}
.gutt > [class*='col-']{
    padding-right:5px;
    padding-left:5px;
}
.row.gutt{
	margin-left:-5px;
	margin-right:-5px;
}
.modal-header, .modal-footer{
	border:none;
	padding:20px 15px 0 15px;
}
.modal{
  overflow-y:auto;
}
.modal-content{
	border-color:#E8E6E1;
	background:#E8E6E1;
	border-radius:8px !important;
}
.modal .close{
	opacity:1 !important;
	position:absolute;
	right:65px;
	top:35px;
	margin:0;
	padding:0;
	z-index:5;
}
.modal .close .ico{
	width:18px;
}
.modal-backdrop{
	background-color:#224D4B;
	z-index:997;
}
.modal-backdrop.show{
    opacity:.5;
}
.modal-lg{
	max-width:990px;
}
.alignleft{
	float:left;
	margin-right:30px;
	padding-top:15px;
}
.alignright{
	float:right;
	margin-left:30px;
	padding-top:15px;
}
.aligncenter{
	margin:auto;
	display:block;
}
.os-animation, .staggered-animation{
	opacity:0;
}
.os-animation.animated, .staggered-animation.animated{
	opacity:1;
}
.mobile{
	display:none;
}
.desktop{
	display:block;
}
.tablet{
	display:block;
}
.swiper-container1,.swiper-container2,
.swiper-container3,.swiper-container4,
.swiper-container5,.swiper-container6,
.swiper-container7,.swiper-container8{
	margin:0 auto;
	position:relative;
	overflow:hidden;
	list-style:none;
	padding:0;
	z-index:1;
}
.fancybox__counter, .fancybox__counter span{
	font-size:11px !important;
	color:#fff;
}
.fancybox__caption{
	font-size:300;
	font-size:14px;
	color:#fff;
}
.pop{
	background:#f4f4f2;
	position:fixed;
	width:100%;
	height:100%;
	overflow-x:hidden;
	overflow-y:auto;
	z-index:99;
	top:0;
	right:0;
	transform:translateY(100%);
  	transform-origin:bottom;
	transition:transform 1s cubic-bezier(.19,1,.22,1);
}
.pop.activo{
	transform:translateY(0%);
}
.pop .inn{
	padding:35px 0 50px 0;
	background:#f4f4f2;
	position:relative;
}
.pop .cerrar-pop{
	position:absolute;
	top:45px;
	right:75px;
	z-index:9;
}
.pop .cerrar-pop .ico{
	width:35px;
}
.overlay{
	background:#1c1c1c;
	opacity:0;
	position:fixed;
	width:100%;
	height:100%;
	z-index:96;
	visibility:hidden;
	transition:all 0.25s ease;
}
body.open-pop .overlay{
	opacity:.75;
	visibility:visible;
}
#bgvid{
	position:absolute;
	right:0;
	bottom:0;
	height:100vh;
	width:100vw;
	object-fit:cover;
	z-index:1;
}
.grecaptcha-badge{
	visibility:hidden;
}
/***************************/

/* CABECERA ****************/
header{
	position:fixed;
	width:100%;
	left:0;
	right:0;
	top:0;
	padding:30px 0 15px 0;
	z-index:95 !important;
	display:block;
	transition:all 0.5s ease;
}
header .logo{
	font-size:1.26vw;
	font-weight:400;
	color:#262626;
	transition:all 0.25s ease;
	opacity:1;
	text-decoration:none !important;
}
header .logo:focus,
header .logo:hover{
	color:#262626;
}
header.activo .logo{
	opacity:0;
}
header .logo .img-fluid{
	width:100px;
	position:relative;
}
header .logo .v2,
header .logo .v3,
header .logo .v4{
	display:none;
}
body.page-template-template-contacto header .logo .v1{
	display:none;
}
body.page-template-template-contacto header .logo .v2{
	display:inline-block;
}
body.page-template-template-taller header .logo .v1,
body.page-template-template-infraestructura header .logo .v1{
	display:inline-block;
	top:-3px;
	margin-right:5px;
}
body.single-proyecto header .logo .v1{
	display:none;
}
body.single-proyecto header .logo .v3{
	display:inline-block;
	top:-3px;
	margin-right:5px;
}
.menu{
	margin-bottom:0;
	position:absolute;
	top:-20px;
	right:-10px;
	text-align:right;
	border-radius:20px;
	padding:65px 25px 45px 25px;
	transition:all 0.25s ease;
}
header.activo .menu{
	opacity:0;
	visibility:hidden;
}
.menu.activo{
	background:#FF5E31;
	opacity:1 !important;
	visibility:visible !important;
	z-index:1;
}
.menu li{
	padding:0;
	padding-bottom:12px;
	position:relative;
}
.menu li::before{
	display:none;
}
.menu li.ultimo{
	padding:0;
}
.menu li.primero{
	display:none;
}
.menu.activo li.primero{
	display:block;
}
.menu a{	
	font-weight:300;
	font-size:14px;
	color:#262626;
	text-decoration:none !important;
}
body.page-template-template-contacto .menu a{
	color:#F6F5F1;
}
.menu a:hover{
	color:#F96330;
	text-decoration:underline !important;
}
.menu.activo a:hover{
	color:#262626;
}
body.page-template-template-contacto .menu.activo a{
	color:#262626;
}
.menu li.medio a{
	font-weight:500;
}
.menu li.current-menu-item a{
	text-decoration:underline !important;
}
.mm-trigger{
	display:none;
}
.menu-trigger{
	position:relative;
	cursor:pointer;
	float:right;
	transition:all 0.25s ease;
	opacity:0;
	visibility:hidden;
	z-index:2;
}
header.activo .menu-trigger{
	opacity:1;
	visibility:visible;
}
.menu-trigger::after{
	content:'';
	position:absolute;
	left:50%;
	top:40%;
	transform:translate(-50%,-50%);
	width:44px;
	height:44px;
	border-radius:100%;
	background:#fff;
	z-index:-1;
}
.menu-trigger.close-menu::after{
	background:none;
}
.menu-trigger .icon{
	display:inline-block;
	width:26px;
	height:1px;
	position:relative;
	top:-8px;
	background:#262626;
	border-radius:5px;
	transition:all 0.35s;
}
.menu-trigger .icon:before{
	content:'';
	width:100%;
	height:1px;
	background:#262626;
	position:absolute;
	top:-8px;
	border-radius:5px;
	transition:all 0.35s;
}
.menu-trigger .icon:after{
	content:'';
	width:100%;
	height:1px;
	background:#262626;
	position:absolute;
	top:8px;
	border-radius:5px;
	transition:all 0.35s;
}
.menu-trigger.close-menu span{
	background:none !important;
	color:#262626;
	transition:all 0.35s;
}
.menu-trigger.close-menu span:before{
	top:0 !important;
	background-color:#262626 !important;
	transform:rotate(-45deg);
	width:100%;
}
.menu-trigger.close-menu span:after{
	width:100%;
	top:0 !important;
	background-color:#262626 !important;
	transform:rotate(45deg);
}
.contenedor-submenu{
	background:#FF5E31;
	position:fixed;
	top:0;
	right:0;
	width:100%;
	height:100%;
	z-index:95;
	opacity:1;
	visibility:hidden;
	transition:all 0.8s ease;
 	transform:translateX(100%);
	display:none;
}
.contenedor-submenu.activo{
	opacity:1;
	visibility:visible;
	transform:translateX(0%);
}
.contenedor-submenu .pos{
	position:relative;
	height:100%;
}
.contenedor-submenu .grupo{
	position:absolute;
	width:100%;
	left:0;
	right:0;
	top:48%;
    transform:translateY(-50%);
    -webkit-transform:translateY(-50%);
}
.contenedor-submenu .logo{
	float:right;
	margin-bottom:48px;
}
.contenedor-submenu .logo .img-fluid{
	width:110px;
}
/***************************/

/* CUERPO ******************/
#main{
	min-height:600px;
	padding-top:120px;
}
section{
	padding:85px 0 80px 0;
	position:relative;
}
.paginas{
	padding:0 65px;
}
.titulo{
	margin-bottom:38px;
}
.carrusel{
	position:relative;
}
.banner{
	position:relative;
}
.banner.medio::before{
	content:'';
	width:50%;
	height:45px;
	position:absolute;
	left:0;
	bottom:-1px;
	background:#F6F5F1;
	border-top-right-radius:40px;
	z-index:9;
}
.flechas{
	left:0;
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
    width:100%;
    z-index:5;
}
.flechas .atras{
	float:left;
	margin-left:30px;
}
.flechas .adelante{
	float:right;
	margin-right:30px;
}
.flechas .ico{
	width:25px;
}
.inicio{
	margin-bottom:85px;
}
.inicio .grp{
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	z-index:9;
}
.inicio span{
	font-size:1.17vw;
	display:block;
	text-align:center;
}
.inicio{
	overflow:hidden;
}
.inicio .slide{
	overflow:hidden;
}
.inicio .fig{
	position:absolute;
	width:50%;
	height:60%;
	background:#F6F5F1;
	border-radius:30px;
	transition:all 0.8s ease;
	z-index:8;
}
.inicio .figura1{
	left:-30%;
	bottom:-48%;
}
#patron.activo1 .figura1{
	left:-35%;
	bottom:-48%;
}
#patron.activo2 .figura1{
	left:-15%;
	bottom:-48%;
}
.inicio .figura2{
	right:-35%;
	bottom:-10%;
}
#patron.activo1 .figura2{
	right:-5%;
	bottom:-42%;
	width:75%;
}
#patron.activo2 .figura2{
	right:-35%;
	bottom:-38%;
}
.frase{
	text-align:center;
	padding:0;
}
.frase p{
	font-size:1.87vw;
	line-height:2.25vw;
}
.frase p em{
	font-size:1.25vw;
	font-style:normal;
	line-height:1.85vw;
	display:block;
}
.frase strong{
	color:#FF5E31;
}
.categorias{
	padding-bottom:40px;
}
.categorias .modulo{
	background:#fff;
	height:100%;
}
.categorias h3{
	font-size:1.25vw;
	font-weight:300;
	position:relative;
	top:-48px;
}
.categorias h3 .icon{
	width:80px;
	margin-right:5px;
	position:relative;
	top:-1px;
}
.categorias .imagen{
	position:relative;
}
.categorias .imagen::after{
	content:'';
	width:80%;
	height:45px;
	background:#fff;
	position:absolute;
	left:0;
	bottom:-1px;
	border-top-right-radius:30px;
}
.categorias .modulo.par .imagen::after{
	left:inherit;
	right:0;
	border-top-right-radius:0;
	border-top-left-radius:30px;
}
.categorias .modulo.par h3{
	text-align:right;
}
.categorias .contenido{
	padding:30px 60px 40px 60px;
}
.categorias .link span{
	text-decoration:none;
}
.destacados{
	padding-top:0;
}
.destacados .modulo{
	position:relative;
	margin-bottom:15px;
}
.destacados .grp{
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	width:60%;
}
.destacados .grp h3{
	font-size:1.87vw;
	line-height:2.35vw;
	font-weight:300;
	margin-bottom:12px;
}
.nosotros h1{
	font-size:1.55vw;
	line-height:2.15vw;
	font-weight:300;
	margin-bottom:35px;
}
.nosotros .imagen{
	position:relative;
}
.nosotros .imagen::before{
	content:'';
	background:#F6F5F1;
	position:absolute;
	left:0;
	top:0;
	width:20%;
	height:65px;
	border-bottom-right-radius:40px;
}
.nosotros .imagen::after{
	content:'';
	background:#F6F5F1;
	position:absolute;
	right:0;
	top:0;
	width:40%;
	height:125px;
	border-bottom-left-radius:40px;
}
.nosotros .modulo{
	position:absolute;
	left:15px;
	top:50%;
	transform:translateY(-50%);
	width:85%;
}
.hitos{
	padding-top:0;
}
.hitos h2{
	font-size:1.55vw;
	line-height:2.15vw;
	font-weight:300;
	margin-bottom:60px;
}
.hitos h3{
	font-size:10.55vw;
	line-height:11.5vw;
	color:#FF5E31;
	font-weight:300;
	text-align:center;
}
.hitos .modulo{
	position:relative;
	padding:40px 0;
}
.hitos .grp{
	position:absolute;
	left:15px;
	top:50%;
	transform:translateY(-50%);
	width:48%;
}
.hitos ul{
	margin-bottom:0;
}
.hitos ul li{
	padding-left:10px;
	padding-bottom:12px;
}
.hitos ul li::before{
	width:4px;
	height:4px;
	background:#262626;
	top:8px;
}
.hitos .posicion{
	padding:0 85px;
}
.hitos .flechas .ico{
	width:40px;
}
.hitos .flechas .ico.v2{
	display:none;
}
.hitos .flechas a:hover .v1{
	display:none;
}
.hitos .flechas a:hover .v2{
	display:inline-block;
}
.linea{
	margin-top:60px;
	position:relative;
}
.linea .pin{
	text-decoration:none !important;
	display:block;
	position:absolute;
	top:89%;
}
.linea span{
	font-size:12px;
	padding-top:15px;
	display:block;
	position:relative;
	transform:rotate(-12deg);
}
.linea span::before{
	content:'';
	position:absolute;
	top:0;
	left:50%;
	width:10px;
	height:10px;
	border:1px solid #FF5E31;
	background:#F6F5F1;
	border-radius:100%;
	transform:translateX(-50%);
}
.linea a.activo span::before{
	background:#FF5E31;
}
.linea .pin1{
	right:30%;
	top:-1px;
}
.linea .pin2{
	right:25%;
	top:-1px;
}
.linea .pin3{
	right:20%;
	top:-1px;
}
.linea .pin4{
	right:15%;
	top:-1px;
}
.linea .pin5{
	right:10%;
	top:-1px;
}
.linea .pin6{
	right:5%;
	top:-1px;
}
.linea .pin7{
	right:5%;
}
.linea .pin8{
	right:10%;
}
.linea .pin9{
	right:15%;
}
.linea .pin10{
	right:20%;
}
.linea .pin11{
	right:25%;
}
.linea .pin12{
	right:30%;
}
.linea .pin13{
	right:35%;
}
.linea .pin14{
	right:40%;
}
.linea .pin15{
	right:45%;
}
.periodos{
	position:relative;
	margin:45px 0 70px 0;
	display:none;
}
.periodos::before{
	content:'';
	width:100%;
	height:10px;
	border-radius:20px;
	background:#e1e0dd;
	position:absolute;
	top:0;
	left:0;
}
.periodos .avance{
	content:'';
	position:absolute;
	left:0;
	top:0;
	background:#FF5E31;
	height:10px;
	border-radius:20px;
	transition:all .25s ease;
}
.periodos .num{
	font-size:9px;
	position:absolute;
	top:-30px;
	transform:rotate(-40deg);
	transition:all .25s ease;
	opacity:0;
	visibility:hidden;
}
.periodos .num.activo{
	opacity:1;
	visibility:visible;
}
.periodos .num.primero{
	left:-4px;
	opacity:1;
	visibility:visible;
}
.periodos .num.ultimo{
	right:-12px;
	opacity:1;
	visibility:visible;
}
.valores h2{
	font-size:1.55vw;
	line-height:2.15vw;
	font-weight:300;
	color:#FF5E31;
}
.valores span{
	font-size:1.17vw;
	font-weight:400;
	display:inline-block;
	border:1px solid #FF5E31;
	color:#FF5E31;
	padding:9px 18px;
	border-radius:20px;
	margin:6px 0 12px 6px;
}
.equipo{
	padding-top:0;
}
.equipo h1{
	font-size:2.55vw;
	font-weight:300;
	margin-bottom:35px;
}
.equipo .imagen{
	position:relative;
	margin-bottom:85px;
}
.equipo .imagen .inn{
	mask-image:url('img/iconos/maskequipo.png');
	-webkit-mask-image:url('img/iconos/maskequipo.png');
	mask-repeat:no-repeat;
	-webkit-mask-repeat:no-repeat;
	mask-position:center;
	-webkit-mask-position:center;
	mask-size:100%;
	-webkit-mask-size:100%;
}
.equipo .grupo{
	margin-left:60px;
}
.equipo .modulo{
	position:relative;
	padding-left:25px;
	margin-bottom:30px;
}
.equipo .modulo h3{
	margin-bottom:4px;
}
.equipo .modulo .cargo{
	font-size:1.17vw;
	display:block;
}
.equipo .modulo .ico{
	width:15px;
	position:absolute;
	top:1px;
	left:0;
}
.equipo .galeria img{
	margin-bottom:12px;
}
.trabajo{
	padding-bottom:0;
}
.trabajo .descripcion{
	text-align:center;
	margin-bottom:40px;
}
.trabajo .descripcion p{
	font-size:1.87vw;
	line-height:2.25vw;
	font-weight:300;
}
.trabajo .boton{
	margin:0 5px;
}
.trabajo .banner{
	position:relative;
	margin:50px 0;
}
.trabajo .banner::before{
	content:'';
	width:80%;
	height:45px;
	position:absolute;
	right:0;
	top:0;
	background:#F6F5F1;
	border-bottom-left-radius:40px;
	z-index:9;
}
.trabajo .banner.inverso::before{
	right:inherit;
	left:0;
	border-bottom-left-radius:0;
	border-bottom-right-radius:40px;
}
.areas{
	padding-top:0;
	padding-bottom:30px;
}
.areas .modulo{
	margin-bottom:10px;
	padding:0 38px;
}
.areas.especial .modulo{
	background:#fff;
	padding:60px 38px 0 15px;
	margin-bottom:45px;
}
.areas .modulo .inn{
	padding:40px 0 0 0;
	position:relative;
}
.areas .modulo.arquitectura .inn{
	padding-left:35px;
}
.areas.especial .modulo .inn{
	padding:0 38px 0 38px;
}
.areas .modulo .inn ul{
	margin:40px 0 65px 0;
}
.areas.especial .modulo .inn ul{
	margin:20px 0 45px 0;
}
.areas .modulo .inn ul li{
	padding:0;
	margin-bottom:25px;
}
.areas .modulo .inn ul li::before{
	display:none;
}
.areas.especial .modulo .inn ul li{
	padding-left:38px;
}
.areas.especial .modulo .inn ul li::before{
	display:block;
	background:#FF5E31;
}
.areas .modulo .inn ul em{
	background:#fff;
	padding:8px 15px;
	border-radius:20px;
	display:inline-block;
	line-height:1.45vw;
	cursor:default;
	font-style:normal;
	letter-spacing:-0.035em;
}
.areas.especial .modulo .inn ul em{
	background:none;
	padding:0;
}
.areas .modulo .gp{
	position:relative;
}
.areas .modulo .guia{
	display:block;
	position:absolute;
	width:120%;
	height:120%;
	left:11.5%;
	top:6px;
	border-left:1px solid #FF5E31;
	border-bottom:1px solid #FF5E31;
	border-bottom-left-radius:30px;
}
.areas #edificacion .guia{
	height:115%;
}
.areas.especial .modulo .guia{
	left:3.5px;
}
.areas #mineria .guia{
	width:150%;
}
.areas #mineria .guia.inversa{
	border-left:0;
	border-right:1px solid #FF5E31;
	border-top:1px solid #FF5E31;
	border-bottom:0;
	border-bottom-left-radius:0;
	border-top-right-radius:30px;
	width:70%;
	height:35px;
	top:-22px;
	left:-69%;
}
.areas #maquinaria .guia{
	width:150%;
	height:500%;
	top:-100%;
	border-top:1px solid #FF5E31;
	border-bottom:0;
	border-bottom-left-radius:0;
	border-top-left-radius:30px;
}
.areas #maquinaria .imagen .int{
	mask-image:url('img/iconos/maskinfra.png');
	-webkit-mask-image:url('img/iconos/maskinfra.png');
	mask-repeat:no-repeat;
	-webkit-mask-repeat:no-repeat;
	mask-position:center;
	-webkit-mask-position:center;
	mask-size:100%;
	-webkit-mask-size:100%;
}
.areas.especial .modulo.uno{
	margin:0;
}
.areas .modulo.uno h2{
	font-weight:300;
	color:#FF5E31;
	margin-top:30px;
}
.areas .modulo.uno .boton{
	margin-top:20px;
}
.areas .modulo.arquitectura .titulo{
	margin-bottom:15px;
}
.areas .modulo.arquitectura h3{
	font-size:1.87vw;
	line-height:2.25vw;
	font-weight:300;
}
.areas .modulo.arquitectura .gal{
	position:relative;
	margin-top:10px;
}
.areas .modulo.arquitectura .gal::after{
	content:'';
	width:85px;
	height:20%;
	position:absolute;
	right:0;
	bottom:-1px;
	background:#F6F5F1;
	border-top-left-radius:40px;
}
.areas .modulo.arquitectura ul{
	text-align:right;
}
.areas .modulo.arquitectura .guia{
	width:25.5%;
	left:66%;
	top:23.5%;
	height:118%;
	border-top-left-radius:30px;
	border-top:1px solid #FF5E31;
	transform:rotate(180deg);
}
.areas .modulo.arquitectura p{
	font-size:1.015vw;
	position:relative;
	z-index:2;
}
.areas .modulo.arquitectura .bajada{
	position:relative;
}
.areas .modulo.arquitectura .bajada::before{
	content:'';
	background:#F6F5F1;
	width:80%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	z-index:1;
}
.areas .carrusel{
	margin-bottom:50px;
	padding:0 38px;
}
.areas .carrusel .grp{
	position:relative;
	display:block;
	text-decoration:none !important;
}
.areas .carrusel .grp::after{
	content:'';
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	background:#000;
	opacity:.2;
	z-index:1;
	transition:all .25s ease;
}
.areas .carrusel .grp:hover::after{
	opacity:0;
}
.areas .carrusel .contenido{
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	width:100%;
	z-index:2;
}
.areas .carrusel .contenido .int{
	padding:30px;
	text-align:right;
}
.areas .carrusel .grp h3{
	font-weight:300;
	font-size:1.55vw;
	line-height:1.95vw;
	color:#F6F5F1;
	margin-bottom:8px;
}
.areas .carrusel .grp span{
	font-size:1.17vw;
	color:#F6F5F1;
}
.areas .boton.ultimo{
	margin-top:45px;
}
.areas #hidraulico{
	padding-top:30px;
}
.areas #hidraulico .img{
	margin-bottom:12px;
}
.areas #hidraulico .inn{
	padding:45px 38px 0 38px;
}
.areas #hidraulico .cifras{
	margin-top:60px;
	margin-bottom:45px;
}
.servicios{
	margin-top:14vw;
}
.servicios h2{
	font-weight:300;
	color:#FF5E31;
	margin-bottom:30px;
}
.servicios .int{
	padding-left:35px;
}
.servicios .boton{
	float:right;
}
.servicios .etiquetas{
	margin-bottom:60px;
}
.servicios .etiquetas span{
	font-weight:400;
	color:#FF5E31;
	display:inline-block;
	border:1px solid #FF5E31;
	border-radius:20px;
	padding:8px 18px;
	margin-bottom:12px;
	background:#F6F5F1;
}
.areas.especial #maquinaria{
	padding:0 38px 20px 0;
}
.areas.especial #maquinaria::after{
	content:'';
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	width:100%;
	height:100px;
	background:#F6F5F1;
}
.areas.especial #maquinaria .inn{
	padding:100px 38px 0 38px;
}
.areas.especial #maquinaria .titulo{
	padding-left:38px;
}
.areas .bloque{
	padding:0 38px;
}
.cifras.especial{
	margin-top:30px;
}
.cifras h3{
	font-family:'DM Mono',monospace;
	font-size:2.5vw;
	line-height:2.5vw;
	font-weight:300;
}
.cifras.especial h3 strong{
	color:#FF5E31;
}
.cifras h3 strong{
	font-weight:300;
}
.cifras h3 em{
	font-style:normal;
	color:#FF5E31;
}
.cifras .grp span{
	line-height:1.45vw;
	display:block;
}
.cifras .grp{
	margin-bottom:35px;
}
#energia .cifras{
	margin-top:60px;
}
.concepto{
	padding:0;
	margin-bottom:15px;
}
.concepto .inn{
	background:#fff;
	padding:22px;
}
.concepto h2{
	color:#262626;
	margin-bottom:20px;
}
.concepto .descripcion p{
	font-size:1.17vw;
	color:#262626;
}
.concepto .grupo{
	position:relative;
	height:100%;
}
.concepto .grupo .icon{
	position:absolute;
	left:-30px;
	bottom:-22px;
	width:100%;
	z-index:1;
}
.concepto ul{
	position:relative;
	z-index:2;
}
.concepto ul li{
	padding:0;
	margin-bottom:25px;
}
.concepto ul li::before{
	display:none;
}
.concepto ul li{
	padding-left:0;
	margin-bottom:8px;
}
.concepto ul em{
	background:#F6F5F1;
	padding:6px 15px;
	border-radius:20px;
	display:inline-block;
	line-height:1.45vw;
	cursor:default;
	font-style:normal;
	letter-spacing:-0.035em;
}
.concepto .modulo{
	position:relative;
	top:50px;
}
.concepto .modulo.ultimo{
	text-align:right;
	top:0;
}
.proyectos{
	margin-bottom:40px;
	position:relative;
}
.proyectos h2{
	font-weight:300;
	font-size:1.55vw;
	line-height:1.95vw;
	color:#FF5E31;
	margin-bottom:35px;
	margin-top:30px;
}
.proyectos ul{
	margin:0;
}
.proyectos ul .int{
	position:relative;
	z-index:2;
}
.proyectos ul li{
	padding:1px 0;
	border-bottom:1px solid #262626;
	margin:0 !important;
}
.bloque.especial .proyectos ul li{
	padding:8px 0 6px 0;
}
.proyectos ul li::before{
	display:none;
}
.proyectos ul .encabezado{
	overflow:hidden;
	white-space:nowrap;
	height:100%;
	text-overflow:ellipsis;
	width:100%;
	position:relative;
}
.proyectos ul .encabezado::after{
	content:'';
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	opacity:.65;
	box-shadow:0 2px 8px rgba(0,0,0,.58);
	background:linear-gradient(90deg,transparent 0%,#fff 100%);
}
.proyectos ul a:hover .encabezado h3{
	animation:slide-left 12s infinite linear;
}
.tabla{
	display:table;
	height:100%;
	width:100%;
	 table-layout: fixed;
}
.celda{
	display:table-cell;
	vertical-align:middle;
}
.proyectos ul h3{
	font-weight:300;
}
.proyectos.especial ul h3{
	font-size:1.56vw;
	font-weight:300;
	display:inline-block;
}
.proyectos.especial ul a:hover h3{
	color:#FF5E31;
}
.proyectos ul .anio{
	display:block;
	text-align:right;
}
.proyectos ul .empresa{
	display:block;
	text-align:center;
	color:#666;
	font-size:0.85vw;
	line-height:1.15vw;
	position:relative;
}
.proyectos ul .lugar{
	display:block;
	text-align:center;
	font-size:0.85vw;
	line-height:1.15vw;
	position:relative;
}
.proyectos ul a{
	padding:8px 0 6px 0;
	display:block;
	text-decoration:none !important;
}
.proyectos.despliega ul a::before,
.proyectos.despliega ul a::after{
	display:none;
}
.proyectos ul a::before{
	content:'';
	height:51%;
	width:100%;
	background:#FF5E31;
	position:absolute;
	top:0;
	left:0;
	transform:scaleY(0);
  	transform-origin:bottom;
	transition:transform .75s cubic-bezier(.19,1,.22,1);
	z-index:1;
}
.proyectos ul a:hover::before{
	transform:scaleY(1);
}
.proyectos ul a::after{
	content:'';
	height:51%;
	width:100%;
	background:#FF5E31;
	position:absolute;
	bottom:0;
	left:0;
	transform:scaleY(0);
  	transform-origin:top;
	transition:transform .75s cubic-bezier(.19,1,.22,1);
	z-index:1;
}
.proyectos ul a:hover::after{
	transform:scaleY(1);
}
.proyectos .conscroll{
	overflow-y:auto !important;
	overflow-x:hidden !important;
	height:360px;
	padding-right:20px;
	scrollbar-width:thin;
	scrollbar-color:#FF5E31 #eee;
}
.proyectos .conscroll.xl{
	height:620px;
}
.proyectos .detalle{
	position:absolute;
	z-index:8;
	opacity:0;
	visibility:hidden;
	transition:all 0.25s ease;
	width:82%;
}
.proyectos ul li:hover .detalle{
	opacity:1;
	visibility:visible;
}
.tooltip.show{
	opacity:1 !important;
}
.tooltip .arrow{
	display:none;
}
.tooltip-inner{
	border-radius:0 !important;
	background:#262626 !important;
	padding:0 !important;
	max-width:400px !important;
}
.tooltip .grp{
	background:#262626;
	padding:20px 8px;
}
.tooltip .grp h3{
	font-size:1.45vw;
	font-weight:300;
	color:#F6F5F1;
	text-align:left;
	margin-bottom:18px;
}
.tooltip .grp h4{
	font-size:0.85vw;
	color:#F6F5F1;
	margin-bottom:8px;
}
.tooltip .grp .num{
	font-size:1.56vw;
	color:#F6F5F1;
}
.tooltip .grp .etiqueta{
	font-size:10px;
	font-weight:400;
	display:inline-block;
	color:#FF5E31;
	border:1px solid #FF5E31;
	padding:4px 6px;
	border-radius:20px;
}
.link{
	color:#262626;
	font-weight:500;
	text-decoration:none !important;
	position:relative;
	top:3px;
}
.link span{
	color:#262626;
	font-weight:500;
	text-decoration:underline;
}
.link .ico{
	width:15px;
	position:relative;
	top:-2px;
	right:0;
	margin-left:3px;
	animation-duration:.6s;
    animation-iteration-count:infinite;
    animation-timing-function:ease-in-out;
}
.link:hover .ico{
	animation-name:apuntar;
}
.proyecto{
	padding-top:0;
}
.proyecto .cabecera{
	position:relative;
	margin-bottom:65px;
}
.proyecto .titulo{
	position:absolute;
	left:0;
	right:15px;
	bottom:0;
	width:100%;
	margin:0;
	text-align:right;
}
.proyecto h1{
	margin-bottom:10px;
}
.proyecto .descripcion{
	margin-bottom:65px;
}
.proyecto .lugar{
	font-size:1.02vw;
}
.proyecto .etiqueta{
	font-size:1.02vw;
	font-weight:400;
	display:inline-block;
	float:right;
	background:#FF5E31;
	color:#262626;
	border-radius:20px;
	padding:2px 15px;
	margin-top:30px;
	cursor:default;
}
.proyecto .boton{
	float:right;
	margin-top:30px;
}
.proyecto .modulo{
	margin-top:45px;
}
.proyecto .modulo.centro{
	text-align:center;
}
.proyecto .modulo.ultimo{
	text-align:right;
}
.proyecto .modulo h3{
	font-size:1.02vw;
	font-weight:300;
	margin-bottom:8px;
}
.proyecto .modulo span{
	font-size:1.17vw;
}
.proyecto .foto1 .inn{
	position:relative;
}
.proyecto .foto1 .inn::before{
	content:'';
	background:#F6F5F1;
	position:absolute;
	left:0;
	top:0;
	width:70px;
	height:235px;
	border-bottom-right-radius:40px;
}
.proyecto .foto1 .inn::after{
	content:'';
	background:#F6F5F1;
	position:absolute;
	right:0;
	top:0;
	width:70px;
	height:60px;
	border-bottom-left-radius:40px;
}
.proyecto .foto2 .inn{
	position:relative;
}
.proyecto .foto2 .inn::before{
	content:'';
	background:#F6F5F1;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:60px;
}
.proyecto .slide{
	position:relative;
}
.proyecto .slide .flechas{
	display:none;
}
.proyecto .slide::after{
	content:'';
	width:50%;
	height:50px;
	position:absolute;
	left:0;
	bottom:0;
	background:#F6F5F1;
	border-top-right-radius:40px;
	z-index:9;
}
.proyecto .grp{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:75%;
}
.proyecto .grp h3{
	font-size:1.87vw;
	line-height:2.25vw;
	font-weight:300;
	margin:35px 0;
}
.contacto h1{
	color:#F6F5F1;
	font-size:2.55vw;
	font-weight:300;
}
/***************************/

/* PIE *********************/
footer{
	position:relative;
	z-index:2;
	padding:80px 0;
}
footer .logo{
	position:relative;
	top:6px;
}
footer .logo .img-fluid{
	width:85px;
}
footer .logo .v2{
	display:none;
}
body.page-template-template-contacto footer .logo .v1{
	display:none;
}
body.page-template-template-contacto footer .logo .v2{
	display:inline-block;
}
.menu-footer a{	
	font-weight:300;
	font-size:14px;
	color:#262626;
	text-decoration:none !important;
}
body.page-template-template-contacto .menu-footer a{
	color:#F6F5F1;
}
.menu-footer strong{
	font-weight:400;
}
.menu-footer a:focus{
	color:#262626;
}
.menu-footer a:hover{
	color:#FF5E31 !important;
}
.menu-footer li{
	padding:0;
	padding-bottom:8px;
	position:relative;
}
.menu-footer li::before{
	display:none;
}
.menu-footer li.ultimo{
	padding:0;
}
.menu-footer .ico{
	width:68px;
	margin-right:5px;
}
.menu-footer .ico.v2{
	display:none;
}
body.page-template-template-contacto .menu-footer .ico.v1{
	display:none;
}
body.page-template-template-contacto .menu-footer .ico.v2{
	display:inline-block;
}
footer p a{
	color:#262626;
	font-weight:300;
	font-size:30px;
}
footer p a:focus{
	color:#262626;
}
footer p a:hover{
	color:#FF5E31;
}
body.page-template-template-contacto footer p a{
	color:#F6F5F1;
}
/***************************/

/* TEXTOS ******************/
h1,h2,h3,h4,h5{
	margin:0;
	transition:all 0.25s ease;
}
h1{
	font-family:'Sora',serif;
	font-weight:500;
	font-size:2.25vw;
	line-height:2.5vw;
	color:#262626;
	letter-spacing:-0.035em;
}
h2{
	font-family:'Sora',serif;
	font-weight:500;
	font-size:2.25vw;
	line-height:2.5vw;
	color:#262626;
	letter-spacing:-0.035em;
}
h3{
	font-family:'Sora',serif;
	font-weight:500;
	font-size:1.17vw;
	line-height:1.42vw;
	color:#262626;
	letter-spacing:-0.035em;
}
h4{
	font-family:'Sora',serif;
	font-weight:300;
	font-size:1.05vw;
	line-height:1.65vw;
	color:#262626;
	letter-spacing:-0.035em;
}
p, a, span{
	font-family:'Sora',serif;
	font-weight:300;
	font-size:1.05vw;
	letter-spacing:-0.035em;
}
p, span{
	color:#262626;
	line-height:1.65vw;
}
p{
	margin-bottom:20px;
}
ul, ol{
	margin-bottom:15px;
}
a{
	color:#FF5E31;
	transition:all 0.25s ease;
}
a:hover, a:focus{
	text-decoration:underline;
	color:#FF5E31;
}
ul{
	padding:0;
}
ul li{
	font-family:'Sora',serif;
	font-weight:300;
	font-size:1.05vw;
	padding-left:12px;
	padding-bottom:2px;
	color:#262626;
	list-style:none;
	position:relative;
} 
ul li::before{
	content:'';
	width:8px;
	height:8px;
	border-radius:100%;
	position:absolute;
	left:0;
	top:6px;
	background:#FF5E31;
}
ol{
	padding:0;
	padding-left:15px;
}
ol li{
	font-family:'Sora',serif;
	font-weight:300;
	font-size:1.07vw;
	color:#262626;
	padding-bottom:2px;
}
strong, b{
	font-weight:500;
}
blockquote{
	border:none;
	padding:0;
	margin:0;
}
blockquote p{
	font-family:'Sora',serif;
	font-weight:400;
	font-size:1.17vw;
	font-size:1.59vw !important;
	color:#223147 !important;
	line-height:2.23vw !important;
	margin-bottom:40px;
}
/* TABLAS ******************/
.table-responsive{
	border:none !important;
	margin-bottom:30px;
	font-size:14px;
}
.table th{
	font-weight:normal;
	background:#fff;
	color:#414042;
	border:none;
	padding:20px 8px !important;
	text-align:center;
}
.table td{
	text-align:center;
	color:#414042;
	padding:20px 8px !important;
}
.table tr.par{
	border-bottom:1px solid #ddd;
}
/***************************/
/* FORMULARIOS *************/
label{
	font-size:16px;
	font-weight:700;
	color:#1a1a1a;
}
.form-group{
	margin-bottom:15px;
}
.wpcf7-form-control-wrap{
	display:block;
	margin-bottom:15px;
}
.formulario p{
	margin-bottom:0;
}
.formulario br{
	display:none;
}
.form-control{
	font-family:'Sora',serif;
	font-weight:300;
	font-size:14px;
	background:#F6F5F1;
	border:1px solid #F6F5F1;
	box-shadow:none;
	color:#262626;
	height:38px;
	padding:10px 15px;
	border-radius:20px;
}
textarea.form-control{
	background:#F6F5F1;
	height:190px;
	position:relative;
	padding:10px 15px;
	color:#262626;
	border:1px solid #F6F5F1;
}
.form-control:focus{
	box-shadow:none;
	color:#262626;
	background:#F6F5F1;
	border:1px solid #F6F5F1;
}
.form-control::placeholder{
	color:#262626;
}
.select2-container{
	width:100% !important;
}
.select2-container--default .select2-selection--single{
	background-color:#F6F5F1 !important;
	border:1px solid #F6F5F1 !important;
	border-radius:20px !important;
	padding:0 15px;
}
.select2-container .select2-selection--single{
	height:38px !important;
}
.select2-container .select2-selection--single .select2-selection__rendered{
	color:#262626 !important;
	font-weight:300;
	font-size:14px;
	line-height:35px !important;
	padding:0 !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow{
	top:6px !important;
	right:7px !important;
}
.select2-container--open .select2-dropdown--below{
	border:1px solid #F6F5F1 !important;
	box-shadow:0 4px 9px rgba(0,0,0,.12);
}
.select2-results__option{
	padding:5px 15px !important;
	background:#F6F5F1;
	font-size:14px;
	font-weight:300;
	color:#262626;
}
.select2-results__option::before{
	display:none;
}
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected]{
	background-color:#FF5E31 !important;
	color:#262626 !important;
}
.select2-container--default .select2-results__option--selected{
	background-color:#f97e5c !important;
}
.boton{
	background:#FF5E31;
	border:1px solid #FF5E31;
	text-decoration:none !important;
	float:left;
	line-height:36px;
	text-align:center;
	display:block;
	position:relative;
	padding:0 20px;
	border-radius:20px;
	transition:all 0.25s ease;
}
.boton:hover{
	background:#262626;
	border:1px solid #262626;
}
.boton.inverso{
	background:#262626;
	border:1px solid #262626;
}
.boton.inverso:hover{
	background:#FF5E31;
	border:1px solid #FF5E31;
}
.boton span{
	font-family:'Sora',serif;
	font-weight:300;
	font-size:14px;
	color:#000;
	line-height:36px;
	letter-spacing:-0.035em;
	transition:all 0.25s ease;
	position:relative;
	z-index:1;
}
.boton:hover span{
	color:#F6F5F1;
}
.boton.inverso span{
	color:#F6F5F1;
}
.boton.inverso:hover span{
	color:#000;
}
.wpcf7-submit{
	font-family:'Sora',serif;	
	background:#FF5E31;
	border:1px solid #FF5E31;
	font-size:14px;
	font-weight:300;
	color:#000;
	letter-spacing:-0.035em;
	text-align:center;
	padding:0 30px;
	height:38px;
	cursor:pointer;
	border-radius:20px;
	box-shadow:none;
	float:right;
	transition:all 0.25s ease;
}
.wpcf7-submit:hover, .wpcf7-submit:focus{
	background:#262626 !important;
	border:1px solid #F6F5F1 !important;
	outline:none;
	color:#F6F5F1;
	box-shadow:none !important;
}
.wpcf7-not-valid-tip{
	font-family:'Sora',serif;
	font-weight:300;
	font-size:14px !important;
	line-height:18px !important;
	color:#FF5E31 !important;
}
.wpcf7-response-output{
	background:none !important;
	border:none !important;
	padding:0 !important;
	margin:0 !important;
	text-align:left;
	font-family:'Sora',serif;
	font-weight:300;
	color:#F6F5F1;
	font-size:14px;
	line-height:20px;
	margin-top:30px !important;
}
.wpcf7-spinner{
	margin:0 !important;
}
.centrar{
	text-align:center;
}
.centrar .boton{
	float:none;
	display:inline-block;
}
/***************************/
.swiper-pagination{
	text-align:right !important;
}
.swiper-pagination-bullets{
	width:95% !important;
}
.swiper-pagination-bullet{
	width:10px !important;
	height:10px !important;
	opacity:1 !important;
	background:#D9D9D9 !important;
	border:1px solid #D9D9D9;
	margin:0 6px !important;
}
.swiper-pagination-bullet-active{
	border:1px solid #FF5E31;
	background:#FF5E31 !important;
	opacity:1 !important;
}
@keyframes myfadeInAnimation{
from{opacity:0;}
to{opacity:1;}
}
@keyframes e{
0%{background-position:-120px 0;}
to{background-position:120px 0;}
}
@keyframes apuntar{
from{transform:translate(0,0);}
65%{transform:translate(5px,0);}
to{transform:translate(0,0);}    
}
@keyframes slide-left{
from{transform:translateX(0%);}
to{transform:translateX(-50%);}
}
/***************************/
@media (min-width:992px){
.w-20{
  -webkit-box-flex:0;
      -ms-flex:0 0 20% !important;
          flex:0 0 20% !important;
  max-width:20%;
}
}
@media screen and (min-width:992px) and (max-width:1200px){
.servicios .int{
	width:85%;
	top:52%;
}
.paginas{
	padding:0 35px;
}
}
@media screen and (min-width:992px) and (max-width:1280px){
.areas .modulo ul{
	margin:30px 0 45px 0;
}
.areas .modulo ul li{
	margin-bottom:20px;
}
.areas .modulo.arquitectura .guia{
	top:23.5%;
	height:114%;
}
.areas #maquinaria .guia{
	height:450%;
}
.servicios .etiquetas{
	margin-bottom:15px;
}
.proyectos .conscroll{
	height:350px;
}
.proyectos .conscroll.xl{
	height:550px;
}
}
@media (min-width:1600px){
.container-fluid{
	max-width:1600px;
}
.banner,header{
	max-width:1600px;
	margin:auto;
}
.modal-lg{
	max-width:1200px;
}
header .logo{
	font-size:18px;
}
.inicio span{
	font-size:16px;
}
.frase p{
	font-size:30px;
	line-height:40px;	
}
.frase span{
	font-size:20px;
	line-height:28px;	
}
.categorias h3{
	font-size:20px;
	line-height:28px;
}
.destacados .grp h3{
	font-size:30px;
	line-height:40px;
}
.nosotros h1{
	font-size:30px;
	line-height:40px;
}
.nosotros .modulo{
	width:68%;
}
.hitos h2{
	font-size:30px;
	line-height:40px;
}
.hitos h3{
	font-size:180px;
	line-height:180px;
}
.valores h2{
	font-size:30px;
	line-height:40px;
}
.valores span{
	font-size:18px;
}
.equipo h1{
	font-size:40px;
	line-height:50px;
}
.equipo .modulo .cargo{
	font-size:18px;
}
.equipo .modulo .ico{
	top:6px;
}
.trabajo .descripcion p{
	font-size:30px;
	line-height:40px;
}
.areas .modulo .inn ul{
	margin:65px 0;
}
.areas .modulo .inn ul span{
	line-height:18px;
}
.areas .modulo.uno .boton{
	margin-top:65px;
}
.areas .modulo .guia{
	left:8.5%;
}
.areas .modulo.uno h2{
	margin-top:80px;
}
.areas .modulo .inn{
	padding:45px 60px 0 60px;
}
.areas .modulo .inn ul em{
	line-height:18px;
}
.areas .carrusel .grp h3{
	font-size:25px;
	line-height:35px;
}
.areas .carrusel .grp span{
	font-size:18px;
	line-height:22px;
}
.areas .modulo.arquitectura h3{
	font-size:30px;
	line-height:40px;
}
.areas .modulo.arquitectura .guia{
	top:22.5%;
	height:160%;
}
.areas #maquinaria .guia{
	height:580%;
}
.areas .modulo.arquitectura p{
	font-size:14px;
}
.areas .modulo.arquitectura{
	padding-left:75px;
}
.areas .modulo.arquitectura .guia{
	left:58%;
	top:25.5%;
	height:128.5%;
}
.proyectos.especial ul h3{
	font-size:25px;
	line-height:30px;
}
.proyectos ul .empresa{
	font-size:12px;
	line-height:16px;
}
.proyectos ul .lugar{
	font-size:12px;
	line-height:16px;
}
.tooltip-inner{
	max-width:440px !important;
}
.tooltip .grp{
	padding:20px 15px;
}
.tooltip .grp h3{
	font-size:22px;
	line-height:30px;
}
.tooltip .grp h4{
	font-size:12px;
	line-height:16px;
}
.tooltip .grp .num{
	font-size:25px;
	line-height:30px;
}
.tooltip .grp .etiqueta{
	font-size:12px;
}
.link{
	top:5px;
}
.link span{
	font-size:15px;
}
.cifras h3{
	font-size:40px;
	line-height:40px;
}
.proyectos h2{
	font-size:30px;
	line-height:40px;
}
.proyectos ul .anio{
	font-size:16px;
}
.proyectos ul li .detalle{
	width:75%;
}
.proyecto .lugar{
	font-size:14px;
}
.proyecto .etiqueta{
	font-size:14px;
}
.proyecto .modulo h3{
	font-size:14px;
	line-height:22px;
}
.proyecto .modulo span{
	font-size:18px;
}
.proyecto .grp h3{
	font-size:30px;
	line-height:40px;
}
.contacto h1{
	font-size:40px;
	line-height:50px;
}
h1{
	font-size:30px;
	line-height:40px;
}
h2{
	font-size:30px;
	line-height:40px;
}
h3{
	font-size:18px;
	line-height:28px;
}
p, a, span{
	font-size:14px;
}
p, span{
	line-height:24px;
}
ul li{
	font-size:14px;
	line-height:20px;
}
ul li::before{
	top:5px;
}
}
@media screen and (min-width:300px) and (max-width:992px){
.mobile{
	display:none;
}
.desktop{
	display:none;
}
.tablet{
	display:block;
}
.paginas{
	padding:0 15px;
}
body.close-menu{
	overflow:hidden;
}
header .menu{
	display:none;
}
header .logo .img-fluid{
	width:120px;
}
header .logo{
	font-size:0;
}
body.close-menu header .logo{
	opacity:0;
}
.m-trigger{
	display:none;
}
.mm-trigger{
	display:block;
}
.contenedor-submenu{
	display:block;
}
.menu-trigger{
	left:-10px;
	top:8px;
	opacity:1;
	visibility:visible;
}
.menu-trigger.close-menu{
	left:4px;
}
.menu{
	position:relative;
	top:0;
	right:0;
	border-radius:0;
	background:none;
	padding:0;
	float:none;
}
.menu a{
	font-size:18px;
}
body.page-template-template-contacto .menu a{
	color:#262626;
}
.menu a:focus{
	color:#262626;
}
.menu li{
	padding-bottom:38px;
}
#main{
	padding-top:100px;
}
section{
	padding:45px 0;
}
.titulo{
	margin-bottom:20px;
}
.inicio span{
	font-size:20px;
	line-height:28px;
	display:block;
}
.inicio .grp{
	z-index:15;
}
.frase p{
	font-size:26px;
	line-height:35px;
}
.frase span{
	font-size:20px;
	line-height:28px;
}
.categorias .contenido{
	padding:15px 25px 25px 25px;
}
.categorias h3{
	font-size:20px;
	line-height:28px;
}
.categorias .link{
	display:block;
}
.destacados .grp h3{
	font-size:18px;
	line-height:26px;
}
.destacados .grp{
	width:75%;
}
.nosotros h1{
	font-size:20px;
	line-height:30px;
}
.hitos h3{
	font-size:80px;
	line-height:normal;
}
.hitos .grp{
	width:95%;
}
.flechas .atras{
	margin-left:0;
}
.flechas .adelante{
	margin-right:0;
}
.hitos h2{
	font-size:20px;
	line-height:30px;
	margin-bottom:30px;
}
.valores{
	text-align:center;
	margin-bottom:30px;
}
.valores h2{
	font-size:20px;
	line-height:30px;
	margin-bottom:25px;
}
.valores span{
	font-size:14px;
}
.linea{
	margin-top:40px;
}
.equipo .imagen{
	margin-bottom:45px;
}
.equipo .grupo{
	margin-left:0;
}
.equipo h1{
	font-size:24px;
	line-height:34px;
}
.equipo .modulo .cargo{
	font-size:16px;
}
.equipo .modulo .ico{
	top:7px;
}
.proyecto .lugar{
	font-size:14px;
}
.proyecto .etiqueta{
	font-size:14px;
}
.proyecto .modulo{
	margin-top:45px;
}
.proyecto .modulo h3{
	font-size:12px;
	line-height:16px;
}
.proyecto .modulo span{
	font-size:14px;
}
.proyecto .grp{
	width:85%;
}
.proyecto .grp h3{
 	font-size:24px;
	line-height:34px;
}
.proyecto .boton{
	padding:0 12px;
}
.trabajo .descripcion p{
	font-size:24px;
	line-height:34px;
}
.trabajo .banner::before{
	height:30px;
}
.areas .modulo .inn{
	padding:0;
}
.areas .modulo{
	padding:0;
}
.areas .modulo .guia{
	display:none;
}
.areas .modulo .inn ul span{
	line-height:24px;
}
.areas .modulo .inn ul em{
	line-height:24px;
}
.areas .modulo .inn ul li{
	margin-bottom:10px;
}
.areas .modulo .inn ul{
	margin:35px 0 45px 0;
}
.areas .modulo.uno .boton{
	margin-top:0;
}
.areas .modulo.uno h2{
	font-weight:400;
	margin-bottom:10px;
	position:relative;
}
.areas .carrusel{
	padding:0;
}
body.page-template-template-taller .carrusel .flechas .atras{
	margin-left:15px;
}
body.page-template-template-taller .carrusel .flechas .adelante{
	margin-right:15px;
}
.areas .carrusel .grp h3{
	font-size:14px;
	line-height:16px;
	margin-bottom:4px;
}
.areas .carrusel .grp span{
	font-size:12px;
}
.areas .modulo.arquitectura .inn{
	padding:0;
}
.areas .modulo.arquitectura p{
	font-size:14px;
}
.areas .modulo.arquitectura ul{
	text-align:left;
}
.areas .modulo.arquitectura .gal::after{
	width:60px;
	height:90px;
}
.servicios{
	margin-top:0;
	text-align:center;
}
.servicios .etiquetas{
	margin-bottom:30px;
}
.servicios h2{
	margin-bottom:20px;
}
.servicios .int{
	padding-left:0;
}
.servicios .etiquetas span{
	padding:6px 15px;
	font-size:12px;
	margin-bottom:8px;
}
.servicios .boton{
	float:none;
	display:inline-block;
	margin-bottom:30px;
}
.areas .bloque{
	padding:0;
}
.cifras{
	text-align:center;
}
.cifras h3{
	font-size:40px;
	line-height:40px;
	margin-bottom:10px;
}
.cifras .grp span{
	line-height:18px;
}
.proyectos h2{
	display:none;
}
.proyectos ul h3{
	font-size:16px;
	line-height:22px;
}
.banner.medio::before{
	height:30px;
}
.concepto h2{
	font-size:20px;
	line-height:30px;
	margin-bottom:10px;
}
.concepto .descripcion p{
	font-size:14px;
	line-height:18px;
}
.concepto .modulo{
	top:15px;
}
.areas.especial .modulo .inn{
	padding:0;
}
.areas #hidraulico .inn{
	padding:0;
}
.areas.especial #maquinaria .titulo{
	padding-left:0;
}
.areas.especial .modulo .inn ul li{
	padding-left:18px;
}
.areas #hidraulico .cifras{
	margin-bottom:20px;
}
.proyectos.especial ul h3{
	font-size:14px;
	line-height:18px;
}
.proyectos ul .empresa{
	font-size:12px;
	line-height:14px;
}
.proyectos ul .lugar{
	font-size:11px;
	line-height:13px;
}
.contacto h1{
	font-size:24px;
	line-height:34px;
}
.link{
	display:none;
}
h1{
	font-size:24px;
	line-height:34px;
}
h2{
	font-size:24px;
	line-height:34px;
}
h3{
	font-size:18px;
	line-height:28px;
}
h4{
	font-size:12px;
	line-height:16px;
}
p, a, span{
	font-size:14px;
}
p, span{
	line-height:24px;
}
ul li{
	font-size:14px;
	line-height:20px;
}
ul li::before{
	top:7px;
}
footer .logo .img-fluid{
	width:70px;
}
}
@media screen and (min-width:300px) and (max-width:576px){
.mobile{
	display:block;
}
.tablet{
	display:none;
}
.inicio{
	margin-bottom:50px;
}
.inicio .grp{
	position:relative;
	left:0;
	top:0;
	transform:none;
	margin-bottom:45px;
}
.inicio .grp.ultimo{
	margin-bottom:0;
	margin-top:45px;
}
.categorias h3{
	font-size:16px;
	line-height:26px;
	top:0;
	margin-bottom:18px;
}
.categorias .modulo.par h3{
	text-align:left;
}
.categorias .modulo{
	margin-bottom:15px;
	height:inherit;
}
.categorias .contenido{
	padding:25px;
}
.categorias .imagen::after{
	width:75%;
	height:35px;
}
.destacados .grp h3{
	font-size:20px;
	line-height:30px;
}
.destacados .grp{
	position:relative;
	left:0;
	top:0;
	transform:none;
	width:100%;
	margin-top:45px;
}
.destacados .modulo{
	margin-bottom:45px;
}
.nosotros .modulo{
	position:relative;
	left:0;
	top:0;
	transform:none;
	width:100%;
	margin-top:45px;
}
.contacto h1{
	margin-bottom:30px;
	text-align:center;
}
.nosotros .imagen::before{
	height:40px;
	border-bottom-right-radius:20px;
}
.nosotros .imagen::after{
	height:70px;
	border-bottom-left-radius:20px;
}
.hitos{
	padding-bottom:0;
}
.hitos .posicion{
	padding:0 52px;
}
.hitos .flechas{
	top:19%;
}
.hitos .flechas .ico{
	width:32px;
}
.hitos h3{
	font-size:68px;
	margin-bottom:20px;
}
.hitos ul li{
	font-size:12px;
	line-height:18px;
}
.hitos .grp{
	position:relative;
	width:100%;
	left:0;
	top:0;
	transform:none;
}
.linea{
	display:none;
}
.periodos{
	display:block;
}
.valores{
	padding-top:0;
}
.proyecto .cabecera{
	margin-bottom:8px;
}
.proyecto .titulo{
	position:relative;
	bottom:0;
	margin-top:18px;
}
.proyecto .etiqueta{
	margin-top:12px;
}
.proyecto .lugar{
	display:block;
	text-align:right;
	margin-bottom:0;
}
.proyecto .imagen .inn{
	mask-image:none;
	-webkit-mask-image:none;
	height:380px;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}
.proyecto .foto2 .inn{
	mask-image:none;
	-webkit-mask-image:none;
}
.proyecto .modulo{
	margin-top:18px;
}
.proyecto .modulo.centro,
.proyecto .modulo.ultimo{
	text-align:left;
}
.proyecto .modulo h3{
	margin:0;
}
.proyecto .descripcion{
	margin-bottom:50px;
}
.proyecto .grp{
	position:relative;
	left:0;
	top:0;
	transform:none;
	width:100%;
	margin:50px 0;
}
.proyecto .grp h3{
	font-size:20px;
	line-height:30px;
}
.proyecto .slide::after{
	height:30px;
}
.proyecto .slide .mod .img-fluid{
	display:none;
}
.proyecto .slide .mod{
	height:420px;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}
.proyecto .slide .flechas{
	display:block;
}
.proyecto .slide .flechas .atras{
	margin-left:10px;
}
.proyecto .slide .flechas .adelante{
	margin-right:10px;
}
.trabajo .banner{
	height:325px;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
	margin-bottom:30px;
}
.trabajo .banner .img-fluid{
	display:none;
}
.trabajo .boton{
	margin-bottom:10px;
	width:75%;
}
.trabajo .banner::before{
	width:65%;
}
.areas .modulo.uno .clearfix{
	text-align:center;
}
.areas .modulo.uno .boton{
	margin-bottom:40px;
	float:none;
	display:inline-block;
}
.areas .modulo.uno h2{
	margin-top:40px;
}
.areas .modulo.uno h2 .ico{
	position:absolute;
	width:20px;
	top:50%;
	right:0;
	transform:translateY(-50%);
}
.areas .modulo.arquitectura .inn{
	margin-top:30px;
}
.servicios{
	margin-top:50px;
}
#edificacion{
	margin-top:40px;
}
body.page-template-template-taller .areas .flechas{
	display:none;
}
.cifras.especial{
	margin-top:0;
}
body.page-template-template-taller .proyectos{
	margin-top:50px;
}
.areas .boton.ultimo{
	margin-top:20px;
}
.areas.especial .modulo{
	padding:30px 20px;
	margin-bottom:40px !important;
}
.areas #hidraulico .img{
	margin-top:30px;
}
.areas.especial #maquinaria{
	padding:30px 20px;
}
.areas.especial #maquinaria .inn{
	padding:0;
}
.concepto h2{
	font-weight:300;
}
.concepto ul span{
	line-height:16px;
}
.concepto ul em{
	line-height:16px;
}
.concepto .modulo.ultimo{
	margin-top:60px;
}
.concepto .grupo{
	height:inherit;
}
.concepto .imagen{
	margin-top:65px;
	position:relative;
	z-index:2;
}
.concepto .grupo .icon{
	width:85%;
	left:20px;
	bottom:-80px;
}
body.page-template-template-taller .banner.medio{
	height:420px;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}
.portafolio{
	width:107.5%;
	position:relative;
	left:0;
}
.portafolio .mod{
	background:#f6f5f1;
	border-radius:5px;
	height:100%;
}
.portafolio .mod .ime{
	border-top-left-radius:5px;
	border-top-right-radius:5px;
}
.portafolio .mod .gr{
	padding:20px 15px;
}
.portafolio .mod h3{
	font-size:18px;
	line-height:22px;
	font-weight:300;
	margin-bottom:10px;
}
.portafolio .mod .lugar{
	font-size:12px;
	line-height:14px;
	display:block;
	margin-bottom:14px;
}
.portafolio .mod .empresa{
	font-size:12px;
	line-height:14px;
	color:#7d7d7d;
	display:block;
	margin-bottom:20px;
}
.portafolio .mod .etiqueta{
	font-weight:400;
	color:#FF5E31;
	display:inline-block;
	border:1px solid #FF5E31;
	border-radius:20px;
	padding:4px 12px;
	margin-bottom:12px;
	background:#f6f5f1;
	font-size:14px;
}
.portafolio .mod .anio{
	font-size:18px;
	line-height:35px;
	color:#FF5E31;
	display:block;
	text-align:right;
}
.portafolio .mod h4{
	margin-top:12px;
	margin-bottom:6px;
}
.portafolio .mod h4.ultimo{
	text-align:right;
}
.portafolio .mod .num.ultimo{
	text-align:right;
	display:block;
}
.portafolio .mod .num{
	font-size:20px;
	line-height:30px;
}
.portafolio .deslizar{
	text-align:center;
}
.portafolio .deslizar .icon{
	width:20px;
	display:block;
	margin:auto;
	margin-bottom:5px;
}
.portafolio .deslizar span{
	color:#FF5E31;
	text-transform:uppercase;
}
.portafolio .swiper-slide{
	height:auto;
}
.areas .portafolio .carrusel{
	margin-bottom:30px;
}
#mineria .portafolio{
	margin-top:40px;
}
footer{
	padding:60px 0 20px 0;
	text-align:center;
}
footer .logo{
	top:0;
	margin-bottom:30px;
}
footer .logo .img-fluid{
	width:65px;
}
.menu-footer{
	margin-top:40px;
}
.menu-footer li{
	padding-bottom:25px;
}
.menu-footer a{
	font-size:16px;
}
}