.elementor-353 .elementor-element.elementor-element-f75feaa{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:10%;--padding-bottom:10%;--padding-left:5%;--padding-right:5%;}.elementor-353 .elementor-element.elementor-element-f75feaa:not(.elementor-motion-effects-element-type-background), .elementor-353 .elementor-element.elementor-element-f75feaa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-353 .elementor-element.elementor-element-b5ecdba{text-align:start;}.elementor-353 .elementor-element.elementor-element-b5ecdba .elementor-heading-title{font-family:var( --e-global-typography-86b8c66-font-family ), Sans-serif;font-size:var( --e-global-typography-86b8c66-font-size );font-weight:var( --e-global-typography-86b8c66-font-weight );line-height:var( --e-global-typography-86b8c66-line-height );color:var( --e-global-color-4789b68 );}.elementor-353 .elementor-element.elementor-element-4724b0d{--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;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:10%;--padding-bottom:10%;--padding-left:5%;--padding-right:5%;}.elementor-353 .elementor-element.elementor-element-3814bf5{--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;}.elementor-353 .elementor-element.elementor-element-dba0a93 .elementor-heading-title{font-family:var( --e-global-typography-e543f35-font-family ), Sans-serif;font-size:var( --e-global-typography-e543f35-font-size );font-weight:var( --e-global-typography-e543f35-font-weight );line-height:var( --e-global-typography-e543f35-line-height );}.elementor-353 .elementor-element.elementor-element-2ef4754 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-353 .elementor-element.elementor-element-2ef4754 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(15px/2);}.elementor-353 .elementor-element.elementor-element-2ef4754 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(15px/2);}.elementor-353 .elementor-element.elementor-element-2ef4754 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(15px/2);}.elementor-353 .elementor-element.elementor-element-2ef4754 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-15px/2);}.elementor-353 .elementor-element.elementor-element-2ef4754 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-15px/2);}.elementor-353 .elementor-element.elementor-element-2ef4754 .elementor-icon-list-icon i{color:#000000;transition:color 0.3s;}.elementor-353 .elementor-element.elementor-element-2ef4754 .elementor-icon-list-icon svg{fill:#000000;transition:fill 0.3s;}.elementor-353 .elementor-element.elementor-element-2ef4754{--e-icon-list-icon-size:16px;--e-icon-list-icon-align:left;--e-icon-list-icon-margin:0 calc(var(--e-icon-list-icon-size, 1em) * 0.25) 0 0;--icon-vertical-offset:0px;}.elementor-353 .elementor-element.elementor-element-2ef4754 .elementor-icon-list-icon{padding-inline-end:11px;}.elementor-353 .elementor-element.elementor-element-2ef4754 .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-353 .elementor-element.elementor-element-aa1b4f6{--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;}@media(min-width:768px){.elementor-353 .elementor-element.elementor-element-3814bf5{--width:50%;}.elementor-353 .elementor-element.elementor-element-aa1b4f6{--width:50%;}}@media(max-width:1024px){.elementor-353 .elementor-element.elementor-element-b5ecdba .elementor-heading-title{font-size:var( --e-global-typography-86b8c66-font-size );line-height:var( --e-global-typography-86b8c66-line-height );}.elementor-353 .elementor-element.elementor-element-dba0a93 .elementor-heading-title{font-size:var( --e-global-typography-e543f35-font-size );line-height:var( --e-global-typography-e543f35-line-height );}}@media(max-width:767px){.elementor-353 .elementor-element.elementor-element-f75feaa{--min-height:40vh;}.elementor-353 .elementor-element.elementor-element-b5ecdba .elementor-heading-title{font-size:var( --e-global-typography-86b8c66-font-size );line-height:var( --e-global-typography-86b8c66-line-height );}.elementor-353 .elementor-element.elementor-element-dba0a93 .elementor-heading-title{font-size:var( --e-global-typography-e543f35-font-size );line-height:var( --e-global-typography-e543f35-line-height );}}/* Start custom CSS for shortcode, class: .elementor-element-1f3107c *//* Alinear los campos en dos columnas */
.form-row {
    display: flex;
    gap: 20px; /* Espacio entre columnas */
}

.form-column {
    width: 50%;
}

/* Asegurar que el mensaje ocupe el ancho completo */
textarea {
    width: 100%;
}
/* RESPONSIVE: Apila las columnas en móviles */
@media (max-width: 768px) {
    .form-row {
        flex-direction: column;
        gap: 0; /* Opcional: elimina el espacio extra entre columnas en móvil */
    }

    .form-column,
    .form-row > .form-column.full-width {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        display: block !important;
    }
}
/* ===== FIX DEFINITIVO: checkbox + texto EN UNA SOLA LÍNEA ===== */

/* 1) Ponemos todo el bloque del acceptance en fila */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance,
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance .wpcf7-list-item,
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance .wpcf7-list-item label{
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  white-space: nowrap !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 2) Evita que el texto del label tenga ancho limitado por el tema */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance .wpcf7-list-item-label{
  display: inline !important;
  width: auto !important;
  max-width: none !important;
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 3) Checkbox sin márgenes raros */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance input[type="checkbox"]{
  margin: 0 !important;
}

/* 4) Color SOLO para “He leído y acepto la” */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance .txt-acepto{
  color: #000 !important;
  display: inline !important;
}

/* 5) El enlace se queda inline y no se parte */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance .pp{
  display: inline !important;
  white-space: nowrap !important;
}

/* === Colores de texto para mensajes de Contact Form 7 === */

/* Mensaje de éxito ("Gracias por tu mensaje...") */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7 form.sent .wpcf7-response-output {
  color: #000 !important;           /* texto blanco */
  border-color: #22c55e !important; /* borde verde opcional */
  background: transparent !important; /* sin fondo, opcional */
}

/* Mensaje de error o validación ("Debes aceptar...", etc.) */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7 form.invalid .wpcf7-response-output,
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7 form.failed .wpcf7-response-output,
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7 form.aborted .wpcf7-response-output {
  color: #000 !important;           /* texto blanco */
  border-color: #f87171 !important; /* borde rojo opcional */
  background: transparent !important;
}

/* Mensaje de advertencia (por ejemplo, "uno o más campos tienen errores") */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7 form.spam .wpcf7-response-output {
  color: #000 !important;
  border-color: #f5c542 !important; /* borde amarillo */
  background: transparent !important;
}
/* === Unificar tamaño y estilo del texto de aceptación === */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance .txt-acepto,
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance .pp {
  font-size: 13px !important;      /* tamaño igual para ambos textos */
  font-weight: normal !important;  /* evita que el enlace sea más grueso */
  line-height: 1em !important;   /* mejora la alineación vertical */
  color: #000 !important;          /* texto blanco (ajusta si tu fondo es claro) */
}

/* Mantener el enlace subrayado al pasar el ratón */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance .pp:hover {
  text-decoration: underline;
}
/* Texto "He leído y acepto la" en negro (Lighthouse OK) */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance .wpcf7-list-item-label {
    color: #000000 !important;
    opacity: 1 !important;
}

/* Enlace con color propio (NO negro) */
.elementor-353 .elementor-element.elementor-element-1f3107c .wpcf7-acceptance .wpcf7-list-item-label a {
    color: #c2410c !important;   /* <-- CAMBIA ESTE COLOR */
    opacity: 1 !important;
}/* End custom CSS */