@charset "UTF-8";

/* EMPRESA CSS Document */
/* primary: #56b99f; */

/* FONTS */

@font-face {
	font-family: 'Lato';
	src: url('fonts/Lato-Black.eot');
	src: url('fonts/Lato-Black.eot?#iefix') format('embedded-opentype'),
		url('fonts/Lato-Black.woff2') format('woff2'),
		url('fonts/Lato-Black.woff') format('woff'),
		url('fonts/Lato-Black.ttf') format('truetype');
	font-weight: 900;
	font-style: normal;
}
@font-face {
	font-family: 'Lato';
	src: url('fonts/Lato-Regular.eot');
	src: url('fonts/Lato-Regular.eot?#iefix') format('embedded-opentype'),
		url('fonts/Lato-Regular.woff2') format('woff2'),
		url('fonts/Lato-Regular.woff') format('woff'),
		url('fonts/Lato-Regular.ttf') format('truetype');
	font-weight: 300;
}
@font-face {
	font-family: 'OpenSans';
	src: url('fonts/OpenSans-Extrabold.eot');
	src: url('fonts/OpenSans-Extrabold.eot?#iefix') format('embedded-opentype'),
		url('fonts/OpenSans-Extrabold.woff2') format('woff2'),
		url('fonts/OpenSans-Extrabold.woff') format('woff'),
		url('fonts/OpenSans-Extrabold.ttf') format('truetype');
	font-weight: 700;
}
@font-face {
	font-family: 'OpenSans';
	src: url('fonts/OpenSans-Bold.eot');
	src: url('fonts/OpenSans-Bold.eot?#iefix') format('embedded-opentype'),
		url('fonts/OpenSans-Bold.woff2') format('woff2'),
		url('fonts/OpenSans-Bold.woff') format('woff'),
		url('fonts/OpenSans-Bold.ttf') format('truetype');
	font-weight: 600;
}
@font-face {
	font-family: 'OpenSans';
	src: url('fonts/OpenSans-Semibold.eot');
	src: url('fonts/OpenSans-Semibold.eot?#iefix') format('embedded-opentype'),
		url('fonts/OpenSans-Semibold.woff2') format('woff2'),
		url('fonts/OpenSans-Semibold.woff') format('woff'),
		url('fonts/OpenSans-Semibold.ttf') format('truetype');
	font-weight: 500;
}
@font-face {
	font-family: 'OpenSans';
	src: url('fonts/OpenSans.eot');
	src: url('fonts/OpenSans.eot?#iefix') format('embedded-opentype'),
		url('fonts/OpenSans.woff2') format('woff2'),
		url('fonts/OpenSans.woff') format('woff'),
		url('fonts/OpenSans.ttf') format('truetype');
	font-weight: 300;
}
@font-face {
	font-family: 'OpenSans';
	src: url('fonts/OpenSans-Light.eot');
	src: url('fonts/OpenSans-Light.eot?#iefix') format('embedded-opentype'),
		url('fonts/OpenSans-Light.woff2') format('woff2'),
		url('fonts/OpenSans-Light.woff') format('woff'),
		url('fonts/OpenSans-Light.ttf') format('truetype');
	font-weight: 100;
}

/* GENERAL */
html {
	font-size: 12px;
}

body {
	text-align: center;
	font: 100 1rem/1.4 'OpenSans', Arial, sans-serif;
	color: #000;
}

h1 {font-size: 3.5rem;}
h2 {font-size: 3.0rem;}
h3 {font-size: 2.5rem;}
h4 {font-size: 2.0rem;}
h5 {font-size: 1.5rem;}
h6 {font-size: 1.0rem;}

::moz-selection {
	background: #c52123;
	background: rgba(197, 33, 35, .4);
}
::selection {
	background: #c52123;
	background: rgba(197, 33, 35, .4);
}

