/* =========================
MUFAKIR DESIGNS
FINAL PREMIUM CSS
========================= */

:root{

--primary:#F59E0B;
--secondary:#0F172A;
--dark:#020617;
--light:#F8FAFC;
--white:#FFFFFF;
--gray:#94A3B8;
--card:#1E293B;

}

/* LIGHT MODE */

body.light-mode{

--secondary:#FFFFFF;
--dark:#F8FAFC;
--white:#0F172A;
--gray:#475569;
--card:#E2E8F0;

}

/* RESET */

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Poppins',sans-serif;
background:var(--secondary);
color:var(--white);
overflow-x:hidden;
transition:.4s;

}

/* LOADER */

.loader{

position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:var(--dark);
display:flex;
justify-content:center;
align-items:center;
z-index:99999;

}

.spinner{

width:60px;
height:60px;
border:5px solid rgba(255,255,255,.2);
border-top:5px solid var(--primary);
border-radius:50%;
animation:spin 1s linear infinite;

}

@keyframes spin{

100%{
transform:rotate(360deg);
}

}
/* HEADER */

.header{

position:fixed;
top:0;
left:0;
width:100%;
z-index:999;
padding:18px 8%;
display:flex;
justify-content:space-between;
align-items:center;
background:rgba(2,6,23,.85);
backdrop-filter:blur(12px);

transition:all .4s ease;

}

/* HIDE HEADER */

.header.hide{

transform:translateY(-100%);

}
.logo h2{

color:var(--primary);
font-size:1.8rem;

}

.logo span{

font-size:.8rem;
color:var(--gray);

}

/* NAVIGATION */

.navbar{

display:flex;
gap:25px;

}

.navbar a{

text-decoration:none;
color:var(--white);
font-weight:500;
transition:.3s;

}

.navbar a:hover{

color:var(--primary);

}

.navbar a.active{

color:var(--primary);

}

/* RIGHT SIDE */

.header-right{

display:flex;
align-items:center;
gap:15px;

}

/* LANGUAGE BUTTONS */

.language-switcher{

display:flex;
gap:8px;

}

.language-switcher button{

border:none;
background:var(--primary);
color:#000;
padding:8px 12px;
border-radius:8px;
cursor:pointer;
font-weight:700;

}

/* THEME BUTTON */

#themeToggle{

width:45px;
height:45px;
border:none;
border-radius:50%;
cursor:pointer;
background:var(--primary);
color:#000;
font-size:1rem;

}

/* HERO SECTION */

.hero{

min-height:100vh;
display:grid;
grid-template-columns:1fr 1fr;
align-items:center;
padding:120px 8%;
gap:50px;

}

.hero-content h1{

font-size:4rem;
font-weight:800;
color:var(--primary);
margin-bottom:10px;

}

.hero-content h2{

font-size:2rem;
margin-bottom:20px;

}

.hero-content p{

font-size:1.1rem;
line-height:1.9;
color:var(--gray);
margin-bottom:30px;

}

.hero-buttons{

display:flex;
gap:15px;
flex-wrap:wrap;

}

.btn{

display:inline-block;
padding:14px 28px;
border-radius:50px;
text-decoration:none;
font-weight:700;
background:var(--primary);
color:#000;
transition:.3s;

}

.btn:hover{

transform:translateY(-5px);

}

.btn-whatsapp{

background:#25D366;
color:#fff;

}

/* HERO IMAGE */

.hero-image{

display:flex;
justify-content:center;

}

.hero-image img{

width:100%;
max-width:450px;
border-radius:25px;
border:5px solid var(--primary);
box-shadow:0 20px 50px rgba(0,0,0,.3);

}

/* HERO STATS */

.hero-stats{

display:flex;
gap:20px;
margin-top:40px;
flex-wrap:wrap;

}

.hero-stat{

background:var(--card);
padding:20px;
border-radius:15px;
min-width:120px;
text-align:center;

}

.hero-stat h3{

color:var(--primary);
font-size:2rem;

}

.hero-stat p{

margin-top:5px;
font-size:.9rem;

}

/* =========================
SECTION TITLES
========================= */

.section-title{

text-align:center;
margin-bottom:60px;

}

.section-title h2{

font-size:2.8rem;
color:var(--primary);
margin-bottom:10px;

}

.section-title p{

color:var(--gray);
font-size:1rem;

}

/* =========================
ABOUT SECTION
========================= */

.about{

padding:100px 8%;

}

.about-content{

display:grid;
grid-template-columns:1fr 1fr;
gap:50px;
align-items:center;

}

.about-text p{

font-size:1.05rem;
line-height:2;
color:var(--gray);
margin-bottom:30px;

}

.about-image img{

width:100%;
border-radius:25px;
box-shadow:0 15px 40px rgba(0,0,0,.25);

}

