/*
Theme Name: Prosertek
Author: Aukera
Template: unicon
Version: 1.0
*/
/*quitados los estilos que sobreescribian del bootstrap respecto a enlaces*/
a{
	text-decoration: none !important;
}

div#carouselExampleControls .card-wrapper{
    display: flex;
    justify-content: center;
    
}
div#carouselExampleControls .card{
    margin: 1em;
    box-shadow:inset;
    border-radius: 15px;
}
div#carouselExampleControls .card-text {
    color: #b0b0b0; /* color gris */
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    }
div#carouselExampleControls h5{
    color: #CF3339;
    font-family: Montserrat;
    font-weight: 600;
    position: relative;
    display: inline-block;
    padding-bottom: 4px;
}
div#carouselExampleControls .imagen{
    min-height: 200px;
    max-height: 200px;
    background-size: cover;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}
div#carouselExampleControls .card a{
    color:#CF3339;
}
div#carouselExampleControls .card a:hover{
color:#F0757A;
}

button.carousel-control-prev {
	height: 10em;
    cursor: pointer;
    position: absolute;
    top: 30%;
    width: auto;
    margin-top: -22px;
	margin-left:4em;
    padding: 16px;
    color: white;
	background-color:#b0b0b0;
    font-weight: bold;
    font-size: 18px;
    transition: 0.6s ease;
    border-radius: 0 3px 3px 0;
}

button.carousel-control-next {
    height: 10em;
    cursor: pointer;
    position: absolute;
    top: 30%;
    width: auto;
    margin-top: -22px;
	margin-right:4em;
    padding: 16px;
    color: white;
	background-color:#b0b0b0;
    font-weight: bold;
    font-size: 18px;
    transition: 0.6s ease;
    border-radius: 0 3px 3px 0;
}




html {
	box-sizing: border-box;
	scroll-behavior: smooth;
}
*, *:before, *:after {
	box-sizing: inherit;
}

/* LAYOUT */

/* ------------------------------------------------------------------------ */
/* Base 1200px Grid
/* ------------------------------------------------------------------------ */

.container                                  { position: relative; max-width: 1330px; margin: 0 auto; padding: 0; }
.container .column,
.container .columns                         { float: left; display:inline; margin-left: 20px; margin-right: 20px; }
.row                                        { margin-bottom: 40px; }

/* Nested Column Classes */
.column.alpha, .columns.alpha               { margin-left: 0; }
.column.omega, .columns.omega               { margin-right: 0; }

/* Base Grid */
.container .one.column,
.container .one.columns                     { width: 39px;  }
.container .two.columns                     { width: 121px; }
.container .three.columns                   { width: 288px; }
.container .four.columns                    { width: 260px; }
.container .five.columns                    { width: 371px; }
.container .six.columns                     { width: 537px; }
.container .seven.columns                   { width: 485px; }
.container .eight.columns                   { width: 620px; }
.container .nine.columns                    { width: 704px; }
.container .ten.columns                     { width: 786px; }
.container .eleven.columns                  { width: 870px; }
.container .twelve.columns                  { width: 954px; }
.container .thirteen.columns                { width: 1036px; }
.container .fourteen.columns                { width: 1120px; }
.container .fifteen.columns                 { width: 1202px; }
.container .sixteen.columns                 { width: 1286px; }

.container .one-third.column,
.container .one-third.columns               { width: 400px; }
.container .two-thirds.column,
.container .two-thirds.columns              { width: 864px; }

.container .twelve.alt.sidebar-right{
	padding-right:40px;
	width: 907px;
	border-right: 1px solid #efefef;
}
.container .twelve.alt.sidebar-left{
	padding-left:40px;
	width: 907px;
	border-left: 1px solid #efefef;
}

#sidebar.sidebar-right #sidebar-widgets{
	border-left: 1px solid #efefef;
	margin-left: -21px;
	padding-left: 40px;
	background-color: #efefef;
}

#sidebar.sidebar-left #sidebar-widgets{
	border-right: 1px solid #efefef;
	margin-right: -21px;
	padding-right: 40px;
}
.hr-titulo{
	width: 20%; 
	margin: 0px auto; 
	border: 3px solid #CC292B;
}
/* Row - Standard 1200px /--------------------------------------------------------- */
.page-section .standard-section .span_12{
	max-width: 1330px;
	margin: 0 auto;
}

div.page-section .wpb_row {
	margin-bottom: 150px;
}
#extra-modules .wpb_row {
	margin-bottom: 150px !important;
}


/* ESTILOS */
.category div#content {
    display: flex !important;
    flex-wrap: wrap;
    /* float: none; */
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
    justify-content: space-between;
	padding-top:0px !important;
}
@media (min-width: 768px){
.category .blog-page .post {
    flex-basis: 48% !important;
}
}
.category .entry-meta{
	display:none;
}
.category  .blog-medium .entry-image {
    max-height: 230px !important;
}
.category .container .twelve.alt.sidebar-right{
border-right: none !important;
}
.category .blog-page .post {
    margin: 0 0 60px 0;
    padding: 0 0 53px 0;
    border-bottom: none !important;
    flex-basis: 100%;
    display: flex;
	flex-direction: column;align-content
}
.category .blog-medium .entry-wrap{
	min-height: 360px !important;
	    padding-top: 20px !important;
}
.category .blog-medium .entry-image{
	width: 100% !important;
}

