        :root {
            --neon-glow: 0 0 15px rgba(173, 73, 225, 0.6);
            --green-glow: 0 0 15px rgba(154, 216, 114, 0.6);
        }

        body {
            font-family: 'PT Serif', serif;
            background-color: #181C14;
            color: #EBD3F8;
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        /* Neon UI Elements */
        .neon-border {
            border: 1px solid #AD49E1;
            box-shadow: var(--neon-glow);
        }
        .neon-text-glow {
            text-shadow: 0 0 10px rgba(173, 73, 225, 0.8);
        }
        .green-text-glow {
            text-shadow: 0 0 10px rgba(154, 216, 114, 0.8);
        }

        /* Hero Animations */
        @keyframes typewriter {
            from { width: 0; }
            to { width: 100%; }
        }
        .typewriter-text {
            display: inline-block;
            overflow: hidden;
            white-space: nowrap;
            border-right: 3px solid #9AD872;
            animation: typewriter 3s steps(40, end), blink-caret .75s step-end infinite;
        }
        @keyframes blink-caret {
            from, to { border-color: transparent }
            50% { border-color: #9AD872; }
        }

        /* Floating Elements */
        .float-anim {
            animation: float 6s ease-in-out infinite;
        }
        @keyframes float {
            0%, 100% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-20px) rotate(5deg); }
        }

        /* Cart Pulse */
        .cart-pulse {
            animation: pulse 2s infinite;
        }
        @keyframes pulse {
            0% { box-shadow: 0 0 0 0 rgba(173, 73, 225, 0.7); }
            70% { box-shadow: 0 0 0 20px rgba(173, 73, 225, 0); }
            100% { box-shadow: 0 0 0 0 rgba(173, 73, 225, 0); }
        }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 8px; }
        ::-webkit-scrollbar-track { background: #181C14; }
        ::-webkit-scrollbar-thumb { background: #AD49E1; border-radius: 10px; }

        /* Page Transitions */
        .page-fade {
            animation: fadeIn 0.8s ease-out forwards;
        }
        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(10px); }
            to { opacity: 1; transform: translateY(0); }
        }

        /* Horizontal Scroll Hide */
        .no-scrollbar::-webkit-scrollbar { display: none; }
        .no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

        /* Mosaic Grid */
        .mosaic {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            grid-auto-rows: 250px;
            gap: 1.5rem;
        }
        .mosaic-item-l { grid-column: span 2; grid-row: span 2; }
        .mosaic-item-w { grid-column: span 2; grid-row: span 1; }

        @media (max-width: 768px) {
            .mosaic { grid-template-columns: 1fr; grid-auto-rows: auto; }
            .mosaic-item-l, .mosaic-item-w { grid-column: span 1; }
        }
