.elementor-9115 .elementor-element.elementor-element-79d3fcb{--display:flex;--min-height:0px;--padding-top:10px;--padding-bottom:35px;--padding-left:0px;--padding-right:0px;}.elementor-9115 .elementor-element.elementor-element-b3b474f > .elementor-widget-container{padding:23px 20px 36px 20px;}.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group.recaptcha_v3-bottomleft, .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-html{padding-bottom:0px;}.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-9115 .elementor-element.elementor-element-b3b474f .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-button[type="submit"]{color:#ffffff;}.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-9115 .elementor-element.elementor-element-b3b474f .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-9115 .elementor-element.elementor-element-b3b474f .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-9115 .elementor-element.elementor-element-b3b474f .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-9115 .elementor-element.elementor-element-b3b474f{--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;}.elementor-9115 .elementor-element.elementor-element-ac4523f .elementor-button-content-wrapper{flex-direction:row;}.elementor-9115 .elementor-element.elementor-element-ac4523f .elementor-button .elementor-button-content-wrapper{gap:7px;}#elementor-popup-modal-9115{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-9115 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-9115 .dialog-close-button{display:flex;}#elementor-popup-modal-9115 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}@media(min-width:768px){.elementor-9115 .elementor-element.elementor-element-79d3fcb{--width:80%;}}/* Start custom CSS for form, class: .elementor-element-b3b474f */.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-form {
  display: flex;
  flex-wrap: wrap;
  row-gap: 18px;
  column-gap: 12px;
}

.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
}

/* columnas */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-text.elementor-col-50,
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-tel.elementor-col-50 {
  width: calc(50% - 6px) !important;
}

.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-email,
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select,
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-textarea,
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-submit {
  width: 100% !important;
}

/* darle más aire al email */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-email {
  margin-top: 8px !important;
}

/* darle más aire al textarea antes del botón */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-textarea {
  margin-bottom: 8px !important;
}

/* labels */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group > label {
  color: #1f2d3d;
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 6px !important;
}

/* base de inputs */
.elementor-9115 .elementor-element.elementor-element-b3b474f input.elementor-field,
.elementor-9115 .elementor-element.elementor-element-b3b474f textarea.elementor-field,
.elementor-9115 .elementor-element.elementor-element-b3b474f select.elementor-field {
  width: 100% !important;
  background: #ffffff !important;
  border: 1.5px solid rgba(43, 171, 226, 0.16) !important;
  border-radius: 16px !important;
  color: #1f2d3d !important;
  font-family: 'Poppins', sans-serif;
  font-size: 15px !important;
  font-weight: 500;
  line-height: 1.4;
  box-shadow: none !important;
  outline: none !important;
  transition: all 0.25s ease;
}

/* texto, teléfono, email */
.elementor-9115 .elementor-element.elementor-element-b3b474f input.elementor-field {
  min-height: 52px !important;
  padding: 14px 16px !important;
}

/* textarea */
.elementor-9115 .elementor-element.elementor-element-b3b474f textarea.elementor-field {
  min-height: 138px !important;
  resize: vertical;
  padding: 16px !important;
}

/* wrapper del select */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select {
  position: relative;
}

.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select .elementor-field-group,
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select .elementor-select-wrapper {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* select limpio */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select select.elementor-field {
  min-height: 54px !important;
  height: 54px !important;
  padding: 0 46px 0 16px !important;
  background: #ffffff !important;
  background-image: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
}

/* flecha custom */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select .elementor-select-wrapper::before {
  content: "" !important;
  position: absolute;
  right: 18px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid #1f2d3d;
  border-bottom: 2px solid #1f2d3d;
  transform: translateY(-60%) rotate(45deg);
  pointer-events: none;
}

/* quitar icono default si aparece */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select .elementor-select-wrapper i,
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select .eicon-chevron-down {
  display: none !important;
}

/* placeholders */
.elementor-9115 .elementor-element.elementor-element-b3b474f input.elementor-field::placeholder,
.elementor-9115 .elementor-element.elementor-element-b3b474f textarea.elementor-field::placeholder {
  color: #7d8b97 !important;
  opacity: 1;
}

/* focus */
.elementor-9115 .elementor-element.elementor-element-b3b474f input.elementor-field:focus,
.elementor-9115 .elementor-element.elementor-element-b3b474f textarea.elementor-field:focus,
.elementor-9115 .elementor-element.elementor-element-b3b474f select.elementor-field:focus {
  border-color: #2babe2 !important;
  box-shadow: 0 0 0 4px rgba(43, 171, 226, 0.08) !important;
}

/* botón submit */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-button[type="submit"],
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-button {
  width: 100%;
  min-height: 56px;
  margin-top: 2px !important;
  border: none !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #2babe2 0%, #6ec2b6 100%) !important;
  color: #ffffff !important;
  font-family: 'Poppins', sans-serif;
  font-size: 17px !important;
  font-weight: 700 !important;
  box-shadow: 0 14px 28px rgba(43, 171, 226, 0.18);
  transition: all 0.25s ease;
}

.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 18px 34px rgba(43, 171, 226, 0.22);
}

