 :root {
            --primary: #6366f1;
            --bg: #0f172a;
        }

        body {
            background: var(--bg);
            color: #f8fafc;
            font-family: 'Plus Jakarta Sans', sans-serif;
            overflow-x: hidden;
            padding-bottom: 160px !important;
            /* Space so content doesn't hide behind bottom dock */

        }

        /* Background Mesh */
        .mesh-gradient {
            position: fixed;
            inset: 0;
            z-index: -1;
            background: radial-gradient(at 0% 0%, rgba(99, 102, 241, 0.15) 0px, transparent 50%),
                radial-gradient(at 100% 0%, rgba(168, 85, 247, 0.15) 0px, transparent 50%),
                radial-gradient(at 100% 100%, rgba(236, 72, 153, 0.1) 0px, transparent 50%),
                radial-gradient(at 0% 100%, rgba(34, 211, 238, 0.1) 0px, transparent 50%);
            filter: blur(80px);
        }

        /* BOTTOM HOVER DOCK */
        .nav-dock {
            position: fixed;
            bottom: 30px;
            left: 50%;
            transform: translateX(-50%);
            background: rgba(15, 23, 42, 0.7);
            backdrop-filter: blur(20px);
            padding: 12px 30px;
            border-radius: 100px;
            border: 1px solid rgba(255, 255, 255, 0.1);
            z-index: 1000;
            display: flex;
            gap: 25px;
            align-items: center;
            box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
        }

        .nav-link {
            font-size: 10px;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.15em;
            color: rgba(255, 255, 255, 0.5);
            transition: all 0.3s ease;
        }

        .nav-link:hover {
            color: #818cf8;
            text-shadow: 0 0 10px rgba(129, 140, 248, 0.5);
        }

        /* Top Branding (Not fixed, scrolls with page) */
        .top-bar {
            padding: 40px 0;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .bento-tile {
            background: rgba(255, 255, 255, 0.03);
            backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.08);
            border-radius: 28px;
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }

        /* CSS FIX: Ensure visibility is forced after GSAP finishes */
        .bento-tile {
            opacity: 1 !important;
            visibility: visible !important;
            background: rgba(15, 23, 42, 0.9) !important;
            /* Darker, more solid background */
            border: 1px solid rgba(255, 255, 255, 0.12) !important;
        }

        .bento-tile {
            /* REMOVE any fixed 'height' or 'min-height' properties */
            height: auto !important;
            min-height: 100%;
            /* Ensures they still look uniform in a grid row */
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            padding: 2rem;
            /* Consistent internal spacing */
        }

        /* Ensure the grid rows themselves aren't restricted */
        .grid {
            align-items: stretch;
        }

        .text-bright {
            color: #ffffff !important;
            text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
        }

        /* New Section Animation */
        .service-pill {
            transition: all 0.3s ease;
            border: 1px solid rgba(99, 102, 241, 0.2);
        }

        .service-pill:hover {
            background: rgba(99, 102, 241, 0.1);
            border-color: #6366f1;
        }

        .bento-tile:hover {
            border-color: rgba(99, 102, 241, 0.4);
            transform: translateY(-5px);
        }

        .mono {
            font-family: 'JetBrains Mono', monospace;
        }

        .text-gradient {
            background: linear-gradient(to right, #818cf8, #c084fc, #f472b6);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }

        /* --- ENHANCEMENTS --- */
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scroll-behavior: smooth;
}

/* Updated Nav Dock for better "Glass" feel */
.nav-dock {
    backdrop-filter: blur(20px) saturate(180%);
    /* Slight white glow on the top edge to simulate light hitting the glass */
    background: linear-gradient(180deg, rgba(255,255,255,0.08) 0%, rgba(15,23,42,0.8) 100%);
}

/* Fix for Grid Tile Consistency */
.bento-tile {
    height: 100% !important; /* Forces the tile to fill the grid cell height */
    position: relative;
    overflow: hidden; /* Clips any decorative elements inside */
}

/* Selection color - adds to the "Brand" experience */
::selection {
    background: var(--primary);
    color: white;
}

/* Hide scrollbar but keep functionality (Optional for that 'App' look) */
::-webkit-scrollbar {
    width: 6px;
}
::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,0.1);
    border-radius: 10px;
}