/* Approved V5 desktop procurement surface. Shared brand/type and media tokens remain authoritative. */
.pdp-breadcrumb { background:var(--surface); padding:16px 0 0; }
.pdp-breadcrumb .breadcrumb { margin-block:0; font-size:14px; line-height:22px; }
.pdp-purchase { background:var(--surface); padding:16px 0 32px; }
.pdp-purchase-grid { display:grid; grid-template-columns:minmax(0,680fr) minmax(0,568fr); gap:32px; align-items:start; }
.pdp-gallery { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; min-width:0; }
.pdp-thumbnails { position:relative; display:flex; gap:12px; order:1; min-width:0; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; }
.pdp-thumbnails > button { width:80px; flex:none; }
.pdp-thumb { background:var(--ghost); padding:0; border:1px solid transparent; border-radius:var(--radius); overflow:hidden; cursor:pointer; color:var(--secondary); font:inherit; font-size:12px; line-height:20px; }
.pdp-thumb:hover { border-color:var(--primary); background:var(--soft); }
.pdp-thumb img { display:block; width:100%; height:56px; object-fit:contain; }
.pdp-stage { min-width:0; }
.pdp-stage > img { width:100%; height:480px; object-fit:contain; border-radius:0; cursor:zoom-in; }
.pdp-config { padding:0; display:grid; gap:12px; min-width:0; }
.pdp-config h1 { font-size:40px; line-height:48px; letter-spacing:-.8px; margin:0; }
.pdp-series { font-size:14px; line-height:20px; color:var(--primary); font-weight:600; }
.pdp-description { color:var(--secondary); font-size:16px; line-height:26px; }
.pdp-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; border-block:1px solid var(--border); padding:12px 0; margin:0; }
.pdp-metrics dt { color:var(--secondary); font-size:14px; line-height:22px; margin-bottom:4px; }
.pdp-metrics dd { font-size:18px; line-height:26px; font-weight:700; font-variant-numeric:tabular-nums; margin:0; overflow-wrap:anywhere; }
.pdp-options { padding:0; margin:0; border:0; min-width:0; }
.pdp-options legend { color:var(--secondary); font-size:14px; line-height:22px; margin-bottom:8px; }
.pdp-options > div { display:flex; flex-wrap:wrap; gap:8px; }
.pdp-options button { flex:1 1 110px; padding:12px; min-height:44px; border:1px solid transparent; border-radius:var(--radius); font:inherit; font-size:14px; line-height:20px; font-weight:600; cursor:pointer; color:var(--text); background:var(--ghost); }
.pdp-options button[aria-checked=true] { color:var(--primary); background:var(--soft); border-color:var(--primary); }
.pdp-options button:hover { border-color:var(--primary); }
.pdp-selection,.pdp-quote-scope { font-size:14px; line-height:22px; color:var(--secondary); }
.pdp-actions { display:flex; gap:12px; }
.pdp-actions .button { flex:1 1 0; text-align:center; justify-content:center; padding-inline:16px; min-width:0; }
.pdp-section { background:var(--surface); }
.pdp-section h2 { font-size:32px; line-height:40px; }
.pdp-comparison th,.pdp-comparison td { font-size:14px; line-height:22px; padding:16px; }
.pdp-comparison [data-selected=true] { background:var(--soft); color:var(--primary); }
.pdp-video-section { padding-block:32px; }
.pdp-video { width:min(960px,100%); margin-inline:auto; }
.pdp-video .ly-video { border-radius:var(--radius); overflow:hidden; }
.pdp-records { display:grid; gap:16px; }
.enquiry-model { font-size:14px; line-height:22px; padding:12px 16px; background:var(--soft); border-radius:var(--radius); color:var(--primary); margin-bottom:16px; }
[data-model-error] { color:var(--error); font-size:14px; line-height:22px; }
.pdp-thumb:focus-visible,.pdp-options button:focus-visible { outline:2px solid var(--primary); outline-offset:4px; }
/* Technical content stays visible once, with original artwork beside its own copy. */
#machine-details > .stack { gap:24px; }
.pdp-feature-list { display:grid; gap:24px; }
.pdp-feature-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; align-items:center; }
.pdp-feature-row:nth-child(odd) .pdp-feature-media { order:-1; }
.pdp-feature-row.text-only { grid-template-columns:minmax(0,1fr); }
.pdp-feature-copy { display:grid; gap:16px; min-width:0; }
.pdp-feature-copy h3 { font-size:24px; line-height:32px; }
.pdp-feature-copy p { color:var(--secondary); font-size:16px; line-height:26px; }
.pdp-feature-media { display:grid; gap:16px; min-width:0; overflow:hidden; background:var(--ghost); border-radius:var(--radius); }
.pdp-feature-media > img { display:block; width:100%; height:320px; object-fit:contain; }
.pdp-feature-media.multiple { grid-template-columns:repeat(2,minmax(0,1fr)); }
.pdp-feature-media.multiple > img { height:220px; }
@media (prefers-reduced-motion:reduce) { .pdp-section { scroll-behavior:auto; } }

.pdp-thumb[aria-current=true] { border-color:var(--primary); background:var(--soft); }
.pdp-stage { position:relative; cursor:zoom-in; }
.pdp-stage:focus-visible { outline:2px solid var(--primary); outline-offset:4px; }
.pdp-stage[data-media-type=video]::after { content:'▶'; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:64px; height:64px; border-radius:50%; background:var(--primary); color:var(--surface); font-size:20px; pointer-events:none; }

.pdp-thumbnails .pdp-thumb:focus-visible { outline-offset:-3px; }

.pdp-thumbnails::-webkit-scrollbar { display:none; }
