/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/
.grecaptcha-badge {
    visibility: hidden !important;
}

.cmplz-cookiebanner .cmplz-buttons {
    flex-direction: row-reverse;
}

/*--------------FUENTES---------------*/
p span,
h2 span,
h1 span{
	color: var(--color-content-primary);
}

/*--------------BOTON-FLECHA-----------------*/
.flecha-roja {
	opacity: 0;
	transition: all 0.3s ease-in-out;
}

.flecha-container:hover .flecha-roja{
	opacity: 1;
	cursor: pointer;
}

/*--------------CONTADORES-------------------*/
.w-counter-value {
    color: #545454 !important;
    font-size: 3.5rem !important;
    text-align: left;
}

.w-counter-title {
	margin: 0;
}

/*------------ACORDEON--------------*/
.no-touch .w-tabs-section-header:hover, .no-touch .w-tabs-section-header:focus {
    background: transparent;
}

/* 1) Prepara el contenedor */
.imagen-servicios {
	position: relative;
	overflow: hidden;
}
/* 2) Todas las imágenes en la misma posición */
.imagen-servicios .w-image {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	opacity: 0;
	transition: opacity 0.4s ease-in-out;
	pointer-events: none;       /* no interfieren al hacer click */
}
/* 3) Solo la activa se ve */
.imagen-servicios .w-image.active {
	opacity: 1;
	pointer-events: auto;
}

/*----------PLANTILLA BLOG------------*/
@media only screen and (min-width: 769px) {
	/* 1. Hacer que el artículo recorte todo el contenido extra */
	.w-grid-item {
	  position: relative;
	  overflow: hidden;
	}

	/* 2. Convertir la “envoltura” en un overlay absoluto */
	.envoltura-contenido {
	  position: absolute;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  max-height: 8em; /* → ajusta según la altura de tu título */
	  overflow: hidden;
	  background: transparent;
	  transition: max-height 0.6s ease, background   0.6s ease;
	}

	.envoltura-contenido a {
		color: color: var(--color-content-primary) !important;
	}

	.w-grid-item:hover .envoltura-contenido {
	  max-height: 100%;
	  height: 100%;
	  background: rgba(0, 0, 0, 0.8) !important;
	}

	/* Asegurarnos de que todo el texto se vea en blanco */
	.w-grid-item:hover .envoltura-contenido,
	.w-grid-item:hover{
	  color: #fff !important;
	}

	.envoltura-contenido {
	  transition: 
		max-height 0.6s cubic-bezier(.68,-0.55,.27,1.55),
		background 0.8 ease;
	}
}

/*-----------CAJAS CON ICONO-------------*/
.w-iconbox .w-iconbox-title {
	color: #545454;
	padding-bottom: 0;
}

p.w-counter-title {
    justify-content: start;
    display: flex;
}

/*------------------FORMS--------------------*/
span.wpcf7-form-control.wpcf7-acceptance {
    justify-content: start !important;
    font-size: 0.8rem !important;
}

span.label {
	display: none !important;
}

.wpcf7-spinner {
	display: none !important;
}

.block-submit input {
	width: 100%;
	justify-content: center;
    display: flex;
    margin: 0 auto;
}

.w-filter.state_desktop.style_drop_default .w-filter-item-title, .w-color-swatch, .select2-selection, select, .textarea, input:not([type=submit]):not([type="checkbox"]) {
    font-weight: 400;
    letter-spacing: 0em;
    background: #EFEFEF !important;
	border: 0px solid var(--color-content-border) !important;
    color: var(--color-content-text);
    box-shadow: none !important;
	border-radius: 5px !important;
}

input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    line-height: 1rem !important;
    margin: -5px 2px 0 0 !important;
	background: white !important;
	padding: 0.1rem;
	border-top: 1px solid #333 !important;
	border-right: 1px solid #333 !important;
	border-bottom: 1px solid #333 !important;
	border-left: 1px solid #333 !important;
}

.flex-form-middle textarea, .flex-form-middle input:not([type=submit]) {
	background: white !important;
	border-top: 0px solid #333 !important;
	border-right: 0px solid #333 !important;
	border-bottom: 1px solid #333 !important;
	border-left: 0px solid #333 !important;
}

.wpcf7-list-item-label {
	margin-top: -2px;
}

form div.row {
	/*margin: 0 -15px;*/
	display: block;
	text-align: left;
}
.row:after {
	clear: both;
	display: table;
	content: " ";
}
.row:before {
	display: table;
	content: " ";
}

form .col-xs-2 {
	width: 20%;
	float: left;
	padding: 0 5px;
}
form .col-xs-3 {
	width: 29%;
	float: left;
	padding: 0 10px 0 0;
}
form .col-xs-3.submitButton {
	width: 13%;
	float: left;
	padding: 0 5px;
}
form .col-xs-4 {
	width: 33.33%;
	float: left;
	padding: 0 5px;
}
form .col-xs-5 {
	width: 40%;
	float: left;
	padding: 0 5px;
}
form .col-xs-6 {
	width: 50%;
	float: left;
	padding: 0 5px;
}
form .col-xs-7 {
	width: 60%;
	float: left;
	padding: 0 5px;
}
form .col-xs-12 {
	width: 100%;
	float: left;
	padding: 0 5px;
}
form div.form-group {
	display: inline-block;
	width: 100%;
	margin-bottom: 5px;
}
form div.block-submit {
	display: inline-block;
	width: 100%;
}
div.wpcf7 .ajax-loader {
	display: none !important;
}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing,
div.wpcf7-response-output {
	border: 0;
	margin: 0;
	text-align: center;
}

