.elementor-kit-58{--e-global-color-primary:#4A00E0;--e-global-color-secondary:#8A2BE2;--e-global-color-text:#121212;--e-global-color-accent:#F5F5F5;--e-global-color-fe58456:#00BFFF;--e-global-color-d17c94f:#888888;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-size:2.8rem;--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Space Grotesk";--e-global-typography-secondary-font-size:2rem;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:1.5rem;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-text-word-spacing:0px;--e-global-typography-accent-font-family:"neuropol-nova";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0px;--e-global-typography-accent-word-spacing:0px;--e-global-typography-7445beb-font-family:"Inter";--e-global-typography-7445beb-font-size:25px;--e-global-typography-7445beb-font-weight:700;--e-global-typography-7445beb-line-height:1.2em;--e-global-typography-1babadd-font-family:"Inter";--e-global-typography-1babadd-font-size:25px;--e-global-typography-1babadd-font-weight:800;--e-global-typography-1babadd-line-height:1.2em;--e-global-typography-1babadd-letter-spacing:0px;--e-global-typography-1babadd-word-spacing:0px;--e-global-typography-cfe406e-font-size:20px;--e-global-typography-cfe406e-font-weight:600;--e-global-typography-cfe406e-line-height:1.2em;--e-global-typography-cfe406e-letter-spacing:0px;--e-global-typography-cfe406e-word-spacing:0px;--e-global-typography-e278b20-font-size:20px;--e-global-typography-e278b20-font-weight:700;--e-global-typography-6997b45-font-size:18px;--e-global-typography-6997b45-font-weight:700;--e-global-typography-6997b45-text-transform:capitalize;--e-global-typography-fa8d1d4-font-size:16px;--e-global-typography-fa8d1d4-font-weight:800;--e-global-typography-fa8d1d4-text-transform:uppercase;--e-global-typography-fa8d1d4-line-height:1.5em;--e-global-typography-6c649a3-font-family:"kallisto";--e-global-typography-6c649a3-font-size:16px;--e-global-typography-6c649a3-font-weight:600;--e-global-typography-6c649a3-text-transform:uppercase;background-color:#121212;--e-preloader-animation-duration:1500ms;--e-preloader-delay:0ms;--e-preloader-color:#FFFFFF;--e-preloader-size:20px;}.elementor-kit-58 button:hover,.elementor-kit-58 button:focus,.elementor-kit-58 input[type="button"]:hover,.elementor-kit-58 input[type="button"]:focus,.elementor-kit-58 input[type="submit"]:hover,.elementor-kit-58 input[type="submit"]:focus,.elementor-kit-58 .elementor-button:hover,.elementor-kit-58 .elementor-button:focus{background-color:#02010100;color:#02010100;}.elementor-kit-58 e-page-transition{background-color:#2E2E2E;}.elementor-kit-58 button,.elementor-kit-58 input[type="button"],.elementor-kit-58 input[type="submit"],.elementor-kit-58 .elementor-button{color:#02010100;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-58{--e-global-typography-7445beb-font-size:1.8rem;--e-global-typography-1babadd-font-size:1.8rem;--e-global-typography-6c649a3-font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-58{--e-global-typography-7445beb-font-size:1.5rem;--e-global-typography-1babadd-font-size:1.5rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ======================================================================
   CONFIGURACIÓN GLOBAL ZENITH SHIFT
   ====================================================================== */

/* --- Variables de Color Zenith Shift --- */
/* Asegúrate de que estén disponibles globalmente */
:root {
    --zs-charcoal: #121212;
    --zs-dark-card: #1A1A1A;
    --zs-border-dark: #282828;
    --zs-white: #F5F5F5;
    --zs-cyan: #00BFFF;
    --zs-grey: #888888;
    --zs-gradient: linear-gradient(90deg, #8A2BE2, #4A00E0);
}


/* 1. Evitar scroll lateral "robótico" en toda la web */
html, body {
    overflow-x: hidden;
}

/* 2. Suavizado de fuentes (Anti-aliasing) */
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* Asegura el fondo oscuro y fuente base por defecto */
    background-color: var(--zs-charcoal);
    color: var(--zs-grey);
    font-family: 'Poppins', sans-serif; /* Asegura Poppins como base */
}

/* 3. Scroll Suave Nativo (CSS) */
/* (Recordá desactivar el "Smooth Scroll" de JS en Ajustes de Elementor) */
html {
    scroll-behavior: smooth;
}

/* 4. Transiciones globales suaves */
a,
button,
.elementor-button,
.zs-cta-primary, /* Clases de botones que creamos */
.zs-cta-secondary {
    transition: all 0.3s ease-in-out;
}

/* 5. Eliminar "Tap-Glow" en móvil */
* {
    -webkit-tap-highlight-color: transparent;
}

/* 6. Estilo de Selección de Texto (Zenith Shift) */
::selection {
    background: var(--zs-cyan); /* Fondo Cian */
    color: var(--zs-charcoal); /* Texto Oscuro */
}
::-moz-selection {
    background: var(--zs-cyan);
    color: var(--zs-charcoal);
}

/* ======================================================================
   HEADER (CABECERA)
   ====================================================================== */

/* SOLO en escritorio: header transparente */
@media (min-width: 1025px) {
    /* --- AJUSTA ESTE SELECTOR A TU HEADER DE ELEMENTOR --- */
    header.elementor-location-header {
        background: transparent !important;
        position: absolute !important; /* Fuerza la superposición */
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        z-index: 999;
        transition: background-color 0.4s ease !important; /* Transición suave */
    }

    /* --- ESTILO STICKY (Cuando hace scroll) --- */
    /* Elementor suele añadir 'elementor-sticky--effects' */
    header.elementor-location-header.elementor-sticky--effects {
        background-color: rgba(18, 18, 18, 0.9) !important; /* Fondo oscuro semi-transparente */
        backdrop-filter: blur(10px); /* Efecto "glass" */
        -webkit-backdrop-filter: blur(10px);
    }
    
    /* Empujar el contenido solo si el header NO es sticky o transparente */
    /* Ajusta esto según tu configuración de Elementor Pro */
    /* Si el header es siempre transparente al inicio, esta regla puede ser necesaria */
    body:not(.elementor-editor-active) .elementor-section:first-of-type {
         /* padding-top: 100px; */ /* Ajusta si es necesario (ej. 100px) */
         /* Descomenta esta línea si tu contenido queda debajo del header */
    }
}

/* En móvil y tablet: header normal (no transparente) */
@media (max-width: 1024px) {
    /* --- AJUSTA ESTE SELECTOR A TU HEADER DE ELEMENTOR --- */
    header.elementor-location-header {
        position: relative !important; /* Posición normal */
        background: var(--zs-charcoal) !important; /* Fondo oscuro sólido */
        width: 100% !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 999;
    }
}

/* --- Estilos para enlaces del menú de navegación (Ejemplo) --- */
/* Ajusta '.elementor-nav-menu' a tu clase de menú */
.elementor-nav-menu--main .elementor-nav-menu a.elementor-item {
    color: var(--zs-white) !important;
    font-weight: 500 !important;
    transition: color 0.3s ease !important;
}
.elementor-nav-menu--main .elementor-nav-menu a.elementor-item:hover,
.elementor-nav-menu--main .elementor-nav-menu a.elementor-item.elementor-item-active {
    color: var(--zs-cyan) !important; /* Resaltado Cian */
}
/* Línea debajo del item activo/hover (si la usas) */
.elementor-nav-menu--main .elementor-nav-menu a.elementor-item.elementor-item-active::after,
.elementor-nav-menu--main .elementor-nav-menu a.elementor-item:hover::after {
     background-color: var(--zs-cyan) !important; /* Color línea */
}


/* ======================================================================
   SCROLLBAR ESTILO ZENITH SHIFT
   ====================================================================== */

/* --- Estándar Moderno (Firefox) --- */
html {
    scrollbar-width: thin; /* Más delgada */
    scrollbar-color: var(--zs-cyan) var(--zs-charcoal); /* Scrollbar Cian, Fondo Oscuro */
}

/* --- Estándar Clásico (Chrome, Safari, Edge) --- */
body::-webkit-scrollbar {
    width: 10px; /* Ancho de la barra */
}
body::-webkit-scrollbar-track {
    background: var(--zs-charcoal); /* Fondo de la pista oscuro */
    border-radius: 10px;
}
body::-webkit-scrollbar-thumb {
    background-color: var(--zs-cyan); /* Color de la barra (Cian) */
    border-radius: 20px;
    border: 2px solid var(--zs-charcoal); /* Borde del color del fondo */
}
body::-webkit-scrollbar-thumb:hover {
    background-color: var(--zs-white); /* Barra se vuelve blanca al pasar el ratón */
}
/* ======================================================================
   CURSOR PERSONALIZADO ZENITH SHIFT
   ====================================================================== */

/* 1. Ocultar el cursor por defecto en pantallas de escritorio */
@media (min-width: 1025px) {
    body, a, button, .elementor-button, input[type="submit"] {
        cursor: none !important;
    }
}

/* 2. El punto central (sigue 1:1 al ratón) */
.zs-cursor-dot {
    position: fixed;
    top: -10px;
    left: -10px;
    width: 8px;
    height: 8px;
    background-color: var(--zs-cyan); /* Color Cian */
    border-radius: 50%;
    pointer-events: none; /* No interfiere con clics */
    z-index: 99999;
    transition: transform 0.1s ease-out; /* Movimiento rápido */
}

/* 3. El seguidor exterior (con efecto "lag") */
.zs-cursor-follower {
    position: fixed;
    top: -20px;
    left: -20px;
    width: 40px;
    height: 40px;
    background: transparent;
    border: 2px solid var(--zs-violet); /* Color Violeta */
    border-radius: 50%;
    pointer-events: none;
    z-index: 99998;
    transition: transform 0.3s ease-out, /* Movimiento más lento (efecto lag) */
                border-color 0.4s ease,
                background-color 0.4s ease,
                width 0.4s ease, 
                height 0.4s ease;
}

/* --- 4. EL EFECTO INTERACTIVO (HOVER) --- */

/* Cuando el seguidor tiene la clase 'hover' (aplicada por JS) */
.zs-cursor-follower.hover {
    transform: scale(1.5); /* Se agranda */
    background-color: rgba(0, 191, 255, 0.1); /* Relleno Cian sutil */
    border-color: var(--zs-cyan); /* Borde se vuelve Cian */
}

/* Cuando el seguidor tiene la clase 'click' (aplicada por JS) */
.zs-cursor-follower.click {
    transform: scale(0.8); /* Se encoge al hacer clic */
}

/* --- 5. OCULTAR EN MÓVIL --- */
/* En pantallas táctiles, no queremos un cursor personalizado */
@media (max-width: 1024px) {
    .zs-cursor-dot,
    .zs-cursor-follower {
        display: none !important;
    }
    
    /* Restaura el cursor por defecto en móvil */
    body, a, button, .elementor-button, input[type="submit"] {
        cursor: auto !important;
    }
}/* End custom CSS */