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

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

html{
scroll-behavior:smooth;
}

body{
font-family:'Inter',sans-serif;
background:#0a0a0a;
color:#fff;
line-height:1.7;
overflow-x:hidden;
}

img{
max-width:100%;
display:block;
}

a{
text-decoration:none;
color:inherit;
}

ul{
list-style:none;
}

/*==========================
COLORS
==========================*/

:root{

--gold:#d4af37;
--black:#0a0a0a;
--dark:#111;
--light:#ffffff;
--gray:#bdbdbd;

}

/*==========================
NAVBAR
==========================*/

header{

position:fixed;

top:0;

left:0;

width:100%;

z-index:999;

background:rgba(0,0,0,.55);

backdrop-filter:blur(12px);

}

.navbar{

max-width:1200px;

margin:auto;

display:flex;

justify-content:space-between;

align-items:center;

padding:18px 25px;

}

.logo{

font-size:1.3rem;

font-weight:800;

letter-spacing:2px;

}

.gold{

color:var(--gold);

}

.nav-links{

display:flex;

gap:25px;

}

.nav-links a{

transition:.3s;

font-weight:500;

}

.nav-links a:hover{

color:var(--gold);

}

.social-icons{

display:flex;

gap:15px;

font-size:1.1rem;

}

.social-icons a:hover{

color:var(--gold);

}

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

.hero{

background:

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

url("../images/hero.jpg");

background-size:cover;

background-position:center;

background-attachment:fixed;

}

.overlay{

position:absolute;

inset:0;

background:rgba(0,0,0,.65);

}

.hero-content{

position:relative;

z-index:2;

max-width:900px;

padding:20px;

}

.hero h1{

font-size:5rem;

font-weight:800;

letter-spacing:4px;

line-height:1.1;

}

.hero h2{

margin:20px 0;

font-size:1.5rem;

font-weight:500;

color:var(--gold);

letter-spacing:2px;

}

.hero p{

max-width:650px;

margin:auto;

color:#ddd;

font-size:1.1rem;

}

.hero-buttons{

margin-top:35px;

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.btn{

padding:14px 30px;

border-radius:50px;

font-weight:700;

transition:.35s;

}

.btn-primary{

background:var(--gold);

color:#000;

}

.btn-primary:hover{

transform:translateY(-4px);

}

.btn-secondary{

border:2px solid var(--gold);

color:#fff;

}

.btn-secondary:hover{

background:var(--gold);

color:#000;

}

/*==========================
SECTION SPACING
==========================*/

section{

padding:100px 25px;

}

.section-heading{

text-align:center;

margin-bottom:60px;

}

.section-heading span{

color:var(--gold);

letter-spacing:3px;

font-size:.9rem;

}

.section-heading h2{

margin-top:15px;

font-size:2.5rem;

}

.section-heading p{

margin-top:15px;

color:#bbb;

max-width:700px;

margin-inline:auto;

}

/*==========================
STATS
==========================*/

.stats{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:25px;
max-width:1200px;
margin:auto;
padding-top:60px;
}

.stat-box{
background:#141414;
padding:35px 20px;
border-radius:16px;
text-align:center;
transition:.35s;
border:1px solid rgba(255,255,255,.05);
}

.stat-box:hover{
transform:translateY(-8px);
border-color:var(--gold);
}

.stat-box i{
font-size:2rem;
color:var(--gold);
margin-bottom:15px;
}

.stat-box h2{
font-size:2.4rem;
margin-bottom:8px;
}

.stat-box p{
color:#bdbdbd;
}

/*==========================
FEATURED WORK
==========================*/

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

.section-title{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:50px;
flex-wrap:wrap;
gap:20px;
}

.subtitle{
color:var(--gold);
letter-spacing:3px;
font-size:.9rem;
}

.view-all{
color:var(--gold);
font-weight:600;
transition:.3s;
}

.view-all:hover{
opacity:.7;
}

.work-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:30px;
}

.work-card{
background:#131313;
border-radius:18px;
overflow:hidden;
transition:.35s;
border:1px solid rgba(255,255,255,.05);
}

.work-card:hover{
transform:translateY(-10px);
box-shadow:0 18px 40px rgba(0,0,0,.45);
}

.work-card img{
width:100%;
height:370px;
object-fit:cover;
}

.work-info{
padding:22px;
}

.work-info h3{
font-size:1.25rem;
margin-bottom:8px;
}

.work-info p{
color:#aaa;
margin-bottom:15px;
}

