 :root {
            --bg-dark: #030812;
            --bg-card: #091122;
            --gold-primary: #cba052;
            --gold-glow: rgba(203, 160, 82, 0.15);
            --blue-glow: rgba(59, 130, 246, 0.1);
            --red-alert: #ef4444;
            --red-glow: rgba(239, 68, 68, 0.25);
            --text-light: #f3f4f6;
            --text-slate: #cbd5e1;
            --font-heading: 'Playfair Display', serif;
            --font-body: 'Inter', sans-serif;
        }

        body {
            background-color: var(--bg-dark);
            color: var(--text-slate);
            font-family: var(--font-body);
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased;
        }

        /* Ambient Pulsing Glow Orbs with scroll-driven parallax targets */
        .ambient-glow {
            position: absolute;
            border-radius: 50%;
            filter: blur(140px);
            opacity: 0.75;
            pointer-events: none;
            z-index: 1;
            mix-blend-mode: screen;
            transition: transform 0.25s cubic-bezier(0.1, 0.8, 0.2, 1);
        }

        .orb-gold {
            background: radial-gradient(circle, var(--gold-glow) 0%, transparent 70%);
        }

        .orb-blue {
            background: radial-gradient(circle, var(--blue-glow) 0%, transparent 70%);
        }

        /* Bento Grid Interactive Cards */
        .bento-card {
            background: linear-gradient(135deg, rgba(17, 26, 46, 0.5) 0%, rgba(9, 17, 34, 0.65) 100%);
            border: 1px solid rgba(255, 255, 255, 0.05);
            backdrop-filter: blur(12px);
            position: relative;
            overflow: hidden;
            transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .bento-card:hover {
            border-color: rgba(203, 160, 82, 0.35);
            box-shadow: 0 30px 60px rgba(0, 0, 0, 0.7), 0 0 30px rgba(203, 160, 82, 0.08);
            transform: translateY(-8px);
        }

        /* Active Laser sweeping overlay inside Bento */
        .bento-card::after {
            content: '';
            position: absolute;
            top: 0; left: -150%; width: 50%; height: 100%;
            background: linear-gradient(90deg, transparent, rgba(203, 160, 82, 0.1), transparent);
            transform: skewX(-25deg);
            transition: none;
        }
        .bento-card:hover::after {
            left: 150%;
            transition: left 1.5s ease-in-out;
        }

        /* Folder Tab navigation styling */
        .folder-tab {
            border-bottom: none;
            background: rgba(17, 26, 46, 0.4);
            border: 1px solid rgba(255, 255, 255, 0.05);
            border-bottom: transparent;
            transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .folder-tab.active {
            background: var(--bg-card);
            border-color: rgba(203, 160, 82, 0.4);
            color: #ffffff;
            box-shadow: 0 -4px 15px rgba(203, 160, 82, 0.08);
        }

        /* Continuous Laser drop tracker */
        @keyframes laserDrop {
            0% { transform: translateY(-100%); opacity: 0; }
            30% { opacity: 1; }
            70% { opacity: 1; }
            100% { transform: translateY(150%); opacity: 0; }
        }

        /* Active horizontal scanlines */
        .decor-line {
            width: 0;
            height: 2px;
            background: rgba(255, 255, 255, 0.05);
            position: relative;
            overflow: hidden;
            transition: width 1.5s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .decor-line.draw-active {
            width: 100%;
        }
        .decor-line::after {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 150px; height: 100%;
            background: linear-gradient(90deg, transparent, var(--gold-primary), #fff, var(--gold-primary), transparent);
            animation: laserScanHorizontal 4s infinite linear;
        }

        @keyframes laserScanHorizontal {
            0% { transform: translateX(-150px); }
            100% { transform: translateX(1200px); }
        }

        /* Scroll reveal effects */
        .reveal-up {
            opacity: 0;
            transform: translateY(40px);
            transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1), transform 1s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .reveal-up.active {
            opacity: 1;
            transform: translateY(0);
        }

        .reveal-left {
            opacity: 0;
            transform: translateX(40px);
            transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1), transform 1s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .reveal-left.active {
            opacity: 1;
            transform: translateX(0);
        }

        .reveal-right {
            opacity: 0;
            transform: translateX(-40px);
            transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1), transform 1s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .reveal-right.active {
            opacity: 1;
            transform: translateX(0);
        }

        .stagger-parent > * {
            opacity: 0;
            transform: translateY(20px);
            transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .stagger-parent.active > * {
            opacity: 1;
            transform: translateY(0);
        }
        .stagger-parent.active > *:nth-child(1) { transition-delay: 0.1s; }
        .stagger-parent.active > *:nth-child(2) { transition-delay: 0.2s; }
        .stagger-parent.active > *:nth-child(3) { transition-delay: 0.3s; }
        .stagger-parent.active > *:nth-child(4) { transition-delay: 0.4s; }

        .font-heading { font-family: var(--font-heading); }
        .font-body { font-family: var(--font-body); }

        .scanline {
            position: relative;
            overflow: hidden;
        }
        .scanline::after {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            background: linear-gradient(to bottom, transparent 50%, rgba(203, 160, 82, 0.02) 50%);
            background-size: 100% 4px;
            pointer-events: none;
        }

        /* Sticky Navigation HUD indicators */
        .section-dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background-color: rgba(255,255,255,0.2);
            transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .section-dot.active {
            background-color: var(--gold-primary);
            box-shadow: 0 0 10px var(--gold-primary);
            transform: scale(1.5);
        }