/* FEATURES */

.about-features{

display:flex;
flex-direction:column;
gap:20px;

}

.feature-box{

display:flex;
align-items:center;
gap:15px;
background:var(--card);
padding:18px;
border-radius:16px;
transition:.3s;

}

.feature-box:hover{

transform:translateY(-5px);

}

.feature-box i{

font-size:1.8rem;
color:var(--primary);

}

.feature-box h4{

margin-bottom:5px;

}

.feature-box p{

font-size:.9rem;
color:var(--gray);

}

/* =========================
SERVICES SECTION
========================= */

.services{

padding:100px 8%;

}

.services-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;

}

.service-card{

background:var(--card);
padding:35px 25px;
border-radius:20px;
text-align:center;
transition:.35s;

}

.service-card:hover{

transform:translateY(-10px);
box-shadow:0 15px 35px rgba(0,0,0,.25);

}

.service-card i{

font-size:3rem;
color:var(--primary);
margin-bottom:20px;

}

.service-card h3{

margin-bottom:15px;
font-size:1.3rem;

}

.service-card p{

color:var(--gray);
line-height:1.8;

}

/* =========================
FOUNDER SECTION
========================= */

.founder{

padding:100px 8%;
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;

}

.founder-image{

display:flex;
justify-content:center;

}

.founder-image img{

width:100%;
max-width:450px;
border-radius:25px;
border:4px solid var(--primary);
box-shadow:0 20px 50px rgba(0,0,0,.25);

}

.founder-content span{

display:inline-block;
background:rgba(245,158,11,.15);
color:var(--primary);
padding:8px 16px;
border-radius:30px;
font-weight:600;
margin-bottom:15px;

}

.founder-content h2{

font-size:2.5rem;
margin-bottom:20px;

}

.founder-content p{

line-height:2;
color:var(--gray);
margin-bottom:20px;

}

.founder-content .btn{

margin-top:15px;

}

/* =========================
PORTFOLIO SECTION
========================= */

.portfolio{

padding:100px 8%;

}

.portfolio-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:25px;

}

.portfolio-grid img{

width:100%;
height:300px;
object-fit:cover;
border-radius:20px;
cursor:pointer;
transition:.4s;
box-shadow:0 10px 30px rgba(0,0,0,.25);

}

.portfolio-grid img:hover{

transform:scale(1.05);

}

/* =========================
VIDEO SHOWCASE
========================= */

.video-showcase{

padding:100px 8%;
text-align:center;

}

.video-container{

max-width:900px;
margin:auto;

}

.video-container video{

width:100%;
border-radius:25px;
box-shadow:0 15px 40px rgba(0,0,0,.3);

}

/* =========================
TESTIMONIALS
========================= */

.testimonials{

padding:100px 8%;

}

.testimonial-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:25px;

}

.testimonial-card{

background:var(--card);
padding:30px;
border-radius:20px;
transition:.3s;

}

.testimonial-card:hover{

transform:translateY(-10px);

}

.testimonial-card p{

line-height:1.9;
color:var(--gray);
margin-bottom:15px;

}

.testimonial-card h4{

color:var(--primary);

}

/* =========================
CONTACT SECTION
========================= */

.contact{

padding:100px 8%;

}

.contact-container{

display:grid;
grid-template-columns:1fr 1fr;
gap:50px;

}

.contact-info{

display:flex;
flex-direction:column;
gap:25px;

}

.contact-item{

display:flex;
gap:15px;
align-items:center;
background:var(--card);
padding:20px;
border-radius:16px;

}

.contact-item i{

font-size:1.8rem;
color:var(--primary);

}

.contact-form{

display:flex;
flex-direction:column;
gap:15px;

}

.contact-form input,
.contact-form textarea{

padding:15px;
border:none;
border-radius:12px;
background:var(--card);
color:var(--white);
font-family:inherit;

}

.contact-form textarea{

height:180px;
resize:none;

}

.contact-form button{

padding:15px;
border:none;
border-radius:50px;
background:var(--primary);
color:#000;
font-weight:700;
cursor:pointer;

}

/* =========================
FOOTER
========================= */

.footer{

padding:50px 8%;
text-align:center;
background:var(--dark);

}

.footer h2{

color:var(--primary);
margin-bottom:10px;

}

.footer p{

color:var(--gray);

}

.footer-socials{

margin:25px 0;
display:flex;
justify-content:center;
gap:15px;

}

.footer-socials a{

width:50px;
height:50px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:var(--card);
color:var(--primary);
font-size:1.2rem;
text-decoration:none;
transition:.3s;

}

.footer-socials a:hover{

transform:translateY(-5px);

}

/* =========================
FLOATING WHATSAPP
========================= */