/* h1 {
	font-family: Montserrat;
	font-weight: bold;
	text-transform: uppercase;
} */

h2 {
	text-transform: uppercase;
	font-weight: bold;
	text-align: center;
	font-weight: bold !important;
}
div.borde-rojo{
	border:1px solid #cc292b;
	padding: 10px;
    width: 45%;
    margin: 0px 33px;
}
div.capa-roja{
	background-color: #cc292b;
    padding: 5px 0px;
    text-align: center;
    color: #ffffff;
    font-weight: bold;
    font-size: 20px;
}

#page-wrap h3 {
	color: #CF3339;
	font-family: Montserrat;
	font-weight: 600;
	position: relative;
	display: inline-block;
	padding-bottom: 4px;
}
#page-wrap h3::after {
	content: "";
	display: block;
	width: 80%;
	height: 2px;
	background-color: #CF3339;
	position: absolute;
	bottom: 0px;
	left: 0;
}

p strong, #content li strong, #content strong {
	font-weight: 400;
	color: #000;
}

.page-section ul {
	list-style: disc outside;
}
.page-section li::marker {
	color: #CF3339;
}
.page-section li {
	margin-bottom: 20px;
}

button#mauticform_input_newsletteren_submit {
    padding: 12px 15px;
    font-size: 17px;
	margin: 15px 0px 0px 0px;
}
div#mauticform_newsletteren_politica_de_privacidad {
    font-size: 13px;
    line-height: 16px;
}
div#mauticform_newsletteres_politica_de_privacidad {
    font-size: 13px;
    line-height: 16px;
}
button#mauticform_input_newsletteres_submit {
    padding: 12px 15px;
    font-size: 17px;
	margin: 15px 0px 0px 0px;
}
button#mauticform_input_newsletteren_subscribe_me{
    padding: 12px 15px;
    font-size: 17px;
	margin: 15px 0px 0px 0px;
}
.btn,
.wpcf7-form .wpcf7-submit,
#sat input[type="submit"],
.mauticform-button {
	font-family: Montserrat;
	font-size: 20px;
	font-weight: 500;
	text-transform: uppercase;
	border: 2px solid #CF3339;
	border-radius: 10px;
	padding: 12px 44px;
	text-align: center;
	transition: all 0.3s ease-in !important;
	display: inline-block;
	color: #000;
	background: #fff;
	margin-bottom: 30px;

	/* margin-left: 50%;
	-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
			transform: translateX(-50%); */
}
.btn:hover,
.wpcf7-form .wpcf7-submit:hover,
#sat input[type="submit"]:hover,
.mauticform-button:hover  {
	background-color: #CF3339;
	border-color: #CF3339;
	color: #fff;
}
.btn.rojo {
	background: #CF3339;
	color: #fff;
}
.btn.transparente {
	background: transparent;
	color: #fff;
	border-color: inherit;
}

.minusculas {
	text-transform: none;
}

.max-45 {
	max-width: 45ch;
}


.rojo {
	color: #CF3339;
}


/* CABECERA */
#header, #mobile-header {
	box-shadow: none;
}
#logo {
	max-width: 262px;
}
#mobile-logo {
	max-width: 340px;
}

.header-tel {
	display: none;
}

/* Menú */
#navigation > ul > li.menu-sat > a {
	border-radius: 7px;
}
.header-v1 #navigation > ul > li.menu-sat > a {
	padding: 5px 10px;
	margin-top: -5px;
}

#lang_sel_footer a {
	font-size: 12px;
	font-family: Montserrat;
}

/* #mobile-navigation {
	overflow: visible !important;
} */

#mobile-navigation form::before {
	top: 14px;
}

#search-btn {
	line-height: 90px !important;
}

#lang_sel_footer .lang_sel_sel,
#lang_sel_footer .wpml-ls-current-language a {
	border-bottom: 1px solid red;
	padding-bottom: 0px;
	font-weight: 600;
}

/* Título */
#fulltitle {
	height: 175px;
	background-size: cover;
	background-position: center center;
	background-image: url('../jpg/sobre-nosotros.jpg');
}
#fulltitle .container {
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	align-items: center;
	height: 100%;
	/* width: 100%; */
}
#title {
	text-align: center;
}
.titlebar.titlebar h1 {
	text-transform: uppercase;
	font-size: clamp(1.875rem, 0.7444rem + 3.2889vw, 2.8rem);
	line-height: 1.35;
}
#fulltitle span {
	display: block;
	font-weight: 300;
	text-transform: none;
	font-size: 30px;
}



