.pdp { max-width: calc(var(--max) + var(--gutter) * 2); margin: 0 auto; padding: calc(var(--header-h) + 28px) var(--gutter) clamp(72px, 10vw, 140px); }
.pdp__crumbs { font-size: var(--fs-0); color: var(--muted); margin-bottom: 20px; }
.pdp__crumbs a { color: var(--fg); }
.pdp__grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(320px, 1fr); gap: clamp(24px, 4vw, 64px); align-items: start; }
.pdp__gallery { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.pdp__gallery figure { margin: 0; background: var(--surface); aspect-ratio: 4 / 5; overflow: hidden; border-radius: var(--radius-img); }
.pdp__gallery figure:first-child { grid-column: 1 / -1; }
.pdp__gallery img { width: 100%; height: 100%; object-fit: cover; }
.pdp__gallery .pdp__flat { background: var(--frame); }
.pdp__gallery .pdp__flat img { object-fit: contain; }
.pdp__panel { position: sticky; top: calc(var(--header-h) + 20px); }
.pdp__title { font-family: var(--serif); font-style: italic; font-weight: 400; font-size: clamp(2.6rem, 1rem + 3.4vw, 4.6rem); line-height: .95; margin-bottom: 16px; }
.pdp__details { margin-top: 28px; border-top: 1px solid var(--line); padding-top: 20px; color: #d6d2cb; }
.pdp__details p { margin: 0 0 .9em; }
.pdp__details strong { color: var(--fg); }
.pdp__facts { list-style: none; padding: 0; margin: 20px 0 0; font-size: var(--fs-0); color: var(--muted); display: grid; gap: 6px; }
.pdp__facts a { color: var(--fg); }
.pdp__more { margin-top: clamp(80px, 10vw, 140px); }
.pdp__more-title { font-family: var(--serif); font-style: italic; font-weight: 400; font-size: clamp(2.2rem, 1rem + 2.6vw, 3.6rem); margin-bottom: 28px; }
.link-btn { margin-left: 10px; padding: 10px 0; border: 0; background: none; cursor: pointer; font-size: var(--fs-0); font-weight: 600; text-decoration: underline; text-underline-offset: .2em; }
@media (max-width: 899px) {
  .pdp__grid { grid-template-columns: 1fr; }
  .pdp__panel { position: static; }
  .pdp__gallery { grid-auto-flow: column; grid-auto-columns: 82%; grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; }
  .pdp__gallery figure { scroll-snap-align: start; }
  .pdp__gallery figure:first-child { grid-column: auto; }
}
.pdp__line { margin-top: 12px; font-size: var(--fs-0); }