a,
a:hover,
a:focus,
a:active {
	color: inherit;
	text-decoration: none;
	outline: 0;
}
.coloured{color:#c52123;}
.btn {
	border-radius: 0;
}

.btn-primary {
	background-color: #c52123;
	border: solid 2px #c52123;
	padding: .5rem 1.5rem;
	font-size:1.2rem;
}
.btn-primary:hover, .btn-primary.active, .btn-primary:active{
	background-color: #fff;
	color:#c52123;
	border-color: #c52123;
}

.btn-secondary {
	border: 0;
	border-bottom: 3px solid #000;
	padding: .4rem 2rem;
	font-size: 1.15rem;
	cursor: pointer;
}
.relative{position: relative;}

input,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input,
textarea,
textarea.form-control,
select,
select.form-control,
form button:not(.btn) {
	font: inherit;
	color: #000;
}

input[type="datetime"],
input[type="datetime-local"],
input[type="date"] {
	min-width: 120px;
}

input:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus,
textarea:focus,
textarea.form-control:focus,
select:focus,
select.form-control:focus,
form button:focus:not(.btn) {
	outline: 0;
	-webkit-box-shadow: 0 0 6px #000;
	box-shadow: 0 0 6px #000;
}

.dinamic_label{
	position: relative;
	padding-top: 1rem;
}
.dinamic_label label{
	position: absolute;
	top: 0;
	left: 0;
	font-size: .7rem; 
	opacity: 1;
	-webkit-transform: translateY(0);
	-moz-transform: translateY(0);
	-ms-transform: translateY(0);
	-o-transform: translateY(0);
	transform: translateY(0);
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	-o-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}
.dinamic_label input:placeholder-shown + label,
.dinamic_label textarea:placeholder-shown + label{
	opacity: 0;
	-webkit-transform: translateY(1rem);
	-moz-transform: translateY(1rem);
	-ms-transform: translateY(1rem);
	-o-transform: translateY(1rem);
	transform: translateY(1rem);
}




button:focus {
	outline: 0;
}

input:focus:invalid:focus,
textarea:focus:invalid:focus,
select:focus:invalid:focus,
input:focus
textarea:focus, textarea.form-control:focus {
	border-color: #e9322d;
	-webkit-box-shadow: 0 0 6px #f8b9b7;
	box-shadow: 0 0 6px #f8b9b7;
}

s {
	color: #e9322d;
}

option {
	font-weight: inherit;
}

input[type="file"],input[type="checkbox"],input[type="radio"]{float:left;width:0.1px;height:0.1px;opacity:0;overflow:hidden;margin:0;padding:0}
input[type="file"]+label{color:#fff;min-width:40px;height:40px;background:#666 url(../img/icon-upload-image.png) 5px center no-repeat;border-color:#666;cursor:pointer;display:inline-block;vertical-align:middle;overflow:hidden;margin-bottom:10px;padding:10px 10px 10px 50px !important;opacity:.8}
input[type="file"]:focus+label,input[type="file"]+label:hover,input[type="file"].has-focus+label{opacity:1}

input[type="checkbox"]+label,
input[type="radio"]+label {
	display: inline-block;
	cursor: pointer;
	margin-bottom: 1.4rem;
	text-align: left;
}

input[type="checkbox"]+label:before,
input[type="radio"]+label:before {
	content: '';
	float: left;
	margin-right: 8px;
	margin-top: 0;
	width: 20px;
	height: 20px;
	border: 3px solid #666;
}

input[type="radio"]+label:before {
	border-radius: 50%;
}

input[type="checkbox"]:checked+label:before,
input[type="radio"]:checked+label:before {
	background: #666;
}

.input.checkbox input[type="checkbox"]+label {
	padding-left: 30px;
	position: relative;
}
.input.checkbox input[type="checkbox"] {
	width: 0.1px!important;
	height: 0.1px!important;
	float: left;
	opacity: 0;
	overflow: hidden;
	margin: 0;
	padding: 0;
}
.input.checkbox input[type="checkbox"]+label:before {display: none;}
.input.checkbox input[type="checkbox"]+label svg {
	position: absolute;
	top:0px;
	left:0px;
}
.input.checkbox input[type="checkbox"]+label svg path {
	fill: none;
	stroke: #c52123;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 71px;
	stroke-dashoffset: 71px;
	-webkit-transition: all 0.6s ease;
	transition: all 0.6s ease;
}
.input.checkbox input[type="checkbox"]+label svg polyline {
	fill: none;
	stroke: #FFF;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 18px;
	stroke-dashoffset: 18px;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.input.checkbox input[type="checkbox"]+label svg path {stroke-dashoffset: 0;}
.input.checkbox input[type="checkbox"]:checked+label svg {border-color: #c52123;}
.input.checkbox input[type="checkbox"]:checked+label svg path {fill: #c52123;}
.input.checkbox input[type="checkbox"]:checked+label svg polyline {stroke-dashoffset: 0;}
.input.checkbox input[type="checkbox"]:checked+label svg path {stroke-dashoffset: 0;}

textarea,
select[multiple],
select[size] {
	resize: vertical;
	line-height: 1.4;
	height: 150px;
}

input.error {
	border: 1px solid #e9322d;
}

label.error,
.error-message {
	position: relative;
	top: -12px;
	left: 10px;
	color: #e9322d;
	text-align: left;
}

input[type="checkbox"]+label+label.error,
input[type="radio"]+label+label.error {
	top: 0;
	left: 0;
	float: left;
}

.alert {
	margin-bottom: 0;
	border-radius: 0;
	cursor: pointer;
}

.g-recaptcha{display:inline-block;margin:20px auto}
iframe{border:0 !important}
figure{margin:0 auto}
figure img,figure svg,figure video{width:100%;display: block;}
.google-maps{position:relative;padding-bottom:35%;height:0;overflow:hidden}
.google-maps iframe{position: absolute;top:0;left:0;width:100% !important;height:100% !important}
.valign{width:0;display:inline-block;vertical-align:middle;height:100%}
.inline{width:100%;display:inline-block;vertical-align:middle;}

.video_responsive {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}

.video_responsive iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.scrolltop {
	display: none;
	position: fixed;
	bottom: 3vw;
	right: 3vw;
	width: 10vw;
	height: 10vw;
	z-index: 99;
	background: #000;
	padding: 3vw;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	opacity: .5;
	cursor: pointer;
}

.scrolltop svg {
	width: 100%;
	height: 100%;
}

.scrolltop svg * {
	fill: #fff !important;
}

.content_flex {
	width: 100%;
}

/** HEADER */
header {
	padding: 1rem 0 2.5rem;
	background: -moz-linear-gradient(top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.55) 50%, rgba(0,0,0,.3) 90%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.55) 50%,rgba(0,0,0,.3) 90%, rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.55) 50%,rgba(0,0,0,.3) 90%, rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
	position: absolute;
	width: 100%;
	z-index: 10;	
}

#premenu{
	background-color: #c52123;
	color: #fff;
	padding: 5px 0;
	font-size: .9rem;
	font-weight: 500;
}
#premenu .tlf{
	padding-right: 0px; 
}
#premenu .tlf figure{
	width: 18px;
	display: block;
}
header .logo {
	display: inline-block;
	max-width: 130px;
}

