        :root {
            --bg: #0a0a0c;
            --primary: #6366f1;
            --card-bg: rgba(255, 255, 255, 0.03);
            --border: rgba(255, 255, 255, 0.08);
        }

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

        body {
            background-color: var(--bg);
            background-image: 
                radial-gradient(circle at 10% 20%, rgba(99, 102, 241, 0.12), transparent 40%),
                radial-gradient(circle at 90% 80%, rgba(168, 85, 247, 0.12), transparent 40%);
            color: #fff;
            font-family: 'Plus Jakarta Sans', sans-serif;
            overflow-x: hidden;
        }

        /* --- HEADER & HERO --- */
        nav {
            padding: 40px 6%;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        .logo { font-family: 'Outfit'; font-weight: 900; font-size: 1.6rem; letter-spacing: -1px; }
        .logo span { color: var(--primary); }

        .hero {
            padding: 60px 6% 80px;
            max-width: 1200px;
        }
        h1 {
            font-family: 'Outfit';
            font-size: clamp(3.5rem, 12vw, 7.5rem);
            line-height: 0.9;
            font-weight: 900;
            letter-spacing: -4px;
            margin-bottom: 25px;
        }
        .hero p {
            font-size: 1.2rem;
            color: #94a3b8;
            max-width: 500px;
            border-left: 3px solid var(--primary);
            padding-left: 20px;
        }

        /* --- PROJECT GRID --- */
        .project-section {
            padding: 0 6% 100px;
            display: none; 
        }

        .grid-container {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
            gap: 20px;
        }

        .project-card {
            position: relative;
            background: var(--card-bg);
            border: 1px solid var(--border);
            border-radius: 20px;
            padding: 40px 30px;
            text-decoration: none;
            color: inherit;
            overflow: hidden;
            transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
            display: flex;
            flex-direction: column;
        }

        .project-card:hover {
            transform: translateY(-8px);
            border-color: var(--primary);
            background: rgba(255, 255, 255, 0.05);
            box-shadow: 0 30px 60px rgba(0, 0, 0, 0.5);
        }

        /* Spotlight Effect */
        .project-card::after {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            background: radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(99, 102, 241, 0.15) 0%, transparent 70%);
            opacity: 0;
            transition: opacity 0.3s;
        }
        .project-card:hover::after { opacity: 1; }

        .card-icon {
            font-size: 1.8rem;
            margin-bottom: 15px;
            opacity: 0.8;
        }

        .project-card h3 {
            font-size: 1.4rem;
            font-weight: 700;
            margin-bottom: 8px;
            font-family: 'Outfit';
        }

        .project-card p {
            color: #94a3b8;
            font-size: 0.9rem;
            line-height: 1.4;
        }

        /* Loader */
        #loader {
            position: fixed;
            inset: 0;
            background: var(--bg);
            z-index: 1000;
            display: flex;
            justify-content: center;
            align-items: center;
            font-family: 'Outfit';
            font-weight: 900;
            color: var(--primary);
        }

        footer {
            padding: 40px 6%;
            color: #475569;
            font-size: 0.8rem;
            text-align: center;
            border-top: 1px solid var(--border);
        }

        @media (max-width: 600px) {
            h1 { font-size: 4rem; }
            .grid-container { grid-template-columns: 1fr; }
        }