 @import url('https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap');
        
        :root {
            --pastel-mint: #e0f2f1;    /* Light Teal */
            --pastel-lavender: #f0e6ff; /* Light Violet */
            --pastel-sky: #dbeafe;     /* Light Blue */
            --glass-bg: rgba(255, 255, 255, 0.3);
            --primary-color: #6d28d9; /* Deep Violet */
        }

        body {
            font-family: 'Inter', sans-serif;
            background-color: #fcfcfc;
            background: linear-gradient(-45deg, var(--pastel-lavender), var(--pastel-mint), var(--pastel-sky), var(--pastel-lavender));
            background-size: 400% 400%;
            animation: gradient-animation 15s ease infinite;
            scroll-behavior: smooth;
            color: #374151; /* Default text color */
        }

        @keyframes gradient-animation {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }

        /* Glassmorphism Effect Class */
        .glass-card {
            background-color: var(--glass-bg);
            backdrop-filter: blur(16px);
            -webkit-backdrop-filter: blur(16px);
            border: 1px solid rgba(255, 255, 255, 0.4);
            box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.05), 0 10px 40px 0 rgba(109, 40, 217, 0.1);
            transition: all 0.3s ease;
        }

        /* Floating Blobs (More subtle and layered) */
        .floating-blob {
            position: absolute;
            width: 250px;
            height: 250px;
            border-radius: 50%;
            opacity: 0.5;
            animation: float-blob 20s ease-in-out infinite;
            filter: blur(90px);
            z-index: 1;
        }
        .blob-1 { top: 5%; left: 5%; background-color: #fbcfe8; animation-delay: 0s; } /* Pink */
        .blob-2 { bottom: 15%; right: 10%; background-color: #c4b5fd; animation-delay: 7s; } /* Purple */
        .blob-3 { top: 70%; right: 5%; background-color: #99f6e4; animation-delay: 14s; } /* Teal */

        @keyframes float-blob {
            0%, 100% { transform: translate(0, 0) scale(1); }
            33% { transform: translate(-80px, 40px) scale(1.1); }
            66% { transform: translate(80px, -40px) scale(0.9); }
        }

        /* Scroll Animation Visibility */
        .fade-in-section {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }
        .is-visible {
            opacity: 1;
            transform: translateY(0);
        }
        
        /* Custom Button Glow and Pulse Effect */
        .btn-pulse {
            transition: all 0.4s ease;
            position: relative;
        }
        .btn-pulse:hover {
            box-shadow: 0 0 25px rgba(109, 40, 217, 0.5);
            transform: translateY(-2px);
        }
        
        /* Service Card Expand Transition */
        .service-details {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.5s ease-in-out, padding 0.5s ease-in-out;
        }
        .service-details.expanded {
            max-height: 500px; /* Large enough value */
            padding-top: 1rem;
        }

        /* Testimonial Carousel Setup */
        .testimonial-carousel-inner {
            display: flex;
            transition: transform 0.6s ease-in-out;
        }
      
/* Floating blob animation */
@keyframes blob {
  0%, 100% { transform: translate(0, 0) scale(1); }
  33% { transform: translate(20px, -30px) scale(1.1); }
  66% { transform: translate(-20px, 20px) scale(0.9); }
}
.animate-blob {
  animation: blob 12s infinite;
}
.animation-delay-2000 { animation-delay: 2s; }

/* Marquee scrolling */
@keyframes marquee {
  0% { transform: translateX(100%); }
  100% { transform: translateX(-100%); }
}
.animate-marquee {
  display: inline-block;
  animation: marquee 20s linear infinite;
}

/* Typewriter effect */
#hero-typewriter {
  border-right: 4px solid #ec4899;
  white-space: nowrap;
  overflow: hidden;
}