.social a,
header .acciones figure {
	display: inline-block;
	vertical-align: middle;
	padding: 0;
	overflow: hidden;
	cursor: pointer;
}

.social a:not(:last-child),
header .acciones figure:not(:last-child) {
	margin-right: .5rem;
}

.social a img,
.social a svg {
	display: block;
	width: 20px;
	height: 20px;
}

header .acciones figure img,
header .acciones figure svgf {
	display: block;
	width: 24px;
	height: 24px;
}

/** MENU */
header .navbar{padding: 0;}
header .nav-item{
	font-weight: 500;
	color: #fff;
}
header .nav-item .nav-link{
	padding-left: 2rem;
	padding-right: 0;
}

/** FOOTER */
footer {
	color: #fff;
	background-color: #2e2e2e;
}
footer a{
	padding: 0 .5rem;
}
footer .datos_contacto{padding-top: 3.5rem;margin-bottom: .4rem;}
footer .datos_contacto a{
	font-size: 1.4rem;
	font-weight: 300;
}
footer .datos_ubicacion{padding-bottom: 3.5rem;}
footer .logo{
	max-width: 150px;
	margin-bottom: 3.5rem;
}
footer .sub_footer{
	background-color: #5d5d5d;
	padding: .7rem 0;
	font-size: .85rem;
	font-weight: 300;
}




