html {
            scroll-behavior: smooth;
        }
        body {
            font-family: 'Poppins', sans-serif;
            background-color: #01041a; /* Fallback background */
        }

        /* Animated Gradient Background Wrapper */
        .background-wrapper {
            background: linear-gradient(270deg, #01041a, #0b1f8a, #004e89);
            background-size: 200% 200%;
            animation: gradient-animation 20s ease infinite;
        }

        @keyframes gradient-animation {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }
        
        /* Particle canvas styling */
        #particle-canvas {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 1;
        }
        
        /* Ensure content is above particles */
        .content-wrapper {
            position: relative;
            z-index: 2;
        }

        /* Glassmorphism Effect for Cards */
        .glass-card {
            background: rgba(255, 255, 255, 0.05);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.1);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        .glass-card:hover {
            box-shadow: 0 8px 32px rgba(0, 191, 255, 0.15);
        }
        
        /* Header scroll effect */
        .header-scrolled {
            background-color: rgba(1, 4, 26, 0.85); /* Slightly darker and more opaque */
            box-shadow: 0 2px 10px rgba(0,0,0,0.2);
        }

        /* On-scroll reveal animation */
        .reveal {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.8s ease-out, transform 0.6s ease-out;
        }
        .reveal.visible {
            opacity: 1;
            transform: translateY(0);
        }
        
        /* Nav link hover effect */
        .nav-link {
            position: relative;
        }
        .nav-link::after {
            content: '';
            position: absolute;
            width: 0;
            height: 2px;
            bottom: -5px;
            left: 50%;
            transform: translateX(-50%);
            background-color: #3b82f6; /* blue-500 */
            transition: width 0.3s ease-in-out;
        }
        .nav-link:hover::after {
            width: 100%;
        }

        /* Mobile menu button animation */
        #mobile-menu-button svg {
            transition: transform 0.3s ease-in-out;
        }
        #mobile-menu-button.is-open svg {
            transform: rotate(90deg);
        }

        /* Loading spinner */
        .loader {
            border: 4px solid rgba(255, 255, 255, 0.2);
            border-left-color: #3b82f6;
            border-radius: 50%;
            width: 24px;
            height: 24px;
            animation: spin 1s linear infinite;
        }

        @keyframes spin {
            to { transform: rotate(360deg); }
        }
