.elementor-kit-322{--e-global-color-primary:#000000;--e-global-color-secondary:#C4C4C4;--e-global-color-text:#7A7A7A;--e-global-color-accent:#00FF84;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:2rem;--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-size:1.5rem;--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:1rem;--e-global-typography-text-font-weight:500;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:1rem;--e-global-typography-accent-font-weight:500;--e-global-typography-188b8b3-font-family:"Montserrat";--e-global-typography-188b8b3-font-size:1rem;--e-global-typography-188b8b3-font-weight:700;font-family:"Montserrat", Sans-serif;}.elementor-kit-322 e-page-transition{background-color:#000000;}.elementor-kit-322 a{color:var( --e-global-color-accent );font-family:"Montserrat", Sans-serif;}.elementor-kit-322 a:hover{color:#00BE63;}.elementor-kit-322 h1{font-family:"Montserrat", Sans-serif;}.elementor-kit-322 h2{font-family:"Montserrat", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1100px;}.e-con{--container-max-width:1100px;}.elementor-widget:not(:last-child){margin-block-end:10px;}.elementor-element{--widgets-spacing:10px 10px;--widgets-spacing-row:10px;--widgets-spacing-column:10px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* --- BASE: SIEMPRE (evita overflow y bloqueo de eventos) --- */
#magicMouseCursor,
#magicPointer {
  position: fixed;
  left: 0;
  top: 0;
  pointer-events: none;
  z-index: 10000000; /* un solo z-index alto */
  will-change: transform;
  contain: layout style paint;
}

/* Estilos visuales por defecto (puedes ajustarlos) */
#magicMouseCursor {
  width: 35px;
  height: 35px;
  border: 0 none;
  background: rgba(0,0,0,0.5);
  border-radius: 50%;
  transition: transform 0.07s, width 0.3s, height 0.3s;
}
#magicMouseCursor.cursor-square { border-radius: 0; }

#magicPointer {
  width: 5px;
  height: 5px;
  background: #fff;
  border-radius: 50%;
  transition: background 0.2s, width 0.2s, height 0.2s, box-shadow 0.2s;
}
#magicPointer.is-hover { background: #fff; }
#magicPointer.pointer-blur {
  height: 50px;
  width: 50px;
  background: none;
  border: 1px solid #fff;
  box-shadow: 0 0 15px -5px black;
}
#magicPointer.pointer-overlay {
  height: 50px;
  width: 50px;
  mix-blend-mode: difference;
  box-shadow: 0 0 15px -5px white;
}

/* Solo cuando el cursor mágico está ACTIVADO ocultamos el cursor nativo al hacer hover */
.mm-active .magic-hover:hover { cursor: none !important; }

/* Seguridad: en táctiles o viewports pequeños, oculta el custom y usa el del SO */
@media (hover: none), (pointer: coarse), (max-width: 1023.98px) {
  #magicMouseCursor,
  #magicPointer { display: none !important; }
  body { cursor: auto !important; }
}

/* Si algún efecto provoca desborde, asegura que no haya scroll lateral */
html, body { overflow-x: hidden; }

/* --- OPCIONAL: AJUSTES SOLO PARA >=1367px (si los quieres) --- */
@media only screen and (min-width: 1367px) {
  /* aquí puedes sobreescalar tama*/* End custom CSS */