.wpcf7-acceptance {
	display: flex;
    flex-direction: row-reverse;
}

.fooform form .col-xs-2 {
	width: 100% !important;
}
.fooform form .col-xs-3 {
	width: 100%;
}

.fooform .submitButton input {
	width: -webkit-fill-available !important;
}

.fooform input:not([type=submit]):not([type=radio]), select {
    border: 1px solid black !important;
}

.fooform input:not([type=submit]):not([type=checkbox]):not([type=radio]), select {
	margin-bottom: 10px !important;
}

form input:not([type=submit]):not([type=checkbox]):not([type=radio]), select {
	margin-bottom: 10px !important;
}

.wpcf7-list-item-label {
    margin-top: -2px;
    line-height: 1;
    margin-left: 0.25rem;
}

/* Media query for smartphones */
@media only screen and (max-width: 767px) {
	form .col-xs-2 {
        width: 100% !important;
        padding: 0 15px;
    }
    form .col-xs-3, form .col-xs-3.submitButton {
        width: 100%;
		padding: 0 5px;
        /*padding: 0 15px;*/
    }
	.submitButton input {
		width: -webkit-fill-available !important;
	}
}

/* Media query for desktop */
@media only screen and (min-width: 768px) {
    .mobile {
        display: none;
    }
}

/* Media query for desktop */
@media only screen and (min-width: 1700px) {
	.owl-dots {
		display: none;
	}
}

/* Media query for mobile */
@media only screen and (max-width: 767px) {
    .desktop {
        display: none;
		flex-direction: row-reverse;
    }
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="number"],
.wpcf7-form input[type="file"],
.wpcf7-form textarea,
.wpcf7-form select {
    margin-top: 0;
    /*box-shadow: none !important;*/
}
.legal {
	font-size: 15px;
	display: inline-block;
	width: 100%;
	margin: 10px 0;
	line-height: 1.2;
}
.legal a {
	text-decoration: underline;
}
.wpcf7-form-control.wpcf7-checkbox {
	padding: 0;
}
input[type="checkbox"] {
	width: 13px !important;
	height: 13px !important;
	line-height: 1rem !important;
    margin: -5px 2px 0 0 !important;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.sent .wpcf7-response-output {
	padding: 5px 0 !important;
	margin: 0 !important;
	border: 0 !important;
	font-size: 14px;
 	line-height: 1.4;
}
.wpcf7-form span.wpcf7-not-valid {
	border: 0 !important;
}
span.wpcf7-list-item {
	margin: 0;
}
.wpcf7-not-valid-tip {
    font-size: 0.8rem;
}
.wpcf7-spinner {
	display: block;
	margin: 5px auto;
}
.color_footer-bottom input:not([type="submit"]) {
	color: #000000 !important;
}

#nombre, #telefono, #email, #empresa, #message-int, #nombre-middle, #telefono-middle, #email-middle, #empresa-middle, #message-int-middle {
  background-repeat: no-repeat !important;
  background-position: left 10px center !important;
  background-size: 20px 20px !important;
  padding-left: 40px !important;
}

#nombre, #nombre-middle {background-image: url('/wp-content/uploads/2025/05/usuario-1.png') !important;}
#telefono, #telefono-middle {background-image: url('/wp-content/uploads/2025/05/telefono-1.png') !important;}
#email, #email-middle {background-image: url('/wp-content/uploads/2025/05/correo-1.png') !important;}
#message-int, #message-int-middle {background-image: url('/wp-content/uploads/2025/05/mensaje-1.png') !important;}

span.wpcf7-form-control.wpcf7-acceptance {
	color: #000;
}

span.wpcf7-form-control.wpcf7-acceptance a {
	color: var(--color-content-primary);
}

span.wpcf7-form-control.wpcf7-acceptance a:hover {
	color: var(--color-content-secondary);
}

/*----------METODOLOGIA TRABAJO------------*/
@media (max-width: 1300px) {
  .metodologia-trabajo .vc_col-sm-7 .vc_column-inner{
    background: none !important;
  }
}

/*-------------PLANTILLA PROYECTOS---------------*/
.env-pro .title-move {
	transition: all 0.3s ease-in-out;
	opacity: 0;
}

.env-pro img {
	transition: all 0.3s ease-in-out;
	opacity: 1;
}

.env-pro:hover .title-move {
	opacity: 1;
}

.env-pro:hover img {
	opacity: 0.5;
}

.env-pro {
	transition: all 0.3s ease-in-out;
}

.title-move {
	transform: translate(-50%, -50%);
}

.title-move a {
	color: white !important;
}
