       * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Poppins', sans-serif;
        }
        
        @keyframes float {
            0%, 100% { transform: translateY(0px); }
            50% { transform: translateY(-20px); }
        }
        
        @keyframes twinkle {
            0%, 100% { opacity: 0.3; transform: scale(0.8); }
            50% { opacity: 1; transform: scale(1.2); }
        }
        
        @keyframes fadeInUp {
            0% { opacity: 0; transform: translateY(30px); }
            100% { opacity: 1; transform: translateY(0); }
        }
        
        @keyframes pulse-glow {
            0%, 100% { box-shadow: 0 0 20px rgba(16, 185, 129, 0.4); }
            50% { box-shadow: 0 0 30px rgba(16, 185, 129, 0.7); }
        }

        @keyframes navbar-glow {
            0%, 100% { box-shadow: 0 0 15px 2px rgba(255, 73, 192, 0.4), inset 0 0 10px rgba(255, 73, 192, 0.2); border-color: rgba(255, 73, 192, 0.7); }
            50% { box-shadow: 0 0 20px 4px rgba(255, 73, 192, 0.6), inset 0 0 15px rgba(255, 73, 192, 0.3); border-color: rgba(255, 73, 192, 0.9); }
        }

        @keyframes bounce-light {
            0%, 100% { transform: translateY(0); }
            50% { transform: translateY(-10px); }
        }
        
        @keyframes glow-border {
            0%, 100% { box-shadow: 0 8px 32px rgba(0,0,0,0.1), 0 0 15px 5px rgba(255, 165, 0, 0.15); border-color: rgba(255, 165, 0, 0.4); }
            50% { box-shadow: 0 8px 32px rgba(0,0,0,0.15), 0 0 25px 8px rgba(255, 165, 0, 0.3); border-color: rgba(255, 165, 0, 0.7); }
        }
        
        @keyframes button-glow {
            0%, 100% { box-shadow: 0 4px 12px rgba(255, 165, 0, 0.3), 0 0 5px rgba(255, 165, 0, 0.5); }
            50% { box-shadow: 0 6px 15px rgba(255, 165, 0, 0.5), 0 0 8px 3px rgba(255, 165, 0, 0.6); }
        }
        
        @keyframes sparkle {
            0%, 100% { opacity: 0; }
            50% { opacity: 1; }
        }
        
        .sparkles {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none;
            z-index: -1;
            background-image: 
                radial-gradient(circle, rgba(255, 215, 0, 0.6) 1px, transparent 1px),
                radial-gradient(circle, rgba(255, 165, 0, 0.4) 1px, transparent 1px),
                radial-gradient(circle, rgba(255, 215, 0, 0.5) 1px, transparent 1px);
            background-size: 50px 50px;
            background-position: 0 0, 25px 25px, 12px 37px;
            animation: sparkle 4s infinite alternate;
        }
        
        .floating { animation: float 3s ease-in-out infinite; }
        .twinkle { animation: twinkle 2s ease-in-out infinite; }
        .fade-in-up { animation: fadeInUp 0.8s ease-out forwards; }
        .pulse-glow { animation: pulse-glow 2s ease-in-out infinite; }
        .navbar-glow { animation: navbar-glow 3s ease-in-out infinite; }
        .bounce-animation { animation: bounce-light 4s infinite ease-in-out; }
        
        .gradient-bg {
            background: linear-gradient(135deg, #ff9f43 0%, #ff6b6b 50%, #ff9ff3 100%);
        }
        
        .text-shadow {
            text-shadow: 2px 2px 4px rgba(0,0,0,0.2);
        }
        
        .card-hover:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 40px rgba(0,0,0,0.1);
        }
        
        .mascot-container {
            filter: drop-shadow(0 15px 25px rgba(0,0,0,0.15));
            position: relative;
        }
        
        .mascot-img {
            filter: drop-shadow(0 8px 24px rgba(255, 126, 54, 0.5));
            transition: all 0.3s ease;
            max-width: 110%;
            max-height: 110%;
            object-fit: contain;
        }
        
        .mascot-img:hover {
            transform: scale(1.05) rotate(5deg);
        }
        
        .cta-button {
            background: linear-gradient(135deg, #00d2ff 0%, #00b09b 100%);
            border: none;
            color: white;
            padding: 0.75rem 1.5rem;
            border-radius: 50px;
            font-weight: bold;
            transition: all 0.3s ease;
            box-shadow: 0 10px 20px rgba(0, 178, 139, 0.3);
        }
        
        .cta-button:hover {
            transform: translateY(-3px);
            box-shadow: 0 15px 25px rgba(0, 178, 139, 0.4);
        }
        
        /* Custom Scrollbar */
        .scrollbar-thin::-webkit-scrollbar {
            width: 6px;
        }
        
        .scrollbar-thin::-webkit-scrollbar-track {
            background: #f1f1f1;
            border-radius: 10px;
        }
        
        .scrollbar-thin::-webkit-scrollbar-thumb {
            background: #D62C2C;
            border-radius: 10px;
        }
        
        .scrollbar-thin::-webkit-scrollbar-thumb:hover {
            background: #b91c1c;
        }
        
        .benefit-card {
            transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
        }
        
        .benefit-card.animate {
            opacity: 1 !important;
            transform: translateY(0) !important;
        }
        
        #benefit-card-1.animate { transition-delay: 0.1s; }
        #benefit-card-2.animate { transition-delay: 0.2s; }
        #benefit-card-3.animate { transition-delay: 0.3s; }
        #benefit-card-4.animate { transition-delay: 0.4s; }
        #benefit-card-5.animate { transition-delay: 0.5s; }
        
        /* Timeline styles */
        .timeline-item {
            transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
        }
        
        .timeline-item.animate-timeline {
            opacity: 1 !important;
            transform: translateY(0) !important;
        }
        
        .timeline-item:nth-child(1).animate-timeline { transition-delay: 0.1s; }
        .timeline-item:nth-child(2).animate-timeline { transition-delay: 0.2s; }
        .timeline-item:nth-child(3).animate-timeline { transition-delay: 0.3s; }
        .timeline-item:nth-child(4).animate-timeline { transition-delay: 0.4s; }
        .timeline-item:nth-child(5).animate-timeline { transition-delay: 0.5s; }
        .timeline-item:nth-child(6).animate-timeline { transition-delay: 0.6s; }
        
        /* Learning Path styles */
        .lp-card {
            transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
        }
        
        .lp-card.animate-lp {
            opacity: 1 !important;
            transform: translateY(0) !important;
        }
        
        .lp-card:nth-child(1).animate-lp { transition-delay: 0.1s; }
        .lp-card:nth-child(2).animate-lp { transition-delay: 0.3s; }
        .lp-card:nth-child(3).animate-lp { transition-delay: 0.5s; }
        
        @keyframes float {
            0% { transform: translatey(0px); }
            50% { transform: translatey(-20px); }
            100% { transform: translatey(0px); }
        }
        
        .shape {
            animation: float 15s infinite ease-in-out;
        }
        
        /* Partner section animations */
        @keyframes scroll-left {
            0% {
                transform: translateX(0);
            }
            100% {
                transform: translateX(calc(-100% - 1rem));
            }
        }

        @keyframes scroll-right {
            0% {
                transform: translateX(calc(-100% - 1rem));
            }
            100% {
                transform: translateX(0);
            }
        }

        .animate-scroll-left {
            animation: scroll-left 30s linear infinite;
            display: flex;
            flex-wrap: nowrap;
            will-change: transform;
        }

        .animate-scroll-right {
            animation: scroll-right 30s linear infinite;
            display: flex;
            flex-wrap: nowrap;
            will-change: transform;
        }

        @media (max-width: 640px) {
            .animate-scroll-left, .animate-scroll-right {
                animation-duration: 20s;
            }
        }

        /* Footer animations */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(20px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .footer-column {
            animation: fadeInUp 0.5s ease-out forwards;
            opacity: 0;
        }

        .footer-column:nth-child(1) { animation-delay: 0.1s; }
        .footer-column:nth-child(2) { animation-delay: 0.2s; }
        .footer-column:nth-child(3) { animation-delay: 0.3s; }
        .footer-column:nth-child(4) { animation-delay: 0.4s; }
        .footer-column:nth-child(5) { animation-delay: 0.5s; }
        
        /* Navbar animations */
        @keyframes fadeInDown {
            from {
                opacity: 0;
                transform: translateY(-10px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        
        nav {
            animation: fadeInDown 0.6s ease-out;
        }
        
        /* Hamburger menu styles */
        .hamburger-line {
            width: 100%;
            height: 3px;
            background: linear-gradient(90deg, #FF49C0, #691350);
            margin: 3px 0;
            border-radius: 4px;
            transition: all 0.4s cubic-bezier(0.68, -0.6, 0.32, 1.6);
            box-shadow: 0 1px 3px rgba(0,0,0,0.2);
        }
        
        .hamburger-active .hamburger-line:nth-child(1) {
            transform: translateY(8px) rotate(45deg);
            width: 100%;
            background: linear-gradient(90deg, #FF49C0, #FF49C0);
        }
        
        .hamburger-active .hamburger-line:nth-child(2) {
            opacity: 0;
            transform: translateX(-10px);
        }
        
        .hamburger-active .hamburger-line:nth-child(3) {
            transform: translateY(-8px) rotate(-45deg);
            width: 100%;
            background: linear-gradient(90deg, #FF49C0, #FF49C0);
        }
        
        /* Smooth scrolling for anchor links */
        html {
            scroll-behavior: smooth;
            scroll-padding-top: 100px; /* Accounts for fixed navbar */
        }