.poster-photo-scene{display:block;position:relative;width:100%;height:100%;overflow:hidden}
/* Keep the entire portrait wall composition inside the square gallery viewport. */
.poster-photo-gallery [data-scene=wall]{background:#eee9df}
.poster-photo-gallery [data-scene=wall]>.poster-photo-scene{width:100%;height:100%;margin:auto}
.poster-photo-gallery [data-scene=wall] .poster-photo-art{left:29.65%;top:9.25%;width:40.7%;height:59.8%;box-sizing:border-box;padding:0;border:0;background:#ece2cf}
.poster-photo-gallery .poster-photo-background{display:block;width:100%;height:100%;object-fit:cover;max-height:none}
.poster-photo-art{position:absolute;display:flex;align-items:center;justify-content:center;background:#e6e0d4;overflow:hidden;left:35.5%;top:9.2%;width:28.6%;height:40.5%}
.poster-photo-gallery .poster-photo-art img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;margin:0}
.poster-photo-art:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,#fff1,transparent 45%,#28180609);box-shadow:inset 0 0 2px #0002}
.poster-photo-gallery [data-scene=console] .poster-photo-art{left:30%;top:5%;width:40%;height:auto;aspect-ratio:2/3;box-sizing:border-box;padding:.7%;border:2px solid #493e32;box-shadow:2px 3px 5px #0004;background:#f1eadc}
.poster-photo-gallery [data-scene=original] .poster-photo-background{object-fit:contain;background:#f7f7f7}
.poster-photo-gallery [data-scene=original] .poster-photo-art{left:21.3%;top:8.65%;width:57.5%;height:82.8%;background:#e2ddd3}
/* Match the angled Arches close-up, including its intentional edge crop. */
.poster-photo-gallery [data-scene=detail] .poster-photo-art{left:38.5%;top:19.7%;width:69.3%;height:104.6%;transform:skewY(5deg);transform-origin:top left;background:#e5dfd3}
.poster-photo-gallery .poster-thumb-image{display:block;width:100%;aspect-ratio:1;overflow:hidden}
.poster-photo-gallery .poster-thumb-image>img{width:100%;height:100%;object-fit:contain}
.poster-photo-gallery .poster-room-thumbs{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-top:16px}
.poster-photo-gallery .poster-room-panel[data-scene=frame-options]{background:#fafafa}
.poster-photo-gallery .poster-frame-comparison{display:block;width:100%;height:100%;object-fit:contain;margin:0;padding:8px;box-sizing:border-box}
.poster-photo-gallery [data-scene=frame-options] .poster-photo-background{object-fit:contain;background:#fafafa}
.poster-photo-gallery .poster-room-thumbs button{padding:3px;min-width:0;gap:0;background:#fff}
.poster-photo-gallery .poster-room-thumbs button[aria-pressed=true]{border-color:#5479c7;box-shadow:0 0 0 2px #a8c6ff66;background:#f3f7ff}
.poster-photo-gallery .poster-thumb-label{padding:7px 2px;line-height:1.35;white-space:normal;overflow-wrap:anywhere;min-height:3.5em}
.poster-photo-gallery .poster-room-panel[data-scene=original]>.poster-original-art{width:100%;height:100%;max-height:none;object-fit:contain}
.poster-photo-gallery [data-scene=bedroom] .poster-photo-art{left:30%;top:5%;width:40%;height:auto;aspect-ratio:2/3;box-sizing:border-box;padding:.7%;border:2px solid #493e32;box-shadow:2px 3px 5px #0004;background:#f1eadc}
.poster-photo-gallery :is([data-scene=console],[data-scene=bedroom]) .poster-photo-art img{position:absolute;inset:0;width:100%;height:100%;box-sizing:border-box;padding:1.65%;background:#f1eadc;object-fit:cover}
@media(max-width:480px){.poster-photo-gallery .poster-room-thumbs{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.poster-photo-gallery .poster-room-thumbs button{padding:2px;font-size:10px}}
/* Shared scene geometry for both thumbnails and full-size product previews.
   The warm wall already contains its photographed frame; retain its aperture.
   Center the other frames between the side props, with clearance above tables. */
.poster-photo-gallery :is([data-scene=console],[data-scene=bedroom]) .poster-photo-art{
 /* Match the photographed wall's OUTER frame (43.6% x 62.6%),
    rather than comparing its inner artwork with the other outer frames. */
 left:50%;top:5%;width:43.6%;height:62.6%;aspect-ratio:auto;
 transform:translateX(-50%);padding:0;border:4px solid #302b23;background:#302b23;
 box-sizing:border-box;box-shadow:3px 5px 8px #0003;
}
.poster-photo-gallery :is([data-scene=console],[data-scene=bedroom]) .poster-photo-art img{
 position:static;inset:auto;width:100%;height:100%;padding:1.65%;
 min-width:0;min-height:0;box-sizing:border-box;flex:1 1 0;
}
/* Keep a complete, pixel-sized frame at thumbnail scale. */
.poster-photo-gallery .poster-thumb-image:is([data-scene=console],[data-scene=bedroom]) .poster-photo-art{
 border-width:1px;
}
.poster-photo-gallery :is([data-scene=wall],[data-scene=console],[data-scene=bedroom]) .poster-photo-art img{
 object-position:50% 50%;
}
/* Edge-to-edge artwork: cover the mat aperture, never the frame itself.
   Apply the same geometry to the large preview and its thumbnails. */
.poster-photo-gallery [data-scene=original] .poster-photo-art{
 left:19.6667%;top:7%;width:60.7333%;height:86.0667%;padding:0;
}
.poster-photo-gallery [data-scene=wall] .poster-photo-art{
 left:28.79%;top:8.53%;width:42.26%;height:61.16%;padding:0;
}
.poster-photo-gallery :is([data-scene=console],[data-scene=bedroom]) .poster-photo-art img{
 padding:0;background:transparent;
}
.poster-photo-gallery [data-scene=detail] .poster-photo-art{
 left:33.65%;top:12.28%;width:75%;height:115%;padding:0;
}
/* Desktop hover magnifier; thumbnails and touch scrolling stay unchanged. */
@media (hover:hover) and (pointer:fine){
 .poster-photo-gallery .poster-room-stage{cursor:zoom-in}
 .poster-photo-gallery .poster-room-stage .poster-room-panel{
  transform-origin:var(--poster-zoom-x,50%) var(--poster-zoom-y,50%);
  transition:transform .18s ease-out;
 }
 .poster-photo-gallery .poster-room-stage:hover .poster-room-panel:not([hidden]){transform:scale(1.7)}
}
@media (prefers-reduced-motion:reduce){
 .poster-photo-gallery .poster-room-stage .poster-room-panel{transition:none}
}
@media(min-width:1025px){
 /* Keep the image fixed while only the text progresses to the share links. */
 .poster-product-scroll-track{overflow-anchor:none;position:relative}
 .poster-product-scroll-active .poster-photo-gallery{width:var(--poster-gallery-width,100%);max-width:100%;margin-inline:auto}
 .poster-product-scroll-active .poster-photo-gallery.poster-gallery-overflow{max-height:var(--poster-gallery-height);overflow-y:auto;scrollbar-width:thin}
 .poster-product-scroll-active>.product-image-summary-inner{position:sticky!important;top:var(--poster-product-pin-top,154px)!important;align-self:start}
 .product-image-summary-inner:has(.poster-photo-gallery)>.product-images{position:relative!important;top:auto!important;align-self:start}
 .poster-product-scroll-active>.product-image-summary-inner>.summary{max-height:calc(100dvh - var(--poster-product-pin-top,154px) - 16px);overflow:hidden;align-self:start;scroll-behavior:auto;}
 .poster-photo-gallery .poster-room-stage{width:100%;margin-inline:auto}
}
