:root{
  --bg:#E8E3DB; --accent:#A67C52; --accent-dark:#8a6239; --gold:#D9A93A;
  --black:#111; --muted:#666; --card:#fff;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;background:linear-gradient(180deg,#f9efe3 0%, var(--bg) 60%);color:var(--black);
  font-family:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,Arial;
  -webkit-font-smoothing:antialiased;
}

/* header */
.site-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:linear-gradient(90deg,#2b1b2a,#111);color:#fff;box-shadow:0 8px 28px rgba(0,0,0,.22)}
.header-left{display:flex;align-items:center;gap:12px}
.logo{width:56px;border-radius:8px;box-shadow:0 8px 20px rgba(0,0,0,.35)}
.brand-title{font-family:'Cinzel',serif;font-size:18px;letter-spacing:6px;color:var(--gold)}
.brand-sub{font-size:12px;color:#f0d8b0}
.header-right{display:flex;gap:10px;align-items:center}
.diwali-badge{background:linear-gradient(90deg,#d39a2b,#ffd37a);color:#2b1400;padding:6px 10px;border-radius:18px;font-weight:700;box-shadow:0 6px 14px rgba(214,156,43,.18)}

/* buttons */
.btn{display:inline-block;padding:8px 12px;border-radius:8px;border:none;background:#111;color:#fff;cursor:pointer;font-weight:600}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.08)}
.btn.primary{background:var(--black)}
.btn.sm{padding:8px}
.cart-btn{position:relative}
#cartCount{background:#ff6f61;color:#fff;padding:2px 6px;border-radius:10px;margin-left:6px;font-size:12px}

/* sparkles overlay */
.sparkles{position:absolute;right:4%;top:0;width:220px;height:220px;pointer-events:none;mix-blend-mode:screen;opacity:.85}
.sparkles::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 20%, rgba(255,240,200,0.35), transparent 20%);filter:blur(20px);opacity:1}
.sparkles::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(255,220,150,0.08), transparent);}

/* hero */
.hero{display:flex;gap:24px;padding:36px 20px;align-items:center;position:relative}
.hero-left{flex:1}
.hero-title{font-family:'Cinzel',serif;font-size:32px;margin:0 0 12px;color:#2b1b2a}
.hero-sub{color:var(--muted);margin:0 0 18px}
.hero-ctas .btn{margin-right:10px}
.hero-note{margin-top:8px;color:var(--accent-dark);font-weight:600}
.hero-right .hero-poster{width:360px;border-radius:12px;box-shadow:0 16px 36px rgba(0,0,0,.28);border:6px solid rgba(255,235,180,0.06)}

/* products */
.products{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;padding:20px}
.product-card{background:var(--card);border-radius:12px;padding:12px;text-align:center;box-shadow:0 8px 24px rgba(0,0,0,0.08);transition:transform .2s}
.product-card:hover{transform:translateY(-6px);box-shadow:0 18px 48px rgba(0,0,0,0.14)}
.product-card img{width:100%;height:160px;object-fit:cover;border-radius:8px;margin-bottom:8px}
.price{color:var(--accent);font-weight:700;margin-bottom:8px}

/* about/trust */
.about-trust{display:flex;gap:20px;padding:20px;flex-wrap:wrap}
.about{flex:1;min-width:280px}
.trust{flex:1;min-width:280px}
.trust-cards{display:flex;gap:12px;flex-wrap:wrap}
.trust-card{background:var(--card);padding:12px;border-radius:8px;width:260px;box-shadow:0 6px 18px rgba(0,0,0,0.06)}
.testimonials blockquote{color:var(--muted);font-style:italic}

/* cart sidebar */
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);opacity:0;visibility:hidden;transition:all .28s;z-index:900}
.overlay.visible{opacity:1;visibility:visible}
.cart-sidebar{position:fixed;right:0;top:0;height:100%;width:420px;background:linear-gradient(180deg,#fff,#fbfbfb);box-shadow:-18px 0 40px rgba(0,0,0,.2);transform:translateX(110%);transition:transform .36s cubic-bezier(.22,.9,.27,1);z-index:1000;padding:18px;display:flex;flex-direction:column}
.cart-sidebar.open{transform:translateX(0)}
.cart-header{display:flex;justify-content:space-between;align-items:center}
.close-x{background:transparent;border:none;font-size:20px;cursor:pointer}
.cart-list{flex:1;overflow:auto;margin-top:12px}
.cart-item{display:flex;gap:10px;align-items:center;padding:10px;border-radius:8px;background:#fff;margin-bottom:10px;box-shadow:0 6px 14px rgba(0,0,0,0.04)}
.cart-item img{width:64px;height:48px;object-fit:cover;border-radius:6px}
.qty-controls{display:flex;gap:8px;align-items:center}
.qty-controls button{padding:6px 8px;border-radius:6px;border:1px solid #ddd;background:#fff;cursor:pointer}

/* summary */
.cart-summary{margin-top:12px}
.summary-row{display:flex;justify-content:space-between;padding:6px 0}
.summary-row.total{font-weight:700;font-size:18px;border-top:1px dashed #eee;padding-top:12px}
.coupon-row{display:flex;gap:8px;margin-top:12px}
.coupon-row input{flex:1;padding:8px;border-radius:6px;border:1px solid #ddd}
.full{width:100%;margin-top:12px}
.cart-footer{margin-top:8px;text-align:center;color:var(--muted);font-size:12px}

/* success modal */
.success-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1100;background:rgba(0,0,0,.6);opacity:0;visibility:hidden;transition:all .24s}
.success-modal.active{opacity:1;visibility:visible}
.success-box{background:#fff;padding:20px;border-radius:10px;max-width:520px;text-align:center;box-shadow:0 18px 40px rgba(0,0,0,.18)}
.success-details{margin-top:10px;text-align:left}

/* footer */
.site-footer{padding:20px;text-align:center;color:var(--muted);background:transparent}
.site-footer a{color:var(--accent);text-decoration:none}

/* responsive */
@media (max-width:900px){
  .cart-sidebar{width:92vw}
  .hero-right .hero-poster{width:260px}
  .hero-title{font-size:26px}
  .about-trust{flex-direction:column}
}

/* sparkle small animation */
@keyframes twinkle {
  0%,100% { opacity:.8; transform: translateY(0) scale(1) }
  50% { opacity:1; transform: translateY(-6px) scale(1.03) }
}
.sparkles { animation: twinkle 4s linear infinite; }
