body:has(.morne-storefront) .product-photo-track,body:has(.morne-storefront) .product-photo-full-track{display:flex;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x pan-y pinch-zoom}
body:has(.morne-storefront) :is(.product-photo-track,.product-photo-full-track)::-webkit-scrollbar{display:none}
body:has(.morne-storefront) .product-photo-slide{display:block;flex:0 0 100%;width:100%;height:100%;min-width:0;padding:0;border:0;background:transparent;scroll-snap-align:center;scroll-snap-stop:always;cursor:zoom-in}
body:has(.morne-storefront) .product-photo-slide img{display:block;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}
body:has(.morne-storefront) .product-photo-position{display:flex;justify-content:space-between;align-items:center;padding:4px 2px;font:400 12px/1.4 Inter,sans-serif;color:#656961}
body:has(.morne-storefront) .product-photo-position>span{visibility:hidden}
body:has(.morne-storefront) .product-photo-position button{min-height:44px;padding:0 10px;border:0;border-radius:12px;background:transparent;color:#181a17;font:inherit;cursor:zoom-in}
body:has(.morne-storefront) .product-photo-position button:is(:hover,:focus-visible){background:white;box-shadow:0 2px 10px #0000000c}
body:has(.morne-storefront) dialog.product-photo-viewer{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:env(safe-area-inset-top) max(12px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(12px,env(safe-area-inset-left));border:0;border-radius:0;background:#fafaf8;color:#181a17;overflow:hidden;box-sizing:border-box}
body:has(.morne-storefront) dialog.product-photo-viewer[open]{display:grid;grid-template-rows:68px minmax(0,1fr) 70px;gap:0}
body:has(.morne-storefront) .product-photo-viewer header{display:flex;align-items:center;gap:16px;padding:8px 8px 8px 12px;min-width:0}
body:has(.morne-storefront) .product-photo-viewer h2{margin:0;flex:1;font:500 16px/1.3 Inter,sans-serif;letter-spacing:-.025em;color:inherit}
body:has(.morne-storefront) .product-photo-viewer button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:8px;border:0;border-radius:999px;background:transparent;color:inherit;font:400 16px/1.3 Inter,sans-serif;cursor:pointer}
body:has(.morne-storefront) .product-photo-viewer header button{background:white;font-size:28px}
body:has(.morne-storefront) .product-photo-zoom{flex:0 0 100%;height:100%;overflow:auto;scroll-snap-align:center;scroll-snap-stop:always;overscroll-behavior:contain;scrollbar-width:none}
body:has(.morne-storefront) .product-photo-zoom img{display:block;width:100%;height:100%;object-fit:contain;max-width:none;user-select:none;-webkit-user-drag:none}
body:has(.morne-storefront) .product-photo-zoom[data-zoomed=true] img{width:200%;height:200%;cursor:zoom-out}
body:has(.morne-storefront) .product-photo-viewer[data-zoomed=true] .product-photo-full-track{overflow-x:hidden;scroll-snap-type:none}
body:has(.morne-storefront) .product-photo-viewer-controls{display:flex;align-items:center;justify-content:center;gap:20px;padding:10px 6px;font:400 12px/1.4 Inter,sans-serif}
body:has(.morne-storefront) .product-photo-viewer-controls button:nth-of-type(2){font-size:13px;padding-inline:16px;background:white;box-shadow:0 2px 10px #00000008}
body:has(.morne-storefront) .product-photo-viewer button:disabled{opacity:.3;cursor:default}
body:has(.morne-storefront) :is(.product-photo-track,.product-photo-viewer button,.product-photo-slide):focus-visible{outline:2px solid #181a17;outline-offset:-3px}
@media(max-width:1023px){body:has(.morne-storefront) .product-detail .gallery-controls,body:has(.morne-storefront) .product-detail .thumbnails{display:none}body:has(.morne-storefront) .product-photo-position>span{visibility:visible}body:has(.morne-storefront) .product-photo-position{padding-inline:3px}}
@media(prefers-reduced-motion:reduce){body:has(.morne-storefront) :is(.product-photo-track,.product-photo-full-track){scroll-behavior:auto}}
/* Swipe the two catalogue views directly on a phone; desktop retains hover preview. */
@media(max-width:1023px){
 body:has(.morne-storefront) .product-media{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y pinch-zoom;-webkit-overflow-scrolling:touch}
 body:has(.morne-storefront) .product-media::-webkit-scrollbar{display:none}
 body:has(.morne-storefront) .product-media>img,
 body:has(.morne-storefront) .product-media>img.alternate,
 body:has(.morne-storefront) .product:hover .product-media>img{position:static;flex:0 0 100%;min-width:100%;height:100%;opacity:1;transform:none;scroll-snap-align:center;scroll-snap-stop:always;transition:none;user-select:none;-webkit-user-drag:none}
}
body:has(.morne-storefront) .product-photo-zoom{overflow:hidden}
body:has(.morne-storefront) .product-photo-zoom[data-zoomed=true]{overflow:auto}
body:has(.morne-storefront) .product-photo-zoom{overscroll-behavior:auto}
body:has(.morne-storefront) .product-photo-zoom[data-zoomed=true]{overscroll-behavior:contain}
