    /* Base styles and custom animations */
    html {
        scroll-behavior: smooth;
    }

    body {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    /* Custom Blob Animation */
    @keyframes blob {
        0% { transform: translate(0px, 0px) scale(1); }
        33% { transform: translate(30px, -50px) scale(1.1); }
        66% { transform: translate(-20px, 20px) scale(0.9); }
        100% { transform: translate(0px, 0px) scale(1); }
    }

    .animate-blob {
        animation: blob 7s infinite;
    }

    .animation-delay-2000 {
        animation-delay: 2s;
    }

    /* Floating Animation for Hero Cards */
    @keyframes float {
        0% { transform: translateY(0px); }
        50% { transform: translateY(-10px); }
        100% { transform: translateY(0px); }
    }

    .animate-float {
        animation: float 4s ease-in-out infinite;
    }

    .animation-delay-2000 {
        animation-delay: 2s;
    }

    /* Scroll Reveal Styles */
    .reveal-on-scroll {
        opacity: 1; /* Default visible */
        transform: translateY(20px);
        transition: opacity 0.6s ease-out, transform 0.6s ease-out;
    }

    /* Class added by JS when element enters viewport */
    .reveal-visible {
        opacity: 1;
        transform: translateY(0);
    }

    /* Mobile Menu Transition */
    #mobile-menu {
        transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
    }
