:root{--bg:#fffaf7;--pink:#f08fab;--rose:#d6456f;--deep:#7a2a47;--gold:#f2a93b;--ink:#34252b;--mute:#8b7279;--line:#f3e1e6;--soft:#fff1f4;--r:22px}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Anek Bangla','DM Sans',system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;font-size:16px;padding-bottom:78px;overflow-x:hidden}
img{max-width:100%;display:block}
h1,h2,h3{line-height:1.2;font-weight:800}
.sk{width:1em;height:1em;color:var(--pink);flex:none}
.eyebrow{font:700 12px/1 'DM Sans',sans-serif;letter-spacing:.2em;color:var(--rose);margin-bottom:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#ee6f93,#d6456f);color:#fff;font:700 17px 'Anek Bangla',sans-serif;border:0;border-radius:999px;padding:15px 32px;text-decoration:none;cursor:pointer;box-shadow:0 12px 28px #d6456f40;transition:transform .2s}
.btn:hover{transform:translateY(-2px)}.btn.block{width:100%}
.btn.ghost{background:#fff;color:var(--rose);box-shadow:inset 0 0 0 2px var(--pink)}
.btn:disabled{opacity:.6;cursor:wait}

.bar{background:var(--deep);color:#fff;text-align:center;font-weight:600;font-size:13.5px;padding:8px 12px}
.top{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:#fffaf7ee;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:8px;font:700 21px 'DM Sans',sans-serif;color:var(--ink);text-decoration:none}.brand b{color:var(--rose)}.brand .sk{font-size:26px}
.top-cta{white-space:nowrap;font-weight:700;color:#fff;background:var(--rose);padding:8px 18px;border-radius:999px;text-decoration:none;font-size:15px}

.hero{display:grid;gap:22px;padding:26px 18px 12px;max-width:1100px;margin:auto}
.pill{display:inline-block;background:var(--gold);color:#fff;font:700 12px 'DM Sans',sans-serif;letter-spacing:.14em;padding:6px 14px;border-radius:99px;margin-bottom:14px}
.hero h1{font:800 clamp(34px,10vw,58px)/1.08 'DM Sans','Anek Bangla',sans-serif;margin-bottom:10px;letter-spacing:-.02em}
.hero h1 em{display:block;font-style:normal;color:var(--rose)}
.spec{display:inline-block;font:700 15px 'DM Sans',sans-serif;color:var(--deep);background:var(--soft);border:1px solid var(--line);padding:5px 14px;border-radius:99px;margin-bottom:10px}
.lead{color:var(--mute);font-size:17px;margin-bottom:16px}
.price{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.price b{font:800 46px/1 'DM Sans','Anek Bangla',sans-serif;color:var(--rose)}
.price span{font-size:14px;color:var(--mute);line-height:1.35;border-left:2px solid var(--line);padding-left:14px}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:18px 0 0}
.chips li{background:#fff;border:1px solid var(--line);border-radius:99px;padding:6px 14px;font-size:13.5px;font-weight:600}
.hero-media{position:relative}
.ph{display:grid;place-items:center;align-content:center;gap:6px;aspect-ratio:1;border-radius:var(--r);background:linear-gradient(150deg,#fff1f4,#ffe3ea);border:1.5px dashed var(--pink);color:var(--rose);text-align:center}
.ph .sk{font-size:84px;color:var(--pink)}.ph b{font:700 22px 'DM Sans',sans-serif;color:var(--deep)}.ph small{color:var(--mute)}

.snap{display:flex;justify-content:flex-start;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.snap::-webkit-scrollbar{display:none}.snap>*{scroll-snap-align:center;flex:0 0 auto}
.slide{position:relative;width:100%;aspect-ratio:1;border-radius:var(--r);overflow:hidden;box-shadow:0 18px 50px #d6456f22;background:#fff;cursor:zoom-in}
.hero-media .snap>.slide{flex:0 0 100%}
.slide img{width:100%;height:100%;object-fit:contain;background:#fff1f4}
.zoom-hint{position:absolute;right:12px;bottom:12px;width:36px;height:36px;border-radius:50%;background:#ffffffd9;color:var(--rose);display:grid;place-items:center;font-size:18px;box-shadow:0 6px 16px #0002}
.dots{display:flex;gap:8px;justify-content:center;margin-top:12px}
.dots i{width:8px;height:8px;border-radius:99px;background:#f2cbd5;transition:.25s}.dots i.on{width:26px;background:var(--rose)}

.offer{padding:22px 18px;max-width:760px;margin:auto}
.eq{display:flex;align-items:center;justify-content:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:26px;padding:18px 10px;box-shadow:0 12px 34px #d6456f14}
.eq>div{flex:1;text-align:center;padding:12px 4px;border-radius:18px;background:var(--soft)}
.eq .free{background:#fff4dd}.eq .all{background:linear-gradient(135deg,#ee6f93,#d6456f);color:#fff}
.eq b{display:block;font:800 28px/1.1 'Anek Bangla',sans-serif}.eq small{font-size:12.5px;font-weight:600;opacity:.85}
.eq i{font:700 24px 'DM Sans';font-style:normal;color:var(--mute)}

.hl{padding:6px 18px 8px;max-width:760px;margin:auto}
.hl ul{list-style:none;padding:0;display:grid;gap:10px}
.hl li{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px 16px;font-weight:600}
.hl .sk{font-size:24px}
.video{padding:16px 18px;max-width:760px;margin:auto}.video video{width:100%;border-radius:var(--r);box-shadow:0 18px 50px #d6456f22;background:#000}

.sec-head{text-align:center;padding:0 18px 16px}.sec-head h2{font-size:clamp(25px,6vw,34px)}
.reviews{padding:28px 0 30px;max-width:1100px;margin:auto}
.reviews .snap{padding:4px 18px}
.rcard{width:min(80vw,310px);background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 10px 30px #d6456f12;display:flex;flex-direction:column;gap:8px}
.rcard p{font-size:15px;color:#5b464b;flex:1}.stars{color:#f4b942;letter-spacing:2px}
.rfoot{display:flex;align-items:center;justify-content:space-between;gap:10px}
.rfoot b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.see-photo{flex:none;border:1.5px solid var(--pink);background:#fff;color:var(--rose);font:700 13px 'Anek Bangla',sans-serif;padding:5px 14px;border-radius:99px;cursor:pointer}
.rv-empty{text-align:center;color:var(--mute);padding:6px 18px}.rv-actions{text-align:center;margin-top:20px}

.order{padding:28px 18px 36px;max-width:560px;margin:auto}
.pk{background:#fff;border:2px solid var(--rose);border-radius:22px;padding:16px 18px;margin-bottom:18px;box-shadow:0 0 0 5px #ee6f9326}
.pk-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.pk-top b{font-size:17px}.tag{background:var(--gold);color:#fff;font:700 12px 'Anek Bangla',sans-serif;padding:4px 12px;border-radius:99px}
.pk-row{display:flex;align-items:center;gap:14px}
.stepper{display:flex;align-items:center;border:2px solid var(--line);border-radius:99px;overflow:hidden;flex:none}
.stepper button{width:44px;height:44px;border:0;background:var(--soft);color:var(--rose);font:700 22px 'DM Sans';cursor:pointer}
.stepper button:active{background:var(--line)}
.stepper output{min-width:42px;text-align:center;font:800 20px 'Anek Bangla'}
#pk-note{font-size:14px;color:var(--mute);line-height:1.4}#pk-note b{color:var(--rose)}
.lbl{font-weight:700;font-size:14px;margin-bottom:8px}
.zone{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.zone label{cursor:pointer}.zone input{position:absolute;opacity:0}
.zone span{display:block;text-align:center;background:#fff;border:2px solid var(--line);border-radius:16px;padding:10px 6px;font-weight:700;transition:.2s}
.zone small{display:block;font-weight:600;color:var(--mute);font-size:13px}
.zone input:checked+span{border-color:var(--rose);background:var(--soft);color:var(--rose)}
.zone input:checked+span small{color:var(--rose)}
.zone.err span{border-color:#d33}
.f{display:block;font-weight:700;font-size:14px;margin-bottom:12px}
.f input:not([type=radio]):not([type=file]),.f textarea{display:block;width:100%;margin-top:6px;border:2px solid var(--line);border-radius:14px;padding:13px 14px;font:500 16px 'Anek Bangla',sans-serif;background:#fff;color:var(--ink)}
.f input:focus,.f textarea:focus{outline:0;border-color:var(--pink);box-shadow:0 0 0 4px #f08fab26}
.f input[type=file]{margin-top:6px;font-size:14px}
.sum{background:#fff;border:1px solid var(--line);border-radius:20px;padding:6px 16px;margin:6px 0 16px}
.sum div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dashed var(--line)}
.sum .tot{border:0;font-size:19px;font-weight:800}.sum .tot b{color:var(--rose);font-size:22px}
#order-feedback,#rv-feedback{min-height:22px;margin-top:10px;text-align:center;font-weight:600;color:var(--rose)}
.cod{display:block;text-align:center;color:var(--mute);margin-top:6px}

.faq{padding:10px 18px 34px;max-width:680px;margin:auto}
.faq details{background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:10px;padding:0 16px}
.faq summary{cursor:pointer;font-weight:700;padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:10px}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";color:var(--rose);font-size:22px;line-height:1}
.faq details[open] summary::after{content:"−"}.faq details p{color:var(--mute);padding-bottom:14px}

footer{display:flex;justify-content:space-between;padding:20px 18px;color:var(--mute);font-size:14px;max-width:1100px;margin:auto}
footer a{color:var(--rose);text-decoration:none}
.sticky{position:fixed;left:12px;right:12px;bottom:12px;z-index:30;text-align:center;background:linear-gradient(135deg,#ee6f93,#d6456f);color:#fff;font-weight:800;padding:15px;border-radius:999px;text-decoration:none;box-shadow:0 14px 34px #d6456f66}
.sticky.hide{display:none}

dialog{margin:auto;border:0;border-radius:26px;padding:24px 20px;width:min(92vw,440px);max-height:92vh;overflow:auto;box-shadow:0 30px 90px #0004}
dialog::backdrop{background:#3b2a2f88;backdrop-filter:blur(3px)}
dialog h3{margin-bottom:14px}.x{position:absolute;right:14px;top:10px;border:0;background:none;font-size:30px;cursor:pointer;color:var(--mute)}
.star-in{display:flex;flex-direction:row-reverse;justify-content:flex-end;margin-bottom:12px}
.star-in input{display:none}.star-in label{font-size:34px;color:#ddd;cursor:pointer}
.star-in input:checked~label,.star-in label:hover,.star-in label:hover~label{color:#f4b942}
.hp{position:absolute;left:-9999px;opacity:0}
#lb{margin:0;border:0;padding:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;background:#1d1216;border-radius:0;overflow:hidden}
#lb::backdrop{background:#000}
.lb-stage{position:absolute;inset:0;overflow:hidden;touch-action:none;display:grid;place-items:center;cursor:grab}
#lb-img{max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;will-change:transform;user-select:none;-webkit-user-drag:none}
.lb-bar{position:absolute;left:50%;bottom:54px;transform:translateX(-50%);display:flex;gap:8px;background:#000a;border-radius:99px;padding:6px}
.lb-bar button{width:44px;height:44px;border-radius:50%;border:0;background:#fff2;color:#fff;font:700 20px 'DM Sans',sans-serif;cursor:pointer}
.lb-x{position:absolute;top:12px;right:14px;width:44px;height:44px;border-radius:50%;border:0;background:#0009;color:#fff;font-size:30px;line-height:1;cursor:pointer}
.lb-tip{position:absolute;left:0;right:0;bottom:16px;text-align:center;color:#ffffffa6;font-size:13px;margin:0;pointer-events:none}

@media(min-width:800px){
  body{padding-bottom:0}.sticky{display:none}
  .hero{grid-template-columns:1.05fr 1fr;align-items:center;padding:56px 28px 20px;gap:44px}
  .reviews .snap{padding-inline:28px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