/* Breadcrumbs */
#migas {
	margin: 25px 0 50px;
}
#breadcrumbs {
	/* width: 100%; */
	text-align: left;
	font-size: clamp(0.68rem, 0.3744rem + 0.8889vw, 0.93rem);
}
#breadcrumbs a {
	color: #1D1D1B;
}
#breadcrumbs span {
	color: #CF3339;
}

/* HOME */
#hero {
	background-size: cover;
	min-height: 500px;
}
#hero > .col {
	max-width: 950px;
	margin-left: auto;
	margin-right: auto;
	padding: 100px 20px 60px;
}
#hero h1 {
	color: #fff;
	font-size: 36px;
	font-weight: bold;
	line-height: 1.2;
}
#hero p {
	color: #fff;
	font-size: 23px;
	margin-bottom: 60px;
}


.home #page-wrap h3 {
	text-transform: uppercase;
	font-weight: 400;
}
.home #page-wrap h3::after {
	display: none;
}
.home-product {
	margin-bottom: 0 !important;
	margin-top: 50px !important;
	border-bottom: 2px solid #CF3339;
}
.home-product .wpb_text_column {
	max-width: 550px;
}
.latest-blog .blog-item-description {
	min-height: auto;
}
.blog-item-description h4 a {
	color: #000;
	font-size: 24px;
	font-weight: 600;
	line-height: 1.2;
}

/* NOSOTROS */

dl.hitos {
	margin: 50px auto;
	position: relative;
}
.hito {
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin-bottom: 60px;
	position: relative;
	flex-direction: column;
}

.hito > * {
	max-width: 400px;
}
.hito dt {
	font-family: Montserrat;
	font-size: 44px;
	font-weight: 600;
	position: relative;
}
.hito dt::before {
	content: "";
	display: inline-block;
	width: 19px;
	height: 24px;
	margin-right: 16px;
	background-image: url("data:image/svg+xml;utf8, <svg xmlns='http://www.w3.org/2000/svg' width='19' height='24'><defs/><path fill='%23CD353D' fill-rule='evenodd' d='M19 12L0 24V0z'/></svg>");
}
.hito dd {
	border: 1px solid #CD353D;
	padding: 20px;
}
.hito dd img {
	display: block;
}
dd b {
	font-weight: 400;
	color: #CD353D;
}

#certificados {
	max-width: 1170px;
	margin-left: auto;
	margin-right: auto;
}
#certificados .wpb_wrapper {
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#certificados .single_image {
	padding: 30px 40px 20px;
	margin: 40px;
	box-shadow: 0px 0px 6px #000000AB;
	border: 2px solid #CF3339;
	max-width: 296px;
}
span.single_image_caption {
	color: #CF3339;
	margin-left: auto;
	margin-right: auto;
	font-family: Montserrat;
	font-weight: 500;
	font-size: 20px;
	line-height: 1.3;
}




/* SERVICIOS */
/* Imágenes con fondo rojo */
.serv-img .single_image {
	background-image: linear-gradient(0deg, #CF3339 0%, #CF3339 68%, #fff 68%);
	padding: 0 10% 10%;
}
.servicio-h2 {
	font-size: 30px;
	text-transform: none;
	text-align: left;
	line-height: 1.2;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}
.ppu-h2 {
	text-align: left;
	border-bottom: 5px solid #CF3339;
	padding-bottom: 24px;
}

.bordes {
	margin-bottom: 50px;
	padding: 30px 20px;
}

ul.servicios {
	list-style: none;
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	flex-wrap: wrap;
	margin-left: 0;
	justify-content: center;
}
.servicios li {
	flex-basis: 330px;
	/* flex-grow: 1; */
	flex-shrink: 1;
	text-align: center;

	margin: 0 0 40px;
	border: 2px solid #CF3339;
	flex-basis: 100%;
	padding: 20px 10px;
}
.servicios h2 {
	line-height: 0.9;
	margin: 20px 0;
	padding-bottom: 20px;
	position: relative;
}
.servicios h2 a {
	font-size: 30px;
	font-family: Montserrat;
	font-weight: 500;
	line-height: 0 !important;
}
.servicios h2::after {
	content: "";
	display: block;
	width: 60%;
	height: 1px;
	background-color: #000;
	position: absolute;
	bottom: 0;
	left: 20%;
}
.home .servicios h2::after {
	display: none !important;
}
.servicios p {
	font-size: 16px;
	margin-bottom: 40px;
}


ul.lista {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin-left: auto;
	margin-right: auto;
	max-width: 840px;
	padding-bottom: 4px;
	justify-content: space-between;
}
.lista.cuatro-c {
	max-width: 1120px;
}
.lista li {
	box-shadow: 0px 0px 6px #000000AB;
	border: 2px solid #CF3339;
	height: 240px;
	text-align: center;
	margin: 20px 0;
	width: 48%;
}
.lista a {
	display: block;
	width: 100%;
	height: 100%;

	-webkit-transform: perspective(1px) translateZ(0);
	-ms-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);

	display: grid;
	place-items: center;
}