footer .social a img,
footer .social a svg {
	width: 32px;
	height: 32px;
	margin-top: 1rem;
	margin-bottom: 1rem;
}


/** CONTENT */
section:not(.main_container) {
	padding: 2rem 0;
}
#galeria_imagen{
	background-color: #fff;
}

.slider_galeria .carousel-inner .carousel-item>img {
	width: 100%;
}

.slider_galeria .carousel-caption {
	position: absolute;
	bottom: 10%;
	left: 10%;
	width: 80%;
	max-width: 400px;
	padding-top: 1rem;
	padding-bottom: 1rem;
	text-align: left;
}

.slider_galeria .carousel-caption .caption1 {
	font-weight: 500;
	font-size: 3.5rem;
	line-height: 1;
	color: #fff;
	padding-top: 2rem;
}

.slider_galeria .carousel-caption .caption2 {
	font-weight: 300;
	font-size: 1.8rem;
	line-height: 1.3;
	color: #fff;
	margin-top: 1rem;
}

.slider_galeria .carousel-control-next,
.slider_galeria .carousel-control-prev {
	width: 5%;
}

.slider_galeria .carousel-indicators {
	bottom: -5px;
	margin: 0;
}

.slider_galeria .carousel-indicators li {
	max-width: none;
	height: 5px;
	background-color: #000;
	margin: 0;
}

.slider_galeria .carousel-indicators li {
	background-color: #292b2c;
}

.slider_galeria .carousel-indicators li.active {
	background-color: #000;
	opacity: 1 !important;
}

.slider_galeria .carousel-control-prev-icon {
	background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='%23292b2c' viewBox='0 0 8 8'><path d='M4 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/></svg>");
}

.slider_galeria .carousel-control-next-icon {
	background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='%23292b2c' viewBox='0 0 8 8'><path d='M1.5 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/></svg>");
}

.slider_galeria .btn {
	margin-top: 2rem;
	padding-left: 4rem;
	padding-right: 4rem;
}

