/* ===========================
   GENERAL
=========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:Arial, Helvetica, sans-serif;
    background:#111;
    color:#fff;
    line-height:1.6;
}

a{
    color:white;
    text-decoration:none;
}

/* ===========================
   HEADER
=========================== */

header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:1000;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:18px 60px;

    background:rgba(0,0,0,.65);
    backdrop-filter:blur(12px);
}

.logo{
    display:flex;
    align-items:center;
    gap:15px;
}

.logo img{
    width:72px;
    height:72px;
    object-fit:contain;
}

.logo h1{
    font-size:30px;
    color:#7CFF00;
}

.logo p{
    color:#ddd;
    font-style:italic;
}

nav{
    display:flex;
    gap:35px;
}

nav a{
    font-size:17px;
    transition:.3s;
}

nav a:hover{
    color:#7CFF00;
}

/* ===========================
   SLIDER
=========================== */

.slider{
    position:relative;
    width:100%;
    height:100vh;
    overflow:hidden;
}

.slide{

    position:absolute;
    inset:0;

    opacity:0;

    transition:opacity 1s ease-in-out;

    z-index:1;
}

.slide.active{
    opacity:1;
    z-index:2;
}

.slide img{

    width:100%;
    height:100%;
    object-fit:cover;

}

.overlay{

    position:absolute;
    inset:0;

    background:rgba(0,0,0,.55);

}

.caption{

    position:absolute;

    left:50%;
    top:50%;

    transform:translate(-50%,-50%);

    text-align:center;

    width:80%;

}

.caption h2{

    font-size:52px;

    line-height:1.3;

    text-shadow:0 4px 12px black;

    margin-bottom:20px;

}

.caption p{

    font-size:26px;

    color:#7CFF00;

}

/* ===========================
   ARROWS
=========================== */

.prev,
.next{

    position:absolute;

    top:50%;

    transform:translateY(-50%);

    width:55px;
    height:55px;

    border:none;

    border-radius:50%;

    background:rgba(255,255,255,.2);

    color:white;

    font-size:28px;

    cursor:pointer;

    z-index:50;

    transition:.3s;

}

.prev:hover,
.next:hover{

    background:#7CFF00;

    color:#111;

}

.prev{

    left:25px;

}

.next{

    right:25px;

}

/* ===========================
   DOTS
=========================== */

.dots{

    position:absolute;

    bottom:35px;

    left:50%;

    transform:translateX(-50%);

    display:flex;

    gap:15px;

    z-index:50;

}

.dot{

    width:15px;

    height:15px;

    border-radius:50%;

    background:white;

    opacity:.4;

    cursor:pointer;

    transition:.3s;

}

.dot.active{

    opacity:1;

    background:#7CFF00;

}

/* ===========================
   PLAYER
=========================== */

.player-section{

    background:#161616;

    padding:100px 20px;

}

.player-section h2{

    text-align:center;

    font-size:42px;

    margin-bottom:50px;

}

.player-card{

    max-width:850px;

    margin:auto;

    background:#1f1f1f;

    padding:45px;

    border-radius:20px;

    text-align:center;

    box-shadow:0 0 30px rgba(0,0,0,.4);

}

.live{

    color:#7CFF00;

    font-weight:bold;

    margin-bottom:20px;

}

.live-dot{

    width:12px;

    height:12px;

    background:red;

    border-radius:50%;

    display:inline-block;

    margin-right:8px;

    animation:pulse 1.2s infinite;

}

@keyframes pulse{

    0%{

        transform:scale(.8);

        opacity:.5;

    }

    100%{

        transform:scale(1.4);

        opacity:1;

    }

}

.player-card h3{

    font-size:36px;

}

.slogan{

    color:#7CFF00;

    margin:10px 0 25px;

    font-size:20px;

}

.controls{

    margin-top:35px;

}

.controls button{

    padding:14px 30px;

    border:none;

    background:#7CFF00;

    color:#111;

    font-size:18px;

    border-radius:30px;

    cursor:pointer;

    transition:.3s;

}

.controls button:hover{

    transform:scale(1.05);

}

.controls input{

    width:240px;

    margin-left:20px;

}

/* ===========================
   ABOUT
=========================== */

#about{

    padding:90px 20px;

    background:#111;

}

.container{

    max-width:900px;

    margin:auto;

    text-align:center;

}

.container h2{

    font-size:40px;

    margin-bottom:25px;

    color:#7CFF00;

}

.container p{

    font-size:20px;

    color:#ddd;

}

/* ===========================
   FOOTER
=========================== */

footer{

    text-align:center;

    padding:40px;

    background:black;

    color:#888;

}

/* ===========================
   MOBILE
=========================== */

@media(max-width:900px){

header{

    flex-direction:column;

    padding:20px;

}

nav{

    margin-top:20px;

}

.caption h2{

    font-size:34px;

}

.caption p{

    font-size:20px;

}

.player-card{

    padding:30px;

}

.controls{

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:20px;

}

.controls input{

    width:100%;

    margin-left:0;

}

.logo img{

    width:60px;

    height:60px;

}

.logo h1{

    font-size:24px;

}

}