*{margin:0;padding:0;box-sizing:border-box;font-family:'Poppins',sans-serif}
body{background:#f5f5f5;color:#222;transition:.3s}
body.dark{background:#111;color:#fff}

/* Navbar */
header{
position:fixed;top:0;width:100%;background:#111;color:#fff;
display:flex;justify-content:space-between;align-items:center;
padding:15px 8%;z-index:1000
}
header button{padding:6px 12px;margin-left:10px}

/* Hero */
.hero{
height:100vh;
background:url('https://images.unsplash.com/photo-1586023492125-27b2c045efd7') center/cover;
display:flex;justify-content:center;align-items:center;
color:#fff;text-align:center;position:relative
}
.hero::after{
content:"";position:absolute;inset:0;background:rgba(0,0,0,.6)
}
.hero-content{position:relative;z-index:2}
.hero h1{font-size:50px;margin-bottom:20px}

/* Section */
section{padding:80px 8%}
.section-title{text-align:center;font-size:32px;margin-bottom:40px}

/* Categories */
.category-grid{
display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px
}
.category-card{position:relative;cursor:pointer;border-radius:12px;overflow:hidden}
.category-card img{width:100%;height:250px;object-fit:cover;transition:.4s}
.category-card:hover img{transform:scale(1.1)}
.category-card h3{position:absolute;bottom:20px;left:20px;color:#fff}

/* Controls */
.controls{text-align:center}
.controls input,.controls select{padding:8px 12px;margin:5px}

/* Products */
.product-grid{
display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px
}
.card{
background:#ffffff00;border-radius:12px;overflow:hidden;
box-shadow:0 5px 20px rgba(0,0,0,.1);
border: 1px solid #ddd;
transition:.3s;position:relative
}
.card:hover{transform:translateY(-8px)}
.card img{width:100%;height:220px;object-fit:cover}
.card-body{padding:15px}
.price{font-weight:600;margin:10px 0}
.card button{width:100%;padding:10px;border:none;background:#464444;color:#fff}
.wishlist{position:absolute;top:10px;right:10px;background:#fff;padding:6px;border-radius:50%;cursor:pointer}

/* Cart */
.cart-overlay{
position:fixed;inset:0;background:rgba(0,0,0,.5);
backdrop-filter:blur(4px);
opacity:0;visibility:hidden;transition:.3s;z-index:999
}
.cart-overlay.active{opacity:1;visibility:visible}

.cart{
position:fixed;top:0;right:-420px;width:400px;height:100%;
background:rgba(255,255,255,.95);
padding:25px;transition:.4s;z-index:1000;
display:flex;flex-direction:column
}
.cart.active{right:0}
.cart-items{flex:1;overflow-y:auto}
.cart-item{display:flex;gap:10px;margin-bottom:15px}
.cart-item img{width:50px;height:50px;border-radius:6px}
.cart-item input{width:45px}
.total{font-weight:700;margin:10px 0}
.checkout-btn{padding:12px;border:none;background:#111;color:#fff}

/* Mobile cart bottom */
@media(max-width:768px){
.cart{top:auto;bottom:-100%;right:0;width:100%;height:80%}
.cart.active{bottom:0}
}

/* Features */
.feature-grid{
display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px
}
.feature-card{
background:#fff;padding:30px;border-radius:12px;
box-shadow:0 5px 20px rgba(0,0,0,.08)
}

/* Banner */
.banner{
height:60vh;background:url('https://images.unsplash.com/photo-1615873968403-89e068629265') center/cover;
display:flex;justify-content:center;align-items:center;
color:#fff;text-align:center;position:relative
}
.banner::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.6)}
.banner-content{position:relative;z-index:2}

/* Stats */
.stats{background:#111;color:#fff;display:flex;justify-content:space-around;text-align:center}

/* Testimonials */
.testimonials{
  padding:100px 8%;
  background:#f9f9f9;
}

.testimonial-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:30px;
}

.testimonial-card{
  background:#fff;
  padding:30px;
  border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,0.08);
  transition:0.3s;
}

.testimonial-card:hover{
  transform:translateY(-10px);
}

.testimonial-header{
  display:flex;
  align-items:center;
  gap:15px;
  margin-bottom:15px;
}

.testimonial-header img{
  width:60px;
  height:60px;
  border-radius:50%;
  object-fit:cover;
}

.stars{
  color:#f5a623;
  font-size:14px;
}
/* FAQ */
.faq{
  padding:100px 8%;
  background:#fff;
}

.faq-item{
  border-bottom:1px solid #ddd;
  padding:20px 0;
}

.faq-question{
  font-weight:600;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:18px;
}

.faq-answer{
  max-height:0;
  overflow:hidden;
  transition:max-height 0.4s ease;
  margin-top:10px;
  color:#555;
}

/* Gallery */
.gallery-grid{
display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px
}
.gallery-grid img{width:100%;height:200px;object-fit:cover;border-radius:12px}

/* Newsletter */
.newsletter{text-align:center;background:#111;color:#fff}
.newsletter input{padding:10px;width:250px}
.newsletter button{padding:10px 20px;border:none;margin-left:10px}

/* Footer */
.big-footer{
background:#000;color:#fff;
display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
gap:20px;padding:60px 8%
}