.elementor-629 .elementor-element.elementor-element-1587713{--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;--margin-top:80px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-629 .elementor-element.elementor-element-58ae2d3{text-align:center;}.elementor-629 .elementor-element.elementor-element-58ae2d3 .elementor-heading-title{font-family:"Coolvetica", Sans-serif;font-size:42px;font-weight:300;color:#FFFFFF;}.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-629 .elementor-element.elementor-element-7de9c74 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-field-type-html{padding-bottom:0px;}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-629 .elementor-element.elementor-element-7de9c74 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-button[type="submit"]{color:#ffffff;}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-629 .elementor-element.elementor-element-7de9c74 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-629 .elementor-element.elementor-element-7de9c74 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-629 .elementor-element.elementor-element-7de9c74 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-message.elementor-message-success{color:var( --e-global-color-primary );}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-message.elementor-message-danger{color:var( --e-global-color-primary );}.elementor-629 .elementor-element.elementor-element-7de9c74 .elementor-message.elementor-help-inline{color:var( --e-global-color-primary );}.elementor-629 .elementor-element.elementor-element-7de9c74{--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-629 .elementor-element.elementor-element-6e75c2d{--display:flex;--flex-direction:row-reverse;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--justify-content:flex-start;--align-items:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:130px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-629 .elementor-element.elementor-element-cc88a37{--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;--justify-content:space-between;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--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-629 .elementor-element.elementor-element-fe22132{text-align:start;}.elementor-629 .elementor-element.elementor-element-fe22132 .elementor-heading-title{font-family:"Public Sans", Sans-serif;font-size:17px;font-weight:500;color:#6C6D6A;}.elementor-629 .elementor-element.elementor-element-20591d2{--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;--justify-content:space-between;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-629 .elementor-element.elementor-element-68da008 .elementor-button{background-color:#00000000;font-family:"Raleway", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;border-radius:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-629 .elementor-element.elementor-element-68da008{width:initial;max-width:initial;}.elementor-629 .elementor-element.elementor-element-68da008 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-629 .elementor-element.elementor-element-68da008 .elementor-button:hover, .elementor-629 .elementor-element.elementor-element-68da008 .elementor-button:focus{color:var( --e-global-color-primary );}.elementor-629 .elementor-element.elementor-element-68da008 .elementor-button:hover svg, .elementor-629 .elementor-element.elementor-element-68da008 .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-629 .elementor-element.elementor-element-c0beb96 .elementor-button{background-color:#00000000;font-family:"Raleway", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;border-radius:36px 36px 36px 36px;padding:0px 0px 0px 0px;}.elementor-629 .elementor-element.elementor-element-c0beb96{width:initial;max-width:initial;}.elementor-629 .elementor-element.elementor-element-c0beb96 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-629 .elementor-element.elementor-element-c0beb96 .elementor-button:hover, .elementor-629 .elementor-element.elementor-element-c0beb96 .elementor-button:focus{color:var( --e-global-color-primary );}.elementor-629 .elementor-element.elementor-element-c0beb96 .elementor-button:hover svg, .elementor-629 .elementor-element.elementor-element-c0beb96 .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-629 .elementor-element.elementor-element-712a872 .elementor-button{background-color:#00000000;font-family:"Raleway", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;border-radius:36px 36px 36px 36px;padding:0px 0px 0px 0px;}.elementor-629 .elementor-element.elementor-element-712a872{width:initial;max-width:initial;}.elementor-629 .elementor-element.elementor-element-712a872 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-629 .elementor-element.elementor-element-712a872 .elementor-button:hover, .elementor-629 .elementor-element.elementor-element-712a872 .elementor-button:focus{color:var( --e-global-color-primary );}.elementor-629 .elementor-element.elementor-element-712a872 .elementor-button:hover svg, .elementor-629 .elementor-element.elementor-element-712a872 .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-629 .elementor-element.elementor-element-6dfdeb3{--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;--justify-content:space-between;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--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-629 .elementor-element.elementor-element-b24c86d{text-align:start;}.elementor-629 .elementor-element.elementor-element-b24c86d .elementor-heading-title{font-family:"Public Sans", Sans-serif;font-size:17px;font-weight:500;color:#6C6D6A;}.elementor-629 .elementor-element.elementor-element-3435be3{--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;--justify-content:space-between;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-629 .elementor-element.elementor-element-2f18bbb .elementor-button{background-color:#00000000;font-family:"Raleway", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;border-radius:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-629 .elementor-element.elementor-element-2f18bbb{width:initial;max-width:initial;}.elementor-629 .elementor-element.elementor-element-2f18bbb .elementor-button:hover, .elementor-629 .elementor-element.elementor-element-2f18bbb .elementor-button:focus{color:#B09781;}.elementor-629 .elementor-element.elementor-element-2f18bbb .elementor-button:hover svg, .elementor-629 .elementor-element.elementor-element-2f18bbb .elementor-button:focus svg{fill:#B09781;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-629 .elementor-element.elementor-element-6e75c2d{--gap:8px 8px;--row-gap:8px;--column-gap:8px;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(min-width:768px){.elementor-629 .elementor-element.elementor-element-1587713{--content-width:100%;}.elementor-629 .elementor-element.elementor-element-6e75c2d{--content-width:94%;}.elementor-629 .elementor-element.elementor-element-cc88a37{--width:25%;}.elementor-629 .elementor-element.elementor-element-6dfdeb3{--width:20%;}}/* Start custom CSS for form, class: .elementor-element-7de9c74 *//* ============================================
   FORMULARIO ELEMENTOR - LAYOUT 3 FILAS
   Tipografía fluida: 1280px → 1920px
   Colapso: < 1024px en columna única
   Pegar en: Apariencia → Personalizar → CSS adicional
   ============================================ */

/* GRID PRINCIPAL */
.elementor-element-7de9c74 .elementor-form-fields-wrapper {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  grid-template-areas:
    "nombre email"
    "radio  radio"
    "msg    msg" !important;
  row-gap: clamp(24px, 2.5vw, 48px) !important;
  column-gap: 0 !important;
  padding: clamp(32px, 4vw, 80px) clamp(24px, 5vw, 80px) !important;
  background: #000 !important;
  align-items: center !important;
}

/* Ocultar labels */
.elementor-element-7de9c74 .elementor-field-label {
  display: none !important;
}

/* Reset base */
.elementor-element-7de9c74 .elementor-field-group {
  padding: 0 !important;
  margin: 0 !important;
  width: auto !important;
  max-width: none !important;
}

/* ============================================
   FILA 1 — Mi nombre es / Correo electrónico
   ============================================ */

.elementor-element-7de9c74 .elementor-field-group-name {
  grid-area: nombre !important;
  display: flex !important;
  align-items: center !important;
  gap: clamp(12px, 1.5vw, 24px) !important;
  padding-right: clamp(20px, 2vw, 40px) !important;
}

.elementor-element-7de9c74 .elementor-field-group-name::before {
  content: "Mi nombre es:";
  color: #fff;
  font-size: clamp(28px, 2.5vw + 4px, 48px);
  font-weight: 300;
  font-family: 'Public Sans', sans-serif;
  white-space: nowrap;
  flex-shrink: 0;
  line-height: 1;
}

.elementor-element-7de9c74 .elementor-field-group-email {
  grid-area: email !important;
  display: flex !important;
  align-items: center !important;
  gap: clamp(12px, 1.5vw, 24px) !important;
}

.elementor-element-7de9c74 .elementor-field-group-email::before {
  content: "Correo electrónico:";
  color: #fff;
  font-size: clamp(28px, 2.5vw + 4px, 48px);
  font-weight: 300;
  font-family: 'Public Sans', sans-serif;
  white-space: nowrap;
  flex-shrink: 0;
  line-height: 1;
}

.elementor-element-7de9c74 .elementor-field-group-name input,
.elementor-element-7de9c74 .elementor-field-group-email input {
  flex: 1 !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #444 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
  font-size: clamp(14px, 0.5vw + 6px, 18px) !important;
  font-family: 'Public Sans', sans-serif !important;
  padding: 8px 0 !important;
  outline: none !important;
  width: 100% !important;
  height: auto !important;
}

.elementor-element-7de9c74 .elementor-field-group-name input::placeholder,
.elementor-element-7de9c74 .elementor-field-group-email input::placeholder {
  color: #666 !important;
  font-family: 'Public Sans', sans-serif !important;
  font-size: clamp(14px, 0.5vw + 6px, 18px) !important;
}

/* ============================================
   FILA 2 — Me interesa (75%) + otra opción (25%)
   ============================================ */

.elementor-element-7de9c74 .elementor-field-group-field_b5bbe86 {
  grid-area: radio !important;
  width: 75% !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: clamp(10px, 1.5vw, 24px) !important;
  flex-wrap: nowrap !important;
}

.elementor-element-7de9c74 .elementor-field-group-field_b5bbe86::before {
  content: "Me interesa:";
  color: #fff;
  font-size: clamp(28px, 2.5vw + 4px, 48px);
  font-weight: 300;
  font-family: 'Public Sans', sans-serif;
  white-space: nowrap;
  flex-shrink: 0;
  margin-right: clamp(8px, 1vw, 16px);
  line-height: 1;
}

.elementor-element-7de9c74 .elementor-field-group-field_b5bbe86 .elementor-field-subgroup {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: clamp(10px, 2vw, 40px) !important;
  flex-wrap: nowrap !important;
}

.elementor-element-7de9c74 .elementor-field-group-field_b5bbe86 .elementor-field-option {
  display: inline-flex !important;
  align-items: center !important;
}

.elementor-element-7de9c74 .elementor-field-group-field_b5bbe86 input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  pointer-events: none !important;
}

.elementor-element-7de9c74 .elementor-field-group-field_b5bbe86 label {
  border: 2px solid #fff !important;
  color: #fff !important;
  padding: clamp(7px, 0.5vw, 11px) clamp(10px, 0.9vw, 18px) !important;
  font-size: clamp(12px, 1.4vw + 0px, 26px) !important;
  border-radius: 12px !important;
  letter-spacing: 0.5px !important;
  font-family: 'Public Sans', sans-serif !important;
  font-weight: 200 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  display: inline-block !important;
  margin: 0 !important;
  text-transform: uppercase !important;
  transition: background 0.2s, color 0.2s !important;
  line-height: 1 !important;
}

.elementor-element-7de9c74 .elementor-field-group-field_b5bbe86 label:hover,
.elementor-element-7de9c74 .elementor-field-group-field_b5bbe86 input[type="radio"]:checked + label {
  background: #fff !important;
  color: #000 !important;
}

/* "otra opción" — 25% alineado a la derecha */
.elementor-element-7de9c74 .elementor-field-group-field_58dd0c0 {
  grid-area: radio !important;
  display: flex !important;
  align-items: center !important;
  justify-self: end !important;
  width: 25% !important;
}

.elementor-element-7de9c74 .elementor-field-group-field_58dd0c0 input {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #444 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
  font-size: clamp(14px, 0.5vw + 6px, 18px) !important;
  font-family: 'Public Sans', sans-serif !important;
  width: 100% !important;
  outline: none !important;
  padding: 8px 0 !important;
  height: auto !important;
}

.elementor-element-7de9c74 .elementor-field-group-field_58dd0c0 input::placeholder {
  color: #666 !important;
  font-family: 'Public Sans', sans-serif !important;
  font-size: clamp(14px, 0.5vw + 6px, 18px) !important;
}

/* ============================================
   FILA 3 — Enviar mensaje + botón
   ============================================ */

.elementor-element-7de9c74 .elementor-field-group-message {
  grid-area: msg !important;
  display: flex !important;
  align-items: center !important;
  gap: clamp(16px, 2vw, 32px) !important;
}

.elementor-element-7de9c74 .elementor-field-group-message::before {
  content: "Enviar mensaje";
  color: #fff;
  font-size: clamp(28px, 2.5vw + 4px, 48px);
  font-weight: 300;
  font-family: 'Public Sans', sans-serif;
  white-space: nowrap;
  flex-shrink: 0;
  line-height: 1;
}

/* Textarea — una línea en reposo, se expande al foco */
.elementor-element-7de9c74 .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea {
  flex-basis: auto !important;
  max-width: 50% !important;
}

.elementor-element-7de9c74 .elementor-field-group-message textarea {
  flex: 1 !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #444 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
  font-size: clamp(14px, 0.5vw + 6px, 18px) !important;
  font-family: 'Public Sans', sans-serif !important;
  resize: none !important;
  height: 36px !important;
  outline: none !important;
  padding: 4px 0 !important;
  overflow: hidden !important;
  transition: height 0.3s ease, border-color 0.3s ease, background 0.3s ease, padding 0.3s ease, border-radius 0.3s ease !important;
}

.elementor-element-7de9c74 .elementor-field-group-message textarea:focus {
  height: 120px !important;
  overflow-y: auto !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid #666 !important;
  border-radius: 6px !important;
  padding: 10px 12px !important;
}

.elementor-element-7de9c74 .elementor-field-group-message textarea::placeholder {
  color: #666 !important;
  font-family: 'Public Sans', sans-serif !important;
  font-size: clamp(14px, 0.5vw + 6px, 18px) !important;
}

/* Botón */
.elementor-element-7de9c74 .e-form__buttons {
  grid-area: msg !important;
  display: flex !important;
  align-items: center !important;
  justify-self: end !important;
  width: auto !important;
}

.elementor-element-7de9c74 .elementor-button.elementor-size-sm {
  background: #e4d8c8 !important;
  color: #775342 !important;
  border: none !important;
  border-radius: 12px !important;
  padding: clamp(12px, 1.2vw, 20px) clamp(10px, 0.8vw, 16px) !important;
  font-size: clamp(18px, 1.25vw + 4px, 28px) !important;
  letter-spacing: 1px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  font-family: 'Raleway', sans-serif !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  line-height: 1 !important;
  width: auto !important;
}

.elementor-element-7de9c74 .elementor-button.elementor-size-sm:hover {
  background: #e0e0e0 !important;
}

/* ============================================
   COLAPSO — columna única < 1024px
   ============================================ */
@media (max-width: 1024px) {

  .elementor-element-7de9c74 .elementor-form-fields-wrapper {
    display: flex !important;
    flex-direction: column !important;
    padding: 32px 24px !important;
    gap: 28px !important;
  }

  /* Todos los grupos ocupan el ancho completo */
  .elementor-element-7de9c74 .elementor-field-group {
    width: 100% !important;
  }

  /* FILA 1: label arriba, input abajo */
  .elementor-element-7de9c74 .elementor-field-group-name,
  .elementor-element-7de9c74 .elementor-field-group-email {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 0 !important;
  }

  .elementor-element-7de9c74 .elementor-field-group-name::before,
  .elementor-element-7de9c74 .elementor-field-group-email::before {
    font-size: clamp(22px, 5vw, 32px) !important;
  }

  .elementor-element-7de9c74 .elementor-field-group-name input,
  .elementor-element-7de9c74 .elementor-field-group-email input {
    width: 100% !important;
    flex: none !important;
  }

  /* FILA 2: label arriba, selects en fila (una por línea si no caben) */
  .elementor-element-7de9c74 .elementor-field-group-field_b5bbe86 {
    width: 100% !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important;
  }

  .elementor-element-7de9c74 .elementor-field-group-field_b5bbe86::before {
    font-size: clamp(22px, 5vw, 32px) !important;
    margin-right: 0 !important;
  }

  .elementor-element-7de9c74 .elementor-field-group-field_b5bbe86 .elementor-field-subgroup {
    flex-wrap: wrap !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .elementor-element-7de9c74 .elementor-field-group-field_b5bbe86 label {
    font-size: 14px !important;
    padding: 8px 14px !important;
  }

  /* "otra opción" — ancho completo debajo de los selects */
  .elementor-element-7de9c74 .elementor-field-group-field_58dd0c0 {
    width: 100% !important;
    justify-self: start !important;
  }

  .elementor-element-7de9c74 .elementor-field-group-field_58dd0c0 input {
    width: 100% !important;
  }

  /* FILA 3: label arriba, textarea amplio abajo, botón full width */
  .elementor-element-7de9c74 .elementor-field-group-message {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
  }

  .elementor-element-7de9c74 .elementor-field-group-message::before {
    font-size: clamp(22px, 5vw, 32px) !important;
  }

  /* Textarea siempre amplio en mobile */
  .elementor-element-7de9c74 .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea {
    max-width: 100% !important;
  }

  .elementor-element-7de9c74 .elementor-field-group-message textarea {
    width: 100% !important;
    height: 120px !important;
    overflow-y: auto !important;
    background: rgba(255,255,255,0.05) !important;
    border: 1px solid #666 !important;
    border-radius: 6px !important;
    padding: 10px 12px !important;
  }

  /* Botón */
  .elementor-element-7de9c74 .e-form__buttons {
    width: 100% !important;
    justify-self: stretch !important;
  }

  .elementor-element-7de9c74 .elementor-button.elementor-size-sm {
    width: 100% !important;
    text-align: center !important;
    font-size: 16px !important;
    padding: 14px 20px !important;
  }
}

/* ============================================
   Mobile pequeño < 480px
   ============================================ */
@media (max-width: 480px) {
  .elementor-element-7de9c74 .elementor-form-fields-wrapper {
    padding: 24px 16px !important;
    gap: 20px !important;
  }
}/* End custom CSS */