.platform{
display:inline-block;
padding:8px 16px;
border-radius:30px;
font-size:.8rem;
font-weight:700;
}

.netflix{
background:#e50914;
color:#fff;
}

.prime{
background:#00a8e1;
color:#fff;
}

/*==========================
ABOUT
==========================*/

.about-container{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.about-image img{
border-radius:20px;
}

.about-text h2{
font-size:2.5rem;
margin:15px 0 25px;
}

.about-text p{
color:#cfcfcf;
margin-bottom:20px;
}

.section-tag{
color:var(--gold);
letter-spacing:3px;
font-size:.9rem;
}

.about-buttons{
display:flex;
gap:20px;
margin-top:30px;
flex-wrap:wrap;
}

.gold-btn{
background:var(--gold);
color:#000;
padding:14px 28px;
border-radius:50px;
font-weight:700;
}

.outline-btn{
border:2px solid var(--gold);
padding:14px 28px;
border-radius:50px;
font-weight:700;
}

.outline-btn:hover{
background:var(--gold);
color:#000;
}

/*==========================
SERVICES
==========================*/

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

.service-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:30px;
}

.service-card{
background:#131313;
padding:35px 30px;
border-radius:18px;
text-align:center;
transition:.35s;
border:1px solid rgba(255,255,255,.06);
}

.service-card:hover{
transform:translateY(-10px);
border-color:var(--gold);
}

.service-card i{
font-size:2.8rem;
color:var(--gold);
margin-bottom:20px;
}

.service-card h3{
margin-bottom:15px;
font-size:1.35rem;
}

.service-card p{
color:#bdbdbd;
line-height:1.8;
}

/*==========================
PRODUCTIONS
==========================*/

.productions{
background:#111;
}

.production-grid{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
}

.production-card{
background:#181818;
padding:30px;
border-radius:16px;
text-align:center;
transition:.3s;
}

.production-card:hover{
background:var(--gold);
color:#000;
transform:translateY(-8px);
}

.production-card p{
margin-top:10px;
opacity:.8;
}

/*==========================
TESTIMONIALS
==========================*/

.testimonial-grid{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:30px;
}

.testimonial-card{
background:#141414;
padding:35px;
border-radius:18px;
border-left:4px solid var(--gold);
}

.testimonial-card p{
color:#d0d0d0;
font-style:italic;
margin-bottom:20px;
}

.testimonial-card h4{
color:var(--gold);
}

/*==========================
CONTACT
==========================*/

.contact-box{
max-width:900px;
margin:auto;
display:grid;
grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
gap:25px;
}

.contact-item{
background:#161616;
padding:30px;
border-radius:18px;
text-align:center;
transition:.35s;
}

.contact-item:hover{
background:var(--gold);
color:#000;
transform:translateY(-8px);
}

.contact-item i{
font-size:2rem;
margin-bottom:15px;
}

.contact-item span{
display:block;
font-weight:600;
}

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

footer{
background:#050505;
padding:70px 25px;
text-align:center;
}

.footer-content{
max-width:900px;
margin:auto;
}

.footer-content h2{
font-size:2rem;
margin-bottom:15px;
}

.footer-content p{
color:#999;
margin-bottom:15px;
}

.footer-social{
display:flex;
justify-content:center;
gap:20px;
margin:30px 0;
}

.footer-social a{
width:48px;
height:48px;
border-radius:50%;
background:#181818;
display:flex;
align-items:center;
justify-content:center;
transition:.3s;
}

.footer-social a:hover{
background:var(--gold);
color:#000;
}

.copyright{
margin-top:30px;
font-size:.9rem;
color:#666;
}

/*==========================
RESPONSIVE
==========================*/

@media(max-width:992px){

.about-container{
grid-template-columns:1fr;
}

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

.nav-links{
display:none;
}

}

@media(max-width:768px){

.hero{
padding:0 20px;
}

.hero h1{
font-size:2.8rem;
letter-spacing:2px;
}

.hero h2{
font-size:1.1rem;
}

.hero p{
font-size:1rem;
}

.stats{
grid-template-columns:repeat(2,1fr);
}

.section-heading h2{
font-size:2rem;
}

.about-text h2{
font-size:2rem;
}

.work-card img{
height:300px;
}

}

@media(max-width:500px){

.stats{
grid-template-columns:1fr;
}

.hero-buttons{
flex-direction:column;
}

.btn,
.gold-btn,
.outline-btn{
width:100%;
text-align:center;
}

.contact-box{
grid-template-columns:1fr;
}

.service-grid,
.work-grid,
.production-grid,
.testimonial-grid{
grid-template-columns:1fr;
}

}

