:root{--brand:#64748b;--accent:#3b82f6;--dark:#0b1220;--muted:#475569;--bg:#f3f4f6;--surface:#fff;--border:rgba(2,6,23,.12)}
*{box-sizing:border-box}
body{background:var(--bg);color:#111827;font-family:'Segoe UI',system-ui,sans-serif;margin:0}
a{color:var(--brand);text-decoration:none}a:hover{color:var(--accent)}
h1,h2,h3,h4,h5,h6{color:var(--dark)}
.navbar{background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 2px 8px var(--border)}
.navbar-brand{font-weight:800;font-size:1.4rem;color:var(--dark)}
.navbar-brand span{color:var(--accent)}
.nav-link{color:#111827!important;font-weight:500}
.nav-link:hover,.nav-link.active{color:var(--accent)!important}
.hero{background:linear-gradient(135deg,var(--brand),var(--accent));color:#fff;padding:80px 0 60px;position:relative;overflow:hidden}
.hero::before,.hero::after{content:'';position:absolute;border-radius:50%;background:rgba(255,255,255,.06)}
.hero::before{width:320px;height:320px;top:-60px;right:-60px}
.hero::after{width:240px;height:240px;bottom:-80px;left:-40px;background:rgba(255,255,255,.04)}
.hero h1{color:#fff;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800}
.hero p{color:rgba(255,255,255,.9);font-size:1.1rem}
.btn-brand{background:var(--brand);color:#fff;border:none;border-radius:8px;padding:.65rem 1.5rem;font-weight:600;transition:.2s}
.btn-brand:hover{background:var(--accent);color:#fff;transform:translateY(-1px)}
.btn-outline-brand{background:transparent;color:#fff;border:2px solid #fff;border-radius:8px;padding:.65rem 1.5rem;font-weight:600;transition:.2s}
.btn-outline-brand:hover{background:#fff;color:var(--brand)}
.section-title{font-size:1.6rem;font-weight:700;color:var(--dark)}
.section-subtitle{color:var(--muted)}
.card-brand{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 2px 10px var(--border);transition:.2s}
.card-brand:hover{transform:translateY(-3px);box-shadow:0 6px 24px rgba(59,130,246,.15)}
.glow-card{border:1.5px solid var(--accent);box-shadow:0 0 0 2px rgba(59,130,246,.12)}
.live-badge{position:absolute;top:12px;right:12px;background:#dc2626;color:#fff;font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:20px;display:flex;align-items:center;gap:4px;z-index:2}
.live-dot{width:7px;height:7px;background:#fff;border-radius:50%;animation:pulse 1s infinite}
@keyframes pulse{50%{opacity:.4;transform:scale(.6)}}
.jackpot{background:var(--surface);border:1px solid var(--border);border-radius:16px;text-align:center;padding:48px 24px}
.jackpot-amount{font-size:clamp(2.5rem,8vw,5rem);font-weight:900;color:var(--brand);letter-spacing:-1px;animation:breathe 2.4s ease-in-out infinite;display:inline-block}
@keyframes breathe{50%{text-shadow:0 0 32px rgba(59,130,246,.35);transform:scale(1.03)}}
.countdown-box{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:18px 22px;min-width:72px;text-align:center;box-shadow:0 2px 8px var(--border)}
.countdown-num{font-size:2.2rem;font-weight:800;color:var(--brand);line-height:1}
.countdown-label{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:4px}
.festival{background:linear-gradient(90deg,var(--brand),var(--accent));border-radius:14px;padding:36px 32px;color:#fff}
.festival h2{color:#fff}
.step-circle{width:48px;height:48px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;flex-shrink:0}
.testimonial{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px;height:100%}
.stars{color:var(--accent)}
.winners-wrap{overflow:hidden;height:320px;border-radius:12px;background:var(--surface);border:1px solid var(--border)}
.winners-inner{animation:scrollUp 18s linear infinite}
.winners-inner:hover{animation-play-state:paused}
@keyframes scrollUp{to{transform:translateY(-50%)}}
.winner-row{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border)}
.winner-avatar{width:38px;height:38px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.winner-amount{color:var(--brand);font-weight:700;font-size:.9rem}
.partner-icon{font-size:2rem;color:var(--border)}.partner-icon:hover{color:var(--brand)}
.privacy-box{background:var(--surface);border-left:4px solid var(--accent);border-radius:0 10px 10px 0;padding:18px 22px;border:1px solid var(--border);border-left-width:4px}
footer{background:var(--surface);border-top:1px solid var(--border);padding:48px 0 24px}
.footer-link{color:var(--muted);font-size:.9rem;display:block;margin-bottom:8px}
.footer-link:hover{color:var(--accent)}
.footer-bottom{border-top:1px solid var(--border);margin-top:32px;padding-top:20px;color:var(--muted);font-size:.85rem}
.content-img{width:100%;border-radius:12px;object-fit:cover;display:block}
.adv-icon{font-size:2rem;color:var(--brand);margin-bottom:12px}
.accordion-button{color:var(--dark);font-weight:600}
.accordion-button:not(.collapsed){color:var(--accent);background:var(--bg)}
.accordion-button:focus{box-shadow:none}
.odds-table th{background:var(--bg);font-size:.85rem;color:var(--muted);font-weight:600;white-space:nowrap}
.odds-table td{vertical-align:middle;font-size:.9rem}
.odds-btn{display:inline-block;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:4px 12px;font-weight:700;color:var(--dark);font-size:.85rem}
.odds-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}
.tier-card{border-radius:14px;padding:28px;height:100%;background:var(--surface);border:1px solid var(--border);position:relative}
.tier-card.featured{border:2px solid var(--accent);box-shadow:0 8px 30px rgba(59,130,246,.15)}
.tier-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--accent);color:#fff;font-size:.7rem;font-weight:700;padding:4px 12px;border-radius:20px;white-space:nowrap}
.legal-toc a{display:block;padding:8px 0;color:var(--muted);font-size:.9rem;border-bottom:1px solid var(--border)}
.legal-toc a:hover{color:var(--accent)}
@media(max-width:767px){.countdown-box{padding:12px 14px;min-width:58px}.countdown-num{font-size:1.6rem}}

/* ===== LOGO ===== */
.navbar-brand img {
    height: 40px;
    width: auto;
    display: block;
}

/* ===== STICKY BOTTOM BAR (FOOTER CTA) ===== */
body {
    /* Padding dikurangi karena bar menjadi lebih tipis */
    padding-bottom: 60px;
}

.sticky-cta-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #03026d;
    /* Background hitam */
    padding: 8px 10px;
    /* Padding diperkecil agar lebih tipis */
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.4);
    z-index: 1040;
    display: flex;
    justify-content: center;
    gap: 10px;
    /* Jarak antar tombol diperkecil */
    border-top: 1px solid #333333;
}

/* --- ANIMASI BERKEDIP (BLINKING) --- */
@keyframes neonBlink {

    0%,
    100% {
        opacity: 1;
        filter: brightness(1);
    }

    50% {
        opacity: 0.5;
        /* Dibuat lebih transparan agar kedipannya lebih terlihat jelas */
        filter: brightness(1.3);
    }
}

.btn-glow {
    display: inline-block;
    padding: 6px 24px;
    /* Ukuran bantalan tombol diperkecil */
    border-radius: 50px;
    font-weight: 800;
    text-align: center;
    text-decoration: none;
    font-size: 0.9rem;
    /* Ukuran huruf diperkecil */
    transition: transform 0.2s, filter 0.2s;

    /* KODE ANIMASI */
    animation: neonBlink 1.5s infinite ease-in-out;
}

/* Jika mouse diarahkan ke tombol, kedipan berhenti agar mudah diklik */
.btn-glow:hover {
    animation-play-state: paused;
    transform: translateY(-2px);
    filter: brightness(1.1);
    color: #000 !important;
}

.btn-glow:active {
    transform: translateY(1px);
}

/* Tombol Daftar (Hijau - Biru) */
.btn-register-glow {
    background: linear-gradient(90deg, #00f2fe 0%, #4facfe 100%);
    color: #000 !important;
    /* Teks hitam */
    border: 2px solid rgba(255, 255, 255, 0.6);
    box-shadow: inset 0 2px 4px rgba(255, 255, 255, 0.5), 0 4px 12px rgba(79, 172, 254, 0.4);
}

/* Tombol Masuk (Ungu - Pink) */
.btn-login-glow {
    background: linear-gradient(90deg, #8E2DE2 0%, #E100FF 100%);
    color: #000 !important;
    /* Teks hitam */
    border: 2px solid rgba(255, 255, 255, 0.6);
    box-shadow: inset 0 2px 4px rgba(255, 255, 255, 0.5), 0 4px 12px rgba(225, 0, 255, 0.4);
}