/* =========================
   GaiyumBlaze v2.0
========================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

html{
scroll-behavior:smooth;
}

body{
background:#050816;
color:#fff;
overflow-x:hidden;
}

/* Scrollbar */

::-webkit-scrollbar{
width:8px;
}

::-webkit-scrollbar-track{
background:#08111f;
}

::-webkit-scrollbar-thumb{
background:#00bfff;
border-radius:20px;
}

/* =========================
Header
========================= */

.header{

position:fixed;

top:0;

left:0;

width:100%;

height:75px;

background:rgba(5,8,22,.95);

backdrop-filter:blur(15px);

display:flex;

justify-content:space-between;

align-items:center;

padding:0 8%;

z-index:999;

border-bottom:1px solid rgba(255,255,255,.08);

}

.logo{

display:flex;

align-items:center;

gap:12px;

}

.logo img{

width:55px;

height:55px;

border-radius:50%;

border:2px solid #00bfff;

box-shadow:0 0 20px #00bfff;

}

.logo span{

font-size:24px;

font-weight:700;

color:#00bfff;

}

nav{

display:flex;

gap:30px;

}

nav a{

text-decoration:none;

color:white;

font-weight:500;

transition:.3s;

}

nav a:hover{

color:#00bfff;

}

.menu-btn{

display:none;

background:none;

border:none;

font-size:32px;

color:white;

cursor:pointer;

}

/* =========================
Hero
========================= */

.hero{

min-height:100vh;

display:flex;

justify-content:center;

align-items:center;

text-align:center;

padding:120px 20px 80px;

background:

linear-gradient(rgba(0,0,0,.65),rgba(0,0,0,.85)),

url("images/hero.jpg");

background-size:cover;

background-position:center;

}

.hero-content{

max-width:850px;

}

.hero h1{

font-size:70px;

line-height:1.2;

margin-bottom:20px;

}

.hero span{

color:#00bfff;

text-shadow:0 0 25px #00bfff;

}

.hero p{

font-size:22px;

color:#ddd;

margin-bottom:40px;

}

.hero-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.btn,
.btn2{

padding:15px 35px;

border-radius:50px;

text-decoration:none;

font-weight:600;

transition:.3s;

}

.btn{

background:#00bfff;

color:white;

}

.btn:hover{

transform:translateY(-5px);

box-shadow:0 0 25px #00bfff;

}

.btn2{

border:2px solid #00bfff;

color:#00bfff;

}

.btn2:hover{

background:#00bfff;

color:white;

}

/* Mobile */

@media(max-width:768px){

.menu-btn{

display:block;

}

nav{

display:none;

position:absolute;

top:75px;

right:0;

width:230px;

background:#08111f;

flex-direction:column;

padding:20px;

}

nav.active{

display:flex;

}

.hero h1{

font-size:38px;

}

.hero p{

font-size:18px;

}

.hero-buttons{

flex-direction:column;

}

.btn,
.btn2{

width:100%;

}

}

/* =========================
   Sections
========================= */

section{
padding:90px 8%;
}

section h2{
font-size:38px;
text-align:center;
margin-bottom:40px;
color:#00bfff;
text-shadow:0 0 12px rgba(0,191,255,.5);
}

/* =========================
Search Section
========================= */

.search-section{
text-align:center;
}

.search-box{
max-width:700px;
margin:0 auto 30px;
}

.search-box input{
width:100%;
padding:18px 22px;
border:none;
outline:none;
border-radius:50px;
background:#111827;
color:#fff;
font-size:18px;
border:2px solid #00bfff;
box-shadow:0 0 15px rgba(0,191,255,.15);
}

.search-box input::placeholder{
color:#999;
}

/* =========================
Filter Buttons
========================= */

.filter-buttons{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:15px;
}

.filter-btn{
padding:12px 24px;
border:none;
border-radius:40px;
background:#111827;
color:#fff;
cursor:pointer;
font-size:16px;
transition:.3s;
border:2px solid transparent;
}

.filter-btn:hover,
.filter-btn.active{
background:#00bfff;
color:#fff;
box-shadow:0 0 20px #00bfff;
}

/* =========================
Featured Video
========================= */

.featured-video{
max-width:1100px;
margin:auto;
border-radius:20px;
overflow:hidden;
border:2px solid #00bfff;
box-shadow:0 0 30px rgba(0,191,255,.35);
}

.featured-video iframe{
width:100%;
height:600px;
border:none;
display:block;
}

