.elementor-15279 .elementor-element.elementor-element-7234cbc{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-7234cbc:not(.elementor-motion-effects-element-type-background), .elementor-15279 .elementor-element.elementor-element-7234cbc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EFF6FF;}.elementor-15279 .elementor-element.elementor-element-7234cbc, .elementor-15279 .elementor-element.elementor-element-7234cbc::before{--border-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-ddb3515.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-ed34b60{--display:flex;--min-height:20px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-ed34b60:not(.elementor-motion-effects-element-type-background), .elementor-15279 .elementor-element.elementor-element-ed34b60 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}.elementor-15279 .elementor-element.elementor-element-ed34b60, .elementor-15279 .elementor-element.elementor-element-ed34b60::before{--border-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-2b17d0f{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--background-transition:0.3s;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:35px;--padding-bottom:35px;--padding-left:0px;--padding-right:0px;}.elementor-15279 .elementor-element.elementor-element-2b17d0f:not(.elementor-motion-effects-element-type-background), .elementor-15279 .elementor-element.elementor-element-2b17d0f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, var( --e-global-color-accent ) 0%, var( --e-global-color-primary ) 100%);}.elementor-15279 .elementor-element.elementor-element-2b17d0f, .elementor-15279 .elementor-element.elementor-element-2b17d0f::before{--border-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-9c0fbc6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--background-transition:0.3s;--border-radius:20px 20px 20px 20px;--padding-top:35px;--padding-bottom:35px;--padding-left:35px;--padding-right:35px;}.elementor-15279 .elementor-element.elementor-element-9c0fbc6:not(.elementor-motion-effects-element-type-background), .elementor-15279 .elementor-element.elementor-element-9c0fbc6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-15279 .elementor-element.elementor-element-9c0fbc6, .elementor-15279 .elementor-element.elementor-element-9c0fbc6::before{--border-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-bef599d.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-field-group.recaptcha_v3-bottomleft, .elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-field-type-html{padding-bottom:0px;}.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-field-group:not(.elementor-field-type-upload) .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-15279 .elementor-element.elementor-element-2c80acc .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-button[type="submit"]{color:#ffffff;}.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-15279 .elementor-element.elementor-element-2c80acc .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-15279 .elementor-element.elementor-element-2c80acc .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-15279 .elementor-element.elementor-element-2c80acc .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-15279 .elementor-element.elementor-element-2c80acc{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;width:var( --container-widget-width, 105.4% );max-width:105.4%;--container-widget-width:105.4%;--container-widget-flex-grow:0;}.elementor-15279 .elementor-element.elementor-element-2c80acc.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-15279 .elementor-element.elementor-element-2c80acc.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-f860a87.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-74fe457.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-19f6ddc.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-513e79d{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-end;--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-f4aefb3.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-dedf813{--display:flex;--min-height:20px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-dedf813:not(.elementor-motion-effects-element-type-background), .elementor-15279 .elementor-element.elementor-element-dedf813 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-15279 .elementor-element.elementor-element-dedf813, .elementor-15279 .elementor-element.elementor-element-dedf813::before{--border-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-080c12c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--background-transition:0.3s;--margin-top:-10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15279 .elementor-element.elementor-element-302fb9e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-9a87b43{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-03ef05d.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-e5a6583{--display:flex;--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-24ed38a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-a84572b{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-f1a2f6f.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-f10a0f5{--display:flex;--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-d6d2401{--divider-border-style:solid;--divider-color:var( --e-global-color-accent );--divider-border-width:1px;}.elementor-15279 .elementor-element.elementor-element-d6d2401 .elementor-divider-separator{width:100%;}.elementor-15279 .elementor-element.elementor-element-d6d2401 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-15279 .elementor-element.elementor-element-d6d2401.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-14e6b10{--display:flex;--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-0a0ccf6{color:#142349;font-family:"Poppins", Sans-serif;font-size:11px;font-weight:200;}.elementor-15279 .elementor-element.elementor-element-0a0ccf6.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-74f40c4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;}.elementor-15279 .elementor-element.elementor-element-3c52733.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-40eebc4.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-15279 .elementor-element.elementor-element-323790a.xpro-widget-bg-overlay:before{transition:background 0.3s;}.eael-ext-scroll-to-top-wrap .eael-ext-scroll-to-top-button{bottom:15px;right:15px;width:50px;height:50px;z-index:9999;opacity:0.93;background-color:#0B72E8;border-radius:5px;}.eael-ext-scroll-to-top-wrap .eael-ext-scroll-to-top-button i{font-size:16px;color:#ffffff;}.eael-ext-scroll-to-top-wrap .eael-ext-scroll-to-top-button svg{width:16px;height:16px;fill:#ffffff;}body.elementor-page-15279:not(.elementor-motion-effects-element-type-background), body.elementor-page-15279 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#167EFD08;}@media(max-width:767px){.elementor-15279 .elementor-element.elementor-element-f1a2f6f img{max-width:30%;}}@media(min-width:768px){.elementor-15279 .elementor-element.elementor-element-9c0fbc6{--width:50%;}.elementor-15279 .elementor-element.elementor-element-513e79d{--width:50%;}.elementor-15279 .elementor-element.elementor-element-9a87b43{--width:19%;}.elementor-15279 .elementor-element.elementor-element-e5a6583{--width:47%;}.elementor-15279 .elementor-element.elementor-element-a84572b{--width:19%;}.elementor-15279 .elementor-element.elementor-element-f10a0f5{--width:47%;}}/* Start custom CSS for form, class: .elementor-element-2c80acc *//* ===== Estilo general del formulario ===== */
.form-azul .elementor-form {
  --azul:#167EFD;
  --texto:#0f172a;
  --borde:#E2E8F0;
  --bg:#F7F8FC;
  --muted:#9CA3AF;
}

/* Separación entre campos */
.form-azul .elementor-form .elementor-field-group {
  margin-bottom: 14px;
}

/* Labels azules como la referencia */
.form-azul .elementor-form .elementor-field-label {
  color: var(--azul);
  font-weight: 600;
  margin-bottom: 4px;
}

/* Inputs, selects y textarea: fondo claro, borde suave y esquinas redondeadas */
.form-azul .elementor-form .elementor-field,
.form-azul .elementor-form select,
.form-azul .elementor-form textarea {
  background: var(--bg);
  border: 1.5px solid var(--borde);
  border-radius: 10px;
  color: var(--texto);
  height: 42px;                 /* textarea lo ajustamos abajo */
  padding: 10px 14px;
  box-shadow: none;
  outline: none;
}

/* Placeholder gris */
.form-azul .elementor-form .elementor-field::placeholder,
.form-azul .elementor-form textarea::placeholder {
  color: var(--muted);
}

/* Focus azul */
.form-azul .elementor-form .elementor-field:focus,
.form-azul .elementor-form select:focus,
.form-azul .elementor-form textarea:focus {
  border-color: var(--azul);
  box-shadow: 0 0 0 3px rgba(22,126,253,.12);
}

/* Altura para textarea */
.form-azul .elementor-form textarea.elementor-field-textual {
  min-height: 100px;
  height: auto;
  resize: vertical;
}

/* Select con flecha nativa, mismo look que input */
.form-azul .elementor-form .elementor-select-wrapper select {
  background: var(--bg);
  border: 1.5px solid var(--borde);
  border-radius: 10px;
}

/* Texto informativo dentro del formulario (tu párrafo azul) */
.form-azul .elementor-form p,
.form-azul .elementor-form .elementor-field-description {
  color: var(--azul);
  font-weight: 500;
  margin: 6px 0 10px;
}

/* Aceptación: checkbox + textos en azul */
.form-azul .elementor-form .elementor-field-type-acceptance label {
  color: var(--azul) !important;
  font-weight: 600;
}

.form-azul .elementor-form .elementor-field-type-acceptance a {
  color: var(--azul);
  text-decoration: underline;
}

/* Botón full width estilo primario */
.form-azul .elementor-form .elementor-field-type-submit .elementor-button {
  width: 100%;
  background: #1F6FFF;
  color: #fff;
  border-radius: 10px;
  padding: 12px 20px;
  font-weight: 700;
  transition: transform .05s ease, box-shadow .15s ease;
  box-shadow: 0 8px 16px rgba(31,111,255,.18);
}

.form-azul .elementor-form .elementor-field-type-submit .elementor-button:hover {
  box-shadow: 0 10px 18px rgba(31,111,255,.22);
  color:#fff;
}

.form-azul .elementor-form .elementor-field-type-submit .elementor-button:active {
  transform: translateY(1px);
}

/* Validación simple (opcional). Actívala agregando la clase 'validacion-activa' al <form> por JS si quieres bordes rojos. */
.form-azul .elementor-form.validacion-activa .elementor-field[required]:invalid,
.form-azul .elementor-form.validacion-activa select[required]:invalid,
.form-azul .elementor-form.validacion-activa textarea[required]:invalid {
  border: 2px solid #E02424 !important;
}

/* Ajustes de spacing para dos columnas en desktop (usa Column width 50% en Elementor) */
@media (min-width: 769px){
  .form-azul .elementor-form .elementor-field-group {
    padding-right: 8px;
  }
  .form-azul .elementor-form .elementor-field-group:nth-child(2n) {
    padding-right: 0;
    padding-left: 8px;
  }
}

/* Quita márgenes/sombras del tema que puedan interferir */
.form-azul .elementor-form .elementor-message,
.form-azul .elementor-message--view {
  box-shadow: none;
}

.elementor-15279 .elementor-element.elementor-element-2c80acc .select-caret-down-wrapper,
.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-select-wrapper::after,
.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-select-wrapper::before{ display:none !important; }

.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-select-wrapper select{
  -webkit-appearance:auto !important;
  appearance:auto !important;
  background-image:none !important;
  padding-right:12px !important;
  height:44px; line-height:44px; box-sizing:border-box;
}

.elementor-15279 .elementor-element.elementor-element-2c80acc .elementor-select-wrapper{ overflow:visible !important; border-radius:10px; }
/* === Alinear todos los contenedores (quita el “diente de sierra”) === */
.form-azul .elementor-form .elementor-field-group{
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-bottom: 12px;             /* separación vertical uniforme */
}

/* Si tenías la regla que alternaba padding por nth-child, la anulamos */
@media (min-width: 769px){
  .form-azul .elementor-form .elementor-field-group:nth-child(2n){
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* Asegura que los campos llenen su contenedor y no “salten” */
.form-azul .elementor-form .elementor-form-fields-wrapper{
  display: flex;            /* Elementor ya usa flex; reforzamos */
  flex-wrap: wrap;
  gap: 12px 0;              /* espacio vertical sin empujar a los lados */
  align-items: stretch;     /* todos a la misma altura */
}

.form-azul .elementor-form .elementor-field-group .elementor-field,
.form-azul .elementor-form .elementor-select-wrapper select{
  width: 100%;
  box-sizing: border-box;
}
/* --- Quitar borde/fondo al WRAPPER del select (causa del doble contenedor) --- */
.form-azul .elementor-form .elementor-select-wrapper.elementor-field{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;  /* el radio se lo damos al select, no al wrapper */
  overflow: visible !important;
}

/* --- El SELECT toma todo el ancho y recibe el estilo de "pastilla" --- */
.form-azul .elementor-form .elementor-select-wrapper select{
  display: block;
  width: 100% !important;
  height: 44px;
  line-height: 44px;
  box-sizing: border-box;

  /* mismo look que tus inputs */
  background: #F7F8FC;
  border: 1.5px solid #E2E8F0;
  border-radius: 10px;
  padding: 10px 14px;
  padding-right: 44px !important; /* espacio para el caret, si lo usas */
}

/* --- Si aún usas el caret de Elementor, mantenlo dentro del campo --- */
.form-azul .elementor-form .elementor-select-wrapper .select-caret-down-wrapper{
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 18px !important; height: 18px !important;
  background: transparent !important; box-shadow: none !important; border: 0 !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
.form-azul .elementor-form .elementor-select-wrapper .select-caret-down-wrapper i{
  font-size: 14px !important; color: #667085 !important;
}

/* ===== Botonera de pasos (Anterior / Enviar) ===== */
.form-azul .e-form__buttons {
  display: flex !important;
  gap: 12px;                 /* espacio entre botones */
  margin-top: 10px;
}

.form-azul .e-form__buttons__wrapper__button {
  flex: 1 1 0;               /* que ambos midan lo mismo */
}

/* Estilo unificado para ambos botones */
.form-azul .e-form__buttons .elementor-button {
  width: 100%;
  height: 48px;
  line-height: 48px;
  padding: 0 20px;
  border-radius: 12px;
  font-weight: 700;
  box-shadow: 0 8px 16px rgba(31,111,255,.18);
  transition: transform .05s ease, box-shadow .15s ease;
}

/* Primario (Enviar) */
.form-azul .e-form__buttons .elementor-button[type="submit"]{
  background:#1F6FFF;
  color:#fff;
  border:0;
}
.form-azul .e-form__buttons .elementor-button[type="submit"]:hover{
  box-shadow: 0 10px 18px rgba(31,111,255,.22);
}

/* Secundario (Anterior) – estilo outline azul */
.form-azul .e-form__buttons .elementor-button--previous{
  background: #eaf1ff;                /* fondo suave */
  color:#1F6FFF;
  border:1.5px solid #1F6FFF;
  box-shadow:none;
}
.form-azul .e-form__buttons .elementor-button--previous:hover{
  background:#dce8ff;
}

/* En móviles puedes apilarlos si prefieres */
@media (max-width: 480px){
  .form-azul .e-form__buttons{
    flex-direction: column;
    gap: 10px;
  }
}

/* Centrar verticalmente el texto de los botones del formulario */
.form-azul .e-form__buttons .elementor-button{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 48px;
  padding: 0 20px !important;
  line-height: 1 !important;     /* evita que el texto “caiga” hacia abajo */
  box-sizing: border-box;
}

/* Asegura que el wrapper interno no desplace el texto */
.form-azul .e-form__buttons .elementor-button .elementor-button-content-wrapper{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100%;
}

.form-azul .e-form__buttons .elementor-button .elementor-button-text,
.form-azul .e-form__buttons .elementor-button .elementor-button-icon{
  line-height: 1 !important;
}
/* Por defecto: texto gris en los selects (como placeholder) */
.form-azul .elementor-select-wrapper select{
  color:#d3d7dc !important;     /* gris */
  font-weight:300 !important;
}

/* Cuando el select tiene una opción válida elegida → texto oscuro */
.form-azul .elementor-select-wrapper select.has-value{
  color:#d3d7dc !important;
  font-weight:300 !important;
}


/*Antes e diseño */

.elementor-form .e-form__indicators {
  display: none !important;
}

.custom-progress-wrapper {
  text-align: center;
  margin-bottom: 20px;
  font-family: 'Poppins', sans-serif;
}

.custom-progress-text .step-text {
  font-size: 14px;
  color: #0B5CFF;
  font-weight: 600;
}

.custom-progress-bar {
  width: 160px;
  height: 6px;
  background-color: #e5e5e5;
  border-radius: 5px;
  margin: 10px auto 0;
  overflow: hidden;
}

.bar-fill {
  height: 100%;
  width: 50%; /* se actualizará por JS */
  background-color: #0B5CFF;
  transition: width 0.3s ease;
}

/* Ocultar pasos por defecto de Elementor */
.elementor-form .e-form__indicators {
  display: none !important;
}
/* Bordes Rojos*/
/* Estado neutro */
.elementor-form .elementor-field,
.elementor-form select,
.elementor-form textarea { border-color:#dcdfe6; }

/* Rojo cuando falte completar (tras intentar enviar) */
.elementor-form.was-validated .elementor-field:invalid,
.elementor-form .elementor-field.user-invalid,
.elementor-form.was-validated select:invalid,
.elementor-form.was-validated textarea:invalid {
  border-color:#e53935 !important;
  box-shadow:0 0 0 1px rgba(229,57,53,.15);
}

/* Radios / checkboxes */
.elementor-form .elementor-field-type-radio .user-invalid + label,
.elementor-form .elementor-field-type-acceptance .user-invalid + label { color:#e53935; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c0fbc6 *//* Contenedor del indicador */
.e-form__indicators {
  margin-bottom: 20px; /* espacio debajo */
  text-align: center;
}

/* Texto "Paso 1 de 2" */
.e-form__indicators__header {
  font-weight: 600;
  font-size: 14px;
  color: #00b36e; /* verde */
  margin-bottom: 6px;
}

/* Barra de progreso */
.e-form__indicators__progress {
  height: 4px;
  border-radius: 4px;
  overflow: hidden;
  background-color: #e5e7eb; /* gris claro */
}

/* Parte activa (relleno) */
.e-form__indicators__progress__bar {
  background-color: #00b36e; /* verde */
  transition: width .3s ease;
}

/* Título debajo */
.e-form__indicators__title {
  margin-top: 12px;
  font-size: 15px;
  font-weight: 600;
  color: #004d40; /* verde oscuro */
}/* End custom CSS */