/*  index  */
#index .banner_background{max-height: 750px;min-height:650px;}
#index .banner_background .padding_top{padding-top: 60%;}
.banner{position: relative;}
.banner .banner_text{
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}
.banner .banner_text > .container,
.banner .banner_text > .container > .row{height: 100%;}
.banner .banner_text{color:#fff;}
.banner .banner_text h1{
	font-size: 3rem;
	margin: 0 auto;
}
.banner .banner_text h1 big{
	font-size: 1.5em;
	font-weight: 600;
}
.banner .banner_text p{
	max-width: 80%;
	font-size: 1.3rem;
	margin: 1.5em 0 2em;
}
.destacados{
	background: url('../img/destacados.jpg') no-repeat center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	color: #fff;
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	-o-transform:translateY(-50%);
	transform:translateY(-50%);
}
.destacados .color{
	padding-top:2.5rem;
	padding-bottom: 2.5rem; 
}
.destacados .color.red{background-color: rgba(197,33,35,.75);}
.destacados .color.black{background-color: rgba(0,0,0,.75);}
.destacados .color.grey{background-color: rgba(93,93,93,.75);}
.destacados h3{
	font-weight: 300;
	font-size: 2rem;
	margin-bottom: .75em;
}
.destacados p{
	font-size: 1.1rem;
	margin-bottom: 0;
}
.titulo_seccion{
	margin-bottom: 3rem;
}
.titulo_seccion h2{
	font-weight: 300;
	font-size: 2.5rem;
	margin-bottom: .1em;
}
.titulo_seccion hr{
	border: none;
	border-top:solid 2px #c52123;
	width: 4rem;
	margin: 0 auto 0 0;
}
.servicios {margin-bottom:7rem;}
.servicios .servicio{margin-bottom:2rem;}
.servicios .servicio figure{
	max-width: 100px;
	margin-bottom: 1.5rem;
}
.servicios .servicio h4{font-size:1.4rem;}
.servicios .servicio p{
	max-width: 90%;
	margin: 0 auto 1rem;
}
.separador_background{
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	color: #fff;
	padding: 6rem 0;
	margin-bottom: 7rem; 
}
.separador_background h3{
	margin-bottom: .6em;
	font-weight: 600;
}
.separador_background p{
	font-size: 1.3rem;
	margin-bottom: 0;
	font-weight: 300;
}

.casos_exito {margin-bottom:7rem;}
.casos_exito .caso{position:relative;cursor: pointer;margin-bottom: 30px;}
.casos_exito .caso .padding-top{padding-top:100%;}
.casos_exito .caso a{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
}
.casos_exito .caso .img{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}
.casos_exito .caso .contenido{
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	background-color: rgba(192,33,35,.75);
	color: #fff;
	font-weight: 500;
	font-size: 1.1rem;
	padding: 1rem 2rem;
	opacity: 0;
	-webkit-transition: opacity ease .5s;
	-moz-transition: opacity ease .5s;
	-o-transition: opacity ease .5s;
	transition: opacity ease .5s;
}
.casos_exito .caso:hover .contenido{opacity:1;}
.casos_exito .caso .contenido figure{
	width: 30px;
	margin-top: 1rem;
}
.casos_exito .btn{margin-top: 3rem;}
.cifras{
	background-color: #e8e8e8;
	padding: 4rem 0;
}
.cifras h2{
	font-family: 'Lato';
	font-weight: 900;
	margin-bottom: 0;
}
.cifras hr{
	border:none;
	border-top: solid 3px #c52123;
	width: 2rem;
	margin: 1rem auto;
}
.cifras p{
	font-size: 1.2rem;
	font-family: 'Lato';
	font-weight: 300;
	color:#5d5d5d;
	max-width: 150px;
	margin: 0 auto;
}
.contenido_casos_exito .caso_de_exito{margin-bottom:6rem;}
.contenido_casos_exito .galeria_imagen{margin-bottom:2rem;}
.contenido_casos_exito .galeria_imagen .padding-top{padding-top:60%;background-color: #fafafa;}
.contenido_casos_exito .galeria_imagen .wrapper_img,
.contenido_casos_exito .galeria_imagen .wrapper_img .carousel.slide,
.contenido_casos_exito .galeria_imagen .wrapper_img .carousel-inner,
.contenido_casos_exito .galeria_imagen .wrapper_img .carousel-item{
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}
.contenido_casos_exito .galeria_imagen figure{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}
.contenido_casos_exito .galeria_imagen .ajust_width,
.contenido_casos_exito .galeria_imagen .ajust_width img{width: 100%;height: auto;}
.contenido_casos_exito .galeria_imagen .ajust_height,
.contenido_casos_exito .galeria_imagen .ajust_height img{height: 100%;width: auto;}



.contenido_casos_exito .columna_der .row{
	margin-left: -7px;
	margin-right: -7px;
}
.contenido_casos_exito .thumb_img{
	margin-bottom: 14px;
	padding-left: 7px;
	padding-right: 7px;
}
.contenido_casos_exito .thumb_img .padding-top{
	padding-top: 90%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	border: solid 2px #fff;
}

.contenido_casos_exito .thumb_img.active .padding-top{
	border-color: #c52123;
}
.contenido_casos_exito .texto_proyecto p{
	font-size: 1.15rem;
}
/*  quienes somos  */
#quienes_somos .desc_quienes_somos{
	margin-top: 7rem;
	margin-bottom: 7rem;
}
#quienes_somos .desc_quienes_somos p{
	font-size: 1.15rem;
}
#quienes_somos .certificados p:last-child{
	margin-bottom: 0;
}
#quienes_somos .carousel-indicators{
	bottom:auto;
	top: 100%;
	margin: 0 auto;
}
#quienes_somos .carousel-indicators li{
	width: 12px;
	height: 12px;
	margin: 0 6px;
	background-color: #5d5d5d;
	border-radius: 60%;
}
#quienes_somos .carousel-indicators li.active{background-color: #c52123;}

