:root{--bg:#F8F5F0;--surface:#EFE9E0;--card:transparent;--ink:#1D1714;--mute:#776A61;--line:#E4DCD0;--brand:#1D1714;--brand-ink:#fff;--accent:#A93A1F;--accent-ink:#fff;--sale:#A93A1F;--ok:#2F6B3A;--r:14px;--r-sm:10px;--r-btn:999px;--fe:'Manrope','Hind Siliguri',system-ui,sans-serif;--fh:'Playfair Display','Hind Siliguri',Georgia,serif;--ft-bg:#1D1714;--ft-ink:#F8F5F0;--w:1320px;--ar:4/5}
h1,h2,h3{font-weight:500;letter-spacing:-.015em}
html[lang=bn] h1,html[lang=bn] h2,html[lang=bn] h3{font-weight:700}
.topbar{background:var(--ink);color:#E9DED0;font-size:12.5px;letter-spacing:.02em}
.topbar .w{padding:0;max-width:none}
.topbar .mq{width:100%}
.topbar .mq-t{gap:80px;padding-right:80px}
.hd{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 86%,transparent)}
body.over .hdw:not(.scrolled) .hd{border-color:rgba(255,255,255,.18)}
.hd-main{height:76px}
.lg{font:600 26px/1 var(--fh);letter-spacing:-.01em}
.lg i{font-style:italic;font-weight:400;color:var(--accent)}
body.over .hdw:not(.scrolled) .lg i{color:#F0C38E}
html[lang=bn] .lg{font:700 24px/1 var(--fb)}
.hd-links a{font-size:14.5px;font-weight:600}
.hd-links a.on::after{background:var(--accent)}
.lang span.on{background:var(--ink)}
.cnt{background:var(--accent);color:#fff}
.kick{color:var(--accent);font-size:12px;letter-spacing:.16em;display:block;margin-bottom:12px}
html[lang=bn] .kick{font-size:14px;letter-spacing:0}
.kick.light{color:#E7B98A}
.sh h2{font-size:clamp(30px,3.6vw,50px);max-width:760px}
.btn-glass{background:rgba(255,255,255,.14);color:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.btn-glass:hover{background:rgba(255,255,255,.24)}

/* hero */
.mx-hero{position:relative;min-height:min(100vh,940px);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;color:#fff;background:#2a1d16}
.mx-bg{position:absolute;inset:-6% 0 0;background:var(--bg) center/cover;transform:scale(1.08);will-change:transform}
.mx-hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(18,12,9,.72) 0%,rgba(18,12,9,.35) 45%,rgba(18,12,9,0) 75%),linear-gradient(180deg,rgba(18,12,9,.5) 0%,rgba(18,12,9,0) 28%,rgba(18,12,9,0) 60%,rgba(18,12,9,.8) 100%)}
.mx-in{position:relative;z-index:2;padding-top:180px;padding-bottom:40px}
.mx-k{display:inline-flex;align-items:center;gap:10px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;opacity:.85;margin-bottom:22px}
.mx-k::before{content:"";width:28px;height:1px;background:currentColor}
html[lang=bn] .mx-k{letter-spacing:0;text-transform:none;font-size:15px}
.mx-hero h1{font-size:clamp(52px,8.4vw,128px);line-height:.95;letter-spacing:-.035em;max-width:1000px}
html[lang=bn] .mx-hero h1{font-size:clamp(46px,7vw,104px);line-height:1.12;letter-spacing:-.01em}
.mx-hero p{max-width:520px;font-size:18px;line-height:1.65;opacity:.88;margin:26px 0 32px}
.mx-cta{display:flex;gap:12px;flex-wrap:wrap}
.mx-cta .btn{height:54px;padding:0 30px}
.mx-usp{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding-top:22px;padding-bottom:26px;border-top:1px solid rgba(255,255,255,.2);margin-top:30px}
.mx-usp span{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;opacity:.92}
.mx-usp .ic{width:20px;height:20px;color:#F0C38E}

/* categories */
.mx-cats{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.mc{display:flex;flex-direction:column;gap:14px}
.mc-i{aspect-ratio:3/4;border-radius:var(--r);overflow:hidden;background:var(--surface)}
.mc-i img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.mc:hover .mc-i img{transform:scale(1.08)}
.mc-t{display:flex;justify-content:space-between;align-items:baseline;gap:8px;border-bottom:1px solid var(--line);padding-bottom:12px;transition:border-color .3s}
.mc:hover .mc-t{border-color:var(--ink)}
.mc-t b{font:500 22px var(--fh)}
html[lang=bn] .mc-t b{font:700 19px var(--fb)}
.mc-t small{color:var(--mute);font-size:13px}

/* product cards */
.pc{background:transparent}
.pc-img{background:#EDE6DB;border-radius:var(--r)}
.pc-body{padding:16px 2px 0;gap:5px}
.pc-cat{font-size:11px;letter-spacing:.14em;color:var(--mute)}
.pc-name{font:500 20px/1.25 var(--fh)}
html[lang=bn] .pc-name{font:600 17.5px/1.4 var(--fb)}
.pc-rate small{font-size:12px}
.pc-price b{font-size:18px;font-weight:700}
.pc-add{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line);width:42px;padding:0;justify-content:center}
.pc-add:hover{background:var(--ink);color:#fff;box-shadow:none}
.badge{background:#fff;color:var(--ink);border-radius:6px;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
html[lang=bn] .badge{text-transform:none;font-size:12px;letter-spacing:0}
.badge.sale{background:var(--accent);color:#fff}
.tabs-s{display:flex;gap:4px;padding:4px;border-radius:999px;background:var(--surface)}
.tabs-s button{padding:9px 18px;border-radius:999px;font-size:14px;font-weight:600;color:var(--mute);transition:background .3s,color .3s}
.tabs-s button.on{background:#fff;color:var(--ink);box-shadow:0 2px 8px -4px rgba(0,0,0,.2)}
.sec.tight{padding-top:20px}

/* spotlight */
.spot{display:grid;grid-template-columns:1.15fr 1fr;min-height:640px;background:#EDE5D8;margin:40px 0}
.spot-img{overflow:hidden}
.spot-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.spot:hover .spot-img img{transform:scale(1.04)}
.spot-t{padding:80px clamp(30px,6vw,96px);display:flex;flex-direction:column;justify-content:center}
.spot-t h2{font-size:clamp(34px,4vw,58px);line-height:1.05;margin-bottom:22px}
html[lang=bn] .spot-t h2{line-height:1.3}
.spot-t p{color:var(--mute);font-size:17px;line-height:1.7;max-width:500px}
.spot-t dl{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0;padding:22px 0;border-top:1px solid #D7CCBC;border-bottom:1px solid #D7CCBC}
.spot-t dt{font-size:12px;color:var(--mute);margin-bottom:4px}
.spot-t dd{margin:0;font-weight:700;font-size:15px}
.spot-b{display:flex;align-items:center;gap:22px}
.spot-b .pr b{font:600 32px var(--fh)}
.spot-b .pr s{color:var(--mute);margin-left:8px}
.spot-b .btn{height:54px;padding:0 30px}

/* people */
.ppl{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.pp{display:flex;flex-direction:column;gap:6px}
.pp-i{aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;margin-bottom:10px}
.pp-i img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.pp:hover .pp-i img{transform:scale(1.06)}
.pp span{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--accent);font-weight:700}
.pp span .ic{width:15px;height:15px}
.pp b{font:500 22px var(--fh)}
html[lang=bn] .pp b{font:700 19px var(--fb)}
.pp small{color:var(--mute)}

/* recipes */
.recipes{background:var(--ink);color:#F8F5F0;padding:100px 0}
.recipes .sh h2{color:#F8F5F0}
.rc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rc{display:flex;flex-direction:column;gap:16px;padding:14px 14px 20px;border-radius:var(--r);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);transition:background .3s,transform .4s cubic-bezier(.2,.7,.2,1)}
.rc:hover{background:rgba(255,255,255,.07);transform:translateY(-6px)}
.rc-img{position:relative;aspect-ratio:16/11;border-radius:10px;overflow:hidden}
.rc-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s}
.rc:hover .rc-img img{transform:scale(1.06)}
.rc-img span{position:absolute;left:10px;bottom:10px;display:flex;gap:6px;align-items:center;padding:6px 11px;background:rgba(255,255,255,.92);color:var(--ink);font-size:12px;font-weight:700;border-radius:999px}
.rc-img .ic{width:14px;height:14px}
.rc h3{font-size:26px;padding:0 4px}
html[lang=bn] .rc h3{font-size:21px}
.rc ul{list-style:none;padding:0 4px;margin:0;display:grid;gap:10px;flex:1}
.rc li{display:flex;align-items:center;gap:10px;font-size:14px;color:rgba(248,245,240,.85)}
.rc li img{width:36px;height:36px;object-fit:cover;border-radius:8px}
.rc li em{margin-left:auto;font-style:normal;opacity:.6}
.rc .btn{background:#F8F5F0;color:var(--ink);width:100%}
.rc .btn.done{background:#2F6B3A;color:#fff}

/* reviews */
.rvw{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rvw figure{margin:0;padding:30px;border-radius:var(--r);background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;gap:18px}
.rvw blockquote{margin:0;font:400 21px/1.5 var(--fh);flex:1}
html[lang=bn] .rvw blockquote{font:500 18px/1.65 var(--fb)}
.rvw figcaption{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:16px;border-top:1px solid var(--line);font-size:14px}
.rvw figcaption a{display:flex;align-items:center;gap:8px;color:var(--mute);font-size:13px}
.rvw figcaption img{width:34px;height:34px;border-radius:8px;object-fit:cover}

/* about */
.ab-h{font-size:clamp(34px,5vw,68px);max-width:1000px;margin:16px 0 50px;line-height:1.08}
html[lang=bn] .ab-h{line-height:1.3}
.ab-cols{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:start}
.ab-cols img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
.ab-cols p{font-size:19px;line-height:1.75;color:var(--mute);margin-bottom:20px}
.ab-rules{list-style:none;padding:24px 0 0;margin:20px 0 0;border-top:1px solid var(--line);display:grid;gap:12px}
.ab-rules li{display:flex;gap:10px;align-items:center;font-weight:600}
.ab-rules .ic{color:var(--accent)}

/* shared overrides */
.shop-hero{background:#EDE5D8}
.fc.on{background:var(--ink)}
.ft-word{color:#F8F5F0;opacity:.08;font-family:var(--fh);font-weight:500}
html[lang=bn] .ft-word{font-family:var(--fb);font-weight:700}
.ft .lg{color:#F8F5F0}
.sum{background:#EFE8DD}
.pdp-price b{font-family:var(--fh);font-weight:600}

@media (max-width:1080px){
  .mx-cats{grid-template-columns:repeat(3,1fr)}
  .ppl{grid-template-columns:repeat(2,1fr)}
  .spot{grid-template-columns:1fr}
  .spot-img{aspect-ratio:16/10}
  .rc-grid,.rvw{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .mx-usp{grid-template-columns:1fr 1fr;gap:12px}
  .tabs-s{overflow-x:auto;max-width:100%}
  .tabs-s button{white-space:nowrap}
  .rc-grid,.rvw{grid-template-columns:1fr}
  .ab-cols{grid-template-columns:1fr}
}
@media (max-width:560px){
  .mx-hero{min-height:92vh}
  .mx-in{padding-top:150px}
  .mx-hero p{font-size:16px}
  .mx-cats{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -16px;padding:0 16px}
  .mc{flex:0 0 46%;scroll-snap-align:start}
  .ppl{display:flex;overflow-x:auto;gap:12px;margin:0 -16px;padding:0 16px;scroll-snap-type:x mandatory}
  .pp{flex:0 0 70%;scroll-snap-align:start}
  .spot-t{padding:40px 20px}
  .spot-t dl{grid-template-columns:1fr 1fr 1fr;gap:8px}
  .lg{font-size:21px}
  html[lang=bn] .lg{font-size:20px}
}
/* polish pass */
.sh h2{text-wrap:balance}
@media (max-width:560px){
  .mx-cats{scroll-padding-inline:16px}
  .mc{flex:0 0 44%}
  .mc-t{flex-direction:column;align-items:flex-start;gap:2px}
  html[lang=bn] .mc-t b{font-size:17px}
  .spot-t dl{grid-template-columns:1fr 1fr}
}

/* ---- own card ---- */
.mcard{position:relative;display:flex;flex-direction:column;background:transparent}
.mk-img{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:#EDE6DB}
.mk-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .6s,transform 1.4s cubic-bezier(.2,.7,.2,1)}
.mk-img img.alt{opacity:0}
.mcard:hover .mk-img img{transform:scale(1.04)}
.mcard:hover .mk-img img.alt.ld{opacity:1}
.mk-tag{position:absolute;left:12px;bottom:12px;z-index:1;padding:5px 10px;background:#F8F5F0;color:var(--accent);font-size:12px;font-weight:700}
.mk-wish{position:absolute;right:10px;top:10px;z-index:2;width:34px;height:34px;display:grid;place-items:center;color:#fff;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}
.mk-wish .ic{width:20px;height:20px}
.mk-wish.on .ic{fill:#fff}
.mk-b{padding:14px 0 0;display:flex;flex-direction:column;gap:4px}
.mk-b small{color:var(--mute);font-size:12.5px}
.mk-n{font:500 21px/1.25 var(--fh)}
html[lang=bn] .mk-n{font:600 18px/1.4 var(--fb)}
.mk-f{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:8px;padding-top:10px;border-top:1px solid var(--line)}
.mk-f b{font-size:17px}
.mk-f s{color:var(--mute);font-size:13px;margin-left:6px}
.mk-add{font-size:13.5px;font-weight:700;color:var(--accent);border-bottom:1.5px solid currentColor;padding-bottom:1px;transition:color .2s}
.mk-add:hover{color:var(--ink)}
/* ---- own footer ---- */
.mft{background:#EFE7DA;color:var(--ink);margin-top:60px;border-top:1px solid #DED3C2}
.mft-in{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;padding-top:80px;padding-bottom:60px}
.mft-k{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
html[lang=bn] .mft-k{letter-spacing:0;font-size:14.5px;text-transform:none}
.mft-note p{font:400 30px/1.4 var(--fh);margin:16px 0 26px;max-width:600px}
html[lang=bn] .mft-note p{font:500 23px/1.6 var(--fb)}
.mft-f{display:flex;max-width:520px;border-bottom:1.5px solid var(--ink)}
.mft-f input{flex:1;min-width:0;border:0;background:none;padding:12px 0;font:inherit;font-size:16px;outline:0}
.mft-f button{font-weight:700;color:var(--accent);white-space:nowrap}
.mft-sign{display:block;margin-top:22px;font:italic 400 20px var(--fh);color:var(--mute)}
html[lang=bn] .mft-sign{font:500 17px var(--fb)}
.mft-side{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-content:start}
.mft-side nav{display:flex;flex-direction:column;gap:12px}
.mft-side nav a{font:500 19px var(--fh)}
html[lang=bn] .mft-side nav a{font:600 17px var(--fb)}
.mft-side nav a:hover{color:var(--accent)}
.mft-addr{display:flex;flex-direction:column;gap:8px;font-size:14.5px;color:var(--mute);line-height:1.55}
.mft-addr b{color:var(--ink)}
.mft-addr a{color:var(--ink);font-weight:700}
.mft-bot{display:flex;flex-wrap:wrap;align-items:center;gap:18px;padding-top:22px;padding-bottom:26px;border-top:1px solid #DED3C2}
.mft-pay{display:flex;flex-wrap:wrap;gap:6px}
.mft-pay .pay{background:#fff}
.mft-bot small{margin-left:auto;color:var(--mute);font-size:13px}
.mft .ft-credit{color:var(--mute)}
@media (max-width:860px){.mft-in{grid-template-columns:1fr;gap:40px;padding-top:56px}.mft-note p{font-size:24px}.mft-bot small{margin-left:0}}
@media (max-width:560px){.mft-side{grid-template-columns:1fr}.mk-n{font-size:18px}html[lang=bn] .mk-n{font-size:16px}.mk-f{flex-direction:column;align-items:flex-start;gap:6px}}