/* =========================
Video Grid
========================= */

#videoGrid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
gap:30px;
margin-top:40px;
}

.video-card{
background:#101827;
border-radius:20px;
overflow:hidden;
transition:.35s;
border:1px solid rgba(255,255,255,.08);
}

.video-card:hover{
transform:translateY(-8px);
box-shadow:0 0 25px rgba(0,191,255,.35);
}

.video-card img{
width:100%;
height:220px;
object-fit:cover;
display:block;
}

.video-content{
padding:20px;
}

.video-content h3{
font-size:20px;
margin-bottom:12px;
}

.video-content p{
color:#aaa;
font-size:15px;
margin-bottom:20px;
}

.watch-btn{
display:inline-block;
padding:12px 24px;
background:#00bfff;
color:#fff;
text-decoration:none;
border-radius:40px;
transition:.3s;
font-weight:600;
}

.watch-btn:hover{
box-shadow:0 0 20px #00bfff;
}

/* =========================
Responsive
========================= */

@media(max-width:768px){

section{
padding:70px 20px;
}

section h2{
font-size:28px;
}

.featured-video iframe{
height:220px;
}

#videoGrid{
grid-template-columns:1fr;
}

.filter-buttons{
gap:10px;
}

.filter-btn{
font-size:14px;
padding:10px 16px;
}

}

/* =========================
About Section
========================= */

.about{

max-width:1000px;

margin:auto;

text-align:center;

}

.about p{

font-size:18px;

line-height:1.9;

color:#cfcfcf;

margin-top:20px;

}

/* =========================
Contact
========================= */

.contact{

max-width:700px;

margin:auto;

}

.contact form{

display:flex;

flex-direction:column;

gap:18px;

}

.contact input,
.contact textarea{

padding:16px;

background:#101827;

border:2px solid #222;

border-radius:12px;

color:white;

font-size:16px;

outline:none;

transition:.3s;

}

.contact input:focus,
.contact textarea:focus{

border-color:#00bfff;

box-shadow:0 0 20px rgba(0,191,255,.35);

}

.contact button{

padding:16px;

background:#00bfff;

border:none;

border-radius:50px;

color:white;

font-size:18px;

font-weight:600;

cursor:pointer;

transition:.3s;

}

.contact button:hover{

transform:translateY(-4px);

box-shadow:0 0 25px #00bfff;

}

/* =========================
Social
========================= */

.social{

text-align:center;

}

.social-buttons{

display:flex;

justify-content:center;

flex-wrap:wrap;

gap:20px;

margin-top:35px;

}

.social-buttons a{

padding:15px 28px;

background:#111827;

border:2px solid #00bfff;

border-radius:50px;

text-decoration:none;

color:white;

font-weight:600;

transition:.3s;

}

.social-buttons a:hover{

background:#00bfff;

transform:translateY(-5px);

box-shadow:0 0 20px #00bfff;

}

/* =========================
Footer
========================= */

footer{

margin-top:80px;

padding:50px 20px;

background:#08111f;

text-align:center;

border-top:1px solid rgba(255,255,255,.08);

}

.footer-logo{

display:flex;

justify-content:center;

align-items:center;

gap:15px;

margin-bottom:20px;

}

.footer-logo img{

width:60px;

height:60px;

border-radius:50%;

border:2px solid #00bfff;

}

.footer-logo h3{

color:#00bfff;

font-size:28px;

}

footer p{

color:#aaa;

margin-top:10px;

}

/* =========================
Back To Top Button
========================= */

#topBtn{

position:fixed;

bottom:25px;

right:25px;

width:50px;

height:50px;

border:none;

border-radius:50%;

background:#00bfff;

color:white;

font-size:22px;

cursor:pointer;

display:none;

z-index:999;

box-shadow:0 0 20px #00bfff;

transition:.3s;

}

#topBtn:hover{

transform:scale(1.1);

}

/* =========================
Scroll Animation
========================= */

.fade-up{

opacity:0;

transform:translateY(40px);

transition:all .8s ease;

}

.fade-up.show{

opacity:1;

transform:translateY(0);

}

/* =========================
Mobile
========================= */

@media(max-width:768px){

.footer-logo{

flex-direction:column;

}

.social-buttons{

flex-direction:column;

align-items:center;

}

.social-buttons a{

width:240px;

text-align:center;

}

.contact{

padding:0 10px;

}

.about p{

font-size:16px;

}

}
