/* ==========================================================================
   দোকানের থিম — রেফারেন্স ডিজাইন অনুযায়ী, সব স্ক্রিনে (PC/ট্যাব/মোবাইল)।
   এই ফাইলটাই সব ব্যবসার সাইটে এক থাকবে; ব্র্যান্ড বদলায় .env থেকে।
   ========================================================================== */

@font-face { font-family:'Kohinoor Bangla'; src:url('/fonts/KohinoorBangla-Light.otf') format('opentype');    font-weight:300; font-display:swap; }
@font-face { font-family:'Kohinoor Bangla'; src:url('/fonts/KohinoorBangla-Regular.otf') format('opentype');  font-weight:400; font-display:swap; }
@font-face { font-family:'Kohinoor Bangla'; src:url('/fonts/KohinoorBangla-Medium.otf') format('opentype');   font-weight:500; font-display:swap; }
@font-face { font-family:'Kohinoor Bangla'; src:url('/fonts/KohinoorBangla-Semibold.otf') format('opentype'); font-weight:600; font-display:swap; }
@font-face { font-family:'Kohinoor Bangla'; src:url('/fonts/KohinoorBangla-Bold.otf') format('opentype');     font-weight:700; font-display:swap; }
@font-face { font-family:'FN Mamun Mahfuz'; src:url('/fonts/FN-Mamun-Mahfuz-Unicode-Bold.ttf') format('truetype'); font-weight:700; font-display:swap; }

*,*::before,*::after{box-sizing:border-box;}

:root{
  --sl-cream:#F7F2E9;
  --sl-cream-2:#EFE7DA;
  --sl-brown:#4A2E1E;
  --sl-brown-2:#6B4429;
  --sl-amber:#B5651D;
  --sl-red:#E23B2E;
  --sl-line:#E6DFD4;
  --sl-text:#2B2118;
  --sl-muted:#7A6A5C;
  --sl-grey:#EDEDED;
  --sl-white:#fff;
}

html{-webkit-text-size-adjust:100%;}
body.sl{
  margin:0; font-family:'Kohinoor Bangla','Hind Siliguri',sans-serif;
  color:var(--sl-text); background:var(--sl-white); line-height:1.6;
  overflow-x:hidden; max-width:100vw;
}
body.sl h1,body.sl h2,body.sl h3,body.sl h4,body.sl h5,body.sl h6,
body.sl .sl-brand,body.sl .sl-display{
  font-family:'FN Mamun Mahfuz','Kohinoor Bangla',sans-serif; font-weight:700; margin:0;
}
body.sl img{max-width:100%;}
.sl-wrap{max-width:1800px;margin:0 auto;padding:0 20px;}

/* ---------- টপ বার ----------
   রেফারেন্সের মতো — ধূসর বার, দুই পাশে সামান্য ফাঁক (ইনসেট)। */
