.gallery__main .ph img{object-fit:contain;background:#fff;opacity:1}
.gallery__thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;max-height:210px;overflow:auto}
.gallery__thumbs button{width:64px;height:76px;padding:3px;border:1px solid #ddd;border-radius:8px;background:#fff;cursor:pointer}
.gallery__thumbs button[aria-current=true]{border:2px solid var(--mint)}
.gallery__thumbs img{width:100%;height:100%;object-fit:contain}
.price-row{flex-wrap:wrap;gap:10px}
.price-row .price--was{font-family:var(--f-d);font-weight:800;font-size:26px;text-decoration:line-through;opacity:.65}
.sale-percent{font-size:12px;color:var(--coral)}
.set-offer{display:flex;align-items:center;gap:18px;margin-block:16px;padding:22px 24px;border:1px solid #ff9ea3;border-radius:14px;background:#ff9ea3;color:#fff;text-align:start}
.set-offer__copy{min-width:0}
.set-offer__badge{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;position:relative;isolation:isolate}
.set-offer__badge::before{content:"";position:absolute;inset:-5px;border:1px solid #fff;border-radius:inherit;opacity:.15;animation:offer-glow 3.6s ease-in-out infinite;pointer-events:none}
.set-offer__badge svg{width:30px;height:30px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
@keyframes offer-glow{0%,100%{opacity:.12;box-shadow:0 0 0 0 rgba(255,255,255,0)}50%{opacity:.65;box-shadow:0 0 14px 3px rgba(255,255,255,.24)}}
@media(prefers-reduced-motion:reduce){.set-offer__badge::before{animation:none;opacity:.3}}
@media(max-width:480px){.set-offer{padding:18px 16px;gap:14px;align-items:flex-start}.set-offer__badge{flex-basis:40px;width:40px;height:40px;margin-top:4px}.set-offer__badge svg{width:25px;height:25px}}
.set-offer strong{display:block;font-size:20px;line-height:1.5;color:#fff}
.set-offer p{margin:6px 0 0;font-size:14px;line-height:1.7;color:#fff}
.swatches,.sizes{flex-wrap:wrap}
.info .sku{overflow-wrap:anywhere}
.btn:disabled{opacity:.6;cursor:not-allowed}
.preview-notice{margin:16px auto;padding:12px 20px;max-width:var(--max,1200px);font-size:14px;text-align:center;background:var(--paper,#fffefc);border:1px solid #e7e3de;border-radius:10px}

.card__media>.ph{width:100%;height:100%}
.card__media>.ph,.rail-card>.ph{background:#fffef7}
/* Placeholder lighting must not wash out real product photography. */
.card__media .ph:has(img)>.ph__t,
.rail-card .ph:has(img)>.ph__t,
.piece__media .ph:has(img)>.ph__t{display:none}
.card .ph__m{font-size:13px;color:var(--ink-45);text-align:center;padding:12px}

.gallery__main>.ph{width:100%;height:100%;aspect-ratio:4/5}

.gallery__colors{margin:0;padding:12px 0;border:0}
.gallery__colors h4{margin:0 0 10px}
.gallery__colors+.gallery__thumbs{margin-top:0}

.set-offer-wrap{max-width:var(--maxw,1200px);margin-inline:auto;padding-inline:var(--gut,20px)}
.set-offer__progress{margin-block:0 20px;padding:18px 22px;border:1px solid #4fc3b4;border-radius:14px;background:#f0faf7;color:#1c1917;display:grid;gap:12px;text-align:start}
.set-offer__progress strong{font-size:18px;line-height:1.6}
.set-offer__progress progress{width:100%;height:10px;accent-color:#258576}
.set-offer__progress a{justify-self:start;color:#1c1917;font-weight:700;text-underline-offset:4px;padding-block:6px}
.set-offer .set-offer__copy strong,.set-offer .set-offer__copy p{color:#1c1917}
.gallery>.set-offer{margin:0 0 6px}

@media(max-width:480px){.set-offer strong{font-size:18px}}
