.elementor-431 .elementor-element.elementor-element-add529a{--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;--padding-top:5%;--padding-bottom:5%;--padding-left:5%;--padding-right:5%;}.elementor-431 .elementor-element.elementor-element-add529a:not(.elementor-motion-effects-element-type-background), .elementor-431 .elementor-element.elementor-element-add529a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-1714a75 );}.elementor-431 .elementor-element.elementor-element-341cca1{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );text-decoration:var( --e-global-typography-primary-text-decoration );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-431 .elementor-element.elementor-element-3c38e4d{width:100%;max-width:100%;text-align:center;}.elementor-431 .elementor-element.elementor-element-3c38e4d .elementor-heading-title{font-family:var( --e-global-typography-79acf08-font-family ), Sans-serif;font-size:var( --e-global-typography-79acf08-font-size );font-weight:var( --e-global-typography-79acf08-font-weight );text-transform:var( --e-global-typography-79acf08-text-transform );font-style:var( --e-global-typography-79acf08-font-style );text-decoration:var( --e-global-typography-79acf08-text-decoration );line-height:var( --e-global-typography-79acf08-line-height );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-431 .elementor-element.elementor-element-f3b1ee5{width:var( --container-widget-width, 584px );max-width:584px;--container-widget-width:584px;--container-widget-flex-grow:0;text-align:center;color:var( --e-global-color-507f85b );}.elementor-431 .elementor-element.elementor-element-d7f14f9{width:100%;max-width:100%;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder__label{text-align:left;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder__desc{text-align:left;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder__fields-group{gap:0.7em 0.7em;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder__field-wrap.checkradio-wrap span{gap:8px;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder input{color-scheme:normal;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder-repeater__row-remove{align-self:flex-start;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder .jet-apb-calendar-slots__close{font-size:35px;top:10px;right:10px;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder__action-button{transition:all 0.3s;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder__next-page-wrap{text-align:left;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder-message--success{text-align:center;}.elementor-431 .elementor-element.elementor-element-d7f14f9 .jet-form-builder-message--error{text-align:center;}@media(min-width:768px){.elementor-431 .elementor-element.elementor-element-341cca1{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-431 .elementor-element.elementor-element-341cca1{--width:100%;}}@media(max-width:1024px){.elementor-431 .elementor-element.elementor-element-add529a{--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;--padding-top:8%;--padding-bottom:8%;--padding-left:8%;--padding-right:8%;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-431 .elementor-element.elementor-element-3c38e4d{width:100%;max-width:100%;text-align:center;}.elementor-431 .elementor-element.elementor-element-3c38e4d .elementor-heading-title{font-size:var( --e-global-typography-79acf08-font-size );line-height:var( --e-global-typography-79acf08-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-431 .elementor-element.elementor-element-f3b1ee5{width:100%;max-width:100%;text-align:center;}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-431 .elementor-element.elementor-element-3c38e4d .elementor-heading-title{font-size:var( --e-global-typography-79acf08-font-size );line-height:var( --e-global-typography-79acf08-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}/* Start custom CSS for jet-form-builder-form, class: .elementor-element-d7f14f9 *//*
 * ============================================================
 * JETFORMBUILDER — ESTILO FINAL SEGURO, ACCESIBLE Y COMPACTO
 * ============================================================
 *
 * IMPORTANTE:
 * Este CSS no modifica display, position ni visibilidad de:
 * - .jet-form-builder-page
 * - bloques condicionales
 * - botones de navegación
 *
 * De esta forma no interfiere con el JavaScript de JetFormBuilder.
 *
 * Paleta:
 * Verde marca:  #218A32
 * Verde oscuro: #146B25
 * Borde:        #E5E7EB
 */

/* ============================================================
   1. VARIABLES Y CONTENEDOR
   ============================================================ */

.jet-form-builder {
  --jf-primary: #218A32;
  --jf-primary-dark: #146B25;
  --jf-primary-soft: #EEF8F0;
  --jf-primary-border: #A8D5B0;

  --jf-text: #1F2937;
  --jf-heading: #111827;
  --jf-muted: #5F6B7A;
  --jf-placeholder: #7C8798;

  --jf-border: #E5E7EB;
  --jf-border-strong: #CBD1D8;
  --jf-surface: #FFFFFF;
  --jf-surface-soft: #F8FAF9;

  --jf-error: #B42318;
  --jf-error-soft: #FEF3F2;
  --jf-success: #146B25;

  width: min(100%, 1000px);
  margin: 24px auto;
  padding: clamp(22px, 3.5vw, 44px);

  color: var(--jf-text);
  background: var(--jf-surface);
  border: 1px solid var(--jf-border);
  border-radius: 20px;
  box-shadow: 0 16px 45px rgba(17, 24, 39, 0.08);

  font-family: Inter, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.55;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.jet-form-builder,
.jet-form-builder *,
.jet-form-builder *::before,
.jet-form-builder *::after {
  box-sizing: border-box;
}

/* ============================================================
   2. INDICADOR DE PASOS
   ============================================================ */

/* Oculta únicamente indicadores secundarios */
.jet-form-builder .jet-form-builder-progress-bar,
.jet-form-builder .jet-form-builder-progress-bar-wrapper,
.jet-form-builder .jet-form-builder__progress,
.jet-form-builder .jet-form-builder__progress-bar,
.jet-form-builder .jet-form-builder-page__break .jet-form-builder-progress-pages,
.jet-form-builder .jet-form-builder__navigation .jet-form-builder-progress-pages,
.jet-form-builder .jet-form-builder__next-page-wrap .jet-form-builder-progress-pages,
.jet-form-builder .jet-form-builder__prev-page-wrap .jet-form-builder-progress-pages {
  display: none !important;
}

/* Indicador principal */
.jet-form-builder > .jet-form-builder-progress-pages,
.jet-form-builder form > .jet-form-builder-progress-pages {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 8px !important;

  width: 100% !important;
  margin: 0 0 30px !important;
  padding: 4px 2px 8px !important;

  overflow-x: auto !important;
  overflow-y: hidden !important;
  list-style: none !important;
  counter-reset: jf-step !important;
  scrollbar-width: thin;
  scrollbar-color: var(--jf-primary-border) transparent;
}

/* Paso individual */
.jet-form-builder .jet-form-builder-progress-pages__item {
  position: relative !important;
  display: block !important;
  flex: 1 1 12.5% !important;
  min-width: 64px !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;

  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-align: center !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  counter-increment: jf-step !important;
}

/* Oculta el contenido nativo duplicado */
.jet-form-builder .jet-form-builder-progress-pages__item > * {
  display: none !important;
}

/* Círculo generado por CSS */
.jet-form-builder .jet-form-builder-progress-pages__item::before {
  content: counter(jf-step) !important;
  position: relative !important;
  z-index: 2 !important;

  display: grid !important;
  place-items: center !important;

  width: 38px !important;
  height: 38px !important;
  margin: 0 auto !important;

  color: #596579 !important;
  background: #F3F4F6 !important;
  border: 2px solid var(--jf-border) !important;
  border-radius: 50% !important;

  font-family: Inter, Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

/* Línea entre pasos */
.jet-form-builder .jet-form-builder-progress-pages__item::after {
  content: "" !important;
  position: absolute !important;
  z-index: 1 !important;
  top: 18px !important;
  left: calc(50% + 24px) !important;

  width: calc(100% - 48px) !important;
  height: 2px !important;

  background: var(--jf-border) !important;
}

.jet-form-builder .jet-form-builder-progress-pages__item:last-child::after {
  display: none !important;
}

/* Activo y completado */
.jet-form-builder .jet-form-builder-progress-pages__item--active::before,
.jet-form-builder .jet-form-builder-progress-pages__item.active::before,
.jet-form-builder .jet-form-builder-progress-pages__item.passed::before,
.jet-form-builder .jet-form-builder-progress-pages__item--completed::before {
  color: #FFFFFF !important;
  background: var(--jf-primary) !important;
  border-color: var(--jf-primary) !important;
  box-shadow: 0 0 0 5px var(--jf-primary-soft) !important;
}

.jet-form-builder .jet-form-builder-progress-pages__item.passed::after,
.jet-form-builder .jet-form-builder-progress-pages__item--completed::after {
  background: var(--jf-primary) !important;
}

/* ============================================================
   3. MENSAJES TÉCNICOS
   ============================================================ */

.jet-form-builder .jet-form-builder__next-page-msg,
.jet-form-builder .jet-form-builder__disabled-message,
.jet-form-builder .jet-form-builder-disabled-message,
.jet-form-builder [class*="disabled-message"],
.jet-form-builder [class*="disable-message"] {
  display: none !important;
}

/* ============================================================
   4. ENCABEZADOS Y TEXTOS
   ============================================================ */

.jet-form-builder h1,
.jet-form-builder h2,
.jet-form-builder h3,
.jet-form-builder h4 {
  margin-top: 0;
  color: var(--jf-heading);
  font-weight: 750;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.jet-form-builder h2 {
  margin-bottom: 18px;
  font-size: clamp(26px, 3vw, 34px);
}

.jet-form-builder h3 {
  margin: 24px 0 16px;
  padding-top: 20px;
  font-size: clamp(19px, 2vw, 23px);
  border-top: 1px solid var(--jf-border);
}

.jet-form-builder h4 {
  margin-bottom: 10px;
  font-size: 18px;
}

.jet-form-builder p {
  margin: 0 0 16px;
  color: var(--jf-muted);
  max-width: 76ch;
}

/* ============================================================
   5. ESPACIADO COMPACTO
   ============================================================ */

.jet-form-builder .jet-form-builder-row,
.jet-form-builder .jet-form-builder__field-wrap,
.jet-form-builder .jet-form-builder-field-wrap {
  min-width: 0;
  margin-bottom: 18px;
}

/* Reduce el espacio final dentro de bloques */
.jet-form-builder .jet-form-builder-conditional-block > :last-child,
.jet-form-builder .jet-sm-gb-wrapper > :last-child {
  margin-bottom: 0;
}

/* ============================================================
   6. ETIQUETAS
   ============================================================ */

.jet-form-builder .jet-form-builder__label,
.jet-form-builder .jet-form-builder__label-text,
.jet-form-builder label {
  display: inline-block;
  margin-bottom: 7px;

  color: #2F3A4B;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.4;
}

.jet-form-builder .jet-form-builder__required {
  margin-left: 2px;
  color: var(--jf-primary-dark);
  font-weight: 800;
}

.jet-form-builder .jet-form-builder__desc,
.jet-form-builder .jet-form-builder__description,
.jet-form-builder small {
  display: block;
  margin-top: 6px;
  color: var(--jf-muted);
  font-size: 13px;
  line-height: 1.45;
}

/* ============================================================
   7. CAMPOS
   ============================================================ */

.jet-form-builder input[type="text"],
.jet-form-builder input[type="email"],
.jet-form-builder input[type="tel"],
.jet-form-builder input[type="number"],
.jet-form-builder input[type="date"],
.jet-form-builder input[type="url"],
.jet-form-builder input[type="password"],
.jet-form-builder input[type="search"],
.jet-form-builder select,
.jet-form-builder textarea,
.jet-form-builder .jet-form-builder__field {
  width: 100%;
  min-height: 50px;
  padding: 11px 14px;

  color: var(--jf-text);
  background: #FFFFFF;
  border: 1px solid var(--jf-border);
  border-radius: 9px;
  outline: none;
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.03);

  font: inherit;
  font-size: 16px;
  line-height: 1.4;

  transition:
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    background-color 0.18s ease;
}

.jet-form-builder textarea,
.jet-form-builder textarea.jet-form-builder__field {
  min-height: 96px;
  resize: vertical;
}

.jet-form-builder input::placeholder,
.jet-form-builder textarea::placeholder {
  color: var(--jf-placeholder);
  opacity: 1;
}

.jet-form-builder input:hover,
.jet-form-builder select:hover,
.jet-form-builder textarea:hover,
.jet-form-builder .jet-form-builder__field:hover {
  border-color: var(--jf-border-strong);
}

/* Foco accesible */
.jet-form-builder input:focus-visible,
.jet-form-builder select:focus-visible,
.jet-form-builder textarea:focus-visible,
.jet-form-builder .jet-form-builder__field:focus-visible {
  border-color: var(--jf-primary-dark);
  outline: 3px solid rgba(33, 138, 50, 0.22);
  outline-offset: 1px;
  box-shadow: 0 0 0 1px var(--jf-primary-dark);
}

.jet-form-builder input:disabled,
.jet-form-builder select:disabled,
.jet-form-builder textarea:disabled {
  color: #667085;
  background: #F3F4F6;
  cursor: not-allowed;
  opacity: 0.78;
}

/* ============================================================
   8. RADIO Y CHECKBOX
   ============================================================ */

/*
 * Solo el grupo interno usa grid.
 * No se modifica la página ni el bloque condicional.
 */
.jet-form-builder .jet-form-builder__fields-group {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.jet-form-builder .checkradio-wrap {
  position: relative;
  min-width: 0;
  margin: 0;
}

.jet-form-builder .checkradio-wrap label,
.jet-form-builder label.jet-form-builder__field-label.for-radio,
.jet-form-builder label.jet-form-builder__field-label.for-checkbox {
  display: flex;
  width: 100%;
  min-height: 50px;
  margin: 0;
  padding: 12px 14px;
  align-items: center;
  gap: 10px;

  color: #2F3A4B;
  background: #FFFFFF;
  border: 1px solid var(--jf-border);
  border-radius: 11px;
  cursor: pointer;

  font-size: 15px;
  font-weight: 600;
  line-height: 1.35;

  transition:
    border-color 0.18s ease,
    background-color 0.18s ease,
    box-shadow 0.18s ease;
}

.jet-form-builder .checkradio-wrap label:hover,
.jet-form-builder label.jet-form-builder__field-label.for-radio:hover,
.jet-form-builder label.jet-form-builder__field-label.for-checkbox:hover {
  color: var(--jf-primary-dark);
  background: var(--jf-primary-soft);
  border-color: var(--jf-primary-border);
}

.jet-form-builder input[type="radio"],
.jet-form-builder input[type="checkbox"] {
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  margin: 0;
  flex: 0 0 20px;

  accent-color: var(--jf-primary-dark);
  cursor: pointer;
}

.jet-form-builder .checkradio-wrap:has(input:checked) label,
.jet-form-builder label.jet-form-builder__field-label.for-radio:has(input:checked),
.jet-form-builder label.jet-form-builder__field-label.for-checkbox:has(input:checked) {
  color: var(--jf-primary-dark);
  background: var(--jf-primary-soft);
  border-color: var(--jf-primary);
  box-shadow: 0 0 0 2px rgba(33, 138, 50, 0.12);
}

.jet-form-builder .checkradio-wrap:focus-within label {
  outline: 3px solid rgba(33, 138, 50, 0.24);
  outline-offset: 2px;
  border-color: var(--jf-primary-dark);
}

/* Checkbox y textos largos en una columna */
.jet-form-builder
  .jet-form-builder__field-wrap:has(input[type="checkbox"])
  .jet-form-builder__fields-group,
.jet-form-builder
  .jet-form-builder-row:has(input[type="checkbox"])
  .jet-form-builder__fields-group {
  grid-template-columns: 1fr;
}

/* ============================================================
   9. BLOQUES CONDICIONALES
   ============================================================ */

/*
 * No usar display aquí.
 * JetFormBuilder controla display/hidden mediante JavaScript.
 */
.jet-form-builder .jet-form-builder-conditional-block,
.jet-form-builder .jet-sm-gb-wrapper {
  min-width: 0;
  margin: 8px 0 18px;
  padding: 20px;

  background: var(--jf-surface-soft);
  border: 1px solid var(--jf-primary-border);
  border-radius: 14px;
}

/* ============================================================
   10. BOTONES Y NAVEGACIÓN
   ============================================================ */

/*
 * Sin position: sticky.
 * Sin display forzado en el contenedor de navegación.
 * JetFormBuilder conserva el control total.
 */
.jet-form-builder .jet-form-builder-page__break,
.jet-form-builder .jet-form-builder__navigation {
  margin-top: 26px;
  padding-top: 18px;
  border-top: 1px solid var(--jf-border);
}

/* Oculta anterior solo cuando está deshabilitado */
.jet-form-builder .jet-form-builder__prev-page:disabled,
.jet-form-builder .jet-form-builder__prev-page[disabled] {
  display: none !important;
}

.jet-form-builder .jet-form-builder__next-page,
.jet-form-builder .jet-form-builder__prev-page,
.jet-form-builder .jet-form-builder__submit,
.jet-form-builder button[type="submit"],
.jet-form-builder input[type="submit"] {
  min-width: 126px;
  min-height: 48px;
  padding: 11px 22px;

  border: 1px solid transparent;
  border-radius: 10px;
  cursor: pointer;

  font-family: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;

  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease,
    background-color 0.18s ease,
    border-color 0.18s ease;
}

/* Siguiente y enviar */
.jet-form-builder .jet-form-builder__next-page,
.jet-form-builder .jet-form-builder__submit,
.jet-form-builder button[type="submit"],
.jet-form-builder input[type="submit"] {
  color: #FFFFFF;
  background: var(--jf-primary);
  box-shadow: 0 7px 18px rgba(33, 138, 50, 0.2);
}

.jet-form-builder .jet-form-builder__next-page:hover,
.jet-form-builder .jet-form-builder__submit:hover,
.jet-form-builder button[type="submit"]:hover,
.jet-form-builder input[type="submit"]:hover {
  background: var(--jf-primary-dark);
  box-shadow: 0 9px 22px rgba(20, 107, 37, 0.24);
  transform: translateY(-1px);
}

/* Anterior */
.jet-form-builder .jet-form-builder__prev-page {
  color: #344054;
  background: #FFFFFF;
  border-color: var(--jf-border-strong);
}

.jet-form-builder .jet-form-builder__prev-page:hover {
  color: var(--jf-primary-dark);
  background: var(--jf-primary-soft);
  border-color: var(--jf-primary-border);
}

/* Foco visible */
.jet-form-builder .jet-form-builder__next-page:focus-visible,
.jet-form-builder .jet-form-builder__prev-page:focus-visible,
.jet-form-builder .jet-form-builder__submit:focus-visible,
.jet-form-builder button[type="submit"]:focus-visible,
.jet-form-builder input[type="submit"]:focus-visible {
  outline: 3px solid rgba(33, 138, 50, 0.28);
  outline-offset: 3px;
}

/* Estado deshabilitado */
.jet-form-builder button:disabled,
.jet-form-builder input[type="submit"]:disabled {
  color: #667085;
  background: #E5E7EB;
  border-color: #D0D5DD;
  box-shadow: none;
  cursor: not-allowed;
  opacity: 1;
  transform: none;
}

/* ============================================================
   11. VALIDACIÓN
   ============================================================ */

.jet-form-builder .jet-form-builder__field.error-field,
.jet-form-builder .jet-form-builder__field.is-invalid,
.jet-form-builder input[aria-invalid="true"],
.jet-form-builder select[aria-invalid="true"],
.jet-form-builder textarea[aria-invalid="true"],
.jet-form-builder input:user-invalid,
.jet-form-builder select:user-invalid,
.jet-form-builder textarea:user-invalid {
  background: #FFFFFF;
  border-color: var(--jf-error);
  box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.12);
}

.jet-form-builder .jet-form-builder__field-error,
.jet-form-builder .jet-form-builder__field-error-message,
.jet-form-builder .jet-form-builder__message--error,
.jet-form-builder .jet-form-builder-message--error {
  display: block;
  margin-top: 7px;
  padding: 9px 11px;

  color: var(--jf-error);
  background: var(--jf-error-soft);
  border-left: 3px solid var(--jf-error);
  border-radius: 6px;

  font-size: 14px;
  font-weight: 650;
  line-height: 1.4;
}

.jet-form-builder .jet-form-builder-message--success,
.jet-form-builder .jet-form-builder__message--success {
  padding: 14px 16px;
  color: var(--jf-success);
  background: var(--jf-primary-soft);
  border: 1px solid var(--jf-primary-border);
  border-radius: 10px;
  font-weight: 650;
}

/* ============================================================
   12. TABLET Y MÓVIL
   ============================================================ */

@media (max-width: 767px) {
  .jet-form-builder {
    width: 100%;
    margin: 10px auto;
    padding: 22px 16px 18px;
    border-radius: 14px;
    box-shadow: 0 8px 24px rgba(17, 24, 39, 0.07);
  }

  .jet-form-builder > .jet-form-builder-progress-pages,
  .jet-form-builder form > .jet-form-builder-progress-pages {
    justify-content: flex-start !important;
    margin-bottom: 24px !important;
  }

  .jet-form-builder .jet-form-builder-progress-pages__item {
    flex: 0 0 66px !important;
    min-width: 66px !important;
  }

  .jet-form-builder .jet-form-builder-progress-pages__item::after {
    width: 20px !important;
    left: calc(50% + 24px) !important;
  }

  .jet-form-builder h2 {
    font-size: 25px;
  }

  .jet-form-builder h3 {
    margin-top: 20px;
    padding-top: 18px;
    font-size: 19px;
  }

  .jet-form-builder .jet-form-builder__fields-group {
    grid-template-columns: 1fr;
  }

  .jet-form-builder .jet-form-builder-conditional-block,
  .jet-form-builder .jet-sm-gb-wrapper {
    padding: 16px;
  }

  .jet-form-builder .jet-form-builder__next-page,
  .jet-form-builder .jet-form-builder__prev-page,
  .jet-form-builder .jet-form-builder__submit,
  .jet-form-builder button[type="submit"],
  .jet-form-builder input[type="submit"] {
    width: 100%;
    min-width: 0;
    min-height: 50px;
    margin-top: 8px;
  }
}

/* ============================================================
   13. ALTO CONTRASTE Y MOVIMIENTO REDUCIDO
   ============================================================ */

@media (prefers-contrast: more) {
  .jet-form-builder {
    --jf-border: #B8C0CA;
    --jf-border-strong: #7C8798;
    --jf-muted: #475467;
  }

  .jet-form-builder input,
  .jet-form-builder select,
  .jet-form-builder textarea,
  .jet-form-builder .checkradio-wrap label {
    border-width: 2px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .jet-form-builder *,
  .jet-form-builder *::before,
  .jet-form-builder *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}/* End custom CSS */