.lista a::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 50%;
	left: 0;
	right: 0;
	bottom: 0;
	background: #CF3339;
	-webkit-transform: scaleY(0);
	-ms-transform: scaleY(0);
	transform: scaleY(0);
	transform-origin: 50% 100%;

	transition: transform 0.25s ease-out;
}

.lista-span {
	display: block;
	text-transform: uppercase;
	color: #1D1D1B;
	font-family: Montserrat;
	font-weight: 500;
	transition: color 0.25s;
	line-height: 1;
	font-size: 18px;
	padding: 0 10px;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	word-wrap: anywhere;
}
.lista-span::after {
	font-family: "FontAwesome";
	content: "\f067";
	color: #CF3339;
	display: block;
	font-size: 30px;
	transition: color 0.25s;
	margin-top: 10px;
}
.lista a:hover .lista-span,
.lista a:hover .lista-span::after {
	color: #fff;
}
.lista a:hover::before {
	-webkit-transform: scaleY(1);
	-ms-transform: scaleY(1);
	transform: scaleY(1);
}

.lista.productos {
	max-width: 2000px;
}
.lista.productos li {
	box-shadow: none;
	height: auto;
}
.productos .lista-span::after {
	display: none;
}
.productos .lista-span br {
	display: none;
}
.productos .lista-span {
	padding: 10px 0;
}




.owl-theme .owl-dots div.owl-dot span {
	border-color: #707070;
	width: 14px;
	height: 14px;
}
.owl-theme .owl-dots div.owl-dot.active span {
	background: #CF3339;
	border-color: #CF3339;
}


.abajo-vert {
	margin-bottom: -40px !important;
}

#ppu-row {
	/* border-bottom: 3px solid #CF3339; */
	padding-bottom: 120px;
	margin-bottom: 100px !important;
}
#ppu-row::after {
	display: block;
	margin: 0 auto;
	width: 84%;
	border-bottom: 3px solid #CF3339;
	position: absolute;
	bottom: 0;
	visibility: visible;
	left: 0;
	right: auto;
}

#ppu-row:nth-child(2n)::after {
	right: 0;
	left: auto;
}


/* PRODUCTOS */
.prod-img .single_image {
	background-image: linear-gradient(0deg, #681a1c 0%, #ce2f35 68%, #fff 68%);
	padding: 0 10% 10%;
}
.p-bolardos #fulltitle,
.p-bollards #fulltitle {
	background-position: center left;
}

h2.izquierda {
	text-align: left;
	position: relative;
	padding-bottom: 6px;
}
h2.izquierda::after {
	content: "";
	display: block;
	height: 2px;
	background-color: #CF3339;
	position: absolute;
	bottom: 0px;
	left: 0;
	width: 100%;
}


#oscuro {
	background: #1D1D1B;
	text-align: center;
	padding: 120px 0;
	color: #fff;
}
#oscuro > .col {
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
}
#oscuro .vc_col-sm-12 {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
#oscuro h2, #fondo-rojo h2 {
	font-family: Montserrat;
	border-bottom: 2px solid #CF3339;
	display: inline-block;
	margin-bottom: 60px !important;
}
#oscuro h2 {
	color: #fff;
}
#oscuro p {
	max-width: 72ch;
	margin-left: auto;
	margin-right: auto;
}
#oscuro .btn {
	box-shadow: 0px 0px 6px #151515;
}
#fondo-rojo {
	background-image: linear-gradient(0deg, #cf3339 0%, #C83137 6%, #681A1D 100%);
	padding-top: 50px;
}
#fondo-rojo .vc_col-sm-12 {
	background: #fff;
	text-align: center;
	padding: 40px 100px 0;
}

#referencias h2,
#tipos h2,
#modulos h2 {
	/* border-bottom: 2px solid #CD353D; */
	/* display: inline-block; */
	text-align: center;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-decoration-color: #CF3339;
	text-underline-offset: 8px;
}
#fondo-rojo .btn {
	margin-top: 40px;
}

#extra-modules {
	display: none;
}



ul.iconos {
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	flex-wrap: wrap;
	list-style: none;
	justify-content: center;
	margin-left: -5.5%;
}
.iconos li {
	max-width: 350px;
	text-align: center;
	flex-basis: 350px;
	text-transform: uppercase;
	font-family: Montserrat;
	font-size: 22px;
	margin-bottom: 60px !important;
	margin-left: 4.7%;
}
.iconos img {
	display: block !important;
	margin: 0 auto 25px !important;
}
.ico-span {
	display: block;
	text-transform: none;
	font-size: 18px;
	line-height: 1.3;
	margin-top: 16px;
}


ul.referencias {
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
}
.referencias li {
	color: #CF3339;
	width: 100%;
	margin-bottom: 40px;
}
.referencias h3 {
	color: #CF3339;
	font-size: 18px;
	font-weight: 300 !important;
	margin-bottom: 6px;
	padding: 0 !important;
}
.referencias h3::after {
	display: none !important;
}
.referencias dl {
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	flex-wrap: wrap;
	border-top: 2px solid #CF3339;
	padding-top: 20px;
	margin-top: 10px;
	justify-content: flex-end;
}
.referencias dt {
	flex-basis: 25%;
	color: #000;
	font-weight: bold;
}
.referencias dd {
	flex-basis: 70%;
	flex-grow: 1;
	color: #000;
}
.referencias dd + dd {
	max-width: 75%;
}

