/* ==========================================================================
   পাহাড়ি বাজার — হোম পেজ কম্পোনেন্ট CSS (front-page only)
   ========================================================================== */

/* ===== প্রিমিয়াম হিরো স্লাইডার ===== */
.hero-slider{position:relative;height:clamp(460px,64vh,620px);overflow:hidden;background:var(--green-900);isolation:isolate}
.hs-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .9s var(--ease)}
.hs-slide.active{opacity:1;visibility:visible;z-index:1}
.hs-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.05)}
.hs-slide.active .hs-bg{animation:kenburns 7.5s ease-out forwards}
@keyframes kenburns{from{transform:scale(1.05)}to{transform:scale(1.2)}}
.hs-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,48,42,.9) 0%,rgba(19,48,42,.55) 42%,rgba(19,48,42,.12) 100%)}
.hs-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;color:#fff;max-width:660px}
.hs-pill{display:inline-flex;align-items:center;gap:8px;width:fit-content;background:var(--orange-500);color:#fff;font-size:.82rem;font-weight:700;padding:8px 16px;border-radius:var(--r-pill);margin-bottom:20px;box-shadow:var(--sh-orange)}
.hs-title{color:#fff;font-size:clamp(2.2rem,5.5vw,4rem);font-weight:800;line-height:1.08;margin-bottom:16px;text-shadow:0 2px 20px rgba(0,0,0,.25)}
.hs-title .hl{color:var(--orange-400)}
.hs-sub{color:rgba(255,255,255,.9);font-size:clamp(1rem,1.7vw,1.3rem);max-width:480px;margin-bottom:30px}
.hs-cta{display:flex;gap:12px;flex-wrap:wrap}
.hs-slide .hs-pill,.hs-slide .hs-title,.hs-slide .hs-sub,.hs-slide .hs-cta{opacity:0;transform:translateY(28px)}
.hs-slide.active .hs-pill{animation:hsUp .7s .25s var(--ease-out) forwards}
.hs-slide.active .hs-title{animation:hsUp .8s .4s var(--ease-out) forwards}
.hs-slide.active .hs-sub{animation:hsUp .8s .55s var(--ease-out) forwards}
.hs-slide.active .hs-cta{animation:hsUp .8s .7s var(--ease-out) forwards}
@keyframes hsUp{to{opacity:1;transform:none}}
.hs-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.16);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;display:grid;place-items:center;transition:all var(--t-fast)}
.hs-arrow:hover{background:var(--orange-500);border-color:var(--orange-500);transform:translateY(-50%) scale(1.08)}
.hs-arrow.prev{left:22px}.hs-arrow.next{right:22px}
.hs-dots{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:10px}
.hs-dot{width:10px;height:10px;border-radius:999px;background:rgba(255,255,255,.45);transition:all var(--t-mid) var(--ease)}
.hs-dot.active{width:30px;background:var(--orange-500)}
.hs-progress{position:absolute;bottom:0;left:0;height:3px;background:var(--orange-500);z-index:5;width:0}
@media(max-width:760px){
  .hero-slider{height:clamp(420px,72vh,520px)}
  .hs-slide::after{background:linear-gradient(180deg,rgba(19,48,42,.5),rgba(19,48,42,.85))}
  .hs-inner{justify-content:flex-end;padding-bottom:60px}
  .hs-arrow{display:none}
}

/* হিরো ব্যানার ওভারলে টেক্সট */
.banner .ov{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:32px;color:#fff}
.banner .ov.dark{background:linear-gradient(90deg,rgba(19,48,42,.7),rgba(19,48,42,.1))}
.banner .ov h2{color:#fff;font-size:clamp(1.3rem,2.4vw,2rem);line-height:1.2;margin-bottom:8px}
.banner .ov p{color:rgba(255,255,255,.9);font-size:.95rem;margin-bottom:14px}
.banner .ov .pill{display:inline-block;background:var(--orange-500);color:#fff;font-size:.8rem;font-weight:700;padding:6px 14px;border-radius:var(--r-pill);width:fit-content}

/* অনুভূমিক ক্যাটাগরি রো */
.cat-row-scroll{display:flex;gap:16px;overflow-x:auto;scrollbar-width:none;padding-bottom:6px}
.cat-row-scroll::-webkit-scrollbar{display:none}
.cat-row-scroll .product-card{flex:0 0 230px}
@media(max-width:560px){.cat-row-scroll .product-card{flex-basis:170px}}
