.elementor-20 .elementor-element.elementor-element-349dcea0{--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-20 .elementor-element.elementor-element-72b184ff{--display:flex;}.elementor-20 .elementor-element.elementor-element-2ec2f404 img{width:79%;max-width:100%;}.elementor-20 .elementor-element.elementor-element-c09bbd7{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-20 .elementor-element.elementor-element-4c4f7b46{--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;--justify-content:center;}.elementor-20 .elementor-element.elementor-element-4c4f7b46.e-con{--align-self:center;}.elementor-20 .elementor-element.elementor-element-622d8b95{--display:flex;}.elementor-20 .elementor-element.elementor-element-448e29e4{--display:flex;}.elementor-20 .elementor-element.elementor-element-72aee80f{--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-20 .elementor-element.elementor-element-aa5911a{--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-20 .elementor-element.elementor-element-1413c7c6{--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-20 .elementor-element.elementor-element-28486fe{--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-20 .elementor-element.elementor-element-236eac9{--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-20 .elementor-element.elementor-element-a9242d1{--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-20 .elementor-element.elementor-element-cf240c9{--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-20 .elementor-element.elementor-element-ee5a2ee{--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-20 .elementor-element.elementor-element-bcdc0c6{--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-20 .elementor-element.elementor-element-9881473{--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-20 .elementor-element.elementor-element-5569aaa{--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-20 .elementor-element.elementor-element-814b618{--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;--justify-content:center;}.elementor-20 .elementor-element.elementor-element-d46687f{--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-20 .elementor-element.elementor-element-1da70e7{--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-20 .elementor-element.elementor-element-dbc95d9{--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-20 .elementor-element.elementor-element-d16c5d7{--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-20 .elementor-element.elementor-element-dbc5ac0{--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-20 .elementor-element.elementor-element-a2babac{--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-20 .elementor-element.elementor-element-27b15f9{--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-20 .elementor-element.elementor-element-2927fc3{--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-20 .elementor-element.elementor-element-f9ef5fe{--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-20 .elementor-element.elementor-element-152f8bf{--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-20 .elementor-element.elementor-element-dba0ae2{--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-20 .elementor-element.elementor-element-12270b0{--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-20 .elementor-element.elementor-element-253ad05{--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-20 .elementor-element.elementor-element-c721f87{--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;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-20 .elementor-element.elementor-element-72b184ff{--width:50%;}.elementor-20 .elementor-element.elementor-element-c09bbd7{--width:50%;}.elementor-20 .elementor-element.elementor-element-aa5911a{--width:25%;}.elementor-20 .elementor-element.elementor-element-1413c7c6{--width:25%;}.elementor-20 .elementor-element.elementor-element-28486fe{--width:25%;}.elementor-20 .elementor-element.elementor-element-236eac9{--width:25%;}.elementor-20 .elementor-element.elementor-element-cf240c9{--width:25%;}.elementor-20 .elementor-element.elementor-element-ee5a2ee{--width:25%;}.elementor-20 .elementor-element.elementor-element-bcdc0c6{--width:25%;}.elementor-20 .elementor-element.elementor-element-9881473{--width:25%;}.elementor-20 .elementor-element.elementor-element-814b618{--width:25%;}.elementor-20 .elementor-element.elementor-element-d46687f{--width:25%;}.elementor-20 .elementor-element.elementor-element-1da70e7{--width:25%;}.elementor-20 .elementor-element.elementor-element-dbc95d9{--width:25%;}.elementor-20 .elementor-element.elementor-element-dbc5ac0{--width:25%;}.elementor-20 .elementor-element.elementor-element-a2babac{--width:25%;}.elementor-20 .elementor-element.elementor-element-27b15f9{--width:25%;}.elementor-20 .elementor-element.elementor-element-2927fc3{--width:25%;}.elementor-20 .elementor-element.elementor-element-152f8bf{--width:25%;}.elementor-20 .elementor-element.elementor-element-dba0ae2{--width:25%;}.elementor-20 .elementor-element.elementor-element-12270b0{--width:25%;}.elementor-20 .elementor-element.elementor-element-253ad05{--width:25%;}}/* Start custom CSS for button, class: .elementor-element-2b0ac59b *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-2b0ac59b {
  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-20 .elementor-element.elementor-element-2b0ac59b * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-2b0ac59b: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-20 .elementor-element.elementor-element-2b0ac59b::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-20 .elementor-element.elementor-element-2b0ac59b:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-2b0ac59b span,
.elementor-20 .elementor-element.elementor-element-2b0ac59b .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-2b0ac59b .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-1f7ca6dd *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-1f7ca6dd {
  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-20 .elementor-element.elementor-element-1f7ca6dd * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-1f7ca6dd: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-20 .elementor-element.elementor-element-1f7ca6dd::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-20 .elementor-element.elementor-element-1f7ca6dd:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-1f7ca6dd span,
.elementor-20 .elementor-element.elementor-element-1f7ca6dd .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-1f7ca6dd .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-8507558 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-8507558 {
  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-20 .elementor-element.elementor-element-8507558 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-8507558: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-20 .elementor-element.elementor-element-8507558::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-20 .elementor-element.elementor-element-8507558:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-8507558 span,
.elementor-20 .elementor-element.elementor-element-8507558 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-8507558 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-3c9ea7b *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-3c9ea7b {
  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-20 .elementor-element.elementor-element-3c9ea7b * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-3c9ea7b: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-20 .elementor-element.elementor-element-3c9ea7b::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-20 .elementor-element.elementor-element-3c9ea7b:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-3c9ea7b span,
.elementor-20 .elementor-element.elementor-element-3c9ea7b .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-3c9ea7b .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-fef8d49 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-fef8d49 {
  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-20 .elementor-element.elementor-element-fef8d49 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-fef8d49: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-20 .elementor-element.elementor-element-fef8d49::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-20 .elementor-element.elementor-element-fef8d49:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-fef8d49 span,
.elementor-20 .elementor-element.elementor-element-fef8d49 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-fef8d49 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-3470b0b *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-3470b0b {
  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-20 .elementor-element.elementor-element-3470b0b * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-3470b0b: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-20 .elementor-element.elementor-element-3470b0b::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-20 .elementor-element.elementor-element-3470b0b:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-3470b0b span,
.elementor-20 .elementor-element.elementor-element-3470b0b .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-3470b0b .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-06040e0 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-06040e0 {
  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-20 .elementor-element.elementor-element-06040e0 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-06040e0: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-20 .elementor-element.elementor-element-06040e0::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-20 .elementor-element.elementor-element-06040e0:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-06040e0 span,
.elementor-20 .elementor-element.elementor-element-06040e0 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-06040e0 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-0194c7e *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-0194c7e {
  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-20 .elementor-element.elementor-element-0194c7e * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-0194c7e: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-20 .elementor-element.elementor-element-0194c7e::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-20 .elementor-element.elementor-element-0194c7e:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-0194c7e span,
.elementor-20 .elementor-element.elementor-element-0194c7e .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-0194c7e .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a06574f *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-a06574f {
  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-20 .elementor-element.elementor-element-a06574f * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-a06574f: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-20 .elementor-element.elementor-element-a06574f::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-20 .elementor-element.elementor-element-a06574f:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-a06574f span,
.elementor-20 .elementor-element.elementor-element-a06574f .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-a06574f .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-c6f28ac *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-c6f28ac {
  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-20 .elementor-element.elementor-element-c6f28ac * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-c6f28ac: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-20 .elementor-element.elementor-element-c6f28ac::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-20 .elementor-element.elementor-element-c6f28ac:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-c6f28ac span,
.elementor-20 .elementor-element.elementor-element-c6f28ac .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-c6f28ac .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-2030e13 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-2030e13 {
  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-20 .elementor-element.elementor-element-2030e13 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-2030e13: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-20 .elementor-element.elementor-element-2030e13::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-20 .elementor-element.elementor-element-2030e13:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-2030e13 span,
.elementor-20 .elementor-element.elementor-element-2030e13 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-2030e13 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-2378bdc *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-2378bdc {
  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-20 .elementor-element.elementor-element-2378bdc * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-2378bdc: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-20 .elementor-element.elementor-element-2378bdc::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-20 .elementor-element.elementor-element-2378bdc:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-2378bdc span,
.elementor-20 .elementor-element.elementor-element-2378bdc .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-2378bdc .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-48333c0 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-48333c0 {
  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-20 .elementor-element.elementor-element-48333c0 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-48333c0: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-20 .elementor-element.elementor-element-48333c0::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-20 .elementor-element.elementor-element-48333c0:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-48333c0 span,
.elementor-20 .elementor-element.elementor-element-48333c0 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-48333c0 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-4c9e358 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-4c9e358 {
  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-20 .elementor-element.elementor-element-4c9e358 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-4c9e358: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-20 .elementor-element.elementor-element-4c9e358::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-20 .elementor-element.elementor-element-4c9e358:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-4c9e358 span,
.elementor-20 .elementor-element.elementor-element-4c9e358 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-4c9e358 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-6e34902 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-6e34902 {
  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-20 .elementor-element.elementor-element-6e34902 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-6e34902: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-20 .elementor-element.elementor-element-6e34902::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-20 .elementor-element.elementor-element-6e34902:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-6e34902 span,
.elementor-20 .elementor-element.elementor-element-6e34902 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-6e34902 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-8a7612c *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-8a7612c {
  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-20 .elementor-element.elementor-element-8a7612c * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-8a7612c: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-20 .elementor-element.elementor-element-8a7612c::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-20 .elementor-element.elementor-element-8a7612c:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-8a7612c span,
.elementor-20 .elementor-element.elementor-element-8a7612c .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-8a7612c .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-0d75a64 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-0d75a64 {
  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-20 .elementor-element.elementor-element-0d75a64 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-0d75a64: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-20 .elementor-element.elementor-element-0d75a64::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-20 .elementor-element.elementor-element-0d75a64:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-0d75a64 span,
.elementor-20 .elementor-element.elementor-element-0d75a64 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-0d75a64 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-33cba93 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-33cba93 {
  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-20 .elementor-element.elementor-element-33cba93 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-33cba93: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-20 .elementor-element.elementor-element-33cba93::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-20 .elementor-element.elementor-element-33cba93:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-33cba93 span,
.elementor-20 .elementor-element.elementor-element-33cba93 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-33cba93 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-33b70ba *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-33b70ba {
  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-20 .elementor-element.elementor-element-33b70ba * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-33b70ba: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-20 .elementor-element.elementor-element-33b70ba::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-20 .elementor-element.elementor-element-33b70ba:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-33b70ba span,
.elementor-20 .elementor-element.elementor-element-33b70ba .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-33b70ba .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-1870193 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-1870193 {
  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-20 .elementor-element.elementor-element-1870193 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-1870193: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-20 .elementor-element.elementor-element-1870193::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-20 .elementor-element.elementor-element-1870193:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-1870193 span,
.elementor-20 .elementor-element.elementor-element-1870193 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-1870193 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-0032549 *//* Estilos base para el botón con gama de negros */
.elementor-20 .elementor-element.elementor-element-0032549 {
  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-20 .elementor-element.elementor-element-0032549 * {
  background: transparent !important;
  box-shadow: none !important;
}

/* Efecto de animación al hacer hover: invierte degradado a gris claro y oscuro */
.elementor-20 .elementor-element.elementor-element-0032549: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-20 .elementor-element.elementor-element-0032549::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-20 .elementor-element.elementor-element-0032549:hover::after {
  width: 240%;
  height: 650%;
}

/* El texto del botón siempre por encima de la animación */
.elementor-20 .elementor-element.elementor-element-0032549 span,
.elementor-20 .elementor-element.elementor-element-0032549 .elementor-button-content-wrapper,
.elementor-20 .elementor-element.elementor-element-0032549 .elementor-button-text {
  position: relative;
  z-index: 2;
}/* End custom CSS */