ul.ventajas {
	list-style: none;
	margin-top: 60px;
}
.ventajas li {
	text-align: left;
	border-left: 4px solid #CF3339;
	margin-bottom: 50px;
	padding: 0 0 0 10px;
}




/* DESCARGA DE CATÁLOGOS */
#catalogo {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	padding: 30px 20px;
	background-image: url(../jpg/descarga-catalogo.jpg);

	color: white;
	font-size: 36px;
	font-family: Montserrat;
	line-height: 1.2;
}
#catalogo br {
	display: none;
}
.home #catalogo, .p-servicios #catalogo, .p-services #catalogo {
	background-image: url(../jpg/descarga-catalogo-general.jpg);
	font-size: 44px;
	font-weight: 600;
}
.p-bas #catalogo {
	background-image: url(../jpg/descarga-catalogo-bas.jpg);
}


/* FORMULARIOS */
#contacto {
	background: url(../jpg/form-bg.jpg) center top no-repeat;
	background-size: cover;
	padding-top: 96px;
	padding-bottom: 96px;
}
#contacto > .col {
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
}
#contacto .wpb_column {
	background: #fff;
	max-width: 840px;
	margin-left: auto;
	margin-right: auto;
	padding: 50px 20px !important;
}
#contacto h5 {
	font-size: 40px;
	font-weight: bold;
	text-align: center;
	text-transform: uppercase;
	margin-bottom: 60px;
}
#contacto form {
	text-align: left;
}
.wpcf7 form.wpcf7-form p:last-of-type {
	text-align: center;
	margin-top: 60px !important;
}

#sat {
	padding-top:120px;
	margin-top:-120px;
}
#sat form {
	margin-left: auto;
	margin-right: auto;
	max-width: 700px;
}
#sat input, #sat textarea {
	width: 100%;
	border-color: #1D1D1B;
}
#sat input[type="submit"] {
	width: auto;
}
#sat input[type="submit"] {
	width: auto;
	margin-left: auto;
	margin-right: auto;
	display: block;
	margin-top: 60px;
}


/* CONTACTO */
.p-contacto #content .standard-section,
.p-contact #content .standard-section {
	max-width: 850px;
	margin-left: auto;
	margin-right: auto;
}

.p-contacto #content h2,
.p-contact #content h2 {
	text-align: left;
	font-weight: 500 !important;
	color: red;
	font-family: Montserrat;
	font-size: 25px;
}
.p-contacto #content h3,
.p-contact #content h3 {
	color: #1D1D1B;
	font-size: 22px;
}
.p-contacto #content h3::after,
.p-contact #content h3::after {
	width: 100%;
}

#direcciones {
	margin-top: -120px;
}
#direcciones .column_container > .wpb_wrapper {
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#direcciones .wpb_text_column {
	border: 2px solid #CF3339;
	margin-bottom: 40px !important;
	padding: 45px;
	/* flex-basis: 45%;
	margin: 2.5%; */
}
.p-contacto #content h3::before {
	font-size: 27px;
	left: -18px !important;
}
#direcciones strong a {
	color: #cf3339;
	font-weight: 600;
}
#mapa.section{
	margin-bottom:0;
}

/* BLOG */
.single #fulltitle {
	background-image: url('../jpg/blog.jpg') !important;
}
.container .blog-wrap {
	display: -webkit-box !important; display: -ms-flexbox !important; display: -webkit-flex !important; display: flex !important;
	flex-wrap: wrap;
	float: none;
	max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
	justify-content: space-between;
}

.blog-wrap .post {
	flex-basis: 100%;
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	flex-direction: column;
}

.blog-medium .entry-image {
	max-height: 300px !important;
	width: auto;
	margin: 0 !important;
	border-radius: 0;
}
.blog-medium .entry-wrap,
.blog-item-description {
	position: relative;
	overflow: visible;
	border: 1px solid #FC0000;
	border-top: none;
	padding: 0 24px 26px;
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 360px;
}
.blog-wrap .entry-title {
	margin-bottom: auto;
}
.blog-wrap h2 {
	text-align: left;
	line-height: 1.2 !important;
	margin-top: 30px !important;
}
.blog-wrap h2 a {
	color: #000 !important;
}
.blog-page .read-more-link {
	display: block;
	text-align: right;
	color: black;
	font-weight: 700;
	font-size: 22px;
	margin: 20px 10px 0 0;
}
.blog-wrap .entry-meta,
.blog-item-description > span {
	background: rgba(177, 49, 54, .73);
	font-weight: 400 !important;
	order: -1;
	line-height: 1.5;
	padding: 10px 15px;
	margin: 0 -25px;
	font-size: 16px !important;
}
.blog-item-description > span {
	position: absolute;
	top: -40px;
	height: 40px;
	width: 100%;
	z-index: 1;
	transform: translateX(-30px);
	margin: 0 !important;
	padding: 0 0 0 30px;
	line-height: 40px;
	color: #fff !important;
}
.entry-meta ul,
.entry-meta a {
	color: #fff;
	text-transform: none;
}
.entry-meta .meta-date {
	font-weight: 600;
}
.entry-meta a:hover {
	color: #000;
}


.newsletter-widget {
	width: 100vw; position: relative; left: 50%; margin-left: -50vw;
	background: url(../jpg/newsletter.jpg) center center no-repeat;
	background-size: cover;
	text-align: center;
	margin-top: -20px;
	padding: 50px 20px;
}
.blog-wrap .newsletter-widget {
	margin-bottom: 80px;
}
.newsletter-widget h2 {
	text-align: center;
	color: #fff;
	text-transform: none;
	font-size: 27px;
}
.newsletter-widget form {
	max-width: 660px;
	margin-left: auto;
	margin-right: auto;
}
.newsletter-widget .mauticform-page-wrapper {
	display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.newsletter-widget .mauticform-field-1,
.newsletter-widget .mauticform-field-2 {
	width: 48%;
}
.newsletter-widget .mauticform-input {
	width: 100% !important;
}
.newsletter-widget label {
	font-size: 16px;
	text-align: left;
	color: white;
}
.newsletter-widget label a {
	text-decoration: underline;
	color: #fff;
}
.newsletter-widget .mauticform-button-wrapper {
	display: grid;
	place-items: center;
	width: 100%;
	margin-top: 20px;
}



.blog-medium #pagination {
	margin-left: auto;
	margin-right: auto;
}
#pagination a {
	background: #A5A5A5;
	border-radius: 7px;
	color: #fff;
	width: 50px;
	height: 45px;
	line-height: 45px;
	font-size: 27px;
}
#pagination li span {
	color: black;
	font-size: 27px;
	font-weight: bold;
}
#pagination .pagination-prev a,
#pagination .pagination-next a {
	background: none;
}
#pagination ul li a i {
	font-size: 42px;
	color: #CF3339;
	vertical-align: middle;
}

.blog-page .post .h1{
    font-size: 24px;
    font-weight: 600;
    margin: 0 0 20px 0;
    padding: 0;
    line-height: 1.6;
}


/* FOOTER */
#footer .widget h3 {
    font: 18px Montserrat, Arial, Helvetica, sans-serif !important;
    color: white !important;
    font-weight: bold !important;
}
#footer a {
   color: #cf3339 !important;
}
#footer a, #footer p, .copyright-text, .copyright-text a {
	font-size: 15px;
	font-family: Montserrat;
}
h4.oficina {
	font-family: Montserrat;
	font-size: 14px;
	border-bottom: 1px solid #CF3339;
	color: white;
	display: inline-block;
	margin-bottom: 0;
	position: relative;
}
.oficina::before,
.p-contacto #content h3::before {
	font-family: "FontAwesome";
	content: "\f105";
	position: absolute;
	left: -10px;
	color: #CF3339
}
#copyright {
	border-top: 1px solid #8e8e8d;
}
#copyright .columns {
	display: flex;
	justify-content: flex-end;
}



/* Theme Options CSS */
#sidebar.sidebar-right #sidebar-widgets {
	padding-left: 0px;
	padding-right: 0px;
}
#sidebar.sidebar-right #sidebar-widgets .widget {
	padding-right: 20px;
	padding-left: 20px;
	background-color: #efefef;
}
/* .wpcf7-form .wpcf7-submit {
	background: #cc292b;
	border-color: #cc292b;
} */
#lang_sel_footer {
	background: none;
	border: 0px;
	margin-bottom: 0;
}
.lang_sel_sel {
	font-weight: bold;
}
#lang_sel {
	background: none;
	border: 0px;
	margin-bottom: 0;
	width:8.5em;
	padding:9px 0;
}
#lang_sel a {
    font-size: 13px;
    font-family: Montserrat;
	padding:10px 7px;
}
#lang_sel .lang_sel_sel {
	font-weight: 600;
}
#lang_sel .lang_sel_sel:hover{
	border-bottom: 1px solid red;
}
#lang_sel .lang_sel_sel > span{
	border-bottom:1px solid #cc292b;
}
#lang_sel.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after{
	margin-left:12px;
	background: url(../arrow-down.html) center center no-repeat transparent;
    width: 21px;
    height: 12px;
    right:auto;
	top: calc(50% - 0.45em);
	border:none;
}
#lang_sel.wpml-ls-legacy-dropdown .wpml-ls-flag+span{
	margin-left:12px;
}
#lang_sel .wpml-ls-sub-menu{
	box-shadow: 0px 0px 2px #00000034;
}
#lang_sel .wpml-ls-native {
    display:inline-block;
	font-weight:600;
}
#lang_sel .wpml-ls-item-en > a {
	padding:6px 7px;
}
#lang_sel .wpml-ls-item-en > a > .wpml-ls-native:after {
    content: "rest of the world";
    display: block;
    font-size: 10px;
	font-weight:normal;
}
@media only screen and (min-width:1600px){
	#topbar .topbar-col2 {
		margin-right:-135px;
	}
}
@media only screen and (min-width:1710px){
	#topbar .topbar-col2 {
		margin-right:-195px;
	}
}
@media only screen and (max-width: 767px){
	#topbar .topbar-col2 {
		overflow:inherit !important;
		text-align:inherit !important;
	}
}

