.store-carousel{margin:0 -2%;position:relative}
.store-carousel .carousel-stage{display:flex;gap:18px;overflow:auto;scroll-snap-type:x mandatory}
.store-carousel .carousel-card{flex:0 0 70%;padding:0;border:0;background:none;scroll-snap-align:center}
.store-carousel .carousel-card img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;pointer-events:none}
.carousel-controls{display:none}
.store-carousel.is-ready .carousel-stage{display:block;position:relative;height:clamp(280px,43vw,620px);overflow:clip;perspective:1200px;touch-action:pan-y}
.store-carousel.is-ready .carousel-card{position:absolute;left:50%;top:30px;width:58%;margin-left:-29%;transform-origin:center;backface-visibility:hidden;will-change:transform,opacity}
.store-carousel.is-ready .carousel-card img{box-shadow:0 14px 30px #17180e15}
.store-carousel.is-ready .carousel-card:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.store-carousel.is-ready .carousel-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:10px}
.carousel-controls button{border:0;background:transparent;color:var(--ink);width:44px;height:44px;font-size:22px}
.carousel-controls button:hover{background:#e8e1d5}
.carousel-count{font-size:12px;letter-spacing:.12em;font-variant-numeric:tabular-nums;min-width:50px;text-align:center}
@media(max-width:760px){.store-carousel{margin:0 -6.8%}.store-carousel.is-ready .carousel-stage{height:calc(56vw + 45px);min-height:235px}.store-carousel.is-ready .carousel-card{width:78%;margin-left:-39%;top:20px}.carousel-controls{margin-top:0}}
@media(prefers-reduced-motion:reduce){.store-carousel.is-ready .carousel-card{will-change:auto}}