/*==========================
ANIMATIONS
==========================*/

.stat-box,
.work-card,
.service-card,
.production-card,
.testimonial-card,
.contact-item,
.about-container{

opacity:0;

transform:translateY(40px);

transition:all .8s ease;

}

.show{

opacity:1;

transform:translateY(0);

}

.active{

color:var(--gold)!important;

}

/*==========================
BACK TO TOP
==========================*/

#topBtn{

position:fixed;

bottom:30px;

right:30px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:var(--gold);

color:#000;

font-size:22px;

font-weight:bold;

cursor:pointer;

opacity:0;

visibility:hidden;

transition:.35s;

z-index:999;

}

#topBtn.visible{

opacity:1;

visibility:visible;

}

#topBtn:hover{

transform:translateY(-5px);

}

/*==========================
LOADER
==========================*/

#loader{

position:fixed;

top:0;

left:0;

width:100%;

height:100vh;

background:#000;

display:flex;

justify-content:center;

align-items:center;

z-index:99999;

transition:opacity .8s ease;

}

.loader-logo{

text-align:center;

}


/*==========================
WHATSAPP
==========================*/

.whatsapp{

position:fixed;

right:25px;

bottom:100px;

width:65px;

height:65px;

background:#25D366;

color:#fff;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:2rem;

box-shadow:0 15px 35px rgba(0,0,0,.4);

transition:.3s;

z-index:999;

}

.whatsapp:hover{

transform:scale(1.1);

}
.loader-logo h1{

font-size:3rem;

letter-spacing:5px;

margin-bottom:15px;

}

.loader-logo p{

color:#999;

animation:pulse 1.5s infinite;

}

@keyframes pulse{

0%{opacity:.3;}

50%{opacity:1;}

100%{opacity:.3;}

}

.scroll-down{

position:absolute;

bottom:30px;

left:50%;

transform:translateX(-50%);

font-size:2rem;

color:white;

animation:bounce 2s infinite;

}

@keyframes bounce{

0%,100%{

transform:translate(-50%,0);

}

50%{

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

}

}


.service-card:hover,
.work-card:hover,
.production-card:hover,
.contact-item:hover{

box-shadow:

0 0 20px rgba(212,175,55,.3),

0 0 40px rgba(212,175,55,.15);

}

.work-card{

overflow:hidden;

}

.work-card img{

transition:1s;

}

.work-card:hover img{

transform:scale(1.08);

}


/*==========================
PORTFOLIO
==========================*/

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

.portfolio-filter{
display:flex;
justify-content:center;
gap:15px;
flex-wrap:wrap;
margin-bottom:40px;
}

.filter-btn{
padding:12px 22px;
background:#181818;
border:1px solid #333;
color:#fff;
border-radius:40px;
cursor:pointer;
transition:.3s;
}

.filter-btn:hover,
.filter-btn.active{
background:var(--gold);
color:#000;
}

.portfolio-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:25px;
}

.portfolio-item{
overflow:hidden;
border-radius:18px;
cursor:pointer;
}

.portfolio-item img{
width:100%;
height:360px;
object-fit:cover;
transition:.6s;
}

.portfolio-item:hover img{
transform:scale(1.08);
}


/*==========================
LIGHTBOX
==========================*/

#lightbox{

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:rgba(0,0,0,.95);

display:none;

justify-content:center;

align-items:center;

z-index:999999;

padding:30px;

}

#lightbox img{

max-width:90%;

max-height:90%;

border-radius:15px;

box-shadow:0 0 50px rgba(0,0,0,.6);

}

#close-lightbox{

position:absolute;

top:25px;

right:35px;

font-size:55px;

color:#fff;

cursor:pointer;

transition:.3s;

}

#close-lightbox:hover{

color:var(--gold);

}

.section-heading h2{

text-shadow:

0 0 12px rgba(212,175,55,.2);

}

.portfolio-item{

position:relative;

overflow:hidden;

}

.portfolio-overlay{

position:absolute;

bottom:0;

left:0;

right:0;

padding:25px;

background:linear-gradient(transparent,rgba(0,0,0,.95));

transform:translateY(100%);

transition:.4s;

}

.portfolio-item:hover .portfolio-overlay{

transform:translateY(0);

}

.portfolio-overlay h3{

margin-bottom:8px;

}

.portfolio-overlay p{

color:var(--gold);

}
