.elementor-1866 .elementor-element.elementor-element-8dadc27{--display:flex;--min-height:0px;--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:44px 44px;--row-gap:44px;--column-gap:44px;--border-radius:24px 24px 24px 24px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:40px;--padding-right:40px;}.elementor-1866 .elementor-element.elementor-element-8dadc27:not(.elementor-motion-effects-element-type-background), .elementor-1866 .elementor-element.elementor-element-8dadc27 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EFF6F4;}.elementor-1866 .elementor-element.elementor-element-37236c0{--display:flex;--justify-content:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-1866 .elementor-element.elementor-element-951d9e5{width:var( --container-widget-width, 86% );max-width:86%;--container-widget-width:86%;--container-widget-flex-grow:0;text-align:start;}.elementor-1866 .elementor-element.elementor-element-951d9e5 > .elementor-widget-container{margin:0px 0px 7px 0px;padding:12px 0px 0px 0px;}.elementor-1866 .elementor-element.elementor-element-951d9e5 .elementor-heading-title{font-family:"Albert Sans", Sans-serif;font-size:24px;font-weight:600;line-height:29px;color:var( --e-global-color-primary );}.elementor-1866 .elementor-element.elementor-element-cc0cd8d{--display:flex;--justify-content:center;}.elementor-1866 .elementor-element.elementor-element-bbf569c > .elementor-widget-container{margin:10px 0px 0px 0px;}@media(max-width:1024px) and (min-width:768px){.elementor-1866 .elementor-element.elementor-element-37236c0{--width:82%;}}@media(min-width:2400px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}}@media(max-width:1366px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-1866 .elementor-element.elementor-element-8dadc27{--padding-top:0px;--padding-bottom:0px;--padding-left:70px;--padding-right:70px;}}@media(max-width:1200px){.elementor-1866 .elementor-element.elementor-element-8dadc27{--padding-top:0px;--padding-bottom:0px;--padding-left:40px;--padding-right:40px;}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-1866 .elementor-element.elementor-element-8dadc27{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-1866 .elementor-element.elementor-element-951d9e5 > .elementor-widget-container{margin:0px 0px -10px 0px;}.elementor-1866 .elementor-element.elementor-element-951d9e5{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-1866 .elementor-element.elementor-element-951d9e5 .elementor-heading-title{font-size:17px;line-height:22px;}.elementor-1866 .elementor-element.elementor-element-8dadc27{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:15px;--padding-right:15px;}}/* Start custom CSS for shortcode, class: .elementor-element-bbf569c */.elementor-1866 .elementor-element.elementor-element-bbf569c .wpcf7-form * {
  box-sizing: border-box;
  font-family: 'Montserrat', sans-serif;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .form-row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 12px;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .flex-input { 
  flex: 1; 
  margin: 0;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .flex-button { 
  flex: 0 0 auto; 
  margin: 0;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .form-group {
  position: relative;
  margin: 0;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-input {
  width: 100%;
  height: 61px;
  background: transparent !important;
  border: 1px solid #005E74 !important;
  border-radius: 40px 40px;
  padding: 0 20px !important;
  font-size: 15px !important;
  color: #1F2937 !important;
  outline: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  transition: border-color 0.3s ease;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-input::placeholder {
  color: rgba(31, 41, 55, 0.50) !important;
  font-weight: 400;
  opacity: 1;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-input:focus {
  border-color: #2D2926 !important;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-submit {
  height: 61px;
  margin: 0 !important;
  padding: 0 36px !important;
  background: #005E74 !important; 
  color: #FFFFFF !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  border: none !important;
  border-radius: 40px 40px;
  cursor: pointer;
  transition: opacity 0.3s ease;
  box-shadow: none !important;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-submit:hover {
  opacity: 0.9 !important;
}

/* =======================================================
   NUEVO EFECTO DE CHECKBOX INTEGRADO
   ======================================================= */
.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group .wpcf7-list-item {
  margin: 0; 
  display: block;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"] { 
  display: none; /* Oculta el checkbox nativo */
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group .wpcf7-list-item-label {
  position: relative;
  padding-left: 28px; /* Espacio para el nuevo checkbox */
  cursor: pointer;
  font-size: 13px; /* Mantiene la fuente de tu diseño */
  color: #374151 !important; /* Mantiene el color de tu diseño */
  font-weight: 500;
  display: inline-block;
  line-height: 17px;
}

/* Círculo base del checkbox (desmarcado) */
.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 2px solid #046073;
  border-radius: 50%;
  background-color: transparent;
  transition: all 0.3s ease;
}

/* Checkbox (marcado) con SVG animado */
.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]:checked + .wpcf7-list-item-label::before {
  background-color: #046073;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="11" height="8" viewBox="0 0 11 8" fill="none"><path d="M0.75 3.75L3.75 6.75L9.75 0.75" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
}

/* ======================================================= */

.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group a {
  color: #374151 !important;
  text-decoration: underline !important;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
  margin-left: 5px;
  font-weight: 400 !important;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .wpcf7-spinner {
  display: none !important;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .wpcf7-not-valid-tip {
  font-size: 13px !important;
  color: #EF4444 !important;
  margin-top: 6px;
  display: block;
}

@media (max-width: 600px) {
  .elementor-1866 .elementor-element.elementor-element-bbf569c .form-row {
    flex-direction: column;
    gap: 0px;
  }
  .elementor-1866 .elementor-element.elementor-element-bbf569c .flex-button {
    width: 100%;
  }
  .elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-submit {
    width: 100% !important;
  }
  .wpcf7-list-item-label {
    display: inline-block;
    font-size: 10px !important;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-bbf569c */.elementor-1866 .elementor-element.elementor-element-bbf569c .wpcf7-form * {
  box-sizing: border-box;
  font-family: 'Montserrat', sans-serif;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .form-row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 12px;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .flex-input { 
  flex: 1; 
  margin: 0;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .flex-button { 
  flex: 0 0 auto; 
  margin: 0;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .form-group {
  position: relative;
  margin: 0;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-input {
  width: 100%;
  height: 61px;
  background: transparent !important;
  border: 1px solid #005E74 !important;
  border-radius: 40px 40px;
  padding: 0 20px !important;
  font-size: 15px !important;
  color: #1F2937 !important;
  outline: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  transition: border-color 0.3s ease;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-input::placeholder {
  color: rgba(31, 41, 55, 0.50) !important;
  font-weight: 400;
  opacity: 1;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-input:focus {
  border-color: #2D2926 !important;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-submit {
  height: 61px;
  margin: 0 !important;
  padding: 0 36px !important;
  background: #005E74 !important; 
  color: #FFFFFF !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  border: none !important;
  border-radius: 40px 40px;
  cursor: pointer;
  transition: opacity 0.3s ease;
  box-shadow: none !important;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-submit:hover {
  opacity: 0.9 !important;
}

/* =======================================================
   NUEVO EFECTO DE CHECKBOX INTEGRADO
   ======================================================= */
.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group .wpcf7-list-item {
  margin: 0; 
  display: block;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"] { 
  display: none; /* Oculta el checkbox nativo */
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group .wpcf7-list-item-label {
  position: relative;
  padding-left: 28px; /* Espacio para el nuevo checkbox */
  cursor: pointer;
  font-size: 13px; /* Mantiene la fuente de tu diseño */
  color: #374151 !important; /* Mantiene el color de tu diseño */
  font-weight: 500;
  display: inline-block;
  line-height: 17px;
}

/* Círculo base del checkbox (desmarcado) */
.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 2px solid #046073;
  border-radius: 50%;
  background-color: transparent;
  transition: all 0.3s ease;
}

/* Checkbox (marcado) con SVG animado */
.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]:checked + .wpcf7-list-item-label::before {
  background-color: #046073;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="11" height="8" viewBox="0 0 11 8" fill="none"><path d="M0.75 3.75L3.75 6.75L9.75 0.75" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
}

/* ======================================================= */

.elementor-1866 .elementor-element.elementor-element-bbf569c .acceptance-group a {
  color: #374151 !important;
  text-decoration: underline !important;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
  margin-left: 5px;
  font-weight: 400 !important;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .wpcf7-spinner {
  display: none !important;
}

.elementor-1866 .elementor-element.elementor-element-bbf569c .wpcf7-not-valid-tip {
  font-size: 13px !important;
  color: #EF4444 !important;
  margin-top: 6px;
  display: block;
}

@media (max-width: 600px) {
  .elementor-1866 .elementor-element.elementor-element-bbf569c .form-row {
    flex-direction: column;
    gap: 0px;
  }
  .elementor-1866 .elementor-element.elementor-element-bbf569c .flex-button {
    width: 100%;
  }
  .elementor-1866 .elementor-element.elementor-element-bbf569c .cf7-submit {
    width: 100% !important;
  }
  .wpcf7-list-item-label {
    display: inline-block;
    font-size: 10px !important;
  }
}/* End custom CSS */