/* mensajes */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-message {
  margin-top: 12px;
  border-radius: 12px;
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
}

/* móvil */
@media (max-width: 767px) {
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-form {
    row-gap: 12px;
    column-gap: 0;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-text.elementor-col-50,
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-tel.elementor-col-50,
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-email,
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select,
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-textarea,
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-submit {
    width: 100% !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-email {
    margin-top: 4px !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-textarea {
    margin-bottom: 6px !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f input.elementor-field,
  .elementor-9115 .elementor-element.elementor-element-b3b474f select.elementor-field,
  .elementor-9115 .elementor-element.elementor-element-b3b474f textarea.elementor-field {
    font-size: 14px !important;
    border-radius: 14px !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f input.elementor-field,
  .elementor-9115 .elementor-element.elementor-element-b3b474f select.elementor-field {
    min-height: 50px !important;
    height: 50px !important;
    padding-left: 14px !important;
    padding-right: 40px !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f textarea.elementor-field {
    min-height: 120px !important;
    padding: 14px !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select .elementor-select-wrapper::before {
    right: 14px;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-button[type="submit"],
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-button {
    min-height: 52px;
    font-size: 16px !important;
    border-radius: 14px !important;
  }
}





/* =========================================================
   ESPACIADO VERTICAL DEL FORMULARIO
   Pegar al final del CSS actual
========================================================= */

.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-form {
  display: flex;
  flex-wrap: wrap;
  column-gap: 12px !important;
  row-gap: 0 !important;
}

/* Espacio base entre campos */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group {
  margin: 0 0 16px 0 !important;
}

/* Primera fila: nombre y teléfono */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-text.elementor-col-50,
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-tel.elementor-col-50 {
  width: calc(50% - 6px) !important;
  margin-bottom: 16px !important;
}

/* Más aire después del email */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-email {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

/* Más separación después del .elementor-9115 .elementor-element.elementor-element-b3b474f */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select {
  margin-bottom: 22px !important;
}

/* Espacio entre el textarea y el botón */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-textarea {
  margin-bottom: 18px !important;
}

/* Evitar espacio extra debajo del botón */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-submit {
  margin: 0 !important;
}

/* Separación entre cada label y su campo */
.elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group > label {
  display: block;
  margin: 0 0 8px 0 !important;
  line-height: 1.35;
}

/* =========================================================
   AJUSTES PARA MÓVIL
========================================================= */

@media (max-width: 767px) {
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-form {
    column-gap: 0 !important;
    row-gap: 0 !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group {
    margin-bottom: 14px !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-text.elementor-col-50,
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-tel.elementor-col-50,
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-email,
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select,
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-textarea,
  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-submit {
    width: 100% !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-email {
    margin-bottom: 18px !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-select {
    margin-bottom: 18px !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-textarea {
    margin-bottom: 16px !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-type-submit {
    margin-bottom: 0 !important;
  }

  .elementor-9115 .elementor-element.elementor-element-b3b474f .elementor-field-group > label {
    margin-bottom: 7px !important;
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ac4523f */.elementor-9115 .elementor-element.elementor-element-ac4523f .elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 24px;
  border: none !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, #25D366 0%, #1fb857 100%) !important;
  color: #ffffff !important;
  font-family: 'Poppins', sans-serif;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.2;
  box-shadow: 0 10px 22px rgba(37, 211, 102, 0.18);
  transition: all 0.25s ease;
}

.elementor-9115 .elementor-element.elementor-element-ac4523f .elementor-button:hover {
  background: linear-gradient(135deg, #20c55a 0%, #18a94c 100%) !important;
  color: #ffffff !important;
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(37, 211, 102, 0.24);
}

.elementor-9115 .elementor-element.elementor-element-ac4523f .elementor-button .elementor-button-icon {
  margin-right: 8px;
}

.elementor-9115 .elementor-element.elementor-element-ac4523f .elementor-button .elementor-button-text {
  white-space: nowrap;
}

@media (max-width: 767px) {
  .elementor-9115 .elementor-element.elementor-element-ac4523f .elementor-button {
    width: 100%;
    min-height: 52px;
    padding: 0 18px;
    font-size: 15px !important;
    border-radius: 12px !important;
  }
}/* End custom CSS */