.ritual-theme .ritual-gallery{position:relative;min-width:0;align-self:start;isolation:isolate}
.ritual-theme .ritual-gallery .product-gallery{display:flex;flex-direction:row;position:relative;width:100%;gap:0;padding:0;margin:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;scroll-behavior:smooth}
.ritual-theme .ritual-gallery .product-gallery::-webkit-scrollbar{display:none}
.ritual-theme .ritual-gallery .product-media{flex:0 0 100%;width:100%;min-width:0;aspect-ratio:1;position:relative;margin:0;border-radius:0;scroll-snap-align:start;scroll-snap-stop:always;overflow:hidden}
.ritual-theme .ritual-gallery .product-media>img{display:block;width:100%;height:100%;max-height:none;object-fit:var(--gallery-fit,cover)}
.ritual-theme .ritual-gallery .product-media>video,.ritual-theme .ritual-gallery .product-media>iframe,.ritual-theme .ritual-gallery .product-media>model-viewer{display:block;width:100%;height:100%;object-fit:contain}
.ritual-gallery__badge{position:absolute;z-index:2;top:18px;left:14px;max-width:calc(100% - 90px);padding:7px 12px;border-radius:2px;background:#fff;color:#222;font:400 13px/1.5 var(--sans);box-shadow:0 1px 4px #0001}
.ritual-gallery__zoom,.ritual-gallery__arrows button,.ritual-gallery-dialog button{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;width:44px;height:44px;padding:10px;border:1px solid #bcb9b3;border-radius:50%;background:#ffffffdf;color:#262522;cursor:pointer;box-shadow:none}
.ritual-gallery__zoom{position:absolute;z-index:3;top:18px;right:18px}
.ritual-gallery__controls{position:absolute;z-index:2;bottom:24px;left:14px;right:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}
.ritual-gallery__count{background:#ffffffd9;color:#222;border-radius:2px;padding:6px 10px;font:400 13px/1.5 var(--sans)}
.ritual-gallery__arrows{display:flex;align-items:center;gap:12px;pointer-events:auto;margin-left:auto}
.ritual-gallery__arrows .icon,.ritual-gallery-dialog .icon{width:21px;height:21px}
.ritual-gallery__arrows [data-gallery-step='-1'] .icon,.ritual-gallery-dialog [data-gallery-dialog-step='-1'] .icon{transform:rotate(90deg)}
.ritual-gallery__arrows [data-gallery-step='1'] .icon,.ritual-gallery-dialog [data-gallery-dialog-step='1'] .icon{transform:rotate(-90deg)}
.ritual-gallery__zoom:focus-visible,.ritual-gallery__arrows button:focus-visible,.ritual-gallery-dialog button:focus-visible{outline:2px solid #135edf;outline-offset:3px}
.ritual-gallery-dialog{position:fixed;inset:0;z-index:100;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:55px 20px 76px;border:0;background:var(--paper,#faf9f7);color:var(--ink,#222);overflow:hidden}
.ritual-gallery-dialog::backdrop{background:#000b}
.ritual-gallery-dialog__image{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:0}
.ritual-gallery-dialog__image img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
.ritual-gallery-dialog .ritual-gallery-dialog__close{position:absolute;z-index:2;right:18px;top:14px}
.ritual-gallery-dialog__controls{position:absolute;left:20px;right:20px;bottom:20px;display:flex;justify-content:center;align-items:center;gap:20px}
.ritual-gallery-dialog__controls>span{min-width:55px;text-align:center;font-size:13px}
@media(max-width:749px){.ritual-theme .ritual-gallery{width:100%;margin:0}.ritual-theme .ritual-gallery .product-media{aspect-ratio:var(--gallery-mobile-ratio,1 / 1.05)}.ritual-gallery__zoom{top:16px;right:18px}.ritual-gallery__controls{bottom:24px;left:14px;right:18px}.ritual-gallery__badge{top:18px}.ritual-gallery-dialog{padding:62px 0 80px}}
@media(prefers-reduced-motion:reduce){.ritual-theme .ritual-gallery .product-gallery{scroll-behavior:auto}}