/*  servicios  */
#servicios .banner{
	margin-bottom: 7rem;
}
#servicios .cuadricula_servicios .servicio{
	margin-bottom: 6rem;
	position: relative;
}
#servicios .cuadricula_servicios .servicio a{
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: 10;
}
#servicios .cuadricula_servicios .imagen_servicio{
	margin-bottom: 2rem;
}
#servicios .cuadricula_servicios .icon_servicio{
	max-width: 75px;
}
#servicios .cuadricula_servicios .col-text{
	padding-left:1rem; 
}
#servicios .cuadricula_servicios h4{
	font-size: 1.2rem;
	font-weight: 500;
}
#servicios .cuadricula_servicios p{
	font-size: 1.05rem;
	margin-bottom: 0;
}
#servicios .cuerpo_servicio{
	margin-bottom: 4rem;
}
#servicios .cuerpo_servicio .imagen_principal{
	margin-bottom: 2rem;
}
#servicios .cuerpo_servicio p,
#servicios .cuerpo_servicio li{
	font-size: 1.1rem;
	font-weight: 300;
	text-align: left;
}
#servicios .cuerpo_servicio ul{margin-bottom: 0;}
#servicios .cuerpo_servicio li{margin-bottom: 1rem;}
#servicios .menu_servicios{
	background-color: #e8e8e8;
	padding: 2rem;
}
#servicios .menu_servicios .coloured{font-weight: 500;}
#servicios .menu_servicios p{
	-webkit-transition: all ease .3s;
	-moz-transition: all ease .3s;
	-o-transition: all ease .3s;
	transition: all ease .3s;
}
#servicios .menu_servicios p:hover{
	color: #c52123;
	font-weight: 500;
}
#servicios .galeria_servicio .gal_img{
	margin-bottom: 30px;
}
/*  casos de exito  */
#casos_exito .banner{margin-bottom: 7rem;}
#casos_exito .categorias{margin-bottom: 5rem;}
#casos_exito .categorias > div {margin-bottom: .5rem !important;}
#casos_exito .categorias .filter_button{
	font-size: 1.1rem;
	font-weight: 300;
	cursor: pointer;
	border-right: solid 1px #000;
}
#casos_exito .categorias .filter_button:last-child{border-right: none;}
#casos_exito .categorias .filter_button.active{
	color: #c52123;
}
#casos_exito .categorias .linea{padding: 0 1rem;}
#casos_exito .categorias .linea:last-child{display: none;}
#casos_exito .grid.casos_exito{position: relative;}

.estaticos {
	text-align: left;
	padding-top: 4rem;
	padding-bottom: 4rem;
}

.estaticos h1:not(:first-child),
.estaticos h2:not(:first-child) {
	margin-top: 4rem;
}

.estaticos p,
.estaticos li {
	text-align: justify;
	font-size: 1.125rem;
}
.estaticos li{margin-bottom: 2rem;}

.estaticos p,
.estaticas ul,
.estaticos ol {
	margin-bottom: 2rem;
}

.estaticos img,
.estaticos svg,
.estaticos video {
	max-width: 100%;
}

[class*="shape-content-"] {
	position: relative;
	padding-left: 55px;
	margin-top: 25px;
	margin-bottom: 20px;
}

[class*="shape-content-"]:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -25px;
	width: 44px;
	height: 51px;
	background: url('../img/marker.png') center center no-repeat;
	color: #fff;
	font-size: 30px;
	line-height: 51px;
	text-align: center;
}

