.elementor-139389 .elementor-element.elementor-element-304faca > .elementor-container{max-width:1140px;}.elementor-139389 .elementor-element.elementor-element-304faca > .elementor-background-overlay{opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-139389 .elementor-element.elementor-element-304faca{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0rem;margin-bottom:0rem;padding:5rem 2rem 5rem 2rem;}.elementor-139389 .elementor-element.elementor-element-d3d9552:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-139389 .elementor-element.elementor-element-d3d9552 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://ecotisa.com/wp-content/uploads/2025/09/FOTO-MORADA.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-139389 .elementor-element.elementor-element-d3d9552 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-d3d9552 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-139389 .elementor-element.elementor-element-3e420a1{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-139389 .elementor-element.elementor-element-3e420a1 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-139389 .elementor-element.elementor-element-b993ac9 > .elementor-element-populated >  .elementor-background-overlay{background-color:#383838;opacity:0.5;}.elementor-139389 .elementor-element.elementor-element-b993ac9 > .elementor-element-populated, .elementor-139389 .elementor-element.elementor-element-b993ac9 > .elementor-element-populated > .elementor-background-overlay, .elementor-139389 .elementor-element.elementor-element-b993ac9 > .elementor-background-slideshow{border-radius:0px 15px 15px 0px;}.elementor-139389 .elementor-element.elementor-element-b993ac9 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:1rem 0rem 0rem 0rem;}.elementor-139389 .elementor-element.elementor-element-b993ac9 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.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-139389 .elementor-element.elementor-element-6d424b0 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 50px;}.elementor-139389 .elementor-element.elementor-element-6d424b0 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:39px;font-weight:600;line-height:47px;color:#FFFFFF;}.elementor-widget-text-editor{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-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-139389 .elementor-element.elementor-element-bdfd398 > .elementor-widget-container{margin:-15px 0px 0px 0px;padding:0px 0px 0px 50px;}.elementor-139389 .elementor-element.elementor-element-bdfd398{color:#FFFFFF;font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;}.elementor-139389 .elementor-element.elementor-element-bdfd398 p{margin-bottom:0px;}.elementor-139389 .elementor-element.elementor-element-961807e > .elementor-widget-container{margin:-15px 0px 0px 0px;padding:0px 0px 0px 50px;}.elementor-139389 .elementor-element.elementor-element-961807e{color:#E4E4E4;font-family:"Montserrat", Sans-serif;font-weight:400;}.elementor-139389 .elementor-element.elementor-element-961807e p{margin-bottom:0px;}.elementor-139389 .elementor-element.elementor-element-b7c07e8 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-6681839{padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-e8be8b7:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-139389 .elementor-element.elementor-element-e8be8b7 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-139389 .elementor-element.elementor-element-e8be8b7 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0rem 0rem 5rem 0rem;}.elementor-139389 .elementor-element.elementor-element-e8be8b7 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-image .widget-image-caption{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-139389 .elementor-element.elementor-element-3a8309f > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-3a8309f{text-align:right;}.elementor-139389 .elementor-element.elementor-element-3a8309f img{width:53%;}.elementor-139389 .elementor-element.elementor-element-5e206da{text-align:center;}.elementor-139389 .elementor-element.elementor-element-5e206da .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;color:#A121F3;}.elementor-139389 .elementor-element.elementor-element-b696dd0{text-align:center;}.elementor-139389 .elementor-element.elementor-element-b696dd0 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:28px;font-weight:600;color:#6EB961;}.elementor-139389 .elementor-element.elementor-element-ebd70e5{text-align:center;color:#6EB961;font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:400;}.elementor-139389 .elementor-element.elementor-element-ebd70e5 p{margin-bottom:0px;}.elementor-139389 .elementor-element.elementor-element-8f5f0c0{width:100%;max-width:100%;}.elementor-139389 .elementor-element.elementor-element-5706c06 > .elementor-background-overlay{opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-139389 .elementor-element.elementor-element-5706c06{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-49d71a7 > .elementor-element-populated{border-style:none;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-49d71a7 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-139389 .elementor-element.elementor-element-5b7f608{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-139389 .elementor-element.elementor-element-5b7f608 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-element-populated >  .elementor-background-overlay{opacity:0;}.elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-element-populated{border-style:none;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-element-populated, .elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-element-populated > .elementor-background-overlay, .elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-background-slideshow{border-radius:0px 15px 15px 0px;}.elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-139389 .elementor-element.elementor-element-a301133 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:39px;font-weight:600;line-height:47px;color:#FFFFFF;}.elementor-139389 .elementor-element.elementor-element-89c0349 > .elementor-widget-container{margin:-15px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-89c0349{color:#FFFFFF;font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;}.elementor-139389 .elementor-element.elementor-element-89c0349 p{margin-bottom:0px;}.elementor-139389 .elementor-element.elementor-element-ec09a58 > .elementor-widget-container{margin:-15px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-ec09a58{color:#EEEEEE;font-family:"Montserrat", Sans-serif;font-weight:400;}.elementor-139389 .elementor-element.elementor-element-ec09a58 p{margin-bottom:0px;}.elementor-139389 .elementor-element.elementor-element-db7a7cb > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-b9fa178 > .elementor-container{min-height:600px;}.elementor-139389 .elementor-element.elementor-element-b9fa178{padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-3a9274b:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-139389 .elementor-element.elementor-element-3a9274b > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-139389 .elementor-element.elementor-element-3a9274b > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:10px 50px 50px 50px;}.elementor-139389 .elementor-element.elementor-element-3a9274b > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-139389 .elementor-element.elementor-element-d16754a > .elementor-widget-container{margin:0px -35px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-d16754a{text-align:right;}.elementor-139389 .elementor-element.elementor-element-d16754a img{width:35%;}.elementor-139389 .elementor-element.elementor-element-75bdd13{text-align:center;}.elementor-139389 .elementor-element.elementor-element-75bdd13 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;color:#A121F3;}.elementor-139389 .elementor-element.elementor-element-349ae52{text-align:center;}.elementor-139389 .elementor-element.elementor-element-349ae52 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:28px;font-weight:600;color:#6EB961;}.elementor-139389 .elementor-element.elementor-element-12ea9ea{text-align:center;color:#6EB961;font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:400;}.elementor-139389 .elementor-element.elementor-element-12ea9ea p{margin-bottom:0px;}.elementor-139389 .elementor-element.elementor-element-3b1c59e > .elementor-element-populated{padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-139389 .elementor-element.elementor-element-b993ac9{width:100%;}.elementor-139389 .elementor-element.elementor-element-6632e0e{width:100%;}.elementor-139389 .elementor-element.elementor-element-3b1c59e{width:100%;}}@media(max-width:767px){.elementor-139389 .elementor-element.elementor-element-304faca{padding:20px 20px 20px 20px;}.elementor-139389 .elementor-element.elementor-element-b993ac9 > .elementor-element-populated >  .elementor-background-overlay{opacity:0;}.elementor-139389 .elementor-element.elementor-element-e8be8b7 > .elementor-element-populated{padding:22px 22px 22px 22px;}.elementor-139389 .elementor-element.elementor-element-3a8309f > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-3a8309f{text-align:center;}.elementor-139389 .elementor-element.elementor-element-3a8309f img{width:50%;}.elementor-139389 .elementor-element.elementor-element-5e206da .elementor-heading-title{font-size:14px;}.elementor-139389 .elementor-element.elementor-element-b696dd0 .elementor-heading-title{font-size:19px;}.elementor-139389 .elementor-element.elementor-element-ebd70e5{font-size:11px;}.elementor-139389 .elementor-element.elementor-element-5706c06{padding:20px 20px 20px 20px;}.elementor-139389 .elementor-element.elementor-element-5b7f608{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-element-populated >  .elementor-background-overlay{opacity:1;}.elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-element-populated, .elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-element-populated > .elementor-background-overlay, .elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-background-slideshow{border-radius:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-6632e0e > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-a301133 .elementor-heading-title{font-size:25px;line-height:1.3em;}.elementor-139389 .elementor-element.elementor-element-89c0349{font-size:14px;}.elementor-139389 .elementor-element.elementor-element-ec09a58{font-size:14px;}.elementor-139389 .elementor-element.elementor-element-e822cb0 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-3a9274b > .elementor-element-populated{padding:22px 22px 22px 22px;}.elementor-139389 .elementor-element.elementor-element-d16754a > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-139389 .elementor-element.elementor-element-d16754a{text-align:center;}.elementor-139389 .elementor-element.elementor-element-d16754a img{width:50%;}.elementor-139389 .elementor-element.elementor-element-75bdd13 .elementor-heading-title{font-size:14px;}.elementor-139389 .elementor-element.elementor-element-349ae52 .elementor-heading-title{font-size:19px;}.elementor-139389 .elementor-element.elementor-element-12ea9ea{font-size:11px;}}/* Start custom CSS for column, class: .elementor-element-b993ac9 */.elementor-139389 .elementor-element.elementor-element-b993ac9 {
  align-self: start;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-8f5f0c0 *//* Card */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 {
  background:#fff; border-radius:18px; padding:24px;
  box-shadow:0 16px 40px rgba(0,0,0,.12);
}
/* Prevent mobile overflow */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7, .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 *{ box-sizing:border-box; max-width:100%; }