/* .hide-mobile {
	display: ;
} */
.show-mobile {
	display: none;
}
.center {
	text-align: center;
}
.vc_tta-tabs.vc_tta-tabs-position-left .vc_tta-tab .vc_tta-title-text strong {
	font-weight: normal;
}
.vc_tta-tabs.vc_tta-tabs-position-left .vc_tta-tab.vc_active .vc_tta-title-text strong {
	font-weight: bold;
}
.entry-image .entry-overlay {
	display: none;
}

.extended_view span.related-post-title,
.extended_view span.related_du-post-title {
	position: relative;
	background: inherit;
	color: inherit;
	font-size: 14px;
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.wpb_revslider_element {
		display: none;
	}

	.hide-mobile {
		display: none;
	}

	/* .show-mobile {
		display: ;
	} */

	table {
		display: block;
		max-width: 100%;
		overflow-x: scroll;
	}
	div.borde-rojo{
		width:90%;
		margin: 0px 20px;
	}
}



/* Media queries */
@media (max-width: 479px) {
	a#mobile-navigation-btn {
		line-height: 85px;
	}
	h2 {
		font-size: 32px !important;
	}
	.hr-titulo{
		width: 55%; 
	}
}

@media (max-width: 767px) {
	.home .full-width-section .wpb_column {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}

@media (min-width: 768px) {
	#fulltitle {
		height: 195px;
	}
	.serv-img .single_image {
		background-image: linear-gradient(90deg, #CF3339 0%, #CF3339 68%, #fff 68%);
		padding: 22px 0;
		padding-left: 26%;
	}
	.prod-img .single_image {
		background-image: linear-gradient(90deg, #681a1c 0%, #ce2f35 68%, #fff 68%);
		padding: 22px 0;
		padding-left: 26%;
	}

	.center-vert > .col,
	.home-product > .col {
		display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
		align-items: center;
	}
	.abajo-vert > .col {
		display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
		align-items: end;
	}

	#contacto .wpb_column {
		border-radius: 32px 32px 32px 32px;
		padding: 50px 44px 0 !important;
		
	}
	
	div#mauticform_contactoes_submit {
		padding-bottom:3em;
	}
	
	textarea#mauticform_input_contactoes_yourmessage {
    max-height: 90px;
}

	.servicios li {
		margin: 0 30px 120px !important;
		border: none;
		padding: 0;
		flex-basis: 330px;
	}

	ul.lista {
		justify-content: center;
	}
	.lista li {
		width: 220px;
		margin: 20px 30px;
	}
	.lista.productos li {
		width: 340px;
		height: 340px;
	}
	.lista-span {
		font-size: 24px;
	}
	.productos .lista-span {
		padding: 0;
	}
	.productos .lista-span br {
		display: block;
	}



	.columnas {
		-webkit-column-count: 2;
		-moz-column-count: 2;
		column-count: 2;

		-webkit-column-gap: 20px;
		-moz-column-gap: 20px;
		column-gap: 20px;
	}

	.blog-wrap .post {
		flex-basis: 48%;
	}
	.blog-medium .entry-wrap {
		padding-top: 40px;
	}
	.blog-wrap .entry-meta {
		position: absolute;
		height: 44px;
		width: 100%;
		top: -44px;
		margin-top: 0;
		margin-left: -24px;
		padding: 0 0 0 15px;
		font-size: 18px;
		line-height: 44px;
	}
	.blog-wrap h2 {
		margin-top: 0 !important;
	}

	#fondo-rojo h2 {
		font-size: 50px;
	}
	#fondo-rojo p,
	#referencias p,
	#tipos p,
	#modulos p {
		max-width: 800px;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
	#oscuro li {
		margin-top: 60px;
	}

	ul.ventajas {
		display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.ventajas li {
		flex-basis: 40%;
	}

	#catalogo .single_image {
		margin-right: 120px;
	}
	#catalogo br {
		display: block;
	}

	.bordes {
		border-top: 5px solid #CF3339;
		border-bottom: 5px solid #CF3339;
		max-width: 600px;
		margin-left: auto;
		margin-right: auto;
	}
	h2.izquierda::after {
		width: 30%;
	}

	ul.referencias {
		margin-left: -3%;
		justify-content: flex-start;
	}
	.referencias li {
		width: 47%;
		margin-left: 3%;
	}

	#hero h1 {
		font-size: 62px;
	}
	.btn + .btn {
		margin-left: 120px;
	}
	.home-product .single_image.align-right {
		margin-right: 60px;
	}
	.latest-blog .blog-pic {
		max-height: 230px;
	}

	.hitos {
		max-width: 1400px;
	}
	.hito {
		flex-direction: row;
	}
	.hito dt,
	.hito dd {
		margin: 0 6%;
	}
	.hito dt {
		text-align: right;
	}

	.hito:nth-child(even) dt {
		text-align: left;
		order: 1;
	}

	#direcciones .column_container > .wpb_wrapper {
		justify-content: flex-start;
	}
	#direcciones .wpb_text_column {
		padding: 34px;
		flex-basis: 45%;
		margin: 2.5%;
	}
	.max-85 {
		max-width: 85ch;
		margin-left: auto !important;
		margin-right: auto !important;
	}

}

