        :root {
            --primary-blue: #4F46E5;
            --secondary-blue: #6366F1;
            --light-blue: #818CF8;
            --primary-purple: #7C3AED;
            --secondary-purple: #8B5CF6;
            --light-purple: #A78BFA;
            --dark-bg: #1a1a2e;
            --darker-bg: #16213e;
            --text-light: #ffffff;
            --accent-gradient: linear-gradient(135deg, var(--primary-blue), var(--primary-purple));
        }

        .banner-container {
            position: relative;
            width: 100%;
            height: 100px;
            background: linear-gradient(135deg, var(--dark-bg) 0%, var(--darker-bg) 100%);
            overflow: hidden;
            cursor: pointer;
            transition: all 0.3s ease;
            border-radius: 10px;
        }

        .banner-container:hover {
            transform: scale(1.02);
        }

        /* Star background */
        .stars-container {
            position: absolute;
            width: 100%;
            height: 100%;
            overflow: hidden;
        }

        .star {
            position: absolute;
            width: 2px;
            height: 2px;
            background: #ffffff;
            border-radius: 50%;
            animation: twinkle 4s ease-in-out infinite;
            opacity: 0.6;
        }

        @keyframes twinkle {
            0%, 100% { 
                opacity: 0.3; 
                transform: scale(1);
            }
            25% {
                opacity: 0.6;
                transform: scale(1.1);
            }
            50% { 
                opacity: 0.8; 
                transform: scale(1.2);
            }
            75% {
                opacity: 0.5;
                transform: scale(1.05);
            }
        }

        .shooting-star {
            position: absolute;
            width: 2px;
            height: 2px;
            background: linear-gradient(45deg, #ffffff, #818CF8);
            border-radius: 50%;
            box-shadow: 0 0 4px #ffffff, 0 0 8px #818CF8;
            opacity: 0;
        }

        @keyframes shootingStarPath {
            0% {
                opacity: 0;
                transform: translateX(0px) translateY(0px) scale(0);
            }
            10% {
                opacity: 1;
                transform: translateX(30px) translateY(-10px) scale(1);
            }
            90% {
                opacity: 1;
                transform: translateX(300px) translateY(-60px) scale(1);
            }
            100% {
                opacity: 0;
                transform: translateX(400px) translateY(-80px) scale(0);
            }
        }

        /* Content - Optimized for 100px height */
        .banner-content {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            text-align: center;
            z-index: 10;
            width: 90%;
            max-width: 1200px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 2rem;
        }

        .banner-text {
            flex: 1;
            text-align: left;
        }

        .banner-title {
            font-size: 1.8rem;
            font-weight: bold;
            background: var(--accent-gradient);
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
            margin-bottom: 0.25rem;
            /*animation: fadeInUp 1s ease;*/
            line-height: 1.2;
        }
        
        .banner-title-mobile {
            font-size: 1.8rem;
            font-weight: bold;
            background: var(--accent-gradient);
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
            margin-bottom: 0.25rem;
            /*animation: fadeInUp 1s ease;*/
            line-height: 1.2;
            display: none;
        }

        .banner-subtitle {
            font-size: 0.9rem;
            color: var(--text-light);
            /*animation: fadeInUp 1s ease 0.2s both;*/
            opacity: 0.9;
            line-height: 1.3;
        }

        .banner-cta {
            display: inline-flex;
            align-items: center;
            gap: 0.4rem;
            background: var(--accent-gradient);
            color: white;
            padding: 0.6rem 1.5rem;
            border-radius: 25px;
            font-size: 0.9rem;
            font-weight: 600;
            text-decoration: none;
            transition: all 0.3s ease;
            /*animation: fadeInUp 1s ease 0.4s both;*/
            box-shadow: 0 4px 15px rgba(79, 70, 229, 0.3);
            border: 2px solid transparent;
            position: relative;
            overflow: hidden;
            white-space: nowrap;
        }

        .banner-cta::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
            transition: left 0.5s ease;
        }

        .banner-cta:hover::before {
            left: 100%;
        }

        .banner-cta:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(79, 70, 229, 0.5);
            border-color: rgba(255, 255, 255, 0.3);
        }

        .arrow-icon {
            transition: transform 0.3s ease;
            font-size: 1rem;
        }

        .banner-cta:hover .arrow-icon {
            transform: translateX(3px);
        }

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

        /* Floating particles - smaller for 100px height */
        .particle {
            position: absolute;
            width: 3px;
            height: 3px;
            background: var(--light-blue);
            border-radius: 50%;
            opacity: 0.3;
            pointer-events: none;
        }

        @keyframes float {
            0%, 100% { 
                transform: translateY(0px) translateX(0px) rotate(0deg);
                opacity: 0.3;
            }
            25% { 
                transform: translateY(-20px) translateX(5px) rotate(90deg);
                opacity: 0.5;
            }
            50% { 
                transform: translateY(-30px) translateX(-5px) rotate(180deg);
                opacity: 0.3;
            }
            75% { 
                transform: translateY(-20px) translateX(3px) rotate(270deg);
                opacity: 0.1;
            }
        }

        /* Responsive */
        @media (max-width: 768px) {
            .banner-content {
                flex-direction: column;
                gap: 0.5rem;
                text-align: center;
            }
            
            .banner-text {
                text-align: center;
            }
            
            .banner-title {
                font-size: 1.5rem;
                margin-bottom: 0.2rem;
                display: none;
            }
            
            .banner-title-mobile {
                font-size: 1.5rem;
                margin-bottom: 0.2rem;
                display: block;
            }
            
            .banner-subtitle {
                font-size: 0.8rem;
                display: none;  /* Hide subtitle on mobile to save space */
            }
            
            .banner-cta {
                font-size: 0.85rem;
                padding: 0.5rem 1.2rem;
            }
        }

        @media (max-width: 480px) {
            .banner-title {
                font-size: 1.3rem;
                display: none;
            }
            
            .banner-title-mobile {
                font-size: 1.3rem;
                display: block;
            }
            
            .banner-cta {
                text-decoration: none;
                font-size: 0.8rem;
                padding: 0.4rem 1rem;
            }
        }
        
        /* Full page transition overlay */
        .transition-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            background: linear-gradient(135deg, var(--dark-bg) 0%, var(--darker-bg) 100%);
            z-index: 9999;
            display: none;
            overflow: hidden;
        }

        .transition-overlay.active {
            display: block;
        }

        .transition-stars-container {
            position: absolute;
            width: 100%;
            height: 100%;
            overflow: hidden;
        }

        .transition-star {
            position: absolute;
            background: #ffffff;
            border-radius: 50%;
            opacity: 0;
        }

        @keyframes expandStar {
            0% {
                opacity: 0.3;
                transform: scale(1);
            }
            50% {
                opacity: 0.8;
                transform: scale(1.5);
            }
            100% {
                opacity: 0;
                transform: scale(2);
            }
        }

        .transition-text {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%) scale(0);
            font-size: 6rem;
            font-weight: bold;
            background: var(--accent-gradient);
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
            text-shadow: 0 0 40px rgba(129, 140, 248, 0.5);
            opacity: 0;
            z-index: 10000;
        }

        @keyframes expandText {
            0% {
                opacity: 0;
                transform: translate(-50%, -50%) scale(0);
            }
            40% {
                opacity: 1;
                transform: translate(-50%, -50%) scale(1);
            }
            70% {
                opacity: 1;
                transform: translate(-50%, -50%) scale(1.2);
            }
            100% {
                opacity: 0;
                transform: translate(-50%, -50%) scale(2);
            }
        }

        @media (max-width: 768px) {
            .transition-text {
                font-size: 4rem;
            }
        }

        @media (max-width: 480px) {
            .transition-text {
                font-size: 3rem;
            }
        }