     /* --- Custom Color Palette & Typography --- */
        :root {
            --light-blue: #A9D1F7; /* Sky Blue */
            --soft-purple: #C2A9F7; /* Soft Purple */
            --dark-navy: #1C274C; /* Dark Text/Footer */
            --accent-glow: #F7A9D1; /* Pink/Coral Accent */
            --glass-bg: rgba(255, 255, 255, 0.4);
        }

        body {
            font-family: 'Inter', sans-serif;
            background-color: #F7F9FC;
            color: var(--dark-navy);
        }

        /* Futuristic Heading Font */
        .orbitron {
            font-family: 'Orbitron', sans-serif;
        }

        /* Hero Background Gradient (Sky Blue to Soft Purple) */
        .bg-hero-gradient {
            background: linear-gradient(135deg, var(--light-blue) 0%, var(--soft-purple) 100%);
        }

        /* CTA Button Glow */
        .btn-primary {
            background-color: var(--dark-navy);
            box-shadow: 0 0 20px rgba(28, 39, 76, 0.4);
            transition: all 0.3s ease;
        }
        .btn-primary:hover {
            background-color: var(--accent-glow);
            box-shadow: 0 0 30px var(--accent-glow);
            transform: translateY(-2px);
        }
        
        /* Secondary CTA (Glass) */
        .btn-secondary-glass {
            background: rgba(255, 255, 255, 0.3);
            backdrop-filter: blur(5px);
            border: 1px solid rgba(255, 255, 255, 0.5);
            transition: all 0.3s ease;
        }
        .btn-secondary-glass:hover {
            background: rgba(255, 255, 255, 0.5);
        }

        /* Glass Card Style */
        .glass-card {
            background: var(--glass-bg);
            backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.6);
            border-radius: 32px;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
            transition: all 0.5s cubic-bezier(0.25, 0.8, 0.25, 1);
        }
        .glass-card:hover {
            box-shadow: 0 15px 50px rgba(0, 0, 0, 0.15);
            transform: translateY(-5px);
        }
        
        /* Floating Element Animation */
        @keyframes float-subtle {
            0% { transform: translate(0, 0); opacity: 0.8; }
            50% { transform: translate(5px, -8px); opacity: 0.9; }
            100% { transform: translate(0, 0); opacity: 0.8; }
        }

        .floating-element {
            animation: float-subtle 30s ease-in-out infinite;
        }
        
        /* Star Rating Style */
        .rating-star {
            color: #FFD700; /* Gold */
        }
        
        /* Smooth Scroll Animation */
        .fade-in-up {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 1s cubic-bezier(0.25, 0.8, 0.25, 1), transform 1s cubic-bezier(0.25, 0.8, 0.25, 1);
        }
        .is-visible {
            opacity: 1;
            transform: translateY(0);
        }
