/*
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;
}

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

.l-subheader-h {
	align-items: flex-start !important;
}

header li.current-menu-item {
    font-weight: 700;
}

.at_top .l-subheader-h {
    align-items: center !important;
}

.wsp a span.w-nav-title::before,
a.wsp span.fab.fa-whatsapp::before {
    content: url('/wp-content/uploads/2025/01/whatsapp-1-1.svg');
}

a.wsp.w-btn.us-btn-style_4 span.fab.fa-whatsapp::before {
	filter: invert(1);
}

a.wsp span.fab.fa-whatsapp {
	margin-right: 0 !important;
}

.wsp a span.w-nav-title,
a.w-btn.us-btn-style_1.wsp.icon_atleft,
a.w-btn.us-btn-style_4.wsp.icon_atleft{
    display: flex;
    align-items: center;
    gap: 1rem;
}

h2 strong {
	color: var(--color-content-border)!important;
}

.solution-text p.w-iconbox-title {
	color: var(--color-content-border)!important;
	margin-bottom: 0.5rem;
}

.solution-text .wpb_text_column::before {
    content: url(/wp-content/uploads/2025/01/circulo-2.png);
    display: block;
	width: 66px;
    margin-right: 1rem;
}

.solution-text .wpb_text_column.active::before {
    content: url(/wp-content/uploads/2025/01/Frame-23.png);
	display: block;
	width: 66px;
    margin-right: 1rem;
}

.solution-text .wpb_text_column {
    display: flex;
    align-items: center;
}

.solution-image:not(.active) {
	display: none;
}

.characteristics {
    padding-top: 2rem;
    padding-bottom: 2rem;
    padding-left: 1.5rem;
}

.characteristics:hover {
    background: url(/wp-content/uploads/2025/01/circle.png);
	background-size: contain;
    background-repeat: no-repeat;
}

/*** FORM ***/


span.wpcf7-list-item>label {
    display: flex;
    align-items: flex-start !important;
    padding: .2em 0;
}
input:not([type=submit]):not([type=checkbox]):not([type=radio]), select {
    line-height: 1 !important;
    padding-top: 0.9rem;
	font-size: 14px !important;
}
form input#aceptacion:focus {
	box-shadow: none !important;
}
.invalid .form-group:has(input:focus) > label, .invalid .form-group label.input-active {
	top: 18px;
}
input:not([type=submit]):not([type=checkbox]):not([type=radio]):focus, select:focus {
    border: 2px solid var(--color-content-primary);
}
form.wpcf7-form.init .wpcf7-not-valid-tip {
	display: none
}
form.wpcf7-form.init .wpcf7-not-valid { 
	border-color: var(--inputs-border-color) !important; 
}
.form-legal span.wpcf7-list-item-label {
    vertical-align: middle;
	line-height: 1;
}
.wpcf7-not-valid-tip {
	color: #A30000;
}
.form-group {
    position: relative;
}