/* Labels */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form label{
  display:block; margin:0 0 8px; font-weight:600; color:#6f6f6f;
}

/* Fields */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input[type="text"],
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input[type="email"],
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input[type="tel"],
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 textarea,
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 select{
  width:100%; height:52px; border:1px solid rgba(0,0,0,.08);
  background:#f1f2f4; border-radius:28px; padding:0 16px;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.03);
}
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 textarea{ min-height:120px; height:auto; padding:12px 16px; border-radius:18px; }

/* GRID: Nombre + Apellido en una fila; resto full-width */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  column-gap:16px; row-gap:14px;
}
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p{ margin:0; grid-column:1 / -1; }
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:nth-of-type(1){ grid-column:1 / 2; }  /* Nombre */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:nth-of-type(2){ grid-column:2 / 3; }  /* Apellido */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:last-of-type{ grid-column:1 / -1; }   /* Submit row */

/* Button */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input[type="submit"]{
  display:block; width:100%; height:48px; border:none; border-radius:28px;
  background:#46c065; color:#fff; font-weight:700; cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease;
}
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input[type="submit"]:hover{
  transform:translateY(-1px); box-shadow:0 8px 20px rgba(0,0,0,.12);
}

/* Focus */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input:focus,
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 textarea:focus,
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 select:focus{
  outline:none; border-color:#46c065; box-shadow:0 0 0 3px rgba(70,192,101,.15);
}

