:root {
            --bg: #F4F4F2; 
            --text: #1A1A1A;
            --accent: #F39200; 
            --yellow: #DEC520; 
            --border: #222222;
            --white: #ffffff;
        }

        [data-theme="dark"] {
            --bg: #111111;
            --text: #E6E6E6;
            --border: #ffffff;
            --white: #1a1a1a;
        }

        * { margin: 0; padding: 0; box-sizing: border-box; }

        body {
            font-family: 'Inter', sans-serif;
            background-color: var(--bg);
            color: var(--text);
            line-height: 1.6;
            overflow-x: hidden;
        }

        h1, h2, h3 { 
            font-family: 'Archivo Black', sans-serif; 
            text-transform: uppercase; 
            line-height: 1;
            letter-spacing: -0.04em;
        }

        /* --- NAVEGACIÓN DINÁMICA --- */
        nav {
            padding: 20px 5%;
            display: flex; justify-content: space-between; align-items: center;
            position: fixed; width: 100%; z-index: 1000;
            background: var(--bg);
            border-bottom: 4px solid var(--border);
            transform: translateY(-100%);
            transition: transform 0.4s cubic-bezier(0.23, 1, 0.32, 1);
        }
        nav.nav-visible { transform: translateY(0); }

        .nav-links { display: flex; gap: 30px; }
        .nav-links a { 
            text-decoration: none; color: var(--text); font-weight: 900; 
            font-size: 0.8rem; text-transform: uppercase; letter-spacing: 1px;
        }

        /* --- PRELOADER --- */
        #preloader {
            position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
            background: #ffffff; display: flex; flex-direction: column; justify-content: center; align-items: center; z-index: 10000;
            transition: opacity 0.8s ease;
        }
        .preloader-hidden { opacity: 0; pointer-events: none; }


        /* Estilos para el logo del menú */
.logo {
    display: flex;
    align-items: center;
}

.logo-nav-img {
    height: 50px; /* Ajusta este valor según prefieras el tamaño en el menú */
    width: auto;
    display: block;
}

/* Opcional: Si quieres que el logo cambie en modo DARK 
   (Suponiendo que tengas una versión dark del logo-nav) */
[data-theme="dark"] .logo-nav-img {
    /* Si el logo es un SVG negro, puedes invertirlo aquí sin cambiar el archivo: */
    /* filter: invert(1); */
}

        /* --- HERO CENTRALIZADO --- */
        .hero {
            height: 100vh;
            display: grid;
            grid-template-columns: 1fr 2.5fr 1fr;
            align-items: center;
            justify-items: center;
            text-align: center;
            background: var(--white);
            padding: 0 5%;
            border-bottom: 8px solid var(--border);
            position: relative;
        }

        .hero-side-text {
            font-family: 'Archivo Black', sans-serif;
            font-size: 1.5rem;
            color: var(--accent);
            animation: sideFloat 4s ease-in-out infinite alternate;
        }

        .hero-center {
            display: flex;
            flex-direction: column;
            align-items: center;
            z-index: 10;
        }

        .hero img.main-logo { 
            width: clamp(250px, 40vw, 450px); 
            margin-bottom: 20px; 
            animation: float 6s ease-in-out infinite; 
        }

        .hero h1 { font-size: clamp(2rem, 8vw, 5.5rem); margin-top: 10px; }
        .hero p { font-family: 'Space Mono', monospace; font-size: 1rem; margin-top: 15px; max-width: 450px;}

        /* --- BOTONES --- */
        .btn-brutal {
            display: inline-block; padding: 15px 30px; 
            background: var(--border); color: #fff; 
            text-decoration: none; font-weight: 900; 
            text-transform: uppercase; border: none; cursor: pointer;
            box-shadow: 6px 6px 0px var(--accent); transition: 0.2s;
            margin-top: 30px;
        }
        .btn-brutal:hover { transform: translate(-2px, -2px); box-shadow: 8px 8px 0px var(--accent); }

        /* --- SECCIONES REINTEGRADAS --- */
        .postura { padding: 120px 10%; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; border-bottom: 6px solid var(--border); }
        .postura-box { background: var(--accent); color: white; padding: 50px; border: 6px solid var(--border); box-shadow: 20px 20px 0px var(--border); }

        #animakids {
            position: relative; padding: 150px 10%;
            background-image: url(../animakids/images/bg.png);
            background-attachment: fixed; background-repeat: repeat;
            border-bottom: 8px solid var(--border);
        }
        .section-content { background: var(--white); padding: 80px; border: 8px solid var(--border); box-shadow: 30px 30px 0px var(--border); }
        .animakids-header { display: flex; align-items: center; gap: 40px; margin-bottom: 50px; }
        .animakids-header img { width: 200px; }
        .video-box { width: 100%; aspect-ratio: 16/9; background: #000; border: 6px solid var(--border); margin-top: 40px; }

        #labs { padding: 120px 10%; background: #000; color: #0f0; border-bottom: 8px solid var(--border); font-family: 'Space Mono', monospace; }
        .labs-grid { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 60px; }
        .labs-status { color: #fff; background: #333; padding: 5px 15px; display: inline-block; margin-bottom: 20px; }
        .labs-img-dummy { width: 100%; aspect-ratio: 4/3; background: #222; border: 2px solid #0f0; position: relative; }

        #store { padding: 120px 10%; background: var(--yellow); border-bottom: 8px solid var(--border); }
        .store-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 40px; }
        .store-item { background: #fff; border: 6px solid var(--border); padding: 20px; text-align: center; }

        footer { padding: 100px 10%; background: var(--text); color: var(--bg); display: grid; grid-template-columns: 1fr 2fr; gap: 80px; }
        .director-img { width: 100%; filter: grayscale(1); border: 6px solid var(--accent); }

        /* --- ANIMACIONES --- */
        @keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-20px); } }
        @keyframes sideFloat { 0% { transform: translateX(-10px); opacity: 0.5; } 100% { transform: translateX(10px); opacity: 1; } }

        @media (max-width: 900px) {
            .hero { grid-template-columns: 1fr; padding-top: 80px; height: auto; padding-bottom: 100px; }
            .hero-side-text { display: none; }
            .postura, .labs-grid, footer { grid-template-columns: 1fr; text-align: center; }
            .animakids-header { flex-direction: column; }
        }


        
        .parallax-experience {
    height: 200vh; /* Altura extra para que el scroll tenga "aire" */
    background: var(--bg);
    position: relative;
    border-bottom: 8px solid var(--border);
}

.parallax-container {
    position: sticky;
    top: 0;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.layer {
    position: absolute;
    width: 100%;
    max-width: 800px;
    will-change: transform;
}

.l-back { z-index: 1; transform: scale(0.8); }
.l-duck { z-index: 2; width: 300px; }
.l-front { z-index: 3; }

.l-animakids {
    z-index: 4;
    text-align: center;
    opacity: 0;
    transform: translateY(50px);
}

.l-animakids img { width: 300px; }
.l-animakids p { 
    font-family: 'Archivo Black'; 
    color: var(--accent); 
    margin-top: 10px;
    letter-spacing: 5px;
}

