/* ===== HERO EPIC ===== */
.hero-section {
    text-align:center;
    padding:120px 24px 90px;
    position:relative;
    overflow:hidden;
}
.hero-section::before {
    content:'';
    position:absolute;inset:0;
    background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(255,215,0,0.07) 0%,transparent 70%);
    pointer-events:none;
}
.hero-eyebrow {
    display:inline-flex;align-items:center;gap:8px;
    background:rgba(255,215,0,0.08);border:1px solid rgba(255,215,0,0.2);
    border-radius:50px;padding:6px 18px;
    font-size:0.78rem;font-weight:600;color:var(--gold-primary);
    letter-spacing:2px;text-transform:uppercase;
    margin-bottom:28px;
}
.hero-tagline {
    font-family:'Cinzel',serif;
    font-size:clamp(1.5rem,4vw,3rem);
    font-weight:900;
    color:rgba(255,255,255,0.55);
    letter-spacing:4px;
    text-transform:uppercase;
    margin-bottom:14px;
    line-height:1.2;
}
.hero-tagline span {
    background:linear-gradient(135deg,#fff 0%,var(--gold-primary) 55%,#FF6B00 100%);
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hero-title-big {
    font-family:'Cinzel',serif;
    font-size:clamp(2.8rem,7vw,5.5rem);
    font-weight:900;
    background:linear-gradient(135deg,#fff 0%,var(--gold-primary) 45%,#FF6B00 100%);
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
    line-height:1.0;
    margin-bottom:22px;
    text-shadow:none;
    letter-spacing:-1px;
}
.hero-desc {
    color:rgba(255,255,255,0.55);
    font-size:clamp(0.95rem,2vw,1.15rem);
    max-width:580px;
    margin:0 auto 40px;
    line-height:1.7;
}
.btn-play {
    display:inline-flex;align-items:center;gap:10px;
    background:linear-gradient(135deg,var(--gold-primary),#FF6B00);
    color:#000;font-weight:800;font-family:'Cinzel',serif;
    font-size:1.05rem;letter-spacing:1px;text-transform:uppercase;
    padding:16px 40px;border:none;border-radius:50px;
    cursor:pointer;text-decoration:none;
    box-shadow:0 0 0 0 rgba(255,215,0,0.5);
    animation:btnPulse 2.5s ease-in-out infinite;
    transition:transform 0.2s,filter 0.2s;
    position:relative;overflow:hidden;
}
.btn-play::after {
    content:'';position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(255,255,255,0.15),transparent);
    border-radius:50px;
}
.btn-play:hover { transform:translateY(-3px) scale(1.04);filter:brightness(1.12);color:#000; }
.btn-play:active { transform:translateY(0) scale(0.98); }
@keyframes btnPulse {
    0%,100% { box-shadow:0 0 0 0 rgba(255,215,0,0.45); }
    50%      { box-shadow:0 0 0 18px rgba(255,215,0,0); }
}

/* ===== STATS EPIC ===== */
.hero-mini-stats {
    display:inline-flex;align-items:center;gap:20px;
    margin-top:18px;padding:10px 24px;
    background:rgba(255,255,255,0.03);
    border:1px solid rgba(255,215,0,0.12);
    border-radius:50px;
    flex-wrap:wrap;justify-content:center;
}
.hero-mini-stat {
    display:flex;align-items:center;gap:7px;
    font-size:0.82rem;color:rgba(255,255,255,0.5);
}
.hero-mini-stat strong { color:var(--gold-primary);font-weight:700; }
.hero-mini-sep { width:1px;height:14px;background:rgba(255,215,0,0.15); }

.stats-strip {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1px;
    background:rgba(255,215,0,0.12);
    border:1px solid rgba(255,215,0,0.12);
    border-radius:20px;
    overflow:hidden;
    margin:0 auto;
    max-width:860px;
}
.stat-cell {
    background:#0a0a0f;
    padding:28px 20px;
    text-align:center;
    transition:background 0.2s;
}
.stat-cell:hover { background:rgba(255,215,0,0.04); }
.stat-cell-val {
    font-family:'Cinzel',serif;
    font-size:2rem;font-weight:900;
    color:var(--gold-primary);
    line-height:1;margin-bottom:6px;
}
.stat-cell-lbl {
    font-size:0.76rem;color:rgba(255,255,255,0.4);
    text-transform:uppercase;letter-spacing:1.5px;
}

/* ===== FEATURES EPIC ===== */
.feat-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}
.feat-card {
    background:rgba(255,255,255,0.02);
    border:1px solid rgba(255,215,0,0.12);
    border-radius:20px;
    padding:36px 28px;
    text-align:center;
    transition:transform 0.25s,border-color 0.25s,box-shadow 0.25s;
    position:relative;overflow:hidden;
}
.feat-card::before {
    content:'';position:absolute;top:0;left:0;right:0;height:1px;
    background:linear-gradient(90deg,transparent,rgba(255,215,0,0.3),transparent);
    opacity:0;transition:opacity 0.25s;
}
.feat-card:hover {
    transform:translateY(-8px);
    border-color:rgba(255,215,0,0.35);
    box-shadow:0 20px 60px rgba(0,0,0,0.5),0 0 40px rgba(255,215,0,0.06);
}
.feat-card:hover::before { opacity:1; }
.feat-icon {
    width:72px;height:72px;border-radius:20px;
    background:rgba(255,215,0,0.06);border:1px solid rgba(255,215,0,0.15);
    display:flex;align-items:center;justify-content:center;
    margin:0 auto 20px;font-size:2rem;
    transition:box-shadow 0.25s,background 0.25s;
}
.feat-card:hover .feat-icon {
    background:rgba(255,215,0,0.1);
    box-shadow:0 0 30px rgba(255,215,0,0.15);
}
.feat-title {
    font-family:'Cinzel',serif;color:var(--gold-primary);
    font-size:1rem;font-weight:700;margin-bottom:10px;
}
.feat-desc { color:rgba(255,255,255,0.45);font-size:0.88rem;line-height:1.65; }

/* ===== SCROLL ANIMATIONS ===== */
.reveal {
    opacity:0;
    transform:translateY(32px);
    transition:opacity 0.65s cubic-bezier(0.22,1,0.36,1),transform 0.65s cubic-bezier(0.22,1,0.36,1);
}
.reveal.from-left  { transform:translateX(-40px); }
.reveal.from-right { transform:translateX(40px); }
.reveal.visible    { opacity:1;transform:none; }

/* delay helpers */
.delay-1 { transition-delay:0.1s; }
.delay-2 { transition-delay:0.2s; }
.delay-3 { transition-delay:0.3s; }
.delay-4 { transition-delay:0.4s; }
.delay-5 { transition-delay:0.5s; }

/* ===== MOBILE ===== */
@media(max-width:768px) {
    .hero-section { padding:80px 20px 60px; }
    .hero-title-big { font-size:clamp(2.2rem,10vw,3.2rem);letter-spacing:-0.5px; }
    .hero-tagline { font-size:clamp(1rem,4.5vw,1.4rem);letter-spacing:2px; }
    .hero-desc { font-size:0.9rem; }
    .btn-play { font-size:0.9rem;padding:14px 28px; }
    .stats-strip { grid-template-columns:repeat(2,1fr);max-width:100%; }
    .hero-mini-stats { gap:14px;padding:8px 16px; }
    .feat-grid { grid-template-columns:1fr; }
    .hero-cta-row { flex-direction:column;align-items:center; }
    .hero-cta-row .discord-btn { width:100%;justify-content:center; }
    .btn-play { width:100%;justify-content:center; }
}
@media(max-width:400px) {
    .stats-strip { grid-template-columns:1fr 1fr; }
    .stat-cell-val { font-size:1.5rem; }
}