.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7, .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 *{ box-sizing:border-box; max-width:100%; }

/* Layout: make the form a flex container with wrapping */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form{
  display:flex;
  flex-wrap:wrap;
  column-gap:16px;  /* horizontal gap */
  row-gap:14px;     /* vertical gap */
}

/* By default each CF7 <p> takes full width */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p{ margin:0; flex:0 0 100%; }

/* Put "Nombre" and "Apellido" side-by-side (CSS-only, no markup changes) */
@supports .elementor-139389 .elementor-element.elementor-element-8f5f0c0(:has(*)) {
  .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:has(#nombre),
  .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:has(#apellido){
    flex:1 1 calc(50% - 8px);
    min-width:0;           /* avoid wrapping due to long content */
  }
}

/* Fallback if :has() isn’t supported (older browsers) — uses order */
@supports not (.elementor-139389 .elementor-element.elementor-element-8f5f0c0(:has(*))) {
  .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:nth-of-type(1),
  .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:nth-of-type(2){
    flex:1 1 calc(50% - 8px);
    min-width:0;
  }
}

/* Mobile: stack them */
@media (max-width: 767px){
  .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form{ column-gap:0; }
  @supports .elementor-139389 .elementor-element.elementor-element-8f5f0c0(:has(*)) {
    .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:has(#nombre),
    .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:has(#apellido){ flex-basis:100%; }
  }
  @supports not (.elementor-139389 .elementor-element.elementor-element-8f5f0c0(:has(*))) {
    .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:nth-of-type(1),
    .elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 form p:nth-of-type(2){ flex-basis:100%; }
  }
}

/* Inputs and submit should never overflow the card */
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input[type="text"],
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input[type="email"],
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input[type="tel"],
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 textarea,
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 select,
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input[type="submit"]{ width:100%; }
.elementor-139389 .elementor-element.elementor-element-8f5f0c0 .wpcf7 input[type="submit"]{ display:block; }/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-6632e0e */.elementor-139389 .elementor-element.elementor-element-6632e0e {
  height: auto !important;
  align-self: start;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-95e4ad6 *//* Card */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 {
  background:#fff; border-radius:18px; padding:24px;
  box-shadow:0 16px 40px rgba(0,0,0,.12);
}
/* Prevent mobile overflow */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7, .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 *{ box-sizing:border-box; max-width:100%; }

/* Labels */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form label{
  display:block; margin:0 0 8px; font-weight:600; color:#6f6f6f;
}

/* Fields */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input[type="text"],
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input[type="email"],
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input[type="tel"],
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 textarea,
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 select{
  width:100%; height:52px; border:1px solid rgba(0,0,0,.08);
  background:#f1f2f4; border-radius:28px; padding:0 16px;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.03);
}
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 textarea{ min-height:120px; height:auto; padding:12px 16px; border-radius:18px; }

/* GRID: Nombre + Apellido en una fila; resto full-width */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  column-gap:16px; row-gap:14px;
}
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p{ margin:0; grid-column:1 / -1; }
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:nth-of-type(1){ grid-column:1 / 2; }  /* Nombre */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:nth-of-type(2){ grid-column:2 / 3; }  /* Apellido */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:last-of-type{ grid-column:1 / -1; }   /* Submit row */

/* Button */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input[type="submit"]{
  display:block; width:100%; height:48px; border:none; border-radius:28px;
  background:#46c065; color:#fff; font-weight:700; cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease;
}
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input[type="submit"]:hover{
  transform:translateY(-1px); box-shadow:0 8px 20px rgba(0,0,0,.12);
}

/* Focus */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input:focus,
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 textarea:focus,
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 select:focus{
  outline:none; border-color:#46c065; box-shadow:0 0 0 3px rgba(70,192,101,.15);
}

.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7, .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 *{ box-sizing:border-box; max-width:100%; }

/* Layout: make the form a flex container with wrapping */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form{
  display:flex;
  flex-wrap:wrap;
  column-gap:16px;  /* horizontal gap */
  row-gap:14px;     /* vertical gap */
}

/* By default each CF7 <p> takes full width */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p{ margin:0; flex:0 0 100%; }

/* Put "Nombre" and "Apellido" side-by-side (CSS-only, no markup changes) */
@supports .elementor-139389 .elementor-element.elementor-element-95e4ad6(:has(*)) {
  .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:has(#nombre),
  .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:has(#apellido){
    flex:1 1 calc(50% - 8px);
    min-width:0;           /* avoid wrapping due to long content */
  }
}

/* Fallback if :has() isn’t supported (older browsers) — uses order */
@supports not (.elementor-139389 .elementor-element.elementor-element-95e4ad6(:has(*))) {
  .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:nth-of-type(1),
  .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:nth-of-type(2){
    flex:1 1 calc(50% - 8px);
    min-width:0;
  }
}

/* Mobile: stack them */
@media (max-width: 767px){
  .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form{ column-gap:0; }
  @supports .elementor-139389 .elementor-element.elementor-element-95e4ad6(:has(*)) {
    .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:has(#nombre),
    .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:has(#apellido){ flex-basis:100%; }
  }
  @supports not (.elementor-139389 .elementor-element.elementor-element-95e4ad6(:has(*))) {
    .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:nth-of-type(1),
    .elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 form p:nth-of-type(2){ flex-basis:100%; }
  }
}

/* Inputs and submit should never overflow the card */
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input[type="text"],
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input[type="email"],
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input[type="tel"],
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 textarea,
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 select,
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input[type="submit"]{
    font-size: 8.9px;   /* ajusta el tamaño de la letra */
    padding: 0 16px;   /* reduce un poco el padding lateral */
    height: 42px;      /* opcional: botón más bajo */
  }
.elementor-139389 .elementor-element.elementor-element-95e4ad6 .wpcf7 input[type="submit"]{ display:block; }/* End custom CSS */