.elementor-171 .elementor-element.elementor-element-65ec211{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-171 .elementor-element.elementor-element-cb62c4d{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-171 .elementor-element.elementor-element-ada71d2{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-a3f1c2b *//* Wrapper general del form Elementor */
.ch-form-wrap .elementor-widget-form,
.ch-form-wrap .elementor-form,
.ch-form-wrap .e-form {
  background: transparent !important;
  padding: 0 !important;
}

/* Filas del formulario */
.ch-form-wrap .elementor-field-group {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  margin-bottom: 1rem !important;
  padding: 0 !important;
}

/* Labels */
.ch-form-wrap .elementor-field-label,
.ch-form-wrap label {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #4D6A80 !important;
  margin-bottom: 0.45rem !important;
  display: block !important;
}

/* Inputs, textarea, select */
.ch-form-wrap .elementor-field-textual,
.ch-form-wrap input[type="text"],
.ch-form-wrap input[type="email"],
.ch-form-wrap input[type="tel"],
.ch-form-wrap input[type="number"],
.ch-form-wrap input[type="url"],
.ch-form-wrap textarea,
.ch-form-wrap select {
  width: 100% !important;
  background: #09141E !important;
  border: 1px solid rgba(0,212,232,0.08) !important;
  border-radius: 1px !important;
  color: #EDF2F7 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  padding: 0.875rem 1rem !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
  outline: none !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
}

/* Focus */
.ch-form-wrap .elementor-field-textual:focus,
.ch-form-wrap input[type="text"]:focus,
.ch-form-wrap input[type="email"]:focus,
.ch-form-wrap input[type="tel"]:focus,
.ch-form-wrap input[type="number"]:focus,
.ch-form-wrap input[type="url"]:focus,
.ch-form-wrap textarea:focus,
.ch-form-wrap select:focus {
  border-color: #00D4E8 !important;
  box-shadow: 0 0 0 2px rgba(0,212,232,0.06) !important;
}

/* Placeholder */
.ch-form-wrap ::placeholder {
  color: #4D6A80 !important;
  opacity: 1 !important;
}

/* Textarea altura mínima */
.ch-form-wrap textarea.elementor-field-textual,
.ch-form-wrap textarea {
  min-height: 140px !important;
  resize: vertical !important;
}

/* Select — flecha custom */
.ch-form-wrap select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%234D6A80' stroke-width='1.2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 1rem center !important;
  padding-right: 2.5rem !important;
  cursor: pointer !important;
}

/* Checkbox / Radio */
.ch-form-wrap .elementor-field-type-checkbox .elementor-field-option,
.ch-form-wrap .elementor-field-type-radio .elementor-field-option {
  display: flex !important;
  align-items: center !important;
  gap: 0.6rem !important;
  color: #8DA8BC !important;
  font-size: 0.875rem !important;
  margin-bottom: 0.4rem !important;
  cursor: pointer !important;
}
.ch-form-wrap input[type="checkbox"],
.ch-form-wrap input[type="radio"] {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  padding: 0 !important;
  accent-color: #00D4E8 !important;
  border: 1px solid rgba(0,212,232,0.18) !important;
  background: #09141E !important;
}

/* Mensaje de error de campo */
.ch-form-wrap .elementor-message.elementor-message-danger,
.ch-form-wrap .e-form__messages__error {
  font-size: 0.72rem !important;
  color: #f87171 !important;
  margin-top: 0.3rem !important;
  letter-spacing: 0.03em !important;
}

/* Botón submit */
.ch-form-wrap .elementor-button,
.ch-form-wrap button[type="submit"],
.ch-form-wrap input[type="submit"] {
  width: 100% !important;
  background: #00D4E8 !important;
  color: #09141E !important;
  border: 1px solid #00D4E8 !important;
  border-radius: 1px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 0.95rem 2rem !important;
  cursor: pointer !important;
  transition: background 0.25s ease, color 0.25s ease !important;
  box-shadow: none !important;
  margin-top: 0.5rem !important;
}
.ch-form-wrap .elementor-button:hover,
.ch-form-wrap button[type="submit"]:hover,
.ch-form-wrap input[type="submit"]:hover {
  background: #09141E !important;
  color: #00D4E8 !important;
}

/* Icono dentro del botón Elementor (si lo hay) */
.ch-form-wrap .elementor-button .elementor-button-icon {
  color: inherit !important;
}

/* Mensajes de estado post-envío */
.ch-form-wrap .elementor-message.elementor-message-success {
  background: rgba(0,212,232,0.07) !important;
  border: 1px solid rgba(0,212,232,0.2) !important;
  color: #00D4E8 !important;
  font-size: 0.875rem !important;
  padding: 1rem 1.25rem !important;
  border-radius: 1px !important;
}
.ch-form-wrap .elementor-message.elementor-message-danger {
  background: rgba(248,113,113,0.07) !important;
  border: 1px solid rgba(248,113,113,0.2) !important;
  color: #f87171 !important;
  font-size: 0.875rem !important;
  padding: 1rem 1.25rem !important;
  border-radius: 1px !important;
}

/* Spinner de carga del botón */
.ch-form-wrap .e-form__spinner svg {
  fill: #09141E !important;
}

/* Alinear labels a la izquierda */
.ch-form-wrap .elementor-field-label,
.ch-form-wrap label {
  text-align: left !important;
}

/* Por si Elementor centra el wrapper del campo */
.ch-form-wrap .elementor-field-group {
  text-align: left !important;
  align-items: flex-start !important;
}/* End custom CSS */