.sl-topbar{background:#fff;padding:8px 0 0;}
.sl-topbar .sl-wrap{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  min-height:44px;background:var(--sl-grey);border-radius:3px;padding:6px 20px;
}
.sl-topbar a{color:inherit;text-decoration:none;}
.sl-tb-phone{display:flex;align-items:center;gap:9px;font-weight:700;font-size:19px;white-space:nowrap;color:#111;}
.sl-tb-phone .wa{width:27px;height:27px;display:grid;place-items:center;flex:0 0 27px;}
.sl-tb-phone .wa svg{width:27px;height:27px;}
.sl-tb-msg{color:var(--sl-red);font-weight:700;text-align:center;flex:1;font-size:16px;font-family:'FN Mamun Mahfuz','Kohinoor Bangla',sans-serif;}
.sl-tb-social{display:flex;align-items:center;gap:8px;}
.sl-tb-social a{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;}
.sl-tb-social svg{width:27px;height:27px;}

/* ---------- হেডার ---------- */
.sl-header{background:#fff;position:sticky;top:0;z-index:500;padding:8px 0;}
.sl-header .sl-wrap{
  display:flex;align-items:center;gap:16px;min-height:70px;
  background:var(--sl-grey);border-radius:3px;padding:8px 20px;
}
.sl-nav-only-mobile{display:none;}
.sl-logo{display:flex;flex-direction:column;line-height:1.1;text-decoration:none;color:var(--sl-brown);flex-shrink:0;}
.sl-logo .l1{font-family:'FN Mamun Mahfuz','Kohinoor Bangla',sans-serif;font-size:28px;font-weight:700;letter-spacing:.2px;line-height:1.25;white-space:nowrap;}
.sl-logo .l1 .dot{color:var(--sl-red);}
.sl-logo .l2{font-size:12px;color:var(--sl-brown);border-top:1.5px solid var(--sl-brown);margin-top:2px;padding-top:2px;text-align:center;white-space:nowrap;}
.sl-logo img{max-height:52px;width:auto;}

.sl-nav{display:flex;align-items:center;gap:38px;margin:0 auto;}
.sl-nav a{color:#111;text-decoration:none;font-weight:700;font-size:21px;padding:3px 0;border-bottom:3px solid transparent;}
.sl-nav a:hover{color:var(--sl-red);}
.sl-nav a.active{border-bottom-color:var(--sl-red);}

.sl-actions{display:flex;align-items:center;gap:11px;flex-shrink:0;}
.sl-ico{width:44px;height:44px;border-radius:50%;background:#5F5F5F;display:grid;place-items:center;color:#fff;border:none;cursor:pointer;position:relative;text-decoration:none;}
.sl-ico:hover{background:var(--sl-brown);}
.sl-ico svg{width:21px;height:21px;}
.sl-badge{position:absolute;top:-2px;right:-2px;background:var(--sl-red);color:#fff;font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:grid;place-items:center;padding:0 4px;}
.sl-burger{display:none;}

/* ---------- হিরো ---------- */
.sl-hero{background:var(--sl-grey);margin:14px auto;overflow:hidden;position:relative;}
.sl-hero-track{display:flex;transition:transform .5s ease;}
.sl-hero-slide{min-width:100%;aspect-ratio:16/6;max-height:560px;display:grid;place-items:center;background:var(--sl-grey);}
.sl-hero-slide img{width:100%;height:100%;object-fit:cover;}
.sl-hero-dots{position:absolute;bottom:14px;left:0;right:0;display:flex;justify-content:center;gap:9px;}
.sl-dot{width:12px;height:12px;border-radius:50%;background:var(--sl-amber);border:2px solid var(--sl-amber);cursor:pointer;padding:0;}
.sl-dot.active{background:transparent;}

/* ---------- ট্রাস্ট স্ট্রিপ (আইকন উপরে, লেখা নিচে — কেন্দ্রীভূত) ---------- */
.sl-trust{background:var(--sl-grey);padding:20px 0 22px;}
.sl-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.sl-trust-item{text-align:center;padding:0 6px;}
.sl-trust-item .ic{font-size:30px;line-height:1;display:block;margin-bottom:7px;}
.sl-trust-item .t1{font-weight:700;font-size:17px;color:var(--sl-brown);display:block;font-family:'FN Mamun Mahfuz','Kohinoor Bangla',sans-serif;}
.sl-trust-item .t2{font-size:12.5px;color:#555;display:block;margin-top:2px;}

/* ---------- ক্যাটাগরি বৃত্ত ---------- */
.sl-cats{padding:22px 0 8px;}
.sl-cats-row{display:flex;gap:26px;justify-content:center;flex-wrap:wrap;}
.sl-cat{width:104px;text-align:center;text-decoration:none;color:var(--sl-text);}
.sl-cat .circle{width:82px;height:82px;border-radius:50%;background:#F1F1F1;margin:0 auto 8px;display:grid;place-items:center;font-size:30px;overflow:hidden;border:1px solid #E4E4E4;}
.sl-cat .circle img{width:100%;height:100%;object-fit:cover;}
.sl-cat span{font-size:13px;font-weight:600;display:block;}
.sl-cat:hover .circle{background:var(--sl-brown);color:#fff;}

/* ---------- প্রোডাক্ট সেকশন ---------- */
.sl-sec{background:var(--sl-cream);padding:28px 0 32px;margin:18px 0;}
.sl-sec-title{text-align:center;font-size:26px;font-weight:700;margin-bottom:22px;color:var(--sl-text);}
.sl-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}

.sl-card{background:var(--sl-white);border:1px solid var(--sl-line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;}
.sl-card-img{position:relative;display:block;aspect-ratio:1/1;background:#fafafa;overflow:hidden;}
.sl-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.sl-card:hover .sl-card-img img{transform:scale(1.05);}
.sl-off{position:absolute;bottom:8px;left:8px;background:var(--sl-red);color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:3px;}
.sl-fav{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;border:none;cursor:pointer;font-size:14px;color:var(--sl-muted);}
.sl-fav:hover{color:var(--sl-red);}
.sl-card-body{padding:10px 11px 12px;display:flex;flex-direction:column;gap:6px;flex:1;text-align:center;}
.sl-card-name{font-size:13px;line-height:1.45;color:var(--sl-text);text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px;}
.sl-card-name:hover{color:var(--sl-red);}
.sl-price-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;justify-content:center;}
.sl-price{font-weight:700;font-size:16px;color:var(--sl-red);}
.sl-old{font-size:12px;color:var(--sl-muted);text-decoration:line-through;}
.sl-card-btns{display:flex;flex-direction:column;gap:6px;margin-top:auto;}
.sl-btn{border:none;cursor:pointer;border-radius:4px;font-size:12px;font-weight:700;padding:9px 4px;text-align:center;text-decoration:none;font-family:inherit;min-height:36px;}
.sl-btn-order{background:var(--sl-brown);color:#fff;}
.sl-btn-order:hover{background:var(--sl-brown-2);}
.sl-btn-cart{background:var(--sl-brown);color:#fff;}
.sl-btn-cart:hover{background:var(--sl-brown-2);}

.sl-rail-nav{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:20px;}
.sl-arrow{width:30px;height:30px;border-radius:50%;border:1px solid var(--sl-line);background:#fff;cursor:pointer;display:grid;place-items:center;font-size:14px;color:var(--sl-brown);text-decoration:none;}
.sl-arrow:hover{background:var(--sl-brown);color:#fff;}

.sl-banner{display:block;margin:18px auto;overflow:hidden;}
.sl-banner img{width:100%;height:auto;display:block;}

/* ---------- ফুটার ---------- */
.sl-footer{background:var(--sl-brown);color:#E9DED3;margin-top:28px;font-size:13.5px;}
.sl-footer .sl-wrap{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:28px;padding:34px 16px;}
.sl-footer h4{color:#fff;font-size:15px;margin:0 0 12px;}
.sl-footer p{margin:0;}
.sl-footer a{color:#E9DED3;text-decoration:none;display:block;padding:3px 0;}
.sl-footer a:hover{color:#fff;}
.sl-f-brand{font-family:'FN Mamun Mahfuz',sans-serif;font-size:21px;color:#fff;margin-bottom:9px;}
.sl-f-addr{display:flex;gap:8px;margin-top:12px;font-size:13px;}
.sl-pay{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px;}
.sl-copy{border-top:1px solid rgba(255,255,255,.14);text-align:center;padding:13px 16px;font-size:12.5px;}

/* ---------- কার্ট ড্রয়ার + টোস্ট ----------
   থিমের নিজস্ব স্টাইল — Tailwind ছাড়াই কাজ করে, তাই পেজের নিচে
   স্টাইলহীন লেখা হয়ে ভেসে ওঠে না। */
.sl-cart-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:900;
  opacity:0;visibility:hidden;transition:opacity .25s;
}
.sl-cart-overlay.open{opacity:1;visibility:visible;}
.sl-cart{
  position:fixed;top:0;right:0;bottom:0;width:min(100vw,400px);
  background:#fff;z-index:901;display:flex;flex-direction:column;
  transform:translateX(100%);transition:transform .28s ease;
  box-shadow:-4px 0 22px rgba(0,0,0,.18);
}
.sl-cart.open{transform:translateX(0);}
.sl-cart-head{
  background:var(--sl-brown);color:#fff;display:flex;align-items:center;
  justify-content:space-between;padding:15px 18px;flex-shrink:0;
}
.sl-cart-head h3{font-size:16px;color:#fff;margin:0;}
.sl-cart-x{
  width:30px;height:30px;border-radius:50%;border:none;cursor:pointer;
  background:rgba(255,255,255,.15);color:#fff;font-size:14px;
}
.sl-cart-x:hover{background:var(--sl-red);}
.sl-cart-items{flex:1;overflow-y:auto;padding:14px 18px;}
.sl-cart-empty{text-align:center;color:var(--sl-muted);padding:56px 10px;}
.sl-cart-empty .ic{font-size:42px;display:block;margin-bottom:10px;}

.sl-ci{display:flex;gap:11px;padding:11px 0;border-bottom:1px solid #F0ECE5;}
.sl-ci img{width:62px;height:62px;border-radius:5px;object-fit:cover;border:1px solid #EEE;flex-shrink:0;background:#fafafa;}
.sl-ci-b{flex:1;min-width:0;}
.sl-ci-name{font-size:12.5px;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.sl-ci-price{color:var(--sl-red);font-weight:700;font-size:14px;margin-top:3px;}
.sl-ci-row{display:flex;align-items:center;justify-content:space-between;margin-top:7px;gap:8px;}
.sl-qty{display:flex;align-items:center;border:1px solid var(--sl-line);border-radius:4px;overflow:hidden;}
.sl-qty button{width:26px;height:26px;border:none;background:#F6F2EC;color:var(--sl-brown);font-weight:700;cursor:pointer;font-size:14px;}
.sl-qty button:hover{background:var(--sl-brown);color:#fff;}
.sl-qty span{min-width:30px;text-align:center;font-size:12.5px;font-weight:700;}
.sl-ci-del{background:none;border:none;color:var(--sl-muted);font-size:11.5px;cursor:pointer;}
.sl-ci-del:hover{color:var(--sl-red);}

.sl-cart-foot{border-top:1px solid var(--sl-line);padding:15px 18px;flex-shrink:0;background:#fff;}
.sl-cart-total{display:flex;align-items:center;justify-content:space-between;}
.sl-cart-total span{font-size:13.5px;color:var(--sl-muted);}
.sl-cart-total strong{font-size:22px;color:var(--sl-brown);}
.sl-cart-note{font-size:11.5px;color:var(--sl-muted);margin:4px 0 12px;text-align:right;}
.sl-cart-go{
  display:block;width:100%;background:var(--sl-brown);color:#fff;text-align:center;
  padding:13px;border-radius:5px;font-weight:700;font-size:14.5px;text-decoration:none;
}
.sl-cart-go:hover{background:var(--sl-brown-2);}

.sl-toast{
  position:fixed;left:50%;bottom:26px;transform:translate(-50%,18px);
  background:var(--sl-brown);color:#fff;padding:11px 24px;border-radius:40px;
  font-weight:600;font-size:13.5px;z-index:1200;box-shadow:0 8px 26px rgba(0,0,0,.28);
  opacity:0;visibility:hidden;transition:all .25s;pointer-events:none;white-space:nowrap;
}
.sl-toast.show{opacity:1;visibility:visible;transform:translate(-50%,0);}

/* ==========================================================================
   ট্যাবলেট
   ========================================================================== */
@media (max-width:1024px){
  .sl-nav{gap:22px;}
  .sl-nav a{font-size:17px;}
  .sl-logo .l1{font-size:23px;}
  .sl-grid{grid-template-columns:repeat(3,1fr);}
  .sl-sec-title{font-size:23px;}
  .sl-trust-item .t1{font-size:14.5px;}
  .sl-trust-item .t2{font-size:11.5px;}
}

/* ==========================================================================
   মোবাইল — এখানেই সবচেয়ে বেশি বদল
   ========================================================================== */
@media (max-width:768px){
  .sl-wrap{padding:0 12px;}

  /* টপ বার: মাঝের বার্তা নিচে নেমে যায়, ফোন+সোশ্যাল এক লাইনে */
  .sl-topbar{padding:6px 0 0;}
  .sl-topbar .sl-wrap{flex-wrap:wrap;padding:6px 12px;gap:6px;}
  .sl-header{padding:6px 0;}
  .sl-header .sl-wrap{padding:6px 12px;}
  .sl-nav-only-mobile{display:block;}
  .sl-tb-phone{font-size:14px;order:1;}
  .sl-tb-phone .wa{width:22px;height:22px;flex-basis:22px;}
  .sl-tb-social{order:2;gap:5px;}
  .sl-tb-social a{width:22px;height:22px;}
  .sl-tb-social svg{width:22px;height:22px;}
  .sl-tb-msg{order:3;flex:0 0 100%;font-size:12.5px;padding-bottom:2px;}

  /* হেডার: nav লুকিয়ে হ্যামবার্গার */
  .sl-header .sl-wrap{min-height:58px;gap:6px;}
  .sl-logo .l1{font-size:20px;}
  .sl-logo .l2{font-size:9px;}
  /* ছবি-লোগো মোবাইলে ছোট, নাহলে আইকনগুলো পর্দার বাইরে চলে যায় */
  .sl-logo img{max-height:38px;max-width:150px;}
  .sl-actions{gap:6px;}
  .sl-ico{width:34px;height:34px;}
  .sl-ico svg{width:15px;height:15px;}
  .sl-burger{display:grid;}
  /* অ্যাকাউন্ট/ট্র্যাক আইকন মোবাইলে লুকানো — মেনুতেই আছে */
  .sl-actions .sl-ico-track{display:none;}

  .sl-nav{
    position:fixed;top:0;left:0;bottom:0;width:74%;max-width:280px;
    background:#fff;flex-direction:column;align-items:flex-start;gap:0;
    padding:70px 20px 20px;margin:0;z-index:900;
    transform:translateX(-100%);transition:transform .28s ease;
    box-shadow:2px 0 18px rgba(0,0,0,.15);
  }
  .sl-nav.open{transform:translateX(0);}
  .sl-nav a{width:100%;padding:13px 0;border-bottom:1px solid #EEE;font-size:16px;}
  .sl-nav a:hover,.sl-nav a.active{border-bottom-color:#EEE;color:var(--sl-red);}
  .sl-nav-back{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:890;}
  .sl-nav-back.open{display:block;}

  .sl-hero{margin:10px auto;}
  .sl-hero-slide{aspect-ratio:16/9;}
  .sl-hero-dots{bottom:9px;}
  .sl-dot{width:9px;height:9px;}

  /* ট্রাস্ট: ২x২ */
  .sl-trust{padding:14px 0 16px;}
  .sl-trust-grid{grid-template-columns:repeat(2,1fr);gap:14px 8px;}
  .sl-trust-item .ic{font-size:24px;}
  .sl-trust-item .t1{font-size:13px;}
  .sl-trust-item .t2{font-size:11px;line-height:1.4;}

  /* ক্যাটাগরি: পাশে স্ক্রল */
  .sl-cats{padding:16px 0 4px;}
  .sl-cats-row{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;gap:14px;padding-bottom:6px;
    scrollbar-width:none;-ms-overflow-style:none;}
  .sl-cats-row::-webkit-scrollbar{display:none;}
  .sl-cat{width:74px;flex:0 0 74px;}
  .sl-cat .circle{width:62px;height:62px;font-size:24px;}
  .sl-cat span{font-size:11.5px;}

  /* পণ্য: ২ কলাম */
  .sl-sec{padding:20px 0 22px;margin:12px 0;}
  .sl-sec-title{font-size:19px;margin-bottom:15px;}
  .sl-grid{grid-template-columns:repeat(2,1fr);gap:10px;}
  .sl-card-name{font-size:12px;min-height:34px;}
  .sl-price{font-size:14px;}
  .sl-btn{font-size:11px;padding:8px 3px;min-height:34px;}

  /* ফুটার: এক কলাম */
  .sl-footer .sl-wrap{grid-template-columns:1fr;gap:20px;padding:24px 12px;}
  .sl-f-brand{font-size:19px;}
}

@media (max-width:400px){
  .sl-tb-phone{font-size:13px;}
  .sl-logo .l1{font-size:17px;}
  .sl-logo img{max-height:34px;max-width:126px;}
  .sl-ico{width:32px;height:32px;}
  .sl-actions{gap:5px;}
  .sl-grid{gap:8px;}
  .sl-sec-title{font-size:17px;}
}

/* ---------- ক্যারোসেলের ডট (রেফারেন্সের মতো) ---------- */
.sl-rail-dots{display:flex;align-items:center;gap:7px;}
.sl-rail-dots i{width:9px;height:9px;border-radius:50%;background:var(--sl-brown);display:block;}
.sl-rail-dots i.hollow{background:transparent;border:2px solid var(--sl-brown);}

/* ---------- Pay With — কার্ডের মতো রঙিন ব্যাজ ---------- */

/* ---------- পেমেন্ট লোগো (সাদা কার্ডে আসল ব্র্যান্ড মার্ক) ---------- */
.sl-pay{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.sl-pay .pc{background:#fff;border-radius:4px;padding:4px 6px;display:inline-flex;align-items:center;
  justify-content:center;height:30px;box-shadow:0 1px 3px rgba(0,0,0,.18);}
.sl-pay .pc svg{height:20px;width:auto;display:block;}
.sl-pay .pc.cod{gap:5px;padding:3px 7px;}
.sl-pay .pc.cod svg{height:18px;}
.sl-pay .pc.cod b{font-size:7.5px;line-height:1.15;color:#1B7F3B;font-weight:800;text-align:left;}
.sl-f-phone{margin-top:12px;}
.sl-f-phone a{display:inline;}

/* ---------- ফুটার: মোবাইলে সব মাঝ বরাবর ---------- */
@media (max-width:768px){
  .sl-footer .sl-wrap{text-align:center;}
  .sl-footer h4{margin-top:4px;}
  .sl-f-brand{font-size:22px;}
  .sl-f-addr{justify-content:center;text-align:center;}
  .sl-pay{justify-content:center;}
  .sl-footer p{max-width:34em;margin-left:auto;margin-right:auto;}
}
