.elementor-23 .elementor-element.elementor-element-1b56913{--display:flex;--position:absolute;--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;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;top:0px;--z-index:4;}body:not(.rtl) .elementor-23 .elementor-element.elementor-element-1b56913{left:0px;}body.rtl .elementor-23 .elementor-element.elementor-element-1b56913{right:0px;}.elementor-23 .elementor-element.elementor-element-a0fe79d{width:var( --container-widget-width, 25vw );max-width:25vw;--container-widget-width:25vw;--container-widget-flex-grow:0;z-index:12;}.elementor-23 .elementor-element.elementor-element-a0fe79d img{width:25vw;}.elementor-23 .elementor-element.elementor-element-4177359{--display:flex;--position:fixed;--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;--background-transition:0.3s;--padding-top:30px;--padding-bottom:30px;--padding-left:50px;--padding-right:50px;bottom:9vh;--z-index:21;}.elementor-23 .elementor-element.elementor-element-4177359:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-4177359 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-23 .elementor-element.elementor-element-4177359:hover{background-color:var( --e-global-color-secondary );}body:not(.rtl) .elementor-23 .elementor-element.elementor-element-4177359{left:0px;}body.rtl .elementor-23 .elementor-element.elementor-element-4177359{right:0px;}.elementor-23 .elementor-element.elementor-element-706aa8c > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-23 .elementor-element.elementor-element-706aa8c{font-size:80px;line-height:0.7em;color:var( --e-global-color-primary );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-23 .elementor-element.elementor-element-1b56913{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-23 .elementor-element.elementor-element-4177359{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );bottom:0vw;}}@media(max-width:767px){.elementor-23 .elementor-element.elementor-element-1b56913{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-23 .elementor-element.elementor-element-4177359{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-23 .elementor-element.elementor-element-706aa8c{font-size:60px;}}@media(min-width:768px){.elementor-23 .elementor-element.elementor-element-4177359{--width:fit-content;}}@media(max-width:1024px) and (min-width:768px){.elementor-23 .elementor-element.elementor-element-4177359{--width:100%;}}/* Start custom CSS for image, class: .elementor-element-a0fe79d */.logo.head{
    filter:  grayscale() brightness(0) invert(1);
    transition: all 0.3s ease-in-out;
}
.logo.head.elementor-sticky--effects {
    width: 120px !important;
    transition: all 0.3s ease-in-out;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e5c13d6 *//* Esfera principal */
.esfera-flotante {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 480px; /* 🔺 más grande */
  height: 480px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 9999;
  transform: translate(-50%, -50%);
  opacity: 0;
  filter: blur(50px);
  transition: opacity 0.8s ease, transform 0.4s ease, filter 0.4s ease;

  /* Gradiente con centro más opaco y bordes suaves */
  background: radial-gradient(
    circle at center,
    rgba(255, 120, 0, 0.85) 0%,    /* centro fuerte */
    rgba(255, 60, 0, 0.35) 40%,    /* medio */
    rgba(255, 0, 0, 0.08) 70%,     /* borde difuso */
    transparent 100%
  );

  /* Glow externo adicional (opcional) */
  box-shadow:
    0 0 100px 30px rgba(255, 80, 0, 0.2),
    0 0 200px 60px rgba(255, 0, 0, 0.1);

  animation:
    respiracion 6s ease-in-out infinite,
    desplazamientoColor 6s linear infinite;
  will-change: transform, opacity, filter;
}

/* Respiración */
@keyframes respiracion {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
  }
  50% {
    transform: translate(-50%, -50%) scale(1.1);
  }
}

/* Cambio de color fluido */
@keyframes desplazamientoColor {
  0% {
    background: radial-gradient(
      circle at 40% 50%,
      rgba(255, 120, 0, 0.85),
      rgba(255, 0, 0, 0.2),
      transparent 100%
    );
  }
  25% {
    background: radial-gradient(
      circle at 60% 50%,
      rgba(255, 40, 0, 0.8),
      rgba(255, 100, 0, 0.2),
      transparent 100%
    );
  }
  50% {
    background: radial-gradient(
      circle at 50% 60%,
      rgba(255, 80, 0, 0.85),
      rgba(255, 20, 0, 0.2),
      transparent 100%
    );
  }
  75% {
    background: radial-gradient(
      circle at 45% 40%,
      rgba(255, 60, 0, 0.75),
      rgba(255, 0, 0, 0.2),
      transparent 100%
    );
  }
  100% {
    background: radial-gradient(
      circle at 40% 50%,
      rgba(255, 120, 0, 0.85),
      rgba(255, 0, 0, 0.2),
      transparent 100%
    );
  }
}

/* Contenedor del rastro */
#rastro-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  z-index: 9998;
  overflow: visible;
}

/* Rastro individual */
.rastro {
  position: fixed;
  width: 400px;
  height: 400px;
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  filter: blur(80px);
  background: radial-gradient(
    circle at center,
    rgba(255, 100, 0, 0.25),
    rgba(255, 0, 0, 0.1),
    transparent 80%
  );
  opacity: 0.5;
  animation: desaparecerRastro 2s ease-out forwards;
  z-index: 9998;
  will-change: transform, opacity;
}

/* Animación de desaparición del rastro */
@keyframes desaparecerRastro {
  from {
    opacity: 0.5;
    transform: translate(-50%, -50%) scale(1);
  }
  to {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.5);
  }
}/* End custom CSS */