.gb-product-gallery{width:100%}
.gb-gallery-pill{display:inline-flex;align-items:center;padding:4px 9px;background:rgba(251,249,245,.95);color:#22211f;font-size:10px;letter-spacing:.08em}
.gb-gallery-pill--primary{background:#22211f;color:#fbf9f5}
.gb-gallery-stage-outer{width:100%;background:#f7f3ec;border:1px solid #d8d2c7}
.gb-gallery-stage{position:relative;display:block;width:100%;overflow:hidden;border:0;padding:0;margin:0;background:#f7f3ec;cursor:zoom-in;text-align:left}
.gb-gallery-stage--landscape{aspect-ratio:4/3}
.gb-gallery-stage--portrait{aspect-ratio:4/5}
.gb-gallery-image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.gb-gallery-stage:hover .gb-gallery-image,.gb-gallery-stage:focus-visible .gb-gallery-image{transform:scale(1.015)}
.gb-gallery-overlay{position:absolute;inset:auto auto 0 0;width:100%;pointer-events:none}
.gb-gallery-overlay>*{position:absolute}
.gb-gallery-overlay>:first-child:not(:last-child){top:16px;left:16px}
.gb-gallery-overlay>:only-child{top:16px;left:16px;right:auto;bottom:auto}
.gb-gallery-overlay>:nth-child(2){top:56px;left:16px}
.gb-gallery-overlay>:last-child:not(:first-child){top:auto;left:auto;right:16px;bottom:16px}
.gb-gallery-zoom{position:absolute;top:16px;right:16px;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;background:rgba(251,249,245,.94);color:#22211f;font-size:10px;letter-spacing:.08em;border:1px solid rgba(216,210,199,.75)}
.gb-gallery-zoom .material-symbols-outlined{font-size:15px}
.gb-gallery-thumbs{display:flex;gap:8px;margin-top:12px;padding-bottom:5px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-color:rgba(168,135,88,.55) rgba(216,210,199,.25);scrollbar-width:thin}
.gb-gallery-thumb{position:relative;flex:0 0 clamp(76px,12vw,120px);aspect-ratio:1;overflow:hidden;padding:0;border:1px solid #d8d2c7;background:#f7f3ec;cursor:pointer;scroll-snap-align:start}
.gb-gallery-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease,opacity .3s ease}
.gb-gallery-thumb span:not(.material-symbols-outlined){position:absolute;left:4px;bottom:4px;padding:2px 4px;background:rgba(251,249,245,.94);color:#6f6b64;font-size:8px;line-height:1.2}
.gb-gallery-thumb:hover img{transform:scale(1.04)}
.gb-gallery-thumb[aria-current="true"]{border-color:#22211f;outline:1px solid #22211f;outline-offset:-1px}
.gb-gallery-thumb:focus-visible,.gb-gallery-stage:focus-visible{outline:2px solid #a88758;outline-offset:2px}
.gb-lightbox{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:clamp(16px,4vw,48px);background:rgba(34,33,31,.35);backdrop-filter:blur(8px)}
.gb-lightbox[hidden]{display:none}
.gb-lightbox-close[hidden],.gb-lightbox-arrow[hidden]{display:none}
.gb-lightbox-figure{display:flex;flex-direction:column;align-items:center;max-width:min(1200px,100%);max-height:100%;margin:0}
.gb-lightbox-image{display:block;max-width:100%;max-height:calc(100vh - 112px);width:auto;height:auto;object-fit:contain;background:#f7f3ec}
.gb-lightbox-caption{display:flex;justify-content:space-between;gap:16px;width:100%;max-width:100%;margin-top:12px;color:#f7f2e9;font-size:11px;letter-spacing:.08em}
.gb-lightbox-caption span:last-child{color:#a88758}
.gb-lightbox-close,.gb-lightbox-arrow{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid rgba(247,242,233,.35);background:rgba(247,242,233,.1);color:#f7f2e9;cursor:pointer;transition:background .2s ease,border-color .2s ease}
.gb-lightbox-close{position:absolute;top:20px;right:20px}
.gb-lightbox-arrow--prev{position:absolute;left:clamp(12px,3vw,36px)}
.gb-lightbox-arrow--next{position:absolute;right:clamp(12px,3vw,36px)}
.gb-lightbox-close:hover,.gb-lightbox-arrow:hover{background:rgba(247,242,233,.24);border-color:#f7f2e9}
.gb-lightbox-close:focus-visible,.gb-lightbox-arrow:focus-visible{outline:2px solid #f7f2e9;outline-offset:3px}
@media (max-width:640px){
 .gb-gallery-thumbs{gap:6px;scrollbar-width:none}
 .gb-gallery-thumbs::-webkit-scrollbar{display:none}
 .gb-gallery-overlay>:first-child:not(:last-child){top:10px;left:10px}
 .gb-gallery-overlay>:only-child{top:10px;left:10px;right:auto;bottom:auto}
 .gb-gallery-overlay>:nth-child(2){top:46px;left:10px}
 .gb-gallery-zoom{top:10px;right:10px}
 .gb-lightbox{padding:54px 10px 64px}
 .gb-lightbox-image{max-height:calc(100vh - 142px)}
 .gb-lightbox-arrow{top:auto;bottom:12px}
 .gb-lightbox-arrow--prev{left:calc(50% - 58px)}
 .gb-lightbox-arrow--next{right:calc(50% - 58px)}
}
@media (prefers-reduced-motion:reduce){
 .gb-gallery-image,.gb-gallery-thumb img{transition:none}
 .gb-gallery-stage:hover .gb-gallery-image{transform:none}
}