/* Estilo inicial del label */
.form-group label {
    position: absolute;
    left: 10px;
    top: 25px; /* Comienza en el 50% de la altura del contenedor */
    transition: all 0.2s ease; /* Añade una transición suave */
    font-size: 14px;
    color: #666;
    background: transparent;
    padding: 0 5px; /* Para mantener espacio alrededor del texto */
    z-index: 1;
	pointer-events: none;
}
form div.row {
	margin: 0 -8px;
	display: block;
	text-align: left;
}
.row:after {
	clear: both;
	display: table;
	content: " ";
}
.row:before {
	display: table;
	content: " ";
}
form .col-xs-3 {
	width: 25%;
	float: left;
	padding: 0 8px;
}
form .col-xs-4 {
	width: 33.33%;
	float: left;
	padding: 0 8px;
}
form .col-xs-5 {
	width: 40%;
	float: left;
	padding: 0 8px;
}
form .col-xs-6 {
	width: 50%;
	float: left;
	padding: 0 8px;
}
form .col-xs-7 {
	width: 60%;
	float: left;
	padding: 0 8px;
}
form .col-xs-12 {
	width: 100%;
	float: left;
	padding: 0 8px;
}
form div.form-group,
form div.form-legal {
	display: inline-block;
	width: 100%;
	margin-bottom: 16px;
}
form div.block-submit {
	text-align: right;
	width: 100%;
	display: inline-block;
}
form div.block-submit input {
	text-align: center;
}
span[data-name="legal"] {
	text-align: left;
	width: 100%;
	display: inline-block;
}
div.wpcf7 .ajax-loader {
	display: none !important;
}
.wpcf7-spinner {
	margin: 0 auto;
	display: block;
}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing,
div.wpcf7-response-output {
	border: 0;
	margin: 0;
	text-align: center;
}
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="date"],
.wpcf7-form input[type="number"],
.wpcf7-form textarea,
.wpcf7-form select {
    margin-top: 0;
    box-shadow: none !important;
}
.wpcf7-not-valid {
	border-color: #C9190B !important;
}
.wpcf7-form-control-wrap {
	margin: 0 !important;
}
.wpcf7-radio, .wpcf7-checkbox {
	display: inline-block;
	width: 100%;
}
.wpcf7-radio span.wpcf7-list-item, .wpcf7-checkbox span.wpcf7-list-item {
	margin-right: 1rem;
}
.wpcf7-radio span.wpcf7-list-item.last, .wpcf7-checkbox span.wpcf7-list-item.last {
	margin-right: 0;
}
.wpcf7-radio span.wpcf7-list-item,
.wpcf7-radio span.wpcf7-list-item label {
	display: inline-block;
}
select option {
	font-family: var(--font-family), sans-serif !important;
}
.form-legal span.wpcf7-not-valid-tip {
    margin-left: 28px;
}
input[type="checkbox"] {
    width: 18px;
    height: 18px;
	line-height: 1rem;
    margin: 0 4px 0 0;
}
.wpcf7-form input:not([type="submit"]), .wpcf7-form textarea, .wpcf7-form select {
    margin-top: 0;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
	padding: 15px 0 !important;
	margin: 0 !important;
	border: 0 !important;
	font-size: 16px;
	line-height: 1.2;
}
.wpcf7-form span.wpcf7-not-valid {
	border: 0 !important;
}
span.wpcf7-list-item {
	margin: 0;
}
.wpcf7-not-valid-tip {
	font-size: 12px;
	line-height: 1.2;
	margin-top: 4px;
}
.wpcf7-form-control-wrap {
	margin-top: 0.2rem;
}
label span.red {
	color: #C9190B;
}
input#form-contact {
    width: 100%;
    border-radius: 0;
}
input#form-contact:hover {
    color:black !important;
	background:white;
}
textarea#message {
    height: auto;
}


.bg-black {
	color: white;
}

.bg-black h2,
.bg-black h1{
	color: white;
}

.bg-black h2 strong,
.bg-black h1 strong{
	color: var(--color-content-secondary) !important;
}

.w-tabs-section {
    display: none;
    border-color: var(--color-content-border);
    border: 2px solid var(--color-content-secondary);
    border-width: 2px 2px 2px 2px !important;
    margin-bottom: 1rem;
}

.w-tabs-section-control {
    background: var(--color-content-primary);
    padding: 20px;
    border-radius: 8px;
}

.w-tabs-section-control::before {
    content: '\f067' !important;
    color: white;
    font-family: 'fontawesome';
    width: 100%;
    background: none !important;
    position: static !important;
    width: 18px !important;
    height: 18px !important;
	font-weight: 100 !important;
}

.w-tabs-section-control::after {
    display: none;
}

.w-tabs-section-control {
    display: flex;
    justify-content: center;
    align-content: center !important;
    flex-wrap: wrap;
}

.w-tabs-sections.icon_plus>.w-tabs-section.active>.w-tabs-section-header .w-tabs-section-control {
    transform: rotate(0deg);
    background: var(--color-alt-content-secondary);
}

.w-tabs-sections.icon_plus>.w-tabs-section.active>.w-tabs-section-header .w-tabs-section-control::before {
    content: '\f068' !important;
    color: white;
}

.w-tabs-section-title {
    color: var(--color-content-primary);
}

button.w-tabs-section-header.active {
    padding-bottom: 0;
}

.no-touch .w-tabs-section-header:hover, .no-touch .w-tabs-section-header:focus {
	background: none !important;
}

textarea.wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
    height: auto;
}

.owl-stage-outer,
.owl-stage,
.w-grid-list.owl-carousel.valign_stretch.dotstyle_circle.navstyle_circle.navpos_outside.owl-responsive-601.owl-loaded.owl-drag{
    max-width: 1500px;
    overflow: visible !important;
}

.proceso.active .btn-process {
    flex-direction: row-reverse;
    background: var(--color-header-middle-text-hover) !important;
}

.proceso.active .btn-process span{
    color: var(--color-header-middle-bg) !important;
}

article.product {
    transition: ease-in-out all 0.3s;
}

article.product:hover {
    transform: translatey(-20px);
}

a.w-btn.us-btn-style_3.wsp.icon_atleft {
    display: flex;
    align-items: center;
    gap: 10px;
}

.img_product img {
	border: 3px solid var(--color-content-border)!important; 
	width: 100% !important;
	object-fit: cover;
}