/* ============================================================
   CARPE DIEM — product page
   Gallery + buy up top · description below the picture · related further down
   ============================================================ */
.pdp{padding:clamp(90px,11vw,140px) var(--gutter) 0;position:relative}
.pdp__back{display:inline-block;margin-bottom:26px;font-size:12px;letter-spacing:.14em}
.pdp__back:hover{color:var(--red)}

/* ---- top: gallery + buy ---- */
.pdp__top{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:clamp(24px,4vw,64px);align-items:start}
@media(max-width:1000px){.pdp__top{grid-template-columns:1fr;gap:26px}}

.pdp__gallery{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,22px)}
.pdp__shot{margin:0;overflow:hidden;aspect-ratio:4/5;
  background:radial-gradient(125% 125% at 50% 22%,#f1eee8 0%,#ddd7ce 100%)}
.pdp__shot img{width:100%;height:100%;object-fit:contain;padding:7%;will-change:transform;
  filter:drop-shadow(0 22px 32px rgba(10,10,11,.2))}

/* ---- buy box (sticky on desktop) ---- */
.pdp__buy{position:sticky;top:110px;align-self:start}
@media(max-width:1000px){.pdp__buy{position:static}}
.pdp__buyin{border:1px solid var(--line);padding:clamp(24px,2.4vw,34px)}
.pdp__sold{display:inline-block;background:var(--red);color:#fff;padding:4px 10px;font-size:10px;letter-spacing:.14em;margin-bottom:16px}
.pdp__bname{font-family:var(--disp);font-weight:900;text-transform:uppercase;letter-spacing:-.02em;
  font-size:clamp(28px,3vw,44px);line-height:.92;overflow-wrap:anywhere}
.pdp__bprice{font-family:var(--disp);font-weight:900;font-size:30px;letter-spacing:-.02em;margin:8px 0 24px}
.pdp__sizelab{font-size:10px;letter-spacing:.18em;color:var(--mute);margin-bottom:10px}
.pdp__sizes{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:22px}
.pdp__size{min-width:44px;padding:11px 12px;border:1px solid var(--line);font-family:var(--mono);font-size:11.5px;
  letter-spacing:.04em;transition:background .2s,color .2s,border-color .2s}
.pdp__size:hover:not([disabled]){border-color:var(--ink)}
.pdp__size.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.pdp__size.is-out{color:var(--mute);text-decoration:line-through;cursor:not-allowed;opacity:.5}
.pdp__add{width:100%;justify-content:center}
.pdp__err{color:var(--red);font-size:11px;letter-spacing:.1em;min-height:14px;margin-top:10px;text-align:center}
.pdp__acc{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}
.pdp__acc summary{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;list-style:none;display:flex;justify-content:space-between}
.pdp__acc summary::after{content:"+";color:var(--red)}
.pdp__acc[open] summary::after{content:"–"}
.pdp__acc p{color:var(--mute);font-size:13px;line-height:1.6;margin:12px 0 0}
.pdp__trust{margin-top:18px;font-size:10px;letter-spacing:.12em;color:var(--mute);text-align:center}

/* ---- description: AFTER the picture ---- */
.pdp__desc{max-width:var(--max);margin:clamp(60px,9vw,120px) auto 0;
  border-top:1px solid var(--line);padding-top:clamp(36px,5vw,60px)}
.pdp__desc-in{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(30px,6vw,90px);margin-top:26px}
@media(max-width:820px){.pdp__desc-in{grid-template-columns:1fr;gap:30px}}
.pdp__desc-copy p{margin:0 0 18px}
.pdp__blurb--soft{font-family:var(--disp);font-weight:800;font-size:clamp(22px,2.4vw,34px);line-height:1.12;
  letter-spacing:-.01em;color:var(--ink)}
.pdp__blurb{color:var(--mute);font-size:16px;line-height:1.7;max-width:62ch}
.pdp__specs{list-style:none;margin:0;padding:0;align-self:start}
.pdp__specs li{position:relative;padding:0 0 12px 20px;font-size:14px;color:var(--ink);
  font-family:var(--mono);letter-spacing:.02em;text-transform:uppercase}
.pdp__specs li::before{content:"";position:absolute;left:0;top:6px;width:7px;height:7px;background:var(--red)}

/* ---- related: further down, clearly separated ---- */
.pdp__related{margin-top:clamp(70px,11vw,150px);border-top:1px solid var(--line)}