.shape-content-a:before {content: 'A'}
.shape-content-b:before {content: 'B'}
.shape-content-c:before {content: 'C'}
.shape-content-d:before {content: 'D'}
.shape-content-e:before {content: 'E'}
.shape-content-f:before {content: 'F'}
.shape-content-g:before {content: 'G'}
.shape-content-h:before {content: 'H'}
.shape-content-i:before {content: 'I'}
.shape-content-j:before {content: 'J'}
.shape-content-k:before {content: 'K'}
.shape-content-l:before {content: 'L'}
.shape-content-m:before {content: 'M'}
.shape-content-n:before {content: 'N'}
.shape-content-ñ:before {content: 'Ñ'}
.shape-content-o:before {content: 'O'}
.shape-content-p:before {content: 'P'}
.shape-content-q:before {content: 'Q'}
.shape-content-r:before {content: 'R'}
.shape-content-s:before {content: 'S'}
.shape-content-t:before {content: 'T'}
.shape-content-u:before {content: 'U'}
.shape-content-v:before {content: 'V'}
.shape-content-w:before {content: 'W'}
.shape-content-x:before {content: 'X'}
.shape-content-y:before {content: 'Y'}
.shape-content-z:before {content: 'Z'}
.shape-content-1:before {content: '1'}
.shape-content-2:before {content: '2'}
.shape-content-3:before {content: '3'}
.shape-content-4:before {content: '4'}
.shape-content-5:before {content: '5'}
.shape-content-6:before {content: '6'}
.shape-content-7:before {content: '7'}
.shape-content-8:before {content: '8'}
.shape-content-9:before {content: '9'}
.shape-content-0:before {content: '0'}

.errorpage {
	padding: 80px 0;
}

.errorpage figure {
	max-width: 500px;
	margin: 0 auto;
}


.banner_background{
	position: relative;
	min-height: 350px;
	max-height: 550px;
	overflow: hidden;
	margin-bottom: 3rem;
}
.banner_background .padding_top{padding-top: 35%;}
.banner_background .wrapper_banner{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
#contacto .dinamic_label{
	margin-bottom: .5rem;
}
#contacto input, #contacto textarea{
	width: 100%;
	height: auto;
	line-height: 1.2em;
	padding: .8rem 1rem;
	background-color: #f3f3f3;
	color: #000;
	border:none;
	font-size: 1.05rem;
}
#contacto textarea{height: 116px;}
#contacto ::-webkit-input-placeholder{color:#000;}
#contacto ::-moz-placeholder{color:#000;}
#contacto :-ms-input-placeholder{color:#000;}
#contacto :-moz-placeholder{color:#000;}
#contacto input[type="checkbox"]+label{text-align:right;}

#contacto iframe{
	display: block;
	margin-top: 5rem;
}
.grecaptcha-badge{opacity:0!important;}



/** ADMIN */
header.admin_header {
    padding: .6rem 0;
    background-color: #000;
    position: relative;
    width: 100%;
    margin-bottom: 4rem;
}
header.admin_header .logo{
	margin-left: 0;
	margin-right: auto;
	max-width: 85px;
}
.admin_content .login_page form{
	padding-top: 6rem;
}
.admin_content .login_page label{
	font-size: .8rem;
	margin-bottom: .1rem;
}
.admin_content .login_page input{
	padding: .7rem 15px;
	height: auto;
	line-height: 1.2em;
	font-size: 1.15rem;
	font-weight: 300;
}
.admin_content .login_page button{margin-top:2rem;}