@media (min-width: 1100px) {
	.hito > * {
		flex-basis: 50%;
	}
	.hitos::after {
		content: "";
		width: 2px;
		background: #707070;
		height: 100%;
		position: absolute;
		left: 50%;
		top: 0;
		transform: translateX(-1px);
	}
	.hito::after {
		content: "";
		display: inline-block;
		width: 56px;
		height: 6px;
		background-color: #CD353D;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateX(-28px);
		z-index: 1;
	}

	.referencias li {
		width: 30.3%;
	}

}

@media (min-width: 1200px) {
	.wpb_row {
		scroll-snap-margin: 120px;
		scroll-margin: 120px;
	}

	#certificados .wpb_wrapper {
		justify-content: flex-start;
	}
}

@media (min-width: 1600px) {
	.header-tel {
		display: block;
		position: absolute;
		right: -180px;
		top: 26px;
		border-left: 2px solid #CF3339;
		padding: 2px 12px;
		font-size: 16px;
		line-height: 1.1;
	}
	.header-tel a {
		display: block;
	}
}
@media only screen and (max-width:1709px){
	.header-tel {
		right: -120px;
		padding: 2px 0 2px 12px;
		font-size: 14px;
		letter-spacing: -0.25px;
	}
}


/* Popup reserva cita*/
#popup-reserva-tu-cita {
display:none;
position:fixed;
z-index:999;
right:0px;
bottom: 0;
width:300px;
background-color:#eaeaea;
transition-duration:1s;
transition-timing-function:ease;
transition-delay:0s;
transition-property:all;
border: 1px solid #cf3339;
}
#popup-reserva-tu-cita h2{
	font-size: 26px !important;
	margin-bottom: 0px;
}
#popup-reserva-tu-cita table {
margin:0px;
width:100%;
}

#popup-reserva-tu-cita table tr td {
background-color:#eaeaea;
border:none;
padding:3px 10px;
text-align:center;
}
#popup-reserva-tu-cita table tr td img {
width:45%;
padding-top: 10px;
display:inline;
vertical-align:middle;
}
#popup-reserva-tu-cita table tr td p {
color: #000000;
box-shadow:none;
outline:none;
display:inline;
margin-bottom:0em !important;
display: block;
line-height: 10px;
padding-top: 5px;
margin-top: 0;
font-size: 18px;
}

.close-button {
    float: right;
    padding: 0 10px;
    background-color: white;
    font-size: 20px;
    border: 1px solid #cf3339;
    font-weight: bold;
    border-radius: 20px;
    position: relative;
    top: 6px;
    right: 0;
    margin-bottom: -20px;
}

#popup-n1 .close-button:hover {
  color : rgb(244, 125, 48);
  text-decoration-line : none;
  text-decoration-thickness : initial;
  text-decoration-style : initial;
  text-decoration-color : initial;
}
#popup-reserva-tu-cita  form.wpcf7-form p{
	text-align: left;
    font-size: 15px !important;
    line-height: 20px;
}
#popup-reserva-tu-cita .wpcf7 form.wpcf7-form p:last-of-type {
    text-align: center !important;
    margin-top: 10px !important;
}

#popup-reserva-tu-cita .wpcf7 input[type='text'], #popup-reserva-tu-cita .wpcf7 input[type='password'], #popup-reserva-tu-cita .wpcf7 input[type='email'], #popup-reserva-tu-cita .wpcf7 input[type='tel'], #popup-reserva-tu-cita .wpcf7 textarea {
	padding: 0px 12px;
}
#popup-reserva-tu-cita .wpcf7  textarea.wpcf7-form-control.wpcf7-textarea {
    height: 70px;
}
#popup-reserva-tu-cita .wpcf7  p.policy {
    font-size: 12px !important;
    line-height: 15px !important;
}
@media (max-width: 480px) and (min-width: 320px) {
#popup-reserva-tu-cita {
width:90%;
top:auto;
    right: 5%;
bottom:0px;
}
#popup-reserva-tu-cita table tr td img {
width:50%;
}
#popup-reserva-tu-cita table {
display: inline-table;
	}
#popup-reserva-tu-cita table tr td {
text-align:center;
}


}
@media (max-width:319px) {
#popup-reserva-tu-cita {
	display:none;
}
}
@media (max-height:739px) {
#popup-reserva-tu-cita table tr td img{
	display:none;
}
}
