/* A bounded viewer keeps a long gallery from turning into a long product page. */
.product-layout{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(36px,5vw,80px)}
.product-gallery{width:100%;max-width:560px;justify-self:center}
.gallery-stage{min-width:0;background:#f0eae0}
.gallery-slide{width:100%}
.gallery-slide+.gallery-slide{margin-top:15px}
.gallery-ready .gallery-slide+.gallery-slide{margin-top:0}
.gallery-slide[hidden],.gallery-controls[hidden],.gallery-thumbnails[hidden]{display:none!important}
.product-gallery .product-image-link img{width:100%;aspect-ratio:1;object-fit:contain}
.product-gallery .product-video{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#211d19}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 0;font-size:13px}
.gallery-controls button{width:44px;height:40px;border:1px solid var(--line);background:transparent;font-size:18px}
.gallery-controls button:hover{background:var(--sand)}
.gallery-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:4px 3px 9px;scrollbar-width:thin;scroll-snap-type:x proximity}
.gallery-thumb{position:relative;flex:0 0 66px;aspect-ratio:1;padding:3px;border:1px solid var(--line);background:var(--sand);scroll-snap-align:start}
.gallery-thumb img{width:100%;height:100%;object-fit:cover}
.gallery-thumb[aria-pressed=true]{border:2px solid var(--ink);padding:2px}
.gallery-thumb:hover{border-color:var(--ink)}
.video-thumbnail-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#30292366;color:white;font-size:19px}
.video-thumbnail-label small{font-size:10px;line-height:1.4}
.product-gallery figcaption{font-size:12px;line-height:1.6;min-height:20px}
@media(min-width:1800px){.product-shell{max-width:1680px}.product-layout{grid-template-columns:1fr 1fr}.product-gallery{max-width:600px}}
@media(max-width:1050px){.product-layout{grid-template-columns:1fr 1fr;gap:35px}}
@media(max-width:700px){.product-layout{grid-template-columns:1fr;gap:27px}.product-gallery{max-width:480px}.gallery-controls{padding-inline:22px}.gallery-thumbnails{margin-inline:19px}.gallery-thumb{flex-basis:58px}.product-gallery figcaption{font-size:11px}}