.admin_content .titulo_seccion{
	font-family: 'Lato';
	font-weight: 300;
	font-size: 1.5rem;
}
.admin_content .btn{
	font-size: .8rem;
	display: block;
	margin-bottom: .7rem;
	border-radius: .2rem;
}
.admin_content .btn.btn-action{
	font-size: 1rem;
	margin-bottom: 0;
	display: inline-block;
	padding: .3rem 1.5rem;
}
.admin_content .btn-grey{background-color: #efefef;}
.admin_content .btn-grey:hover{background-color: #dedede;}
.admin_content .btn-group .btn{margin-bottom: 0;}

.admin_content .dataTables_length,
.admin_content .dataTables_filter{
	display: inline-block;
	vertical-align: middle;
	width: 50%;
	text-align: left;
}
.admin_content .dataTables_filter{
	text-align: right;
}
.dataTables_paginate a{
	margin: 0 5px;
	font-size: 1rem;
}
.table-responsive{
	margin-bottom: 5rem;
	min-height: 60vh
}
.table-responsive td{
	vertical-align:middle;
}

/** COOKIES */
.show_cookies {
	position: fixed;
	top: auto;
	bottom: -300px;
	left: auto;
	right: 30px;
	width: calc(100% - 60px);
	z-index: 99;
	font-weight: 300;
	font-size: .8rem;
	text-align: left;
	text-transform: none;
	background: #fff;
	color: #000;
	border: 3px solid #56b99f;
	padding: 20px;
	-webkit-transition: all .8s cubic-bezier(.2,.45,.42,1.28);
	transition: all .8s cubic-bezier(.2,.45,.42,1.28);
}

.show_cookies.mostrar {
	bottom: 30px;
}

.show_cookies.ocultar {
	display: none;
}

.show_cookies>div {
	display: inline-block;
	vertical-align: middle;
}

.show_cookies>div:first-child {
	width: 60%;
	padding-right: 10px;
	border-right: 1px solid #56b99f;
}

.show_cookies>div.cookies_actions {
	width: 40%;
	padding-left: 10px;
	text-align: center;
}

.show_cookies>div.cookies_actions button {
	background: #56b99f;
	color: #fff;
	line-height: 50px;
	height: 50px;
	text-align: center;
	text-transform: uppercase;
	padding: 0 20px;
	margin: 0 0 5px;
	border: 0;
	outline: 0;
}

.show_cookies>div.cookies_actions a {
	display: block;
	color: #000;
	font-size: .7rem;
	text-decoration: none;
}

.show_cookies>div.cookies_actions a:hover {
	text-decoration: underline;
}

/*!
 * IE10 viewport hack for Surface/desktop Windows 8 bug
 */
@-ms-viewport{width:device-width}
@-o-viewport{width:device-width}
@viewport{width:device-width}


/** MEDIA QUERIES **/
/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
	html { font-size: 14px; }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
	html { font-size:16px; }
	.scrolltop { bottom:5vw;right:5vw;width:5vw;height:5vw;padding:1vw; }
	.slider_galeria .carousel-caption { top: 10%; bottom: auto; width: 40%; }
	.slider_galeria .carousel-caption .caption1 { font-size: 2rem; padding-top: 0; }
	.slider_galeria .carousel-caption .caption2 { font-size: 1rem; }
	.show_cookies { width:50%; }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
	.slider_galeria .carousel-caption .caption1 { font-size: 2.5rem; }
	.show_cookies { width:35%; }
	header .nav-item .nav-link{padding-left:4rem!important;padding-right:0!important;}
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
	
}


@media (max-width: 1200px) {
}
@media (max-width: 992px) {
	.destacados h3{font-size:1.5rem;}
	.destacados p{font-size:1rem;}
	.destacados .color {padding:2.5rem 1rem;}
	.servicios .servicio h4{font-size:1.2rem;}
	.servicios .servicio figure{max-width:80px;}
	.casos_exito .caso .contenido{padding:1rem;}
	.cifras h2{font-size: 2.5rem;}
	.banner .banner_text h1 {font-size: 2.5rem;}
	#servicios .cuadricula_servicios .icon_servicio{width: 50px;}
	#servicios .cuadricula_servicios .col-text{padding-left: 0;}
}
@media (max-width: 768px) {
	.cifras .cifra{margin-bottom: 3rem;}
	.cifras .cifra:last-child{margin-bottom: 0;}
	.navbar-brand{margin-left:0;}
	.destacados{transform:none;margin-bottom:4rem;}
	.cifras h2{font-size:3.5rem;}
	footer .datos_contacto a{margin-bottom:1rem;display:block;}
	.navbar-nav{height: 100vh}
	header .nav-item .nav-link{margin-bottom: 3rem;}
}
@media (max-width: 576px) {
	footer .logo{max-width:100px}
	header .logo{max-width:90px;}
	#contacto .dinamic_label{margin-bottom:1rem;}
	.banner .banner_text p{font-weight:400;}
}







