.elementor-88 .elementor-element.elementor-element-33862f4{--display:flex;}.elementor-88 .elementor-element.elementor-element-ce9ff68{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-88 .elementor-element.elementor-element-ce9ff68 .elementor-divider-separator{width:100%;}.elementor-88 .elementor-element.elementor-element-ce9ff68 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-88 .elementor-element.elementor-element-6030918{--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:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-88 .elementor-element.elementor-element-bf40cd0{--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-88 .elementor-element.elementor-element-803abdc{text-align:center;}.elementor-88 .elementor-element.elementor-element-cf521a3{--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-88 .elementor-element.elementor-element-5e0fdca{text-align:center;}.elementor-88 .elementor-element.elementor-element-81a8692{--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-88 .elementor-element.elementor-element-b57274a{text-align:center;}.elementor-88 .elementor-element.elementor-element-c3b2c41{--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-88 .elementor-element.elementor-element-32f4b9b{text-align:center;}.elementor-88 .elementor-element.elementor-element-0a97d4c{--display:flex;}.elementor-88 .elementor-element.elementor-element-320893f{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-88 .elementor-element.elementor-element-320893f .elementor-divider-separator{width:100%;}.elementor-88 .elementor-element.elementor-element-320893f .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-88 .elementor-element.elementor-element-4250ffd{--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:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-88 .elementor-element.elementor-element-6046b7d{--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-88 .elementor-element.elementor-element-fb5a8ad{text-align:center;}.elementor-88 .elementor-element.elementor-element-b537ee0{--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-88 .elementor-element.elementor-element-f82d8f5{text-align:center;}.elementor-88 .elementor-element.elementor-element-3d475dd{--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-88 .elementor-element.elementor-element-2c46c1d{text-align:center;}.elementor-88 .elementor-element.elementor-element-b8e1949{--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-88 .elementor-element.elementor-element-23a9ac0{text-align:center;}.elementor-88 .elementor-element.elementor-element-94dc905{--display:flex;}.elementor-88 .elementor-element.elementor-element-f38ce02{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-88 .elementor-element.elementor-element-f38ce02 .elementor-divider-separator{width:100%;}.elementor-88 .elementor-element.elementor-element-f38ce02 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-88 .elementor-element.elementor-element-2ca6d27{--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:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-88 .elementor-element.elementor-element-ef80ed5{--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-88 .elementor-element.elementor-element-90523a7{text-align:center;}.elementor-88 .elementor-element.elementor-element-0fe3fa6{--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-88 .elementor-element.elementor-element-6182874{text-align:center;}.elementor-88 .elementor-element.elementor-element-d82657e{--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-88 .elementor-element.elementor-element-735fd50{text-align:center;}.elementor-88 .elementor-element.elementor-element-9d2ece5{--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-88 .elementor-element.elementor-element-2231c32{text-align:center;}.elementor-88 .elementor-element.elementor-element-69808a1{--display:flex;}.elementor-88 .elementor-element.elementor-element-df8b384{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-88 .elementor-element.elementor-element-df8b384 .elementor-divider-separator{width:100%;}.elementor-88 .elementor-element.elementor-element-df8b384 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-88 .elementor-element.elementor-element-7ceb1ac{--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:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-88 .elementor-element.elementor-element-d5287c2{--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-88 .elementor-element.elementor-element-228797e{text-align:center;}.elementor-88 .elementor-element.elementor-element-83fd9f3{--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-88 .elementor-element.elementor-element-4f20781{text-align:center;}.elementor-88 .elementor-element.elementor-element-9e12c5e{--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-88 .elementor-element.elementor-element-73b93b0{text-align:center;}.elementor-88 .elementor-element.elementor-element-ec9d2c1{--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-88 .elementor-element.elementor-element-cff623e{text-align:center;}.elementor-88 .elementor-element.elementor-element-fad57a8{--display:flex;}.elementor-88 .elementor-element.elementor-element-cde738c{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-88 .elementor-element.elementor-element-cde738c .elementor-divider-separator{width:100%;}.elementor-88 .elementor-element.elementor-element-cde738c .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-88 .elementor-element.elementor-element-45dbf96{--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:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-88 .elementor-element.elementor-element-d44cdc2{--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-88 .elementor-element.elementor-element-59458ee{text-align:center;}.elementor-88 .elementor-element.elementor-element-63aa187{--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-88 .elementor-element.elementor-element-1283262{text-align:center;}.elementor-88 .elementor-element.elementor-element-0c2651e{--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-88 .elementor-element.elementor-element-5f1cb94{text-align:center;}.elementor-88 .elementor-element.elementor-element-fd009f5{--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-88 .elementor-element.elementor-element-51e9859{text-align:center;}.elementor-88 .elementor-element.elementor-element-bc6d481{--display:flex;}.elementor-88 .elementor-element.elementor-element-8657079{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-88 .elementor-element.elementor-element-8657079 .elementor-divider-separator{width:100%;}.elementor-88 .elementor-element.elementor-element-8657079 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-88 .elementor-element.elementor-element-bf40cd0{--width:25%;}.elementor-88 .elementor-element.elementor-element-cf521a3{--width:25%;}.elementor-88 .elementor-element.elementor-element-81a8692{--width:25%;}.elementor-88 .elementor-element.elementor-element-c3b2c41{--width:25%;}.elementor-88 .elementor-element.elementor-element-6046b7d{--width:25%;}.elementor-88 .elementor-element.elementor-element-b537ee0{--width:25%;}.elementor-88 .elementor-element.elementor-element-3d475dd{--width:25%;}.elementor-88 .elementor-element.elementor-element-b8e1949{--width:25%;}.elementor-88 .elementor-element.elementor-element-ef80ed5{--width:25%;}.elementor-88 .elementor-element.elementor-element-0fe3fa6{--width:25%;}.elementor-88 .elementor-element.elementor-element-d82657e{--width:25%;}.elementor-88 .elementor-element.elementor-element-9d2ece5{--width:25%;}.elementor-88 .elementor-element.elementor-element-d5287c2{--width:25%;}.elementor-88 .elementor-element.elementor-element-83fd9f3{--width:25%;}.elementor-88 .elementor-element.elementor-element-9e12c5e{--width:25%;}.elementor-88 .elementor-element.elementor-element-ec9d2c1{--width:25%;}.elementor-88 .elementor-element.elementor-element-d44cdc2{--width:25%;}.elementor-88 .elementor-element.elementor-element-63aa187{--width:25%;}.elementor-88 .elementor-element.elementor-element-0c2651e{--width:25%;}.elementor-88 .elementor-element.elementor-element-fd009f5{--width:25%;}}/* Start custom CSS for button, class: .elementor-element-bd7a295 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-bd7a295 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-bd7a295 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-bd7a295:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-bd7a295::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-bd7a295:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-bd7a295 span,
.elementor-88 .elementor-element.elementor-element-bd7a295 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-bd7a295 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-3e77445 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-3e77445 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-3e77445 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-3e77445:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-3e77445::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-3e77445:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-3e77445 span,
.elementor-88 .elementor-element.elementor-element-3e77445 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-3e77445 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-81d2af3 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-81d2af3 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-81d2af3 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-81d2af3:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-81d2af3::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-81d2af3:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-81d2af3 span,
.elementor-88 .elementor-element.elementor-element-81d2af3 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-81d2af3 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-64ae747 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-64ae747 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-64ae747 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-64ae747:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-64ae747::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-64ae747:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-64ae747 span,
.elementor-88 .elementor-element.elementor-element-64ae747 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-64ae747 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-4a3bdc8 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-4a3bdc8 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-4a3bdc8 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-4a3bdc8:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-4a3bdc8::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-4a3bdc8:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-4a3bdc8 span,
.elementor-88 .elementor-element.elementor-element-4a3bdc8 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-4a3bdc8 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-2849946 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-2849946 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-2849946 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-2849946:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-2849946::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-2849946:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-2849946 span,
.elementor-88 .elementor-element.elementor-element-2849946 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-2849946 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-dc68041 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-dc68041 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-dc68041 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-dc68041:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-dc68041::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-dc68041:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-dc68041 span,
.elementor-88 .elementor-element.elementor-element-dc68041 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-dc68041 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-773fb59 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-773fb59 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-773fb59 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-773fb59:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-773fb59::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-773fb59:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-773fb59 span,
.elementor-88 .elementor-element.elementor-element-773fb59 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-773fb59 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ae3758f *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-ae3758f {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-ae3758f * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-ae3758f:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-ae3758f::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-ae3758f:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-ae3758f span,
.elementor-88 .elementor-element.elementor-element-ae3758f .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-ae3758f .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-4fdf2dc *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-4fdf2dc {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-4fdf2dc * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-4fdf2dc:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-4fdf2dc::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-4fdf2dc:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-4fdf2dc span,
.elementor-88 .elementor-element.elementor-element-4fdf2dc .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-4fdf2dc .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-c63b633 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-c63b633 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-c63b633 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-c63b633:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-c63b633::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-c63b633:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-c63b633 span,
.elementor-88 .elementor-element.elementor-element-c63b633 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-c63b633 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5beb80a *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-5beb80a {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-5beb80a * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-5beb80a:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-5beb80a::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-5beb80a:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-5beb80a span,
.elementor-88 .elementor-element.elementor-element-5beb80a .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-5beb80a .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-3d9ea03 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-3d9ea03 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-3d9ea03 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-3d9ea03:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-3d9ea03::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-3d9ea03:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-3d9ea03 span,
.elementor-88 .elementor-element.elementor-element-3d9ea03 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-3d9ea03 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-2399bf5 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-2399bf5 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-2399bf5 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-2399bf5:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-2399bf5::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-2399bf5:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-2399bf5 span,
.elementor-88 .elementor-element.elementor-element-2399bf5 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-2399bf5 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-95385d1 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-95385d1 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-95385d1 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-95385d1:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-95385d1::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-95385d1:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-95385d1 span,
.elementor-88 .elementor-element.elementor-element-95385d1 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-95385d1 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-7c767cc *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-7c767cc {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-7c767cc * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-7c767cc:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-7c767cc::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-7c767cc:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-7c767cc span,
.elementor-88 .elementor-element.elementor-element-7c767cc .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-7c767cc .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-020f1f4 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-020f1f4 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-020f1f4 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-020f1f4:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-020f1f4::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-020f1f4:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-020f1f4 span,
.elementor-88 .elementor-element.elementor-element-020f1f4 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-020f1f4 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a75747a *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-a75747a {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-a75747a * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-a75747a:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-a75747a::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-a75747a:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-a75747a span,
.elementor-88 .elementor-element.elementor-element-a75747a .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-a75747a .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-0d49ed4 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-0d49ed4 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-0d49ed4 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-0d49ed4:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-0d49ed4::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-0d49ed4:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-0d49ed4 span,
.elementor-88 .elementor-element.elementor-element-0d49ed4 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-0d49ed4 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a1d5ef2 *//* Estilos base para el botón con gama de negros */
.elementor-88 .elementor-element.elementor-element-a1d5ef2 {
  background: linear-gradient(90deg, #232526 0%, #434343 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 12px 32px;
  font-weight: bold;
  font-size: 1rem;
  letter-spacing: 1px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
  transition: 
    transform 0.2s cubic-bezier(.25,.8,.25,1),
    box-shadow 0.2s cubic-bezier(.25,.8,.25,1),
    background 0.4s cubic-bezier(.25,.8,.25,1);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

/* Elimina cualquier fondo de los hijos del botón */
.elementor-88 .elementor-element.elementor-element-a1d5ef2 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-88 .elementor-element.elementor-element-a1d5ef2:hover {
  background: linear-gradient(90deg, #434343 0%, #232526 100%);
  transform: translateY(-3px) scale(1.06) rotate(-1deg);
  box-shadow: 0 8px 32px rgba(35,37,38,0.25);
}

/* Onda animada blanca al hacer hover */
.elementor-88 .elementor-element.elementor-element-a1d5ef2::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  background: rgba(255,255,255,0.10);
  transform: translate(-50%, -50%);
  border-radius: 100%;
  transition: width 0.5s, height 0.5s;
  z-index: 1;
}

.elementor-88 .elementor-element.elementor-element-a1d5ef2:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-88 .elementor-element.elementor-element-a1d5ef2 span,
.elementor-88 .elementor-element.elementor-element-a1d5ef2 .elementor-button-content-wrapper,
.elementor-88 .elementor-element.elementor-element-a1d5ef2 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */