.elementor-3267 .elementor-element.elementor-element-52ced0b:not(.elementor-motion-effects-element-type-background), .elementor-3267 .elementor-element.elementor-element-52ced0b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-3267 .elementor-element.elementor-element-52ced0b{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-3267 .elementor-element.elementor-element-52ced0b > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-3267 .elementor-element.elementor-element-2a2715d > .elementor-widget-container{margin:20px 0px 100px 0px;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-group{padding-right:calc( 7px/2 );padding-left:calc( 7px/2 );margin-bottom:34px;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-form-fields-wrapper{margin-left:calc( -7px/2 );margin-right:calc( -7px/2 );margin-bottom:-34px;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-group.recaptcha_v3-bottomleft, .elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-group > label, .elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-subgroup label{color:#212435;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-group > label{font-family:"TT regular", Sans-serif;font-size:16px;font-weight:400;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-type-html{padding-bottom:12px;color:#BDBDBD;font-family:"TT regular", Sans-serif;font-size:12px;font-weight:200;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-group .elementor-field{color:#A6A6A6;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-group .elementor-field, .elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-subgroup label{font-family:"TT regular", Sans-serif;font-size:21px;font-weight:400;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#FFFFFF;border-width:1px 1px 1px 1px;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-field-group .elementor-select-wrapper select{background-color:#FFFFFF;border-width:1px 1px 1px 1px;}.elementor-3267 .elementor-element.elementor-element-2a2715d .e-form__buttons__wrapper__button-next{background-color:#8D88ED;color:#242424;transition-duration:400ms;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-button[type="submit"]{background-color:#8D88ED;color:#242424;transition-duration:400ms;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-button[type="submit"] svg *{fill:#242424;transition-duration:400ms;}.elementor-3267 .elementor-element.elementor-element-2a2715d .e-form__buttons__wrapper__button-previous{background-color:#8D88ED;color:#ffffff;transition-duration:400ms;}.elementor-3267 .elementor-element.elementor-element-2a2715d .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-3267 .elementor-element.elementor-element-2a2715d .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-3267 .elementor-element.elementor-element-2a2715d .elementor-message.elementor-message-danger{color:#B30000;}.elementor-3267 .elementor-element.elementor-element-2a2715d{--e-form-steps-indicators-spacing:50px;--e-form-steps-indicator-progress-color:#4CEEEB;--e-form-steps-indicator-progress-background-color:#212435;--e-form-steps-indicator-progress-height:16px;--e-form-steps-indicator-progress-border-radius:0px;--e-form-steps-indicator-progress-meter-color:#212435;}/* Start custom CSS for form, class: .elementor-element-2a2715d *//* nblr snipet */
.elementor-form .elementor-field-group-privacidad .elementor-field-option label,
.elementor-form .elementor-field-group-comercial .elementor-field-option label {
  font-size: 16px !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
}



/* Style ONLY the link inside the label */
.elementor-form .elementor-field-group-privacidad .elementor-field-option label a,
.elementor-form .elementor-field-group-comercial .elementor-field-option label a {
  color: #4ceeed !important; /* Turquoise */
  text-decoration: underline !important;
  transition: color 0.25s !important;
}

/* Hover effect for the link */
.elementor-form .elementor-field-group-privacidad .elementor-field-option label a:hover,
.elementor-form .elementor-field-group-comercial .elementor-field-option label a:hover {
  color: #00baba !important; /* Darker turquoise on hover */
}



/* Estilos compartidos para TODOS los inputs de texto/teléfono personalizados */
/* Aseguramos que se aplican a los inputs dentro del formulario de Elementor */
.elementor-form input[type="text"],
.elementor-form input[type="tel"] {
    width: 100%;
    padding: 12px 15px;
    border: 2px solid #ddd;
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 1.5;
    color: #333;
    transition: border-color .25s, box-shadow .25s;
}

/* Estilos para el estado :focus (cuando el usuario hace clic en el campo) */
.elementor-form input[type="text"]:focus,
.elementor-form input[type="tel"]:focus {
    border-color: #4ceeed;
    outline: none;
    box-shadow: 0 0 0 2px rgba(76,238,235,.30);
}

/* Reseteo de borde interno para Firefox */
.elementor-form input[type="text"]::-moz-focus-inner,
.elementor-form input[type="tel"]::-moz-focus-inner {
    border: 0;
}

/* Estilos para el placeholder (el texto gris dentro del campo) */
.elementor-form input[type="text"]::placeholder,
.elementor-form input[type="tel"]::placeholder {
    color: #999;
    opacity: 1;
}
.elementor-form input[type="text"]:-ms-input-placeholder,
.elementor-form input[type="tel"]:-ms-input-placeholder {
    color: #999;
}

/* Asterisco para los campos nativos de Elementor marcados como Required */
.elementor-field-group.elementor-field-required > .elementor-field-label::after{
    content:" *";
    color:#e01b24;
    margin-left:4px;
    font-weight:700;
}

/* Asterisco para tus títulos personalizados (h3) */
h3[data-req="1"]::after{
    content:" *";
    color:#e01b24;
    margin-left:4px;
    font-weight:700;
}

/* Estilo de error reutilizable: Aplica el borde rojo y el fondo al elemento/contenedor */
.st-error{
    border-color:#e01b24 !important;
    background:#ffecec !important; /* Fondo suave para el error */
    box-shadow:0 0 0 2px rgba(224,27,36,.12) !important;
}

/* Estilo del mensaje de error: Cómo se ve el texto informativo */
.st-error-msg{
    color:#e01b24; /* Color rojo para el texto */
    font-size:13px; /* Tamaño de fuente más pequeño */
    margin-top:6px; /* Espacio superior para separarlo del campo */
    width: 100%; /* Ocupa todo el ancho disponible */
    text-align: left; /* Alinea el texto a la izquierda */
}
.consumo-block {
  overflow: hidden;
  transition: max-height 0.5s ease, opacity 0.5s ease;
  max-height: 1000px;
  opacity: 1;
}

.consumo-block.is-hidden {
  max-height: 0;
  opacity: 0;
  pointer-events: none;
}


/* ─────────────────────────────────────────────────────────
   Aceptaciones PRIVACIDAD y COMERCIAL (texto pequeño, mismo estilo)
   ───────────────────────────────────────────────────────── */
.elementor-form .elementor-field-group-privacidad,
.elementor-form .elementor-field-group-comercial {
  margin-top: 8px;
}

.elementor-form .elementor-field-group-privacidad .elementor-field-subgroup,
.elementor-form .elementor-field-group-comercial .elementor-field-subgroup {
  margin-top: 0;
}

.elementor-form .elementor-field-group-privacidad .elementor-field-option,
.elementor-form .elementor-field-group-comercial .elementor-field-option {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.elementor-form .elementor-field-group-privacidad .elementor-field-option input[type="checkbox"],
.elementor-form .elementor-field-group-comercial .elementor-field-option input[type="checkbox"] {
  margin-top: 3px;
  min-width: 18px;
  min-height: 18px;
}

.elementor-form .elementor-field-group-privacidad .elementor-field-option label,
.elementor-form .elementor-field-group-comercial .elementor-field-option label {
  font-size: 18px;   /* texto más pequeño */
  line-height: 1.3;
  color: #ffffff;!important;
  font-weight: 400;
}

/* Accesibilidad teclado */
.elementor-form .elementor-field-group-privacidad input[type="checkbox"]:focus + label,
.elementor-form .elementor-field-group-comercial input[type="checkbox"]:focus + label {
  outline: 0;
  box-shadow: 0 0 0 2px rgba(76, 238, 235, .30);
  border-radius: 6px;
}

/* OPCIONAL: poner asterisco cuando sean required */

.elementor-form .elementor-field-group-privacidad > .elementor-field-label {
  display: none;
}

.elementor-form .elementor-field-group-privacidad.elementor-field-required .elementor-field-option label::after{
  content: " *";
  color: #e01b24;
  margin-left: 4px;
  font-weight: 700;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-52ced0b *//* Oculta mensaje y campos al aparecer la confirmación ✓ */
#wrapper_cuestionario .elementor-message-success,
#wrapper_cuestionario .elementor-message-success + .elementor-form-fields-wrapper{
  display:none !important;
}/* End custom CSS */