/* Parloy — product detail page. Inherits tokens/nav/footer/cards from landing.css. */
.parloy-pdp-body{background:var(--bg);color:var(--ink)}
.pdp{max-width:var(--maxw);margin:0 auto;padding:96px 5vw 4vh}
.pdp-crumbs{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 28px}
.pdp-crumbs a:hover{color:var(--teal-deep)}

/* Hero: gallery + sticky buy box */
.pdp-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:start}

.pdp-stage{position:relative;border-radius:10px;overflow:hidden;background:var(--panel);
  aspect-ratio:4/3;display:grid;place-items:center}
.pdp-stage.has-scene{background-size:cover;background-position:center}
.pdp-stage.has-scene::after{content:"";position:absolute;inset:0;
  background:radial-gradient(120% 90% at 50% 45%,transparent 55%,rgba(6,8,10,.5) 100%)}
.pdp-main{position:relative;z-index:1;max-height:78%;width:auto;object-fit:contain;cursor:zoom-in;
  transition:transform .6s var(--ease);will-change:transform;filter:drop-shadow(0 24px 50px rgba(0,0,0,.45))}
/* No-scene products: light band under the packshot (like the ritual). */
.pdp-stage:not(.has-scene){background:#f3f1ee}
.pdp-stage:not(.has-scene) .pdp-main{mix-blend-mode:multiply;max-height:82%;filter:none}
/* hover-zoom is driven by JS (transform-origin follows cursor); no static hover scale */

/* ── Inspect-pro gallery: vertical rail + hover-zoom + fullscreen zoom/pan ── */
.pdp-gallery{display:flex;gap:16px;align-items:stretch}
.pdp-rail{display:flex;flex-direction:column;gap:12px;width:84px;flex:0 0 84px;max-height:560px;overflow:auto}
.pdp-rail::-webkit-scrollbar{width:0}
.pdp-gallery .pdp-stage{flex:1;aspect-ratio:1/1;cursor:zoom-in}
.pdp-main{transition:transform .25s var(--ease)}
.pdp-zoom-hint{position:absolute;z-index:4;right:14px;bottom:14px;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;
  color:#fff;background:rgba(11,14,17,.55);backdrop-filter:blur(6px);padding:6px 12px;border-radius:2px;opacity:.85;pointer-events:none;transition:opacity .3s}
.pdp-stage:hover .pdp-zoom-hint{opacity:0}

/* Fullscreen lightbox 2.0 */
.pdp-lb{position:fixed;inset:0;z-index:200;background:rgba(6,8,10,.95);display:none;opacity:0;transition:opacity .3s var(--ease)}
.pdp-lb.open{display:block;opacity:1}
.pdp-lb-stage{position:absolute;inset:0;overflow:hidden;cursor:grab;touch-action:none}
.pdp-lb-stage.grabbing{cursor:grabbing}
.pdp-lb-img{position:absolute;top:50%;left:50%;max-width:90vw;max-height:88vh;width:auto;transform:translate(-50%,-50%);
  transform-origin:center;will-change:transform;user-select:none;-webkit-user-drag:none;border-radius:4px}
.pdp-lb-btn{position:absolute;z-index:2;top:50%;transform:translateY(-50%);width:52px;height:52px;display:grid;place-items:center;
  background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:50%;color:#fff;font-size:1.3rem;cursor:pointer;transition:.3s}
.pdp-lb-btn:hover{background:rgba(92,198,214,.25)}
.pdp-lb-prev{left:3vw}.pdp-lb-next{right:3vw}
.pdp-lb-close{top:3vh;right:3vw;transform:none;width:46px;height:46px;font-size:1.1rem}
.pdp-lb-count{position:absolute;z-index:2;bottom:3vh;left:50%;transform:translateX(-50%);color:var(--muted);font-size:.8rem;letter-spacing:.1em}
@media(max-width:920px){
  .pdp-gallery{flex-direction:column-reverse}
  .pdp-rail{flex-direction:row;width:auto;flex:none;max-height:none;overflow-x:auto}
  .pdp-lb-btn{width:44px;height:44px}
}
.pdp-rotate{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .5s var(--ease);z-index:2}
.pdp-stage:hover .pdp-rotate{opacity:1}

.pdp-thumbs{display:flex;gap:12px;margin-top:14px;flex-wrap:wrap}
.pdp-thumb{width:78px;height:78px;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#f3f1ee;cursor:pointer;padding:6px;transition:.3s var(--ease)}
.pdp-thumb img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.pdp-thumb.is-active,.pdp-thumb:hover{border-color:var(--teal)}

/* Buy box */
.pdp-buy{position:sticky;top:96px}
.pdp-title{font-size:clamp(1.7rem,3vw,2.6rem);font-weight:300;margin:.2rem 0 1rem}
.pdp-price{font-size:1.5rem;color:#fff;margin-bottom:1.2rem}
.pdp-price ins{text-decoration:none}
.pdp-price del{color:var(--muted);font-size:1rem;margin-right:.5rem}
.pdp-short{color:var(--muted);font-size:.92rem;margin-bottom:1.6rem;line-height:1.6}
.pdp-cart{margin:0 0 1rem}
/* Woo add-to-cart, restyled cold/premium */
.pdp-cart .quantity input{height:50px;width:72px;background:var(--panel);border:1px solid var(--line);color:var(--ink);text-align:center;border-radius:2px;margin-right:10px}
.pdp-cart form.cart{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pdp-cart button.button,.pdp-cart .single_add_to_cart_button{height:50px;padding:0 32px;background:var(--ink)!important;color:#0b0e11!important;
  border:0;border-radius:2px;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:.35s var(--ease)}
.pdp-cart button.button:hover,.pdp-cart .single_add_to_cart_button:hover{background:var(--teal)!important}
.pdp-stock{font-size:.84rem;letter-spacing:.04em;margin:.4rem 0 1.6rem}
.pdp-stock.in{color:var(--teal-deep)}
.pdp-stock.out{color:#c98a8a}
.pdp-trust{list-style:none;padding:1.4rem 0 0;margin:0;border-top:1px solid var(--line);display:grid;gap:.6rem}
.pdp-trust li{color:var(--muted);font-size:.86rem}
.pdp-trust strong{color:var(--ink);font-weight:500;letter-spacing:.04em;margin-right:.4rem}

/* Info / description */
.pdp-info{margin:12vh auto 0;max-width:820px}
.pdp-info h2{font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:300;margin-bottom:1.4rem;text-align:center}
.pdp-desc{color:var(--muted);line-height:1.8;font-size:.98rem}
.pdp-desc h4{color:var(--ink);font-weight:500;letter-spacing:.02em;margin:1.6rem 0 .4rem}
.pdp-meta{margin-top:2rem;color:var(--muted);font-size:.82rem;letter-spacing:.04em;text-align:center}

/* Related */
.pdp-related{margin:14vh auto 4vh;max-width:var(--maxw)}
.pdp-rel-grid{grid-template-columns:repeat(4,1fr)}
.pdp-rel-grid .pl-card-ph{height:240px;background:#fff}
.pdp-rel-grid .pl-card-ph img{object-fit:contain;mix-blend-mode:multiply;padding:18px}

@media(max-width:920px){
  .pdp-hero{grid-template-columns:1fr;gap:28px}
  .pdp-buy{position:static}
  .pdp-rel-grid{grid-template-columns:1fr 1fr}
}
