/* ==========================
   RESET
========================== */


* {

    margin:0;

    padding:0;

    box-sizing:border-box;

}



body {

    font-family:Arial, sans-serif;

    background:black;

    color:white;

    overflow-x:hidden;

}





/* ==========================
   INTRO VIDEO
========================== */


#intro {

    position:fixed;

    inset:0;

    background:black;

    z-index:9999;

    display:flex;

    justify-content:center;

    align-items:center;

    opacity:1;

    transition:opacity 1s ease;

}



#intro video {

    width:100%;

    height:100%;

    object-fit:cover;

}



.intro-overlay {

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    text-align:center;

    z-index:2;

}



.intro-artist {

    font-size:5rem;

    letter-spacing:5px;

}



.intro-album {

    font-size:3rem;

}



.intro-tagline {

    font-size:1.5rem;

    margin-top:15px;

}





#skipIntro {

    margin-top:30px;

    padding:15px 35px;

    background:white;

    color:black;

    border:none;

    border-radius:30px;

    cursor:pointer;

    font-size:18px;

}





/* ==========================
   MAIN WEBSITE
========================== */


.site-container {

    min-height:100vh;

    position:relative;

    z-index:1;


    background:


    linear-gradient(

        rgba(0,0,0,.65),

        rgba(0,0,0,.85)

    ),


    url("media/album-cover.jpg");



    background-size:cover;

    background-position:center;

    background-attachment:fixed;

}





/* ==========================
   HEADER
========================== */


header {

    text-align:center;

    padding:40px 20px;

}



header h1 {

    font-size:4rem;

}



header h2 {

    font-size:2rem;

}





/* ==========================
   LINKS
========================== */


.links {

    text-align:center;

}



.links a {

    color:white;

    margin:15px;

    text-decoration:none;

}





/* ==========================
   NAVIGATION
========================== */


nav {

    display:flex;

    justify-content:center;

    gap:30px;

    padding:25px;

}



nav a {

    color:white;

    text-decoration:none;

}





/* ==========================
   HERO
========================== */


#hero {

    padding:60px 20px;

}



.hero-content {

    display:flex;

    justify-content:center;

    align-items:center;

    gap:50px;

    flex-wrap:wrap;

}



.hero-text {

    max-width:500px;

}



.hero-text h1 {

    font-size:5rem;

}



.hero-buttons button {


    padding:15px 25px;

    margin:10px;

    border:none;

    border-radius:30px;

    cursor:pointer;

    font-size:18px;

    transition:.3s ease;

}



.hero-buttons button:hover {

    transform:scale(1.05);

}



#buyButton {

    background:white;

    color:black;

}



#supportButton {

    background:black;

    color:white;

    border:2px solid white;

}





.hero-image img {

    width:350px;

    border-radius:20px;

    box-shadow:0 0 30px black;

}





/* ==========================
   MUSIC PLAYER
========================== */


#music,
#merch,
#contact {

    text-align:center;

    padding:60px 20px;

}





.music-player {

    margin-top:30px;

}



.player-cover img {

    width:250px;

    border-radius:20px;

    margin:20px;

    box-shadow:0 0 30px black;

}



.controls {

    display:flex;

    justify-content:center;

    align-items:center;

    gap:20px;

    flex-wrap:wrap;

}



.controls button {

    padding:15px 30px;

    background:white;

    color:black;

    border:none;

    border-radius:25px;

    cursor:pointer;

}



#progress {

    width:300px;

}





/* ==========================
   FOOTER
========================== */


footer {

    text-align:center;

    padding:30px;

}





/* ==========================
   MOBILE
========================== */


@media(max-width:700px){


header h1 {

    font-size:3rem;

}



.hero-text h1 {

    font-size:3.5rem;

}



.hero-image img {

    width:280px;

}



.intro-artist {

    font-size:3rem;

}


}

.tracks {
    display: flex;
    flex-direction: column;
    gap: 25px;
    max-width: 600px;
    margin: auto;
}

.track {
    background: rgba(255,255,255,0.05);
    padding: 20px;
    border-radius: 12px;
}

.track h3 {
    margin-bottom: 10px;
}

audio {
    width: 100%;
}