.floating-whatsapp{

position:fixed;
bottom:25px;
right:25px;
width:65px;
height:65px;
border-radius:50%;
background:#25D366;
display:flex;
justify-content:center;
align-items:center;
font-size:2rem;
color:#fff;
text-decoration:none;
z-index:999;

box-shadow:0 10px 25px rgba(0,0,0,.25);

}

/* =========================
SCROLL TOP BUTTON
========================= */

#scrollTopBtn{

position:fixed;
bottom:105px;
right:25px;
width:55px;
height:55px;
border:none;
border-radius:50%;
background:var(--primary);
color:#000;
font-size:1.2rem;
cursor:pointer;
display:none;
z-index:999;

}

@media(max-width:768px){

.hero{
flex-direction:column;
text-align:center;
}

.hero-content h1{
font-size:2.8rem;
}

.hero-content h2{
font-size:1.4rem;
}

.hero-image img{
width:100%;
max-width:250px;
}

.section-title h2{
font-size:2rem;
}

.founder-content h2{
font-size:2rem;
}

.about,
.services,
.founder,
.portfolio,
.contact,
.testimonials,
.video-showcase{
padding:80px 5%;
}

.hero-stats{
justify-content:center;
flex-wrap:wrap;
gap:15px;
}

.portfolio-grid{
grid-template-columns:1fr;
}

.portfolio-grid img{
height:240px;
}

}
/* =========================
LIGHTBOX
========================= */

.lightbox{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.95);
justify-content:center;
align-items:center;
z-index:99999;
}

.lightbox img{
max-width:90%;
max-height:90%;
border-radius:12px;
box-shadow:0 0 30px rgba(255,255,255,.2);
}

#closeLightbox{
position:absolute;
top:20px;
right:30px;
color:#fff;
font-size:40px;
cursor:pointer;
}
/* =========================
MOBILE FIXES
========================= */

@media(max-width:768px){

.header{
padding:12px 5%;
}

.logo{
display:flex;
align-items:center;
gap:10px;
}

.logo img{
width:50px;
height:auto;
}

.logo h2{
font-size:1.8rem;
line-height:1.2;
}

.hero{
display:flex;
flex-direction:column;
align-items:center;
text-align:center;
padding-top:120px;
}

.hero-content{
width:100%;
}

.hero-content h1{
font-size:2.3rem;
line-height:1.2;
}

.hero-content h2{
font-size:1.4rem;
}

.hero-content p{
font-size:1rem;
max-width:90%;
margin:auto;
}

.hero-image{
margin-top:30px;
}

.hero-image img{
width:280px;
max-width:90%;
display:block;
margin:auto;
}

.hero-buttons{
justify-content:center;
flex-wrap:wrap;
gap:15px;
}

.hero-stats{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:15px;
margin-top:30px;
}

.stat-box{
width:120px;
}

.portfolio-grid{
grid-template-columns:1fr;
}

.portfolio-grid img{
width:100%;
height:auto;
}

.contact-container,
.about-content,
.founder{
grid-template-columns:1fr;
text-align:center;
}

}
@media(max-width:768px){

.navbar{
display:flex !important;
flex-wrap:wrap;
justify-content:center;
gap:10px;
margin-top:15px;
}

.navbar a{
font-size:.9rem;
padding:5px;
}

.language-switcher{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:8px;
margin-top:10px;
}

}
/* MOBILE IMPROVEMENTS */

@media(max-width:768px){

.hero{
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
text-align:center;
}

.hero-content{
width:100%;
max-width:100%;
}

.hero-content h1{
font-size:2.5rem;
line-height:1.2;
margin-bottom:15px;
}

.hero-content h2{
font-size:1.5rem;
line-height:1.5;
margin-bottom:15px;
}

.hero-content p{
font-size:1rem;
line-height:1.8;
max-width:95%;
margin:auto;
}

.hero-buttons{
display:flex;
flex-direction:column;
gap:15px;
align-items:center;
}

.hero-stats{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:15px;
}

.hero-image img{
max-width:320px;
width:100%;
margin-top:30px;
}

/* Language Buttons */

.language-switcher{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:8px;
margin-top:10px;
}

.language-switcher button{
padding:8px 12px;
font-size:14px;
}

/* Theme Buttons */

.theme-switcher{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:8px;
margin-top:10px;
}

.theme-switcher button{
width:35px;
height:35px;
border-radius:50%;
cursor:pointer;
border:none;
}

}/* THEMES */

body.dark{
background:#0f172a;
color:white;
}

body.light{
background:#ffffff;
color:#111827;
}

body.blue{
background:#0b2447;
color:white;
}

body.green{
background:#052e16;
color:white;
}

body.purple{
background:#2e1065;
color:white;
}.header{
transition:all .4s ease;
}

.header.hide{
transform:translateY(-100%);
}
