/* =================== RELIFI PRODUCT PAGE =================== */
.crumbs{display:flex;gap:10px;align-items:center;padding-top:22px;padding-bottom:6px;font-size:14px;color:var(--stone)}
.crumbs a{text-decoration:none} .crumbs a:hover{color:var(--forest)} .crumbs b{color:var(--ink);font-weight:500}
.pdp-top{display:grid;grid-template-columns:1.08fr 1fr;gap:56px;align-items:start;padding-top:18px;padding-bottom:80px}
.gallery{display:grid;grid-template-columns:72px 1fr;gap:16px;position:sticky;top:96px}
.gallery__thumbs{display:flex;flex-direction:column;gap:8px}
.gallery__thumbs button{width:72px;height:72px;border-radius:14px;background:#fff;border:1.5px solid var(--line);overflow:hidden;transition:border-color .25s,transform .25s var(--ease)}
.gallery__thumbs button:hover{transform:translateY(-2px)}
.gallery__thumbs button.is-on{border:2px solid var(--forest)}
.gallery__thumbs img{width:100%;height:100%;object-fit:cover}
.gallery__main{position:relative;background:#fff;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5;box-shadow:var(--shadow)}
.gallery__img{width:100%;height:100%;object-fit:cover;transition:transform .35s var(--ease)}
.gallery__main.is-zoom .gallery__img{transform:scale(1.6);cursor:zoom-in}
.gallery__badge{position:absolute;left:18px;top:18px;z-index:2;background:var(--forest);color:#fff;font:700 12px/1 var(--f-head);letter-spacing:.12em;text-transform:uppercase;padding:9px 14px;border-radius:999px}
.gallery__nav{position:absolute;top:50%;z-index:2;width:46px;height:46px;margin-top:-23px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:var(--shadow);display:grid;place-items:center;color:var(--forest);opacity:0;transition:opacity .25s,transform .25s var(--ease)}
.gallery__nav svg{width:20px;height:20px}
.gallery__nav--prev{left:14px} .gallery__nav--prev svg{transform:rotate(180deg)}
.gallery__nav--next{right:14px}
.gallery__main:hover .gallery__nav{opacity:1}
.gallery__nav:hover{transform:scale(1.08)}
.gallery__dots{display:none}

.buy{display:flex;flex-direction:column}
.buy__rating{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:14.5px;color:var(--stone);margin-bottom:12px}
.buy__rating .stars{margin:0}
.buy__rating b{color:var(--ink)}
.buy__title{font:900 clamp(32px,3.4vw,46px)/1.05 var(--f-head);letter-spacing:-.035em;color:var(--forest);margin:0}
.buy__tag{font-size:19px;color:var(--stone);margin:10px 0 18px}
.buy__tag em{font-family:var(--f-serif);color:var(--leaf-2);font-size:1.08em}
.buy__price{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.buy__price b{font:900 38px/1 var(--f-head);color:var(--forest);letter-spacing:-.03em}
.buy__price s{font-size:20px;font-weight:500}
.buy__desc{color:#4b524c;margin:16px 0 18px;max-width:52ch}
.inside{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}
.inside>div{display:flex;align-items:center;gap:12px;background:#fff;border-radius:var(--r-md);padding:10px 12px;border:1px solid var(--line)}
.inside__img{width:52px;height:52px;flex:none;display:flex;align-items:flex-end;justify-content:center}
.inside__img img{max-height:52px;width:auto;mix-blend-mode:multiply}
.inside p{margin:0;display:flex;flex-direction:column;line-height:1.3}
.inside b{font:700 15px/1.3 var(--f-head)} .inside small{color:var(--stone);font-size:12.5px}
.buy__label{font:700 13px/1 var(--f-head);letter-spacing:.14em;text-transform:uppercase;color:var(--forest);margin:0 0 14px}
.opts{display:grid;gap:14px}
.opt{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;text-align:left;background:#fff;border:1.6px solid var(--line);border-radius:var(--r-md);padding:18px;transition:border-color .25s,box-shadow .3s,background .3s}
.opt:hover{box-shadow:var(--shadow)}
.opt.is-on{border:2.4px solid var(--forest);background:linear-gradient(180deg,#F1F5EE,#fff);box-shadow:var(--shadow)}
.opt .radio{position:relative;width:24px;height:24px;border-radius:50%;border:2px solid #9aa39b}
.opt .radio::after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--leaf);transform:scale(0);transition:transform .35s var(--ease)}
.opt.is-on .radio{border-color:var(--leaf)} .opt.is-on .radio::after{transform:scale(1)}
.opt__t{display:flex;flex-direction:column}
.opt__t b{font:700 17px/1.25 var(--f-head)} .opt__t small{color:var(--stone);font-size:13.5px}
.opt__p{display:flex;flex-direction:column;align-items:flex-end}
.opt__p b{font:800 20px/1.1 var(--f-head);color:var(--forest)} .opt__p s{font-size:13.5px}
.opt__tag{position:absolute;top:-11px;left:18px;background:var(--amber);color:#fff;font:700 10.5px/1 var(--f-head);letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;border-radius:999px}
.opt__tag--gold{background:#B08D4A}
.singles{font-size:14px;color:var(--stone);margin:14px 0 20px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.singles button{font-size:13.5px;font-weight:600;color:var(--forest);border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 12px}
.singles button:hover{border-color:var(--forest)}
.singles button.is-loading{color:transparent}
.buy__row{display:flex;gap:12px;align-items:center}
.qty--lg{height:60px;flex:none} .qty--lg button{width:44px;height:58px;font-size:22px} .qty--lg span{min-width:26px;font-size:17px}
.buy__add{flex:1;justify-content:space-between}
.buy .wa-under{--h:56px;margin-top:12px;gap:10px;font-size:16px}
.btn--wa-outline svg{width:22px;height:22px;color:#1fa855}
.btn--wa-outline:hover{background:#1fa855;color:#fff} .btn--wa-outline:hover svg{color:#fff}
.eta{display:flex;align-items:center;gap:10px;margin:16px 0;font-size:15px;color:#4b524c}
.eta svg{width:22px;height:22px;color:var(--forest)}
.assure{display:grid;grid-template-columns:1fr 1fr;background:var(--sage);border-radius:var(--r-md);padding:6px}
.assure>div{display:flex;align-items:center;gap:12px;padding:12px 14px}
.assure svg{width:26px;height:26px;color:var(--forest)}
.assure p{margin:0;display:flex;flex-direction:column;line-height:1.25}
.assure b{font:700 15px/1.3 var(--f-head)} .assure small{color:var(--stone);font-size:12.5px}
.urdu-line{margin:14px 0 6px;font-size:14px;color:var(--stone)} .urdu-line span{font-family:var(--f-urdu)}
.acc--buy{margin-top:14px}
.acc--buy details{box-shadow:none}
.acc--buy summary{font-size:16px;padding:16px 18px}

.roles{background:var(--sage);padding:90px 0}
.roles__grid{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center;margin-top:40px}
.role{display:grid;grid-template-columns:160px 1fr;gap:22px;align-items:center;background:#fff;border-radius:var(--r-lg);padding:26px;box-shadow:var(--shadow);border-top:4px solid var(--c)}
.role--amber{--c:var(--amber)} .role--sage{--c:var(--khaki)}
.role__img{height:180px;display:flex;align-items:center;justify-content:center}
.role__img img{max-height:180px;width:auto;mix-blend-mode:multiply}
.role h3{font-size:26px;margin:12px 0 14px}
.roles__plus{width:56px;height:56px;border-radius:50%;background:var(--forest);color:#fff;display:grid;place-items:center}
.roles__plus svg{width:26px;height:26px}

.howto{padding:100px 0}
.seg{position:relative;display:flex;width:max-content;margin:28px auto 36px;background:#fff;border-radius:999px;padding:4px;box-shadow:var(--shadow)}
.seg button{position:relative;z-index:1;height:46px;padding:0 24px;border-radius:999px;font:700 15px/1 var(--f-head);color:var(--forest);transition:color .3s}
.seg button.is-on{color:#fff}
.seg__pill{position:absolute;left:4px;top:4px;height:46px;border-radius:999px;background:var(--forest);transition:transform .45s var(--ease),width .45s var(--ease)}
.howto__panel{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.howto__panel[hidden]{display:none}
.hstep{position:relative;background:#fff;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.hstep img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#f2f1ed}
.hstep span{position:absolute;left:16px;top:16px;width:38px;height:38px;border-radius:50%;background:var(--forest);color:#fff;display:grid;place-items:center;font:800 17px/1 var(--f-head)}
.hstep h3{font-size:21px;margin:18px 20px 6px}
.hstep p{margin:0 20px 22px;color:#4b524c;font-size:15px}
.center-chip{display:table;margin:28px auto 0}
.reviews--pdp{padding-top:40px}
.alsobuy{padding:20px 0 100px}
.alsobuy__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:760px;margin:40px auto 0}

@media (max-width:900px){
  .pdp-top{grid-template-columns:1fr;gap:26px;padding-bottom:60px}
  .gallery{position:relative;top:0;grid-template-columns:1fr}
  .gallery__thumbs{order:2;flex-direction:row;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
  .gallery__thumbs::-webkit-scrollbar{display:none}
  .gallery__thumbs button{width:64px;height:64px;flex:none}
  .gallery__main{aspect-ratio:1/1.05}
  .gallery__nav{display:none}
  .gallery__dots{display:flex;position:absolute;left:0;right:0;bottom:14px;justify-content:center;gap:6px;z-index:2}
  .gallery__dots i{width:7px;height:7px;border-radius:9px;background:rgba(14,59,43,.25);transition:width .3s var(--ease),background .3s}
  .gallery__dots i.is-on{width:22px;background:var(--forest)}
  .inside{grid-template-columns:1fr}
  .buy__price b{font-size:32px}
  .roles{padding:64px 0}
  .roles__grid{grid-template-columns:1fr;gap:16px}
  .roles__plus{margin:-8px auto}
  .role{grid-template-columns:110px 1fr;padding:18px;gap:14px}
  .role__img,.role__img img{height:130px;max-height:130px}
  .role h3{font-size:21px}
  .howto{padding:64px 0}
  .howto__panel{grid-template-columns:1fr;gap:16px}
  .hstep{display:grid;grid-template-columns:120px 1fr;align-items:center}
  .hstep img{height:100%;aspect-ratio:auto;min-height:120px;grid-row:1/3}
  .hstep h3{margin:14px 16px 4px;font-size:18px} .hstep p{margin:0 16px 14px;font-size:14px}
  .hstep span{width:30px;height:30px;font-size:14px;left:10px;top:10px}
  .alsobuy__grid{gap:12px}
  .alsobuy .pack{padding:20px 12px}
  .alsobuy .pack__img>img{height:130px}
  .alsobuy .pack h3{font-size:18px}
  .alsobuy .pack__price{font-size:24px}
}
@media (max-width:560px){
  .buy__row{flex-direction:column;align-items:stretch}
  .qty--lg{align-self:flex-start;height:50px} .qty--lg button{height:48px}
  .opt{padding:16px 14px;gap:10px}
  .opt__t b{font-size:15.5px} .opt__t small{font-size:12.5px}
  .opt__p b{font-size:17px}
  .assure>div{padding:10px 8px;gap:8px}
  .assure b{font-size:13.5px}
  .seg button{padding:0 16px;font-size:14px}
}

/* ================= FLOATING VIDEO ================= */
.vbub{position:fixed;right:24px;bottom:24px;z-index:46;transform:translateY(140%) scale(.9);opacity:0;transition:transform .7s cubic-bezier(.2,1.3,.4,1),opacity .4s}
.vbub.is-on{transform:none;opacity:1}
.vbub[hidden]{display:none}
.vbub__open{position:relative;display:block;width:150px;height:252px;padding:0;border-radius:22px;overflow:hidden;cursor:pointer;background:var(--forest);isolation:isolate;
  box-shadow:0 22px 44px -16px rgba(14,59,43,.55),0 0 0 3px #fff,0 0 0 6px var(--leaf);transition:transform .35s var(--ease),box-shadow .35s;animation:vbubGlow 2.6s ease-in-out infinite}
.vbub__open:hover{transform:translateY(-4px) scale(1.04)}
@keyframes vbubGlow{0%,100%{box-shadow:0 22px 44px -16px rgba(14,59,43,.55),0 0 0 3px #fff,0 0 0 6px var(--leaf),0 0 0 6px rgba(59,170,74,.45)}50%{box-shadow:0 22px 44px -16px rgba(14,59,43,.55),0 0 0 3px #fff,0 0 0 6px var(--leaf),0 0 0 16px rgba(59,170,74,0)}}
.vbub__vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vbub__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35) 0,transparent 30%,transparent 55%,rgba(10,30,20,.8) 100%)}
.vbub__live{position:absolute;top:9px;left:9px;display:flex;align-items:center;gap:5px;height:22px;padding:0 9px;border-radius:999px;background:#E5484D;color:#fff;font:700 11px/1 var(--f-head);letter-spacing:.04em;text-transform:uppercase}
.vbub__live i{width:6px;height:6px;border-radius:50%;background:#fff;animation:vbubDot 1.2s ease-in-out infinite}
@keyframes vbubDot{50%{opacity:.25}}
.vbub__play{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.28);backdrop-filter:blur(6px);color:#fff;transition:transform .3s var(--ease),background .3s}
.vbub__play svg{width:22px;height:22px;margin-left:3px}
.vbub__play::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(255,255,255,.7);animation:vbubRing 1.8s ease-out infinite}
@keyframes vbubRing{from{transform:scale(.85);opacity:1}to{transform:scale(1.5);opacity:0}}
.vbub__open:hover .vbub__play{transform:scale(1.12);background:var(--leaf)}
.vbub__cta{position:absolute;left:8px;right:8px;bottom:9px;display:flex;align-items:center;justify-content:center;gap:6px;height:30px;border-radius:999px;background:#fff;color:var(--forest);font:700 12.5px/1 var(--f-head)}
.vbub__cta svg{width:15px;height:15px;color:var(--leaf)}
.vbub__x{position:absolute;top:-10px;right:-10px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--stone);box-shadow:0 4px 12px -4px rgba(0,0,0,.35);z-index:2}
.vbub__x svg{width:12px;height:12px}
.vbub__x:hover{color:var(--forest)}

.vmodal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:16px}
.vmodal[hidden]{display:none}
.vmodal__scrim{position:absolute;inset:0;background:rgba(8,24,17,.78);backdrop-filter:blur(6px);opacity:0;transition:opacity .35s}
.vmodal.is-on .vmodal__scrim{opacity:1}
.vmodal__box{position:relative;height:min(88vh,860px);aspect-ratio:9/16;max-width:100%;border-radius:24px;overflow:hidden;background:#000;box-shadow:0 40px 80px -20px rgba(0,0,0,.6);
  transform:translateY(30px) scale(.94);opacity:0;transition:transform .5s cubic-bezier(.2,1.2,.4,1),opacity .35s}
.vmodal.is-on .vmodal__box{transform:none;opacity:1}
.vmodal__vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;cursor:pointer}
.vmodal__top{position:absolute;left:0;right:0;top:0;padding:12px 12px 26px;background:linear-gradient(180deg,rgba(0,0,0,.55),transparent);z-index:2}
.vmodal__bar{height:3px;border-radius:3px;background:rgba(255,255,255,.3);overflow:hidden}
.vmodal__bar i{display:block;height:100%;width:100%;background:#fff;transform-origin:left;transform:scaleX(0)}
.vmodal__ctrls{display:flex;align-items:center;gap:8px;margin-top:10px}
.vmodal__brand{flex:1} .vmodal__brand img{height:26px;width:auto}
.vmodal__btn{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.18);backdrop-filter:blur(6px);color:#fff}
.vmodal__btn svg{width:18px;height:18px}
.vmodal__btn:hover{background:rgba(255,255,255,.32)}
.vmodal__paused{position:absolute;left:50%;top:50%;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.25);backdrop-filter:blur(6px);color:#fff;opacity:0;transform:scale(.8);transition:opacity .25s,transform .25s;pointer-events:none;z-index:2}
.vmodal__paused svg{width:34px;height:34px;margin-left:4px}
.vmodal.is-paused .vmodal__paused{opacity:1;transform:none}
.vmodal__mini{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;display:flex;align-items:center;gap:10px;padding:8px 8px 8px 8px;border-radius:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);transform:translateY(130%);transition:transform .5s var(--ease)}
.vmodal.show-mini .vmodal__mini{transform:none}
.vmodal__mini-img{width:44px;height:44px;border-radius:10px;background:var(--sage);display:grid;place-items:center;flex:none}
.vmodal__mini-img img{max-width:90%;max-height:90%;mix-blend-mode:multiply}
.vmodal__mini p{margin:0;flex:1;display:flex;flex-direction:column;line-height:1.2;min-width:0}
.vmodal__mini b{font:700 13.5px/1.2 var(--f-head);color:var(--forest)}
.vmodal__mini small{font-size:12px;color:var(--stone)}
.vend{position:absolute;inset:0;z-index:3;display:grid;place-items:end center;padding:16px;background:linear-gradient(180deg,rgba(8,24,17,.15),rgba(8,24,17,.85));opacity:0;pointer-events:none;transition:opacity .45s}
.vmodal.is-ended .vend{opacity:1;pointer-events:auto}
.vmodal.is-ended .vmodal__mini{transform:translateY(130%)}
.vend__card{width:100%;padding:18px 18px 12px;border-radius:22px;background:var(--porcelain);text-align:center;transform:translateY(40px);transition:transform .6s cubic-bezier(.2,1.3,.4,1)}
.vmodal.is-ended .vend__card{transform:none}
.vend__img{display:grid;place-items:center;height:118px;margin:-4px auto 6px;width:100%;border-radius:16px;background:var(--sage)}
.vend__img img{max-height:104px;width:auto;mix-blend-mode:multiply}
.vend__eyebrow{margin:0;font:700 11.5px/1 var(--f-head);letter-spacing:.14em;text-transform:uppercase;color:var(--leaf-2)}
.vend h3{margin:6px 0 8px;font:800 22px/1.15 var(--f-head);color:var(--forest)}
.vend__price{display:flex;align-items:center;justify-content:center;gap:10px;margin:0}
.vend__price b{font:900 30px/1 var(--f-head);color:var(--forest)}
.vend__price s{font:600 16px/1 var(--f-head);color:var(--stone)}
.vend__price .save{height:28px;font-size:12.5px;padding:0 10px}
.vend__note{margin:8px 0 12px;font-size:13px;color:var(--stone)}
.vend__order{justify-content:space-between}
.vend__replay{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:8px 12px;border-radius:999px;color:var(--forest);font:600 14px/1 var(--f-head)}
.vend__replay svg{width:16px;height:16px}
.vend__replay:hover{background:var(--sage)}
body.vlock{overflow:hidden}

@media (max-width:900px){
  .vbub{right:12px;bottom:84px}
  .vbub__open{width:104px;height:176px;border-radius:18px}
  .vbub__play{width:38px;height:38px;margin:-19px 0 0 -19px} .vbub__play svg{width:18px;height:18px}
  .vbub__cta{height:26px;font-size:11px;gap:4px;left:6px;right:6px;bottom:7px} .vbub__cta svg{width:13px;height:13px}
  .vbub__live{top:7px;left:7px;height:19px;font-size:10px;padding:0 7px}
  .has-vbub .buzz{width:calc(100vw - 140px)}
}
@media (max-width:560px){
  .vmodal{padding:0}
  .vmodal__box{height:100%;width:100%;aspect-ratio:auto;border-radius:0}
  .vmodal__top{padding-top:calc(12px + env(safe-area-inset-top))}
}

/* video bubble: low until the sticky bar appears */
.vbub{transition:transform .7s cubic-bezier(.2,1.3,.4,1),opacity .4s,bottom .45s var(--ease)}
@media (max-width:900px){
  .vbub{bottom:calc(14px + env(safe-area-inset-bottom))}
  body.bar-up .vbub{bottom:calc(84px + env(safe-area-inset-bottom))}
}

/* sale popup never runs under the video bubble (incl. its glow ring) */
@media (max-width:900px){
  .has-vbub .buzz{width:calc(100vw - 162px);padding-right:30px;gap:10px}
  .has-vbub .buzz__what{font-size:12px}
  .has-vbub .buzz__when{font-size:11px}
  .has-vbub .buzz__img{width:44px;height:44px}
}

/* ===== Buy Now + Add to cart ===== */
.buy__add{gap:10px;justify-content:center;font-size:16.5px;padding:0 20px}
.buy__add .buy__ic{width:20px;height:20px;flex:none}
.buy__add:hover{background:var(--forest);color:#fff}
.buy__now{margin-top:12px;--h:64px;justify-content:space-between;padding:0 10px 0 26px;background:linear-gradient(135deg,var(--forest),var(--forest-2));animation:buyNowGlow 2.8s ease-in-out infinite}
.buy__now-t{display:flex;flex-direction:column;align-items:flex-start;gap:4px;line-height:1}
.buy__now-t b{font:800 19px/1 var(--f-head);letter-spacing:-.01em}
.buy__now-t small{font:500 12.5px/1 var(--f-body);opacity:.8}
@keyframes buyNowGlow{0%,100%{box-shadow:0 12px 26px -12px rgba(14,59,43,.65),0 0 0 0 rgba(59,170,74,.45)}50%{box-shadow:0 12px 26px -12px rgba(14,59,43,.65),0 0 0 8px rgba(59,170,74,0)}}
.drawer__foot .btn.is-pulse{animation:coPulse .9s ease 2}
@keyframes coPulse{50%{transform:scale(1.04);box-shadow:0 0 0 8px rgba(59,170,74,.35)}}
@media (prefers-reduced-motion:reduce){.buy__now{animation:none}}
@media (max-width:900px){.buy__row .buy__add{flex:none;height:var(--h);min-height:56px}}

/* ===== Buy Now: the dominant action ===== */
.buy__now{--h:70px;margin-top:14px;padding:0 10px 0 28px;overflow:hidden;
  background:linear-gradient(135deg,#3BAA4A 0%,#2F8F3E 55%,#1F7A33 100%);
  box-shadow:0 18px 34px -14px rgba(47,143,62,.75),inset 0 1px 0 rgba(255,255,255,.25);animation:buyNowGlow2 2.6s ease-in-out infinite}
.buy__now::before{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);animation:buyShine 3.2s ease-in-out infinite}
@keyframes buyShine{0%,55%{left:-60%}100%{left:130%}}
@keyframes buyNowGlow2{0%,100%{box-shadow:0 18px 34px -14px rgba(47,143,62,.75),0 0 0 0 rgba(59,170,74,.5)}50%{box-shadow:0 18px 34px -14px rgba(47,143,62,.75),0 0 0 9px rgba(59,170,74,0)}}
.buy__now:hover{transform:translateY(-2px);filter:brightness(1.05)}
.buy__now-t b{font:900 22px/1 var(--f-head);letter-spacing:.02em;text-transform:uppercase}
.buy__now-t small{font:600 13px/1 var(--f-body);opacity:.92}
.buy__now .chip{width:50px;height:50px;background:#fff;color:#2F8F3E}
.buy__now .chip svg{width:22px;height:22px}
.buy__trust{display:flex;align-items:center;justify-content:center;gap:6px;margin:10px 0 2px;font-size:13px;color:var(--stone)}
.buy__trust svg{width:14px;height:14px;color:var(--leaf-2)}
.buy .wa-link{margin:2px 0 6px}
.buy .eta{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
/* Add to cart stays a calm secondary */
.buy__add{--h:56px}
@media (prefers-reduced-motion:reduce){.buy__now,.buy__now::before{animation:none}}
.btn.buy__now .chip svg{color:#2F8F3E;width:24px;height:24px}
.buy__trust{margin-top:14px}

/* Buy Now never drifts: no script or hover can shift it out of line */
.btn.buy__now,.btn.buy__now:hover,.btn.buy__now:active{transform:none !important;translate:none !important}
.btn.buy__now:hover{filter:brightness(1.07)}

/* ===== single product pages (Instant / Oral Guard) ===== */
.buy__hl{margin:0 0 20px}
.pdp--single .buy__price [hidden]{display:none}
.opt--kit{background:linear-gradient(180deg,#FFFBEF,#fff)}
.opt--kit.is-on{background:#FFF8E3}
.feats{padding:90px 0;background:var(--sage)}
.feats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}
.feat{background:#fff;border-radius:var(--r-lg);padding:24px 22px;box-shadow:var(--shadow)}
.feat__ic{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--sage);color:var(--forest);margin-bottom:14px}
.feat__ic svg{width:26px;height:26px}
.feat h3{margin:0 0 6px;font:800 18px/1.25 var(--f-head);color:var(--forest)}
.feat p{margin:0;font-size:14.5px;line-height:1.55;color:#4b524c}
.pdp--single .howto__panel{margin-top:36px}
.together{padding:90px 0}
.together__in{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:center;background:#fff;border-radius:32px;padding:36px 44px;box-shadow:var(--shadow-lg);border:2px solid rgba(59,170,74,.25)}
.together__img{display:grid;place-items:center;border-radius:24px;background:var(--sage);aspect-ratio:4/3}
.together__img img{max-height:86%;max-width:86%;object-fit:contain;mix-blend-mode:multiply;transition:transform .5s var(--ease)}
.together__img:hover img{transform:scale(1.04)}
.together__t p{font-size:16px;line-height:1.6;color:#2B352F}
.together__price{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:14px 0 20px}
.together__price s{font:600 18px/1 var(--f-head);color:var(--stone)}
.together__price b{font:900 34px/1 var(--f-head);color:var(--forest)}
.together__ctas{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.pdp--single .alsobuy .pack__img{display:flex;text-decoration:none}
@media (max-width:900px){
  .feats{padding:64px 0}
  .feats__grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
  .feat{padding:18px 16px}
  .together{padding:60px 0}
  .together__in{grid-template-columns:1fr;gap:22px;padding:22px;border-radius:24px}
  .together__ctas .btn{width:100%}
}
@media (max-width:560px){
  .feats__grid{grid-template-columns:1fr}
  .feat{display:grid;grid-template-columns:52px 1fr;column-gap:14px;align-items:start}
  .feat__ic{grid-row:1/3;margin:0}
  .together__price b{font-size:28px}
}

a.role__img{text-decoration:none}
.singles a{display:inline-flex;align-items:center;height:34px;padding:0 14px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--forest);font:700 13.5px/1 var(--f-head);text-decoration:none}
.singles a:hover{border-color:var(--forest)}

.pdp--single .opts{margin-bottom:20px}
.pdp--single .reviews__top{grid-template-columns:auto 1fr}
@media (max-width:560px){.pdp--single .reviews__top{grid-template-columns:1fr}}
