:root {
            --bs-body-bg: #0a0b0e;
            --bs-body-color: #f5f6f9;
            --accent-cyan: #00f0ff;
            --accent-purple: #8a2be2;
            --text-muted: #8f9cae;
            --border-color: rgba(255, 255, 255, 0.08);
            --glow-shadow: 0 0 20px rgba(0, 240, 255, 0.2);
            --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }

        body {
            font-family: 'Inter', sans-serif;
            overflow-x: hidden;
            background-color: var(--bs-body-bg);
            color: var(--bs-body-color);
        }

        h1, h2, h3, h4, .navbar-brand {
            font-family: 'Space Grotesk', sans-serif;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        /* --- BOOTSTRAP NAVBAR OVERRIDES --- */
        .navbar {
            background: rgba(10, 11, 14, 0.8) !important;
            backdrop-filter: blur(12px);
            border-bottom: 1px solid var(--border-color);
        }

        .navbar-brand span {
            color: var(--accent-cyan);
        }

        .nav-link {
            color: var(--text-muted) !important;
            font-weight: 600;
            text-transform: uppercase;
            font-size: 0.9rem;
            letter-spacing: 0.5px;
            transition: var(--transition);
        }

        .nav-link:hover, .nav-link.active {
            color: var(--accent-cyan) !important;
            text-shadow: 0 0 10px rgba(0, 240, 255, 0.5);
        }

        /* Custom Tech Button */
        .btn-cyber {
            background: transparent;
            border: 2px solid var(--accent-cyan);
            color: var(--bs-body-color);
            border-radius: 0;
            font-family: 'Space Grotesk', sans-serif;
            font-weight: 700;
            text-transform: uppercase;
            padding: 0.6rem 1.75rem;
            transition: var(--transition);
        }

        .btn-cyber:hover {
            background: var(--accent-cyan);
            color: #0a0b0e;
            box-shadow: var(--glow-shadow);
            border-color: var(--accent-cyan);
        }

        .btn-cyber-purple {
            border-color: var(--accent-purple);
        }
        .btn-cyber-purple:hover {
            background: var(--accent-purple);
            color: #fff;
            box-shadow: 0 0 20px rgba(138, 43, 226, 0.3);
            border-color: var(--accent-purple);
        }

        /* --- HERO TECH LINES BACKGROUND --- */
        .hero-section {
            min-height: 85vh;
            display: flex;
            align-items: center;
            background-image: 
                linear-gradient(to right, rgba(255,255,255,0.02) 1px, transparent 1px),
                linear-gradient(to bottom, rgba(255,255,255,0.02) 1px, transparent 1px);
            background-size: 40px 40px;
            position: relative;
        }

        /* Gradient Glow Orbs */
        .hero-section::before {
            content: '';
            position: absolute;
            top: 20%;
            left: 5%;
            width: 300px;
            height: 300px;
            background: var(--accent-purple);
            filter: blur(160px);
            opacity: 0.15;
            pointer-events: none;
        }

        .text-gradient {
            background: linear-gradient(45deg, var(--accent-cyan), var(--accent-purple));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }

        /* --- ESPORTS SECTION HEADERS --- */
        .esports-header {
            border-left: 4px solid var(--accent-cyan);
            padding-left: 1.25rem;
        }

        /* --- MATCH CARDS (BOOTSTRAP LIST OVERRIDES) --- */
        .match-card {
            background: rgba(18, 20, 26, 0.7);
            border: 1px solid var(--border-color);
            transition: var(--transition);
        }

        .match-card:hover {
            border-color: var(--accent-cyan);
            transform: translateY(-2px);
        }

        .team-logo-placeholder {
            width: 40px;
            height: 40px;
            background: rgba(255, 255, 255, 0.05);
            border: 1px solid var(--border-color);
            border-radius: 50%;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-weight: bold;
        }

        .live-pulse {
            color: #ff4757;
            font-size: 0.75rem;
            letter-spacing: 2px;
            font-weight: 700;
        }

        .live-pulse::before {
            content: '';
            display: inline-block;
            width: 7px;
            height: 7px;
            background: #ff4757;
            border-radius: 50%;
            margin-right: 6px;
            animation: pulse-animation 1.5s infinite;
        }

        @keyframes pulse-animation {
            0% { transform: scale(0.9); opacity: 0.4; }
            50% { transform: scale(1.2); opacity: 1; }
            100% { transform: scale(0.9); opacity: 0.4; }
        }

        /* --- ROSTER CARDS --- */
        .player-card {
            background: rgba(18, 20, 26, 0.7);
            border: 1px solid var(--border-color);
            overflow: hidden;
            transition: var(--transition);
        }

        .player-card:hover {
            border-color: var(--accent-purple);
            transform: translateY(-5px);
        }

        .player-img-frame {
            height: 320px;
            background: linear-gradient(180deg, rgba(138, 43, 226, 0.03) 0%, rgba(138, 43, 226, 0.15) 100%);
            display: flex;
            align-items: flex-end;
            justify-content: center;
        }

        .player-silhouette {
            width: 75%;
            height: 85%;
            opacity: 0.35;
            background: radial-gradient(circle at bottom, var(--accent-purple) 0%, transparent 75%);
            clip-path: polygon(15% 100%, 25% 45%, 35% 30%, 50% 15%, 65% 30%, 75% 45%, 85% 100%);
        }

        /* --- FOOTER & PARTNERS --- */
        .partners-bar {
            background: rgba(18, 20, 26, 0.4);
            border-top: 1px solid var(--border-color);
            border-bottom: 1px solid var(--border-color);
        }
        
        .partner-logo {
            font-family: 'Space Grotesk', sans-serif;
            color: var(--text-muted);
            opacity: 0.5;
            letter-spacing: 2px;
            transition: var(--transition);
        }
        .partner-logo:hover { opacity: 1; color: #fff; }

        footer {
            border-top: 1px solid var(--border-color);
            background-color: #07080a;
        }