/* NEW (21 Oct 2026): professional product page (design board "4 · Product page").
   Used only by productdetail.php, loaded after product-detail.css. Built by assets/js/product_detail/product_redesign.js.
   Switch off: remove the two lines in productdetail.php. */
body.goto-here { background: #f8f4ec; }
.hero-wrap.hero-bread { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
#product-details-container { font-family: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', sans-serif; color: #1d2a20; max-width: 1280px; padding: 18px 20px 30px; }
#product-details-container .pdx-crumbs { display: flex; flex-wrap: wrap; gap: 8px; font-size: 13px; color: #6b6459; margin: 0 0 16px; }
#product-details-container .pdx-crumbs a { color: #0f4a1c; text-decoration: none; }
#product-details-container .pdx-crumbs [aria-current] { color: #1d2a20; font-weight: 600; }

#product-details-container .pd-wrap.pdx-top { display: flex; flex-wrap: wrap; gap: 28px; align-items: flex-start; background: transparent; border: 0; box-shadow: none; padding: 0; }
#product-details-container .pdx-gallery-col { flex: 1 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
#product-details-container .pdx-buy-col { flex: 1 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
#product-details-container .pd-gallery.pdx-gallery { flex: none; max-width: none; display: flex; gap: 14px; }
#product-details-container .pdx-thumbs { display: flex; flex-direction: column; gap: 10px; flex: 0 0 auto; }
#product-details-container .pdx-thumbs .pd-thumb { width: 76px; height: 76px; padding: 3px; border-radius: 12px; border: 2px solid #e6dfd1; background: #fff; cursor: pointer; }
#product-details-container .pdx-thumbs .pd-thumb.active { border-color: #1c6b2c; }
#product-details-container .pdx-thumbs .pd-thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 8px; }
#product-details-container .pd-image-frame.pdx-frame { flex: 1 1 auto; min-width: 0; position: relative; background: #fff; border: 1px solid #e6dfd1; border-radius: 20px; aspect-ratio: 1 / 1; min-height: 0; }
#product-details-container .pdx-frame .pd-image { max-height: 100%; width: 100%; height: 100%; object-fit: contain; padding: 24px; }
#product-details-container .pdx-img-badge { position: absolute; top: 16px; left: 16px; background: #0b3d13; color: #fff; font-size: 12px; font-weight: 800; letter-spacing: .05em; padding: 6px 12px; border-radius: 999px; z-index: 2; }
#product-details-container .pdx-round { position: absolute; right: 14px; width: 44px; height: 44px; border-radius: 50%; border: 1px solid #e6dfd1; background: #fff; display: flex; align-items: center; justify-content: center; color: #1d2a20; z-index: 2; }
#product-details-container .pdx-round svg { width: 18px; height: 18px; }
#product-details-container .pdx-share { top: 14px; cursor: pointer; }
#product-details-container .pdx-zoom { top: 66px; pointer-events: none; }
#product-details-container .pdx-chips { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
#product-details-container .pdx-chips div { background: #fff; border: 1px solid #e6dfd1; border-radius: 14px; padding: 12px; display: flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 600; }
#product-details-container .pdx-chips svg { width: 24px; height: 24px; flex: 0 0 24px; color: #1c6b2c; }

#product-details-container .pdx-card { background: #fff; border: 1px solid #e6dfd1; border-radius: 20px; padding: 22px 24px; box-shadow: none; }
#product-details-container .pd-info.pdx-buy { flex: none; max-width: none; display: flex; flex-direction: column; gap: 14px; }
#product-details-container .pdx-cat { font-size: 12px; font-weight: 700; letter-spacing: .1em; color: #b0532c; background: none; padding: 0; text-transform: none; }
#product-details-container .pd-title.pdx-title { font-family: 'Playfair Display', Georgia, serif; font-size: 32px; line-height: 1.15; color: #0b3d13; margin: 0; font-weight: 700; }
#product-details-container .pdx-sub { margin: 0; font-size: 14.5px; color: #5b5348; }
#product-details-container .pdx-rating { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 13px; margin: 0; }
#product-details-container .pdx-rate { background: #e6f4ea; color: #1c6b2c; font-weight: 700; padding: 5px 10px; border-radius: 8px; display: inline-flex; gap: 4px; align-items: center; }
#product-details-container .pdx-rate svg { width: 13px; height: 13px; }
#product-details-container .pdx-deliv { background: #eef3fb; color: #1d4f91; font-weight: 600; padding: 5px 10px; border-radius: 8px; display: inline-flex; gap: 6px; align-items: center; }
#product-details-container .pdx-deliv svg { width: 15px; height: 15px; }
#product-details-container .pdx-label { display: block; font-size: 13px; font-weight: 700; margin-bottom: 10px; }
#product-details-container .pdx-packs { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 12px; }
#product-details-container .pdx-pack { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 3px; text-align: left; padding: 16px 14px 12px; border-radius: 14px; background: #fff; border: 2px solid #e6dfd1; font: inherit; color: inherit; min-height: 0; height: auto; width: auto; margin: 0; cursor: default; box-shadow: none; }
#product-details-container button.pdx-pack { cursor: pointer; }
#product-details-container .pdx-pack.active { background: #f1f8f2; border-color: #1c6b2c; color: inherit; }
#product-details-container .pdx-pack.is-out { opacity: .65; }
#product-details-container .pdx-pack-off { position: absolute; top: -10px; left: 12px; background: #1d4f91; color: #fff; font-size: 11px; font-weight: 800; padding: 3px 8px; border-radius: 6px; }
#product-details-container .pdx-pack-size { font-size: 15px; font-weight: 700; }
#product-details-container .pdx-pack-price { font-size: 15px; font-weight: 800; color: #0b3d13; }
#product-details-container .pdx-pack-price s, #product-details-container .pdx-sim-price s { font-size: 12px; font-weight: 500; color: #8a8278; }
#product-details-container .pdx-pack-unit { font-size: 12px; color: #6b6459; }
#product-details-container .pd-price-row.pdx-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 10px; padding-top: 12px; border-top: 1px solid #efe9dc; margin: 0; }
#product-details-container .pdx-price .pd-price-new { font-size: 32px; font-weight: 800; color: #0b3d13; }
#product-details-container .pdx-price .pd-price-old { font-size: 15px; color: #8a8278; text-decoration: line-through; }
#product-details-container .pdx-off { background: #e6f4ea; color: #1c6b2c; font-weight: 800; font-size: 13px; padding: 4px 10px; border-radius: 8px; }
#product-details-container .pdx-tax { width: 100%; font-size: 12.5px; color: #6b6459; }
#product-details-container .pd-actions.pdx-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: stretch; margin: 0; }
#product-details-container .pdx-qty { display: flex; align-items: center; border: 1.5px solid #d9d1c1; border-radius: 12px; overflow: hidden; background: #fff; }
#product-details-container .pdx-qty button { width: 44px; height: 52px; border: 0; background: #fff; font-size: 20px; cursor: pointer; color: #1d2a20; }
#product-details-container .pdx-qty .pd-qty-value { min-width: 34px; text-align: center; font-weight: 700; }
#product-details-container .pd-btn.pdx-btn-cart, #product-details-container .pd-btn.pdx-btn-buy { flex: 1 1 110px; min-height: 52px; border-radius: 12px; font-weight: 700; font-size: 15px; white-space: nowrap; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; padding: 0 16px; box-shadow: none; }
#product-details-container .pd-btn.pdx-btn-cart { background: #0f4a1c; border: 0; color: #fff; }
#product-details-container .pd-btn.pdx-btn-cart:hover { background: #0b3d13; }
#product-details-container .pd-btn.pdx-btn-buy { background: #fff; border: 1.5px solid #0f4a1c; color: #0f4a1c; }
#product-details-container .pd-btn.pdx-btn-buy:hover { background: #f1f8f2; }
#product-details-container .pd-btn[disabled], #product-details-container .pd-btn.pd-btn-disabled { opacity: .55; cursor: not-allowed; }
#product-details-container .pd-btn-wishlist.pdx-wish { width: 52px; min-height: 52px; border-radius: 12px; border: 1.5px solid #d9d1c1; background: #fff; display: flex; align-items: center; justify-content: center; color: #1d2a20; }
#product-details-container .pd-btn-wishlist.pdx-wish svg { width: 20px; height: 20px; }
#product-details-container .pd-btn-wishlist.pdx-wish.active { color: #c0392b; border-color: #c0392b; }
#product-details-container .pd-btn-wishlist.pdx-wish.active svg { fill: currentColor; }
#product-details-container .pd-pincode-box.pdx-pin { background: #faf8f2; border: 1px solid #efe9dc; border-radius: 14px; padding: 12px 14px; margin: 0; }
#product-details-container .pdx-pin-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
#product-details-container .pdx-pin-row svg { width: 20px; height: 20px; color: #b0532c; }
#product-details-container .pdx-pin-row label { font-size: 14px; font-weight: 700; margin: 0; }
#product-details-container .pdx-pin .pd-pincode-input { flex: 1 1 140px; min-width: 0; border: 1px solid #d9d1c1; border-radius: 10px; padding: 11px 12px; font-size: 14px; height: auto; }
#product-details-container .pdx-pin .pd-pincode-btn { min-height: 44px; border: 0; border-radius: 10px; background: #1d2a20; color: #fff; font-weight: 700; padding: 0 18px; }
#product-details-container .pdx-pin .pd-pincode-result { margin-top: 10px; }
#product-details-container .pdx-why { display: flex; flex-direction: column; gap: 14px; }
#product-details-container .pdx-h3 { font-size: 16px; color: #0b3d13; }
#product-details-container .pdx-why-row { display: flex; gap: 14px; align-items: flex-start; font-size: 14px; line-height: 1.5; }
#product-details-container .pdx-why-row small { font-size: 13.5px; color: #5b5348; }
#product-details-container .pdx-why-ic { width: 40px; height: 40px; flex: 0 0 40px; border-radius: 12px; display: flex; align-items: center; justify-content: center; }
#product-details-container .pdx-why-ic svg { width: 20px; height: 20px; }
#product-details-container .pdx-ic-a { background: #fff4dc; color: #9a6a00; }
#product-details-container .pdx-ic-b { background: #e6f4ea; color: #1c6b2c; }
#product-details-container .pdx-ic-c { background: #eef3fb; color: #1d4f91; }

#product-details-container .pdx-details { display: flex; flex-wrap: wrap; gap: 22px; align-items: flex-start; margin-top: 26px; }
#product-details-container .pdx-details-main { flex: 1 1 560px; min-width: 0; display: flex; flex-direction: column; gap: 22px; }
#product-details-container .pdx-info { flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 12px; }
#product-details-container .pdx-h2 { margin: 0 0 14px; font-size: 18px; font-weight: 700; color: #0b3d13; font-family: inherit; }
#product-details-container .pdx-info .pdx-h2 { margin-bottom: 2px; }
#product-details-container .pdx-table { border: 1px solid #ece6da; border-radius: 12px; overflow: hidden; }
#product-details-container .pdx-tr { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); border-bottom: 1px solid #ece6da; font-size: 14px; }
#product-details-container .pdx-tr:last-child { border-bottom: 0; }
#product-details-container .pdx-tr span:first-child { background: #faf8f2; padding: 12px 14px; color: #5b5348; font-weight: 600; }
#product-details-container .pdx-tr span:last-child { padding: 12px 14px; }
#product-details-container .pdx-desc-body { font-size: 14.5px; line-height: 1.7; color: #3c4a3f; max-height: 7.2em; overflow: hidden; position: relative; }
#product-details-container .pdx-desc-body.is-open { max-height: none; }
#product-details-container .pdx-desc-body p { margin: 0 0 8px; }
#product-details-container .pdx-more { border: 0; background: transparent; color: #1d4f91; font-weight: 700; font-size: 14px; padding: 8px 0 0; cursor: pointer; }
#product-details-container .pdx-info-row { display: flex; flex-direction: column; gap: 3px; padding-bottom: 10px; border-bottom: 1px solid #f0eadf; font-size: 13.5px; line-height: 1.5; }
#product-details-container .pdx-info-row span:first-child { color: #6b6459; font-weight: 600; }
#product-details-container .pdx-note { margin: 0; font-size: 12px; color: #6b6459; line-height: 1.5; }
#product-details-container .pdx-shop-link { font-weight: 700; font-size: 14px; color: #0f4a1c; text-decoration: none; }

#product-details-container .pd-reviews-section { margin-top: 26px; background: #fff; border: 1px solid #e6dfd1; border-radius: 20px; box-shadow: none; }
#product-details-container .pdx-similar { margin-top: 26px; display: flex; flex-direction: column; gap: 14px; }
#product-details-container .pdx-sim-head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; flex-wrap: wrap; }
#product-details-container .pdx-sim-head h2 { margin: 0; font-family: 'Playfair Display', Georgia, serif; font-size: 26px; color: #0b3d13; }
#product-details-container .pdx-sim-head a { font-weight: 700; font-size: 14px; color: #0f4a1c; text-decoration: none; }
#product-details-container .pdx-sim-row-wrap { display: flex; gap: 16px; overflow-x: auto; padding: 10px 2px 8px; scroll-snap-type: x mandatory; }
#product-details-container .pdx-sim { flex: 0 0 200px; scroll-snap-align: start; background: #fff; border: 1px solid #e6dfd1; border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; }
#product-details-container .pdx-sim-img { position: relative; display: block; background: #faf8f2; aspect-ratio: 1 / 1; }
#product-details-container .pdx-sim-img img { width: 100%; height: 100%; object-fit: cover; }
#product-details-container .pdx-sim-img .pdx-pack-off { top: 10px; left: 10px; }
#product-details-container .pdx-sim-body { padding: 12px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
#product-details-container .pdx-sim-name { font-size: 14px; font-weight: 700; line-height: 1.35; color: #1d2a20; text-decoration: none; }
#product-details-container .pdx-sim-row { display: flex; justify-content: space-between; align-items: center; margin-top: auto; gap: 8px; }
#product-details-container .pdx-sim-price { font-weight: 800; color: #0b3d13; }
#product-details-container .pdx-sim-add { border: 1.5px solid #1c6b2c; background: #fff; color: #1c6b2c; border-radius: 10px; font-weight: 800; font-size: 13px; padding: 8px 14px; min-height: 40px; cursor: pointer; }
#product-details-container .pdx-sim-add:hover { background: #1c6b2c; color: #fff; }
/* "Notify me" box (stock_notify.js) sits nicely in the new layout */
#product-details-container .pdx-actions .vp-notify { flex: 1 1 100%; }

@media (max-width: 767.98px) {
  #product-details-container .pd-actions.pdx-actions .pd-btn-wishlist.pdx-wish { flex: 0 0 52px; width: 52px; max-width: 52px; }
  #product-details-container { padding: 12px 14px 24px; }
  #product-details-container .pd-gallery.pdx-gallery { flex-direction: column-reverse; }
  #product-details-container .pdx-thumbs { flex-direction: row; overflow-x: auto; }
  #product-details-container .pdx-thumbs .pd-thumb { width: 64px; height: 64px; flex: 0 0 64px; }
  #product-details-container .pd-title.pdx-title { font-size: 26px; }
  #product-details-container .pdx-chips { grid-template-columns: 1fr; }
  #product-details-container .pdx-card { padding: 18px 16px; }
  #product-details-container .pdx-sim { flex-basis: 160px; }
}
