/* ==========================================================================
   NEXTZHOP SIGNATURE - LANDING CANVAS (V42.3 - OBSIDIAN TESLA EDITION)
   Ubicación: /assets/css/landing-canvas.css
   Lógica: Diseño Inmersivo (Zero-Air), Scroll Magnético y Patrón Split-Screen.
   ========================================================================== */

/* 🛡️ SELLO DE RENDIMIENTO NATIVO */
::-webkit-scrollbar { display: none; }
html, body { margin: 0; padding: 0; background-color: var(--hub-bg-app); color: var(--hub-text-main); scroll-behavior: smooth; }
.nz-hidden { display: none !important; }
.nz-flex { display: flex !important; }

.nz-text-stroke { -webkit-text-stroke: 1.5px var(--hub-text-main); color: transparent; }

/* ==========================================================================
   1. CHASIS PERIMETRAL (HEADER INMERSIVO)
   ========================================================================== */
.nz-landing-header { 
    width: 100%; 
    height: calc(60px + env(safe-area-inset-top)); 
    padding: env(safe-area-inset-top) 24px 0 24px;
    
    /* 🚀 CORRECCIÓN: Cambiado de absolute a fixed para que baje con el scroll */
    position: fixed; 
    top: 0; 
    left: 0;
    
    z-index: 100;
    background-color: transparent; /* Permite ver las imágenes del hero por debajo */
    display: flex; 
    align-items: center; 
    justify-content: space-between;
    pointer-events: none; /* Evita quiebres de interactividad en capas inferiores */
}

/* Reactivamos los eventos solo para los elementos interactivos del menú */
.nz-header-logo, .nz-header-actions {
    pointer-events: auto;
}

.nz-header-logo { 
    font-family: serif; 
    font-style: italic; 
    font-weight: 900; 
    font-size: 1.5rem; 
    letter-spacing: -0.05em; 
    color: #ffffff; /* Contraste forzado en blanco */
}

.nz-header-actions { 
    display: flex; 
    align-items: center; 
    gap: 16px; 
}

/* Botón Glassmorphism para el Header */
.nz-header-glass-btn {
    background: rgba(255,255,255,0.1); 
    backdrop-filter: blur(10px); 
    -webkit-backdrop-filter: blur(10px);
    color: #ffffff; 
    border: 1px solid rgba(255,255,255,0.3);
    padding: 6px 20px; 
    min-height: 32px; 
    font-size: 9px; 
    font-family: sans-serif;
    font-weight: 800;
    letter-spacing: 1px;
    border-radius: 4px;
    transition: all 0.3s ease; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    gap: 8px;
    cursor: pointer;
}
.nz-header-glass-btn:hover {
    background: rgba(255,255,255,0.2);
}

/* ==========================================================================
   2. CARRUSEL DE AUTORIDAD (TESLA SNAP)
   ========================================================================== */
.nz-tesla-carousel { 
    display: flex; 
    overflow-x: auto; 
    scroll-snap-type: x mandatory; 
    gap: 16px; 
    padding: 0 24px 40px; 
    scroll-behavior: smooth;
    -ms-overflow-style: none; /* IE y Edge */
    scrollbar-width: none; /* Firefox */
}
.nz-tesla-carousel::-webkit-scrollbar { 
    display: none; /* Chrome, Safari y Opera */
}

.nz-tesla-card {
    scroll-snap-align: center;
}

/* ==========================================================================
   3. MATRIZ DE FUNCIONES (ZIG-ZAG SPLIT SCREEN)
   ========================================================================== */
.nz-feature-card {
    display: grid;
    grid-template-columns: 1fr;
    background: var(--hub-bg-card, #111);
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid var(--hub-border, #222);
}
.nz-feature-img-wrap {
    width: 100%;
}
.nz-feature-img {
    width: 100%;
    height: auto;
    aspect-ratio: 4/3;
    object-fit: cover;
    background: #222;
    display: block;
}
.nz-feature-content {
    padding: 40px 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media (min-width: 768px) {
    .nz-feature-card {
        grid-template-columns: 1fr 1fr;
        min-height: 400px;
    }
    .nz-feature-img-wrap {
        height: 100%;
    }
    .nz-feature-img {
        height: 100%;
        aspect-ratio: auto;
    }
    .nz-feature-content {
        padding: 60px;
    }
    /* Patrón Zig-Zag: Invierte el orden visual en las tarjetas pares */
    .nz-feature-card:nth-child(even) .nz-feature-img-wrap {
        order: 2;
    }
    .nz-feature-card:nth-child(even) .nz-feature-content {
        order: 1;
    }
}

/* ==========================================================================
   4. ANIMACIONES CORE
   ========================================================================== */
.reveal-item { 
    opacity: 0; 
    transform: translateY(40px); 
    transition: all 0.8s cubic-bezier(0.19, 1, 0.22, 1); 
}
.reveal-item.is-visible { 
    opacity: 1; 
    transform: translateY(0); 
}

/* ==========================================================================
   5. MODALES Y TERMINAL (CAPA DE ADQUISICIÓN EDITORIAL)
   ========================================================================== */

/* Visor Público */
.nz-modal-overlay { 
    position: fixed; 
    inset: 0; 
    z-index: 150; 
    background-color: var(--hub-bg-app); 
    display: flex; 
    flex-direction: column; 
}

/* Paywall (Registro / Acceso) con Filtro Blanco y Negro + Blur */
.nz-paywall-overlay { 
    position: fixed; 
    inset: 0; 
    z-index: 200; 
    
    /* Velo oscuro base */
    background-color: rgba(0, 0, 0, 0.65); 
    
    /* Efecto Mágico: Blur de 15px + Escala de grises al 100% sobre lo que hay detrás */
    backdrop-filter: blur(15px) grayscale(100%); 
    -webkit-backdrop-filter: blur(15px) grayscale(100%); 
    
    display: flex; 
    align-items: center; 
    justify-content: center; 
    padding: 24px; 
}

.nz-terminal-overlay { 
    position: fixed; 
    inset: 0; 
    z-index: 999999; 
    background-color: #030303; 
    display: flex; 
    flex-direction: column; 
    justify-content: flex-end; 
    padding: 24px; 
    font-family: 'JetBrains Mono', monospace; 
}

@media (min-width: 768px) { 
    .nz-terminal-overlay { padding: 48px; } 
}