 /* Font setup */
        body {
            font-family: 'Inter', sans-serif;
            background-color: #f8fafc; /* light gray bg */
            color: #1e293b; /* slate-800 */
        }

        h1, h2, h3, h4, h5, h6, .font-poppins {
            font-family: 'Poppins', sans-serif;
        }

        /* Animated Gradient Background */
        .animated-gradient-bg {
            background: linear-gradient(-45deg, #0d9488, #2563eb, #7c3aed, #db2777);
            background-size: 400% 400%;
            animation: gradientBG 15s ease infinite;
        }

        @keyframes gradientBG {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }
        
        /* Navbar scroll effect */
        nav.scrolled {
            background-color: rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(10px);
            --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
        }

        /* Active Nav Link */
        .nav-link.active-link {
            color: #2563eb; /* blue-600 */
            font-weight: 600;
            position: relative;
        }
        .nav-link.active-link::after {
            content: '';
            position: absolute;
            bottom: -4px;
            left: 0;
            width: 100%;
            height: 2px;
            background-color: #2563eb; /* blue-600 */
        }
        
        /* Page transition */
        .page-content {
            animation: fadeIn 0.5s ease-out;
        }
        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(10px); }
            to { opacity: 1; transform: translateY(0); }
        }

        /* Scroll-reveal animations */
        .scroll-reveal {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.6s ease-out, transform 0.6s ease-out;
        }
        .scroll-reveal.is-visible {
            opacity: 1;
            transform: translateY(0);
        }

        /* Carousel styles */
        .carousel-slider {
            transition: transform 0.5s ease-in-out;
        }
        
        /* Glassmorphism Card */
        .glass-card {
            background: rgba(255, 255, 255, 0.2);
            backdrop-filter: blur(15px);
            border: 1px solid rgba(255, 255, 255, 0.3);
        }

        /* Custom alert modal */
        #custom-alert-modal {
            transition: opacity 0.3s ease, transform 0.3s ease;
        }
        #custom-alert-modal.modal-hidden {
            opacity: 0;
            transform: scale(0.95);
            pointer-events: none;
        }
        
        /* Hamburger menu icon animation */
        .hamburger div {
            transition: all 0.3s ease;
        }
        .hamburger.is-active div:nth-child(1) {
            transform: translateY(8px) rotate(45deg);
        }
        .hamburger.is-active div:nth-child(2) {
            opacity: 0;
        }
        .hamburger.is-active div:nth-child(3) {
            transform: translateY(-8px) rotate(-45deg);
        }
