        :root {
            --ground: #06070A;
            --ground-2: #0B0D12;
            --ink: #E6EAF0;
            --ink-2: #98A0AE;
            --muted: #666E7C;
            --cyan: #4FD8E8;
            --violet: #8B6FE8;
            --amber: #FBBF24;
            --green: #4ADE80;
            --hairline: rgba(230,234,240,0.11);
        }

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

        body {
            background-color: var(--ground);
            color: var(--ink);
            font-family: 'Manrope', sans-serif;
            -webkit-font-smoothing: antialiased;
            overflow-x: hidden;
        }

        .font-mono {
            font-family: 'Chivo Mono', monospace;
        }

        .label-caps {
            font-family: 'Chivo Mono', monospace;
            font-size: 10.5px;
            text-transform: uppercase;
            letter-spacing: 0.12em;
        }

        .masked-line {
            display: block;
            overflow: hidden;
        }

        .masked-inner {
            display: block;
            transform: translateY(120%);
            transition: transform 0.9s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .reveal .masked-inner {
            transform: translateY(0);
        }

        .perspective-900 {
            perspective: 900px;
        }

        .fan-card {
            transform: translateY(60px) rotateX(12deg);
            opacity: 0;
            transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.8s ease;
        }

        .fan-card.active {
            transform: translateY(0) rotateX(0);
            opacity: 1;
        }

        .parallax-bg {
            will-change: transform;
        }

        .parallax-fg {
            will-change: transform;
        }

        .crop-wordmark {
            transform: translateY(0.16em);
            user-select: none;
            pointer-events: none;
        }

        canvas#particleCanvas {
            filter: blur(1px);
        }

        .live-trace-bar {
            width: 1px;
            background: var(--cyan);
            opacity: 0.3;
            height: 20px;
            transition: height 0.2s ease;
        }

        @media (prefers-reduced-motion: reduce) {
            .masked-inner {
                transform: translateY(0);
                transition: none;
            }
            .fan-card {
                transform: none;
                opacity: 1;
            }
        }
    