:root{
    --gold:#D4AF37;
    --gold-light:#F5D76E;
    --silver:#C0C0C0;
    --bg:#000000;
    --bg-card:#111111;
    --text:#FFFFFF;
    --text-muted:#B0B0B0;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    background:var(--bg);
    color:var(--text);
    font-family:'Montserrat',sans-serif;
    padding-bottom: 80px;
}

a{
    text-decoration:none;
}

section{
    padding:60px 20px;
}

.container{
    max-width:1200px;
    margin:auto;
}

.section-title{
    font-family:'Cinzel',serif;
    font-size:2rem;
    color:var(--gold);
    text-align:center;
    margin-bottom:30px;
}

.hero{
    min-height:100vh;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:20px;
}

.hero img{
    width:100%;
    max-width:500px;
    border-radius:12px;
    box-shadow:0 0 25px rgba(212,175,55,.4);
}

.hero h1{
    margin-top:20px;
    font-size:3rem;
    color:var(--gold);
    font-family:'Cinzel',serif;
}

.hero h2{
    color:white;
    margin-top:10px;
}

.hero p{
    color:var(--silver);
    margin-top:10px;
}

.btn-gold{
    display:inline-block;
    margin-top:25px;
    padding:14px 30px;
    border-radius:30px;
    background:var(--gold);
    color:black;
    font-weight:bold;
}

.card-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(160px,1fr));
    gap:20px;
    justify-content:center;
}

.card{
    background:var(--bg-card);
    border:1px solid rgba(212,175,55,.3);
    border-radius:12px;
    overflow:hidden;
    transition:.3s;
}

.card:hover{
    transform:translateY(-5px);
}

.card img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
}

.card-body{
    padding:15px;
}

.card-title{
    color:var(--gold);
    font-weight:bold;
}

.card-subtitle{
    color:var(--silver);
    font-size:.9rem;
}

.timeline{
    position:relative;
    margin-left:20px;
}

.timeline::before{
    content:'';
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:3px;
    background:var(--gold);
}

.timeline-item{
    padding-left:25px;
    margin-bottom:30px;
}

.timeline-item h4{
    color:var(--gold);
    margin-bottom:5px;
}

.song-list{
    list-style:none;
}

.song-list li{
    padding:8px;
    border-bottom:1px solid #222;
}

.gallery{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
}

.gallery img{
    width:100%;
    border-radius:10px;
}

.bottom-nav{
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    background:#111;
    border-top:1px solid #222;
    display:flex;
    justify-content:space-around;
    padding:12px 0;
    z-index:1000;
}

.bottom-nav a{
    color:var(--gold);
    font-size:1.4rem;
}

.countdown{
    text-align:center;
    font-size:1.3rem;
    color:var(--gold);
    margin-top:20px;
}

footer{
    text-align:center;
    color:#888;
    padding:40px 20px;
}

@media(min-width:768px){

    .gallery{
        grid-template-columns:repeat(4,1fr);
    }

    .hero h1{
        font-size:4rem;
    }

}


.card-text{
    color:var(--text-muted);
    font-size:.85rem;
    line-height:1.5;
    margin-top:10px;
}

.card-more{
    display:none;
}

.card details{
    margin-top:10px;
}

.card summary{
    cursor:pointer;
    color:var(--gold);
    font-size:.85rem;
    font-weight:bold;
    list-style:none;
}

.card summary::-webkit-details-marker{
    display:none;
}
