:root {
    --accent: #3b82f6;
    --bg: #05070a;
}

/* Announcement Bar */
.announcement-bar { position: fixed; top: 0; width: 100%; z-index: 101; height: 32px; }
.marquee-content { display: inline-flex; padding-left: 100%; animation: marquee 25s linear infinite; align-items: center; }
@keyframes marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-100%); } }

/* Modern Game Selection */
.modern-game-card {
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.05);
    padding: 30px;
    border-radius: 20px;
    transition: all 0.3s ease;
}
.modern-game-card:hover {
    background: rgba(255, 255, 255, 0.05);
    border-color: var(--accent);
    transform: translateY(-5px);
}
.icon-box {
    width: 52px; height: 52px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 20px;
}

/* Network Feature Cards */
.network-card {
    position: relative; padding: 40px; border-radius: 24px;
    background: rgba(255, 255, 255, 0.02); border: 1px solid rgba(255, 255, 255, 0.05);
    overflow: hidden; transition: all 0.4s ease;
}
.network-card:hover { border-color: rgba(59, 130, 246, 0.5); transform: translateY(-5px); }
.card-glow {
    position: absolute; top: -50%; left: -50%; width: 200%; height: 200%;
    background: radial-gradient(circle at center, rgba(59, 130, 246, 0.05) 0%, transparent 50%);
    opacity: 0; transition: opacity 0.4s ease; pointer-events: none;
}
.network-card:hover .card-glow { opacity: 1; }

/* Global Utilities */
.glass-card { background: rgba(255, 255, 255, 0.03); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.text-gradient { background: linear-gradient(to right, #3b82f6, #a855f7); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s cubic-bezier(0.2, 1, 0.3, 1); }
.reveal.active { opacity: 1; transform: translateY(0); }
.fade-text { transition: opacity 0.5s ease-in-out; }
.fade-text.hidden-opacity { opacity: 0; }

/* Pricing Boxes */
.pricing-box { position: relative; padding: 48px 40px; border-radius: 28px; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); transition: all 0.4s ease; }
.pricing-btn { display: block; text-align: center; padding: 14px 0; border-radius: 14px; font-weight: 800; background: rgba(255, 255, 255, 0.08); }
.featured-btn { background: var(--accent); }
