@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
        
        :root {
            --bg-deep: #020617;
            --accent-blue: #38bdf8;
            --accent-indigo: #818cf8;
        }

        body {
            font-family: 'Inter', sans-serif;
            background-color: var(--bg-deep);
            color: #f8fafc;
            scroll-behavior: smooth;
            overflow-x: hidden;
        }

        /* Professional Animated Background */
        .bg-mesh {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: -1;
            background: 
                radial-gradient(circle at 0% 0%, rgba(56, 189, 248, 0.08) 0%, transparent 50%),
                radial-gradient(circle at 100% 100%, rgba(129, 140, 248, 0.08) 0%, transparent 50%);
            background-color: var(--bg-deep);
        }

        .bg-mesh::after {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
            opacity: 0.03;
            pointer-events: none;
        }

        .glass {
            background: rgba(15, 23, 42, 0.6);
            backdrop-filter: blur(16px);
            border: 1px solid rgba(255, 255, 255, 0.05);
        }

        .gradient-text {
            background: linear-gradient(135deg, #38bdf8, #818cf8);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }

        .service-card {
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            background: rgba(30, 41, 59, 0.4);
            border: 1px solid rgba(255, 255, 255, 0.03);
        }

        .service-card:hover {
            transform: translateY(-8px);
            border-color: rgba(56, 189, 248, 0.3);
            background: rgba(30, 41, 59, 0.7);
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
        }

        .service-image {
            width: 100%;
            height: 180px;
            object-fit: cover;
            border-radius: 0.75rem;
            margin-bottom: 1.5rem;
            filter: grayscale(20%);
            transition: all 0.4s ease;
        }

        .service-card:hover .service-image {
            filter: grayscale(0%);
            transform: scale(1.02);
        }

        #ai-response-area::-webkit-scrollbar {
            width: 4px;
        }
        #ai-response-area::-webkit-scrollbar-thumb {
            background: #334155;
            border-radius: 10px;
        }

        .dot-pulse {
            animation: pulse 1.5s infinite;
        }

        @keyframes pulse {
            0%, 100% { opacity: 1; }
            50% { opacity: 0.3; }
        }

        .hero-visual {
            position: relative;
        }

        .hero-visual::before {
            content: "";
            position: absolute;
            inset: -20px;
            background: radial-gradient(circle, rgba(56, 189, 248, 0.15) 0%, transparent 70%);
            z-index: -1;
        }
/* Scroll animation base */
		.reveal {
			opacity: 0;
			transform: translateY(24px);
			transition: opacity 0.8s ease, transform 0.8s ease;
		}

		/* When visible */
		.reveal.show {
			opacity: 1;
			transform: translateY(0);
		}

		/* Optional stagger delay helpers */
		.delay-100 { transition-delay: 0.1s; }
		.delay-200 { transition-delay: 0.2s; }
		.delay-300 { transition-delay: 0.3s; }
		.delay-400 { transition-delay: 0.4s; }
		.delay-500 { transition-delay: 0.5s; }
		.delay-600 { transition-delay: 0.6s; }