.elementor-2083 .elementor-element.elementor-element-7f4c95e > .elementor-container{min-height:653px;}.elementor-2083 .elementor-element.elementor-element-9ffcba3 > .elementor-element-populated{margin:0% 10% 0% 10%;--e-column-margin-right:10%;--e-column-margin-left:10%;padding:15% 15% 15% 15%;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2083 .elementor-element.elementor-element-4667519 .elementor-heading-title{color:var( --e-global-color-8b7cf86 );}.elementor-widget-text-editor{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2083 .elementor-element.elementor-element-e4372b9:not(.elementor-motion-effects-element-type-background), .elementor-2083 .elementor-element.elementor-element-e4372b9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00000000;}.elementor-2083 .elementor-element.elementor-element-e4372b9{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-2083 .elementor-element.elementor-element-e4372b9 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2083 .elementor-element.elementor-element-ce71718 .elementor-button{background-color:#00000000;font-family:"Roboto", Sans-serif;font-size:27px;font-weight:500;border-style:none;border-radius:0px 0px 0px 0px;padding:2px 2px 2px 2px;}.elementor-2083 .elementor-element.elementor-element-ce71718{width:auto;max-width:auto;}.elementor-2083 .elementor-element.elementor-element-ce71718 > .elementor-widget-container{margin:0% 0% 0% 0%;}.elementor-2083 .elementor-element.elementor-element-6f4cbfa .elementor-button{background-color:var( --e-global-color-secondary );font-family:"Roboto", Sans-serif;font-size:27px;font-weight:500;fill:var( --e-global-color-8b7cf86 );color:var( --e-global-color-8b7cf86 );border-style:none;border-radius:17px 17px 17px 17px;padding:12px 12px 12px 12px;}.elementor-2083 .elementor-element.elementor-element-6f4cbfa{width:auto;max-width:auto;}.elementor-2083 .elementor-element.elementor-element-6f4cbfa > .elementor-widget-container{margin:0% 0% 0% 0%;}.elementor-2083 .elementor-element.elementor-element-b96051e{padding:5% 0% 0% 0%;}.elementor-2083 .elementor-element.elementor-element-2f5b8f0 .elementor-heading-title{color:var( --e-global-color-secondary );}.elementor-widget-posts .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-2083 .elementor-element.elementor-element-84390c4{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-2083 .elementor-element.elementor-element-84390c4 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.66 * 100% );}.elementor-2083 .elementor-element.elementor-element-84390c4:after{content:"0.66";}.elementor-2083 .elementor-element.elementor-element-84390c4 .elementor-post__thumbnail__link{width:100%;}.elementor-2083 .elementor-element.elementor-element-84390c4 .elementor-post__meta-data span + span:before{content:"///";}.elementor-2083 .elementor-element.elementor-element-84390c4.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:20px;}.elementor-2083 .elementor-element.elementor-element-84390c4.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:20px;}.elementor-2083 .elementor-element.elementor-element-84390c4.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:20px;}body.elementor-page-2083:not(.elementor-motion-effects-element-type-background), body.elementor-page-2083 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}@media(max-width:1366px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-posts .elementor-post__excerpt p{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-posts .elementor-post__excerpt p{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-posts .elementor-post__excerpt p{font-size:var( --e-global-typography-text-font-size );}.elementor-2083 .elementor-element.elementor-element-84390c4 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-2083 .elementor-element.elementor-element-84390c4:after{content:"0.5";}.elementor-2083 .elementor-element.elementor-element-84390c4 .elementor-post__thumbnail__link{width:100%;}}/* Start custom CSS for section, class: .elementor-element-7f4c95e */.hero-digital {
  position: relative; /* Asegúrate de tener position relative */
  overflow: hidden;   /* Para que el pseudo-elemento no se desborde */
}

.hero-digital::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 80px; /* Ajusta la altura según la transición deseada */
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #ffffff);
  pointer-events: none; /* No afecta la interacción */
  z-index: 1; /* Asegura que el degradado se posicione por encima del fondo, pero sin bloquear el contenido si ya está en un z-index mayor */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ce71718 *//* ----- Efectos para el botón con clase .glitch-follow-btn ----- */

/* Asegurarse que el botón tiene posición relativa y permite mostrar efectos fuera de sus límites */
.glitch-follow-btn {
  position: relative;
  overflow: visible;
}

/* Pseudo-elementos para mostrar capas en hover. Estas capas no se ven por defecto (opacity: 0). */
.glitch-follow-btn::before,
.glitch-follow-btn::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;  /* Usa el mismo radio de borde que el botón */
  z-index: -1;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

/* Capa de fondo para hover: color rojo (#e3001e) */
.glitch-follow-btn::before {
  background-color: #e3001e;
}

/* Capa de fondo para hover: color negro */
.glitch-follow-btn::after {
  background-color: #000;
}

/* Al pasar el cursor, se activan las animaciones de las capas */
.glitch-follow-btn:hover::before {
  opacity: 1;
  animation: shakeBefore 0.3s infinite;
}
.glitch-follow-btn:hover::after {
  opacity: 1;
  animation: shakeAfter 0.3s infinite;
}

/* Animación para la capa roja (pseudo ::before) con movimiento agresivo en el eje X (izquierda) */
@keyframes shakeBefore {
  0%   { transform: translate(-20px, -6px); }
  25%  { transform: translate(-15px, -6px); }
  50%  { transform: translate(-20px, -6px); }
  75%  { transform: translate(-25px, -6px); }
  100% { transform: translate(-20px, -6px); }
}

/* Animación para la capa negra (pseudo ::after) con movimiento agresivo en el eje X (derecha) */
@keyframes shakeAfter {
  0%   { transform: translate(20px, 6px); }
  25%  { transform: translate(15px, 6px); }
  50%  { transform: translate(20px, 6px); }
  75%  { transform: translate(25px, 6px); }
  100% { transform: translate(20px, 6px); }
}

/* Clase que se añadirá para desvanecer el botón tras hacer click (para que se vea la explosión) */
.glitch-follow-btn.disappear {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

/* Estilos para los píxeles de la explosión */
.pixel {
  position: absolute;
  width: 5px;
  height: 5px;
  background-color: #e3001e; /* Píxeles de color rojo */
  opacity: 1;
  animation: pixelExplode 0.8s forwards;
}

@keyframes pixelExplode {
  0% {
    opacity: 1;
    transform: translate(0, 0) scale(1);
  }
  100% {
    opacity: 0;
    transform: translate(var(--dx), var(--dy)) scale(0.2);
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-6f4cbfa *//* ----- Efectos para el botón con clase .glitch-follow-btn ----- */

/* Asegurarse que el botón tiene posición relativa y permite mostrar efectos fuera de sus límites */
.glitch-follow-btn {
  position: relative;
  overflow: visible;
}

/* Pseudo-elementos para mostrar capas en hover. Estas capas no se ven por defecto (opacity: 0). */
.glitch-follow-btn::before,
.glitch-follow-btn::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;  /* Usa el mismo radio de borde que el botón */
  z-index: -1;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

/* Capa de fondo para hover: color rojo (#e3001e) */
.glitch-follow-btn::before {
  background-color: #e3001e;
}

/* Capa de fondo para hover: color negro */
.glitch-follow-btn::after {
  background-color: #000;
}

/* Al pasar el cursor, se activan las animaciones de las capas */
.glitch-follow-btn:hover::before {
  opacity: 1;
  animation: shakeBefore 0.3s infinite;
}
.glitch-follow-btn:hover::after {
  opacity: 1;
  animation: shakeAfter 0.3s infinite;
}

/* Animación para la capa roja (pseudo ::before) con movimiento agresivo en el eje X (izquierda) */
@keyframes shakeBefore {
  0%   { transform: translate(-20px, -6px); }
  25%  { transform: translate(-15px, -6px); }
  50%  { transform: translate(-20px, -6px); }
  75%  { transform: translate(-25px, -6px); }
  100% { transform: translate(-20px, -6px); }
}

/* Animación para la capa negra (pseudo ::after) con movimiento agresivo en el eje X (derecha) */
@keyframes shakeAfter {
  0%   { transform: translate(20px, 6px); }
  25%  { transform: translate(15px, 6px); }
  50%  { transform: translate(20px, 6px); }
  75%  { transform: translate(25px, 6px); }
  100% { transform: translate(20px, 6px); }
}

/* Clase que se añadirá para desvanecer el botón tras hacer click (para que se vea la explosión) */
.glitch-follow-btn.disappear {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

/* Estilos para los píxeles de la explosión */
.pixel {
  position: absolute;
  width: 5px;
  height: 5px;
  background-color: #e3001e; /* Píxeles de color rojo */
  opacity: 1;
  animation: pixelExplode 0.8s forwards;
}

@keyframes pixelExplode {
  0% {
    opacity: 1;
    transform: translate(0, 0) scale(1);
  }
  100% {
    opacity: 0;
    transform: translate(var(--dx), var(--dy)) scale(0.2);
  }
}/* End custom CSS */
/* Start custom CSS *//* Contenedor del hero */
.hero-digital {
  position: relative;
  overflow: hidden;
}

/* Píxeles rojos generados automáticamente */
.pixel-auto, .pixel-follow {
  position: absolute;
  z-index: -1;  /* Se ubican detrás del contenido */
  background-color: #e74c3c;
  opacity: 0.9;
  pointer-events: none;
  transform: translate(-50%, -50%);
  border-radius: 2px;
  will-change: top, opacity, transform;
}

/* Píxeles negros para la estela en escritorio y para la explosión en móviles */
.cursor-trail {
  position: absolute;
  z-index: 1;
  width: 8px;
  height: 8px;
  background-color: #000;
  opacity: 0.7;
  pointer-events: none;
  transform: translate(-50%, -50%);
  border-radius: 2px;
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}

/* Píxeles negros para la explosión, con transición de 0.65s */
.explosion-trail {
  position: absolute;
  z-index: 1;
  width: 8px;
  height: 8px;
  background-color: #000;
  opacity: 0.7;
  pointer-events: none;
  transform: translate(-50%, -50%);
  border-radius: 2px;
  transition: transform 0.65s ease-out, opacity 0.65s ease-out;
}

/* Degradado inferior para transición suave */
.hero-digital::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 80px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #ffffff);
  pointer-events: none;
  z-index: 1;
}/* End custom CSS */