.elementor-1979 .elementor-element.elementor-element-8dadc27{--display:flex;--min-height:220px;--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;--margin-top:10px;--margin-bottom:10px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1979 .elementor-element.elementor-element-8dadc27:not(.elementor-motion-effects-element-type-background), .elementor-1979 .elementor-element.elementor-element-8dadc27 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1F293708;}.elementor-1979 .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-1979 .elementor-element.elementor-element-951d9e5{width:var( --container-widget-width, 86% );max-width:86%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 7px) 0px;padding:12px 0px 0px 0px;--container-widget-width:86%;--container-widget-flex-grow:0;text-align:start;}.elementor-1979 .elementor-element.elementor-element-951d9e5 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:24px;font-weight:500;line-height:31px;color:var( --e-global-color-primary );}.elementor-1979 .elementor-element.elementor-element-cc0cd8d{--display:flex;--justify-content:center;}.elementor-1979 .elementor-element.elementor-element-bbf569c{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}@media(max-width:1024px) and (min-width:768px){.elementor-1979 .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-1979 .elementor-element.elementor-element-8dadc27{--padding-top:0px;--padding-bottom:0px;--padding-left:70px;--padding-right:70px;}}@media(max-width:1200px){.elementor-1979 .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-1979 .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-1979 .elementor-element.elementor-element-951d9e5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-1979 .elementor-element.elementor-element-951d9e5 .elementor-heading-title{font-size:17px;line-height:22px;}.elementor-1979 .elementor-element.elementor-element-8dadc27{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:25px;--padding-right:25px;}}/* Start custom CSS for shortcode, class: .elementor-element-bbf569c */.elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-form * {
  box-sizing: border-box;
  font-family: Montserrat;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .form-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .flex-input { flex: 1; }
.elementor-1979 .elementor-element.elementor-element-bbf569c .flex-button { flex: 0 0 auto; 
margin-top: -1px!important; }

.elementor-1979 .elementor-element.elementor-element-bbf569c .form-group {
  position: relative;
  margin: 0;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-input {
  background: transparent;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7 input[type="email"] {
  margin-bottom: 10px!important;
border: 1px solid rgba(31, 41, 55, 0.10)!important;
  padding: 12px 16px!important;
  font-size: 16px!important;
  color: #1F2937;
  background: #FFF;
  border-radius: 16px;

}

.elementor-1979 .elementor-element.elementor-element-bbf569c label {
  margin-top: 14px;
  color: black!important;
  z-index: 9!important;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c p {
  width: 100%;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-input::placeholder {
  color: rgba(31, 41, 55, 0.70);
  padding: 0!important;
  margin: 0;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-acceptance label {
  font-size: 15px!important;
  margin-top: -5px!important;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .form-group label {
  position: absolute;
  left: 0;
  transform: translateY(-50%);
  font-size: 16px;
  color: black;
  transition: all .2s ease;
}


.elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-input:focus + label,
.elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-input:not(:placeholder-shown) + label {
  top: -8px;
  font-size: 14px;
  color: black!important;
  opacity: 0.6!important;
}
.elementor-1979 .elementor-element.elementor-element-bbf569c input:focus{
    border: none!Important;
}

.wpcf7-submit {
  width: 100%;
padding: 14px 57px;
background:
    /* sombra suave arriba izquierda */
    radial-gradient(
      120% 140% at 0% 0%,
      rgba(31,41,55,0.10) 0%,
      rgba(31,41,55,0.05) 35%,
      rgba(31,41,55,0.03) 60%,
      rgba(31,41,55,0.02) 100%
    ),
    /* gradiente base glass */
    linear-gradient(
      180deg,
      rgba(31,41,55,0.02) 0%,
      rgba(31,41,55,0.05) 50%,
      rgba(31,41,55,0.02) 100%
    );
    
    color: #1F2937;
    
  font-size: 16px;
  font-weight: 600;
  border: none;
  border-radius: 108px;
  cursor: pointer;
  transition: background-color .2s;
  font-family: 'Montserrat', sans-serif;


}
.wpcf7-submit::before{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;

   background:
    linear-gradient(
      180deg,
      rgba(255,255,255,0) 55%,
      rgba(255,255,255,0.10) 70%,
      rgba(255,255,255,0.18) 85%,
      rgba(255,255,255,0.25) 100%
    );


  pointer-events: none;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-submit:hover {
  background-color: #1F2937;
  color: #fff;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group {
  display: flex;
  align-items: flex-start;
  margin-top: 10px;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group .wpcf7-list-item {
  display: flex;
  align-items: flex-start;
}
/* Checkbox base */
.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]{
  appearance: none;
  -webkit-appearance: none;

  width: 16px;
  height: 16px;
  min-width: 16px;

  border: 1px solid #1F2937;
  border-radius: 3px;
  background: transparent;

  cursor: pointer;
  position: relative;

  outline: none;
  box-shadow: none;
  margin-bottom: -2px;
}

/* Quitar efectos nativos de focus */
.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]:focus,
.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]:focus-visible{
  outline: none;
  box-shadow: none;
}

/* Cuadro interno (solo visible cuando está activo) */
.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]::before{
  content: "";
  position: absolute;
  inset: 3px;
  background: #1F2937;
  border-radius: 2px;

  opacity: 0;
  transform: scale(0.85);
  transition: opacity .15s ease, transform .15s ease;
}

/* Estado activo */
.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]:checked::before{
  opacity: 1;
  transform: scale(1);
}


.elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-form-control-wrap {
  width: 100%!important;
}
.elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-not-valid-tip{
    font-size: 15px!important;
}
.elementor-1979 .elementor-element.elementor-element-bbf569c input:focus {
    border-bottom: 1px solid black!Important;
    outline: none !important;
    box-shadow: none !important;
}
.wpcf7-not-valid-tip{
    margin-top: -10px;
}

/* Responsive */
@media (max-width: 600px) {
  .elementor-1979 .elementor-element.elementor-element-bbf569c .form-row {
    flex-direction: column;
  }
  .elementor-1979 .elementor-element.elementor-element-bbf569c .flex-button {
    width: 100%;
  }
  .elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-submit {
    width: 100%!important;
  }
  .elementor-1979 .elementor-element.elementor-element-bbf569c .form-group.flex-button {
    margin-top: -30px!important;
  }
}

@media screen and (max-width: 767px) {
  .elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-acceptance {
    margin-top: 20px!important;
  }
  .elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-submit {
    margin-bottom: 30px;
  }


  .elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 17px!important;
    height: 17px;
}

}
.wpcf7-response-output {
    position: fixed;
    top: 100px;
    right: 20px;
    background-color: black;
    color: black!important;
    padding: 10px 24px !important;
    border-radius: 8px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.09);
    z-index: 9999;
    font-size: 15px !important;
    line-height: 20px !important;
    max-width: 400px;
    display: flex
;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    border: none !important;
    font-family: Geologica, sans-serif;
}
.wpcf7-spinner{
    display: none!important;
}
.wpcf7-not-valid-tip{
    display: none;
}
.wpcf7-list-item-label{
    color: #1F2937;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c a{
    color: #1F2937;
font-family: Montserrat;
font-size: 15px!important;
font-style: normal;
font-weight: 500;
line-height: 150%;
text-decoration-line: underline;
text-decoration-style: solid;
text-decoration-skip-ink: auto;
text-decoration-thickness: auto;
text-underline-offset: auto;
text-underline-position: from-font;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-bbf569c */.elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-form * {
  box-sizing: border-box;
  font-family: Montserrat;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .form-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .flex-input { flex: 1; }
.elementor-1979 .elementor-element.elementor-element-bbf569c .flex-button { flex: 0 0 auto; 
margin-top: -1px!important; }

.elementor-1979 .elementor-element.elementor-element-bbf569c .form-group {
  position: relative;
  margin: 0;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-input {
  background: transparent;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7 input[type="email"] {
  margin-bottom: 10px!important;
border: 1px solid rgba(31, 41, 55, 0.10)!important;
  padding: 12px 16px!important;
  font-size: 16px!important;
  color: #1F2937;
  background: #FFF;
  border-radius: 16px;

}

.elementor-1979 .elementor-element.elementor-element-bbf569c label {
  margin-top: 14px;
  color: black!important;
  z-index: 9!important;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c p {
  width: 100%;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-input::placeholder {
  color: rgba(31, 41, 55, 0.70);
  padding: 0!important;
  margin: 0;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-acceptance label {
  font-size: 15px!important;
  margin-top: -5px!important;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .form-group label {
  position: absolute;
  left: 0;
  transform: translateY(-50%);
  font-size: 16px;
  color: black;
  transition: all .2s ease;
}


.elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-input:focus + label,
.elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-input:not(:placeholder-shown) + label {
  top: -8px;
  font-size: 14px;
  color: black!important;
  opacity: 0.6!important;
}
.elementor-1979 .elementor-element.elementor-element-bbf569c input:focus{
    border: none!Important;
}

.wpcf7-submit {
  width: 100%;
padding: 14px 57px;
background:
    /* sombra suave arriba izquierda */
    radial-gradient(
      120% 140% at 0% 0%,
      rgba(31,41,55,0.10) 0%,
      rgba(31,41,55,0.05) 35%,
      rgba(31,41,55,0.03) 60%,
      rgba(31,41,55,0.02) 100%
    ),
    /* gradiente base glass */
    linear-gradient(
      180deg,
      rgba(31,41,55,0.02) 0%,
      rgba(31,41,55,0.05) 50%,
      rgba(31,41,55,0.02) 100%
    );
    
    color: #1F2937;
    
  font-size: 16px;
  font-weight: 600;
  border: none;
  border-radius: 108px;
  cursor: pointer;
  transition: background-color .2s;
  font-family: 'Montserrat', sans-serif;


}
.wpcf7-submit::before{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;

   background:
    linear-gradient(
      180deg,
      rgba(255,255,255,0) 55%,
      rgba(255,255,255,0.10) 70%,
      rgba(255,255,255,0.18) 85%,
      rgba(255,255,255,0.25) 100%
    );


  pointer-events: none;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-submit:hover {
  background-color: #1F2937;
  color: #fff;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group {
  display: flex;
  align-items: flex-start;
  margin-top: 10px;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group .wpcf7-list-item {
  display: flex;
  align-items: flex-start;
}
/* Checkbox base */
.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]{
  appearance: none;
  -webkit-appearance: none;

  width: 16px;
  height: 16px;
  min-width: 16px;

  border: 1px solid #1F2937;
  border-radius: 3px;
  background: transparent;

  cursor: pointer;
  position: relative;

  outline: none;
  box-shadow: none;
  margin-bottom: -2px;
}

/* Quitar efectos nativos de focus */
.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]:focus,
.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]:focus-visible{
  outline: none;
  box-shadow: none;
}

/* Cuadro interno (solo visible cuando está activo) */
.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]::before{
  content: "";
  position: absolute;
  inset: 3px;
  background: #1F2937;
  border-radius: 2px;

  opacity: 0;
  transform: scale(0.85);
  transition: opacity .15s ease, transform .15s ease;
}

/* Estado activo */
.elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"]:checked::before{
  opacity: 1;
  transform: scale(1);
}


.elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-form-control-wrap {
  width: 100%!important;
}
.elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-not-valid-tip{
    font-size: 15px!important;
}
.elementor-1979 .elementor-element.elementor-element-bbf569c input:focus {
    border-bottom: 1px solid black!Important;
    outline: none !important;
    box-shadow: none !important;
}
.wpcf7-not-valid-tip{
    margin-top: -10px;
}

/* Responsive */
@media (max-width: 600px) {
  .elementor-1979 .elementor-element.elementor-element-bbf569c .form-row {
    flex-direction: column;
  }
  .elementor-1979 .elementor-element.elementor-element-bbf569c .flex-button {
    width: 100%;
  }
  .elementor-1979 .elementor-element.elementor-element-bbf569c .cf7-submit {
    width: 100%!important;
  }
  .elementor-1979 .elementor-element.elementor-element-bbf569c .form-group.flex-button {
    margin-top: -30px!important;
  }
}

@media screen and (max-width: 767px) {
  .elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-acceptance {
    margin-top: 20px!important;
  }
  .elementor-1979 .elementor-element.elementor-element-bbf569c .wpcf7-submit {
    margin-bottom: 30px;
  }


  .elementor-1979 .elementor-element.elementor-element-bbf569c .acceptance-group input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 17px!important;
    height: 17px;
}

}
.wpcf7-response-output {
    position: fixed;
    top: 100px;
    right: 20px;
    background-color: black;
    color: black!important;
    padding: 10px 24px !important;
    border-radius: 8px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.09);
    z-index: 9999;
    font-size: 15px !important;
    line-height: 20px !important;
    max-width: 400px;
    display: flex
;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    border: none !important;
    font-family: Geologica, sans-serif;
}
.wpcf7-spinner{
    display: none!important;
}
.wpcf7-not-valid-tip{
    display: none;
}
.wpcf7-list-item-label{
    color: #1F2937;
}

.elementor-1979 .elementor-element.elementor-element-bbf569c a{
    color: #1F2937;
font-family: Montserrat;
font-size: 15px!important;
font-style: normal;
font-weight: 500;
line-height: 150%;
text-decoration-line: underline;
text-decoration-style: solid;
text-decoration-skip-ink: auto;
text-decoration-thickness: auto;
text-underline-offset: auto;
text-underline-position: from-font;
}/* End custom CSS */