.btn-primary:hover,
.btn-secondary:hover{

transform:translateY(-2px);
box-shadow:0 6px 20px rgba(120,140,255,0.35);

}

/* Reset */

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

body{
font-family:'Poppins',sans-serif;
color:white;
background:linear-gradient(120deg,#021028,#031c44);
min-height:100vh;
overflow-x:hidden;
}

/* Star canvas */

#stars{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
z-index:0;
}

/* Navbar */

.nav{
position:fixed;
top:0;
width:100%;
z-index:10;
background:rgba(0,0,0,0.25);
backdrop-filter:blur(6px);
}

.nav-inner{
max-width:1200px;
margin:auto;
display:flex;
justify-content:space-between;
align-items:center;
padding:14px 20px;
}

.brand{
display:flex;
align-items:center;
gap:10px;
}

.logo-img{
height:30px;
}

.brand-name{
font-weight:600;
}

.links a{
color:white;
text-decoration:none;
margin-left:20px;
opacity:.8;
transition:.2s;
}

.links a:hover{
opacity:1;
}

/* Main layout */

main{
position:relative;
z-index:1;
}

/* Hero */

.hero{
padding:120px 20px 60px 20px;
text-align:center;
}
.hero + .hero{
padding-top:20px;
}
.hero-title{
font-size:48px;
font-weight:700;
margin-bottom:10px;
}

.hero-subtitle{
opacity:.8;
margin-bottom:25px;
}

.hero-buttons{
display:flex;
gap:14px;
justify-content:center;
margin-bottom:15px;
}

/* Buttons */

.btn-primary{
background:#5b6cff;
border:none;
padding:12px 26px;
border-radius:8px;
color:white;
cursor:pointer;
font-weight:500;
transition:.2s;
}

.btn-primary:hover{
transform:translateY(-2px);
box-shadow:0 6px 20px rgba(91,108,255,.4);
}

.btn-secondary{
border:1px solid rgba(255,255,255,.3);
padding:12px 26px;
border-radius:8px;
text-decoration:none;
color:white;
}

.server-ip{
margin-top:10px;
opacity:.7;
}

/* Gamemode cards */

.gamemodes{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:30px;
max-width:1000px;
margin:auto;
padding-bottom:120px;
padding-left:20px;
padding-right:20px;
}

.mode-card{
background:rgba(255,255,255,.05);
backdrop-filter:blur(10px);
padding:30px;
border-radius:12px;
border:1px solid rgba(255,255,255,.08);
transition:.25s;
}

.mode-card:hover{
transform:translateY(-6px);
border-color:rgba(255,255,255,.2);
}

.mode-card h3{
margin-bottom:10px;
}

.mode-card p{
opacity:.8;
}

/* Legal pages */

.legal{
max-width:900px;
margin:auto;
padding-top:140px;
padding-bottom:100px;
padding-left:20px;
padding-right:20px;
}

.legal h1{
margin-bottom:25px;
}

.legal h2{
margin-top:30px;
margin-bottom:10px;
}

.legal p{
opacity:.85;
line-height:1.6;
}

/* Footer */

.site-footer{
text-align:center;
padding-bottom:30px;
opacity:.6;
}

/* Popup */

.popup{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.6);
align-items:center;
justify-content:center;
z-index:100;
}

.popup-box{
background:#0c0c0c;
padding:40px;
border-radius:12px;
text-align:center;
max-width:420px;
position:relative;
}

.popup-close{
position:absolute;
top:10px;
right:14px;
border:none;
background:none;
color:white;
font-size:20px;
cursor:pointer;
}
.server-ip{
margin-top:10px;
opacity:.7;
cursor:pointer;
transition:.2s;
}

.server-ip:hover{
opacity:1;
text-shadow:0 0 10px rgba(255,255,255,.5);
}

.mode-card{
background:rgba(255,255,255,.05);
backdrop-filter:blur(12px);
border-radius:14px;
padding:30px;
border:1px solid rgba(255,255,255,.08);
transition:.3s;
}

.mode-card:hover{
transform:translateY(-8px) scale(1.02);
border-color:rgba(255,255,255,.2);
box-shadow:0 15px 40px rgba(0,0,0,.4);
}
.video-placeholder{

width:700px;
max-width:90%;
height:360px;

margin:auto;

display:flex;
flex-direction:column;
align-items:center;
justify-content:center;

border-radius:12px;

background:rgba(255,255,255,0.05);
border:1px solid rgba(255,255,255,0.08);

backdrop-filter:blur(8px);

}

.placeholder-icon{

font-size:48px;
opacity:.6;
margin-bottom:10px;

}

.video-placeholder p{

font-weight:500;
margin-bottom:4px;

}

.video-placeholder span{

opacity:.6;
font-size:14px;

}
