/* ============================================================
   MM Product Page v1.0.0 — premium product-page redesign
   Everything scoped to body.single-product — safe site-wide.
   ============================================================ */
body.single-product{
	--mmg:#14963a; --mmg-d:#0f7f30; --mm-buy:#166534; --mm-deep:#173f17;
	--mm-wa:#2e9e5b; --mm-gold:#a16207; --mm-soft:#eef7ee; --mm-pill:#e8f5e9;
	--mm-line:#e4ded0; --mm-cream:#f7f4ec;
}
body.single-product .mm-pp-crumb, body.single-product .mm-ppacc,
body.single-product .mm-pp-wa, body.single-product .mm-pp-trust,
body.single-product .mm-pp-pill, body.single-product .mm-pp-priceinfo,
body.single-product .elementor-widget-theme-post-title h1,
body.single-product .elementor-widget-woocommerce-product-price,
body.single-product .subhan-eac-btn, body.single-product .ppo-wrap{
	font-family:'Hind Siliguri','Noto Sans Bengali','Nirmala UI',system-ui,sans-serif;
}

/* ===== compact the top: less wasted space above the image ===== */
/* the announcement top-bar (an icon-list) wrapped to 3 lines on narrow
   phones — shrink its text so it fits ~2 lines, and tighten the bar padding */
@media(max-width:600px){
	body.single-product .elementor-location-header .elementor-icon-list-text{font-size:12.5px !important;line-height:1.3 !important}
	body.single-product .elementor-location-header .elementor-icon-list-item{margin:0 !important}
	body.single-product .elementor-element-5f29a0e{padding-top:3px !important;padding-bottom:3px !important;min-height:0 !important}
	body.single-product .elementor-element-5f29a0e .e-con-inner{padding-top:0 !important;padding-bottom:0 !important}
}
/* tuck product content directly under the header (JS also zeroes ancestor gaps) */
body.single-product .mm-ppg{margin-top:0 !important}

/* ---------- gallery: full image in premium frame ---------- */
.mm-ppg{display:flex;gap:10px;align-items:flex-start;margin-bottom:6px}
.mm-ppg-rail{display:flex;flex-direction:column;gap:8px;width:56px;flex-shrink:0}
.mm-ppg-th{border:2px solid transparent;border-radius:10px;overflow:hidden;background:var(--mm-cream);padding:0;cursor:pointer;transition:border-color .2s,transform .15s;aspect-ratio:1/1;width:100%}
.mm-ppg-th img{width:100%;height:100%;object-fit:cover;display:block}
.mm-ppg-th.on{border-color:var(--mmg)}
.mm-ppg-col{flex:1;min-width:0}
/* DEFINITE height + normal flow + overflow:hidden — never overlaps, works on
   every device (no reliance on aspect-ratio or absolute positioning). */
