 /* Define custom styles using the required fonts */
        .font-heading { font-family: 'Montserrat', 'Poppins', sans-serif; }
        .font-body { font-family: 'Inter', sans-serif; }
        .bg-ivory { background-color: #FAFAF7; }
        .text-charcoal { color: #333333; }
        .bg-sky-blue { background-color: #7FD3F0; }
        .bg-soft-lavender { background-color: #C8BFE7; }
        .shadow-glass { box-shadow: 0 4px 30px rgba(0, 0, 0, 0.05); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); border: 1px solid rgba(255, 255, 255, 0.3); }

        /* Floating Shapes Animation */
        @keyframes drift {
            0% { transform: translate(0, 0) rotate(0deg); opacity: 0.8; }
            50% { transform: translate(20px, -20px) rotate(5deg); opacity: 1; }
            100% { transform: translate(0, 0) rotate(0deg); opacity: 0.8; }
        }
        .float-shape { animation: drift 15s ease-in-out infinite alternate; }

        /* Typewriter Effect CSS */
        .typewriter-text {
            border-right: 2px solid #7FD3F0;
            white-space: nowrap;
            overflow: hidden;
        }

        /* Scroll-Triggered Fade-In/Slide-Up */
        .fade-slide-up {
            opacity: 0;
            transform: translateY(20px);
            transition: opacity 0.8s ease-out, transform 0.8s ease-out;
        }
        .fade-slide-up.show {
            opacity: 1;
            transform: translateY(0);
        }

        /* Custom Scrollbar for sleek look */
        ::-webkit-scrollbar { width: 8px; }
        ::-webkit-scrollbar-track { background: #f1f1f1; }
        ::-webkit-scrollbar-thumb { background: #C8BFE7; border-radius: 4px; }
        ::-webkit-scrollbar-thumb:hover { background: #7FD3F0; }