.mm-ppg-stage{position:relative;border-radius:18px;overflow:hidden;background:linear-gradient(165deg,#fbf9f3 0%,#f3eee1 100%);border:1px solid var(--mm-line);box-shadow:0 10px 28px rgba(70,60,30,.09), inset 0 0 0 6px #fff;height:clamp(250px,74vw,330px);padding:10px;box-sizing:border-box}
.mm-ppg-stage > *{position:static !important;width:100% !important;height:100% !important;margin:0 !important;max-width:100% !important;inset:auto !important}
.mm-ppg-stage .elementor-widget-container{width:100%;height:100%}
.mm-ppg-stage img{width:100% !important;height:100% !important;object-fit:contain !important;border-radius:10px !important;display:block;aspect-ratio:auto !important}
.mm-ppg-dots{display:flex;justify-content:center;gap:6px;padding:10px 0 0}
.mm-ppg-dots i{width:7px;height:7px;border-radius:50%;background:#cfdccb;transition:all .25s}
.mm-ppg-dots i.on{background:var(--mmg);width:18px;border-radius:5px}

/* ---------- title + price row (badge sits beside price) ---------- */
body.single-product .elementor-widget-theme-post-title{margin-block-start:8px !important;margin-block-end:0 !important}
body.single-product .elementor-widget-theme-post-title h1,
body.single-product .elementor-widget-theme-post-title .elementor-heading-title{
	font-size:20px !important;font-weight:600 !important;line-height:1.42 !important;color:#22301f !important}
body.single-product .elementor-widget-woocommerce-product-price{margin-block:2px 8px !important}
body.single-product .mm-pp-pricerow{display:flex !important;align-items:center;flex-wrap:wrap;gap:9px;margin:0 !important}
body.single-product .elementor-widget-woocommerce-product-price .woocommerce-Price-amount{
	font-size:26px !important;font-weight:700 !important;color:var(--mmg) !important;display:inline-block}
@keyframes mmbump{50%{transform:scale(1.07)}}
body.single-product .woocommerce-Price-amount.mm-bump{animation:mmbump .25s ease}
.mm-pp-priceinfo{font-size:12px;color:#6b7565;font-weight:600}
.mm-pp-pill{background:var(--mm-pill);color:#1e5b2a;font-size:12.3px;font-weight:600;padding:5.5px 11px;border-radius:8px;display:inline-flex;align-items:center;gap:5px;vertical-align:middle}

/* ---------- PPO add-ons card (closed by default; groups side-by-side) ---------- */
.mm-ppacc{border:1.5px solid #c7dcc9;border-radius:13px;overflow:hidden;margin:0 0 9px;background:#fff}
.mm-ppacc-head{width:100%;display:flex;align-items:center;gap:9px;padding:12px 13px;background:#fff;border:none;font-size:14.5px;font-weight:700;color:#173f17;text-align:left;cursor:pointer}
.mm-ppacc-plus{width:24px;height:24px;border-radius:50%;border:1.8px solid var(--mmg);color:var(--mmg);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;flex-shrink:0;line-height:1;transition:transform .3s}
.mm-ppacc.open .mm-ppacc-plus{transform:rotate(45deg)}
.mm-ppacc-head svg{width:17px;height:17px;margin-left:auto;color:var(--mmg-d);transition:transform .3s;flex-shrink:0}
.mm-ppacc.open .mm-ppacc-head svg{transform:rotate(180deg)}
.mm-ppacc-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1)}
.mm-ppacc.open .mm-ppacc-body{max-height:760px}
.mm-ppacc-body .ppo-wrap{padding:0 11px 11px;border:none !important;background:none !important;margin:0 !important;box-shadow:none !important}
/* groups side-by-side; options stacked inside each group column */
.mm-ppacc-body .ppo-set{display:grid !important;grid-template-columns:1fr 1fr;gap:10px;align-items:start}
@media(max-width:339px){.mm-ppacc-body .ppo-set{grid-template-columns:1fr}}
body.single-product .ppo-field{margin:0 !important}
body.single-product .ppo-label{display:block;font-size:12.6px !important;font-weight:700 !important;color:#4a6345 !important;margin:8px 2px 7px !important}
body.single-product .ppo-choices-list{display:flex !important;flex-direction:column;gap:8px !important}
body.single-product .ppo-choice{display:flex !important;align-items:center;gap:7px;border:1.3px solid #d5e4d2 !important;border-radius:10px !important;padding:9px 8px !important;background:#fcfdfb !important;transition:border-color .2s,background .2s;cursor:pointer;margin:0 !important}
body.single-product .ppo-choice input{width:16px;height:16px;accent-color:var(--mmg);flex-shrink:0}
body.single-product .ppo-choice-txt{font-size:12.2px !important;font-weight:600 !important;color:#324a2e !important;line-height:1.3;display:flex;align-items:center;justify-content:space-between;flex:1;gap:6px}
body.single-product .ppo-price{font-size:12.4px !important;font-weight:700 !important;color:var(--mmg-d) !important;white-space:nowrap}
body.single-product .ppo-choice:has(input:checked){border-color:var(--mmg) !important;background:var(--mm-soft) !important;box-shadow:0 0 0 1px var(--mmg) inset}
body.single-product .ppo-total{display:flex;align-items:center;justify-content:space-between;background:var(--mm-soft) !important;border-radius:9px !important;padding:9px 12px !important;margin-top:10px !important;border:none !important}
body.single-product .ppo-total-label{font-size:13px !important;font-weight:700 !important;color:#1e5b2a !important}
body.single-product .ppo-total-val .woocommerce-Price-amount{font-size:17px !important;font-weight:700 !important;color:var(--mmg-d) !important}

/* ---------- qty + Add to Cart row ---------- */
body.single-product .subhan-eac-actions{display:flex !important;gap:10px;align-items:stretch;margin:0 0 9px}
body.single-product .subhan-eac-qty-control{display:flex;align-items:center;border:1.5px solid #cddcc9 !important;border-radius:11px !important;overflow:hidden;background:#fff;flex-shrink:0}
body.single-product .subhan-eac-qty-btn{width:40px;height:48px;font-size:20px;color:#324a2e;font-weight:600;background:#fff !important;border:none !important}
body.single-product .subhan-eac-qty-btn:active{background:var(--mm-soft) !important}
body.single-product .subhan-eac-qty-input{width:38px;text-align:center;border:none !important;font-size:16px;font-weight:700;background:#fff;color:#22301f;-moz-appearance:textfield}
body.single-product .subhan-eac-qty-input::-webkit-outer-spin-button,
body.single-product .subhan-eac-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
body.single-product .subhan-eac-buttons{flex:1;display:flex}
body.single-product .subhan-eac-add-to-cart{flex:1;height:48px;border:1.8px solid var(--mm-buy) !important;color:var(--mm-buy) !important;background:#fff !important;border-radius:11px !important;font-size:15.5px !important;font-weight:700 !important;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:none !important}
body.single-product .subhan-eac-add-to-cart svg{fill:var(--mm-buy) !important;width:19px;height:19px}
body.single-product .subhan-eac-add-to-cart:active{transform:scale(.975)}

/* ---------- Buy Now ---------- */
body.single-product .subhan-eac-buy-now-bottom-wrap{margin:0 0 9px}
body.single-product .subhan-eac-buy-now{width:100%;height:50px;background:var(--mm-buy) !important;color:#fff !important;border:none !important;border-radius:11px !important;font-size:15.5px !important;font-weight:700 !important;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 5px 14px rgba(22,101,52,.26) !important}
body.single-product .subhan-eac-buy-now svg{fill:#fff !important;width:19px;height:19px}
body.single-product .subhan-eac-buy-now:active{transform:scale(.98)}

/* ---------- WhatsApp order button ---------- */
.mm-pp-wa{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:50px;background:var(--mm-wa);color:#fff !important;border-radius:11px;font-size:15.5px;font-weight:700;text-decoration:none !important;box-shadow:0 5px 14px rgba(46,158,91,.22);transition:transform .12s}
.mm-pp-wa:active{transform:scale(.98)}
.mm-pp-wa svg{width:20px;height:20px}

/* ---------- trust row (2 items) ---------- */
.mm-pp-trust{display:flex;align-items:stretch;border-top:1px solid #eee9dd;margin-top:12px;padding-top:10px;gap:6px}
.mm-pp-trust div{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;font-weight:600;color:#3c5237;text-align:center;position:relative}
.mm-pp-trust div+div::before{content:"";position:absolute;left:-3px;top:10%;bottom:10%;width:1px;background:#e7e2d5}
.mm-pp-trust div span{font-size:18px;line-height:1}

/* ---------- desktop: contained sticky image ---------- */
@media(min-width:900px){
	.mm-ppg{position:sticky;top:84px;max-width:470px;margin-left:auto;margin-right:auto}
	body.single-product .elementor-widget-theme-post-title h1,
	body.single-product .elementor-widget-theme-post-title .elementor-heading-title{font-size:23px !important}
	body.single-product .elementor-widget-woocommerce-product-price .woocommerce-Price-amount{font-size:30px !important}
}
