.product-carousel{padding:10px 10px 8px;overflow:hidden}
.carousel-stage{position:relative;border:1px solid #e5e9ef;border-radius:12px;overflow:hidden;background:#f5f7fa;aspect-ratio:16/9}
.carousel-slide{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s ease}
.carousel-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.product-carousel .carousel-slide .hero-shot-link{height:100%}
.product-carousel .carousel-slide img{width:100%!important;height:100%!important;aspect-ratio:16/9!important;object-fit:contain!important;object-position:center!important;border:0;border-radius:0;background:#f5f7fa}
.product-carousel figcaption{min-height:67px;padding:14px 10px 8px}
.carousel-controls{display:flex;align-items:center;justify-content:center;gap:17px;padding:3px 4px 2px}
.carousel-arrow{display:grid;width:31px;height:31px;place-items:center;padding:0;border:1px solid #d5dde7;border-radius:50%;background:#fff;color:#26364d;font-size:25px;line-height:1;cursor:pointer;box-shadow:0 4px 10px rgba(16,27,46,.09);transition:transform .16s,background .16s,color .16s,border-color .16s}
.carousel-arrow:hover,.carousel-arrow:focus-visible{background:#101b2e;border-color:#101b2e;color:#fff;transform:translateY(-1px)}
.carousel-dots{display:flex;align-items:center;gap:9px}
.carousel-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#c2cbd6;cursor:pointer;transition:width .2s,background .2s}
.carousel-dots button.is-active{width:26px;border-radius:10px;background:#e52420}
.carousel-dots button:focus-visible{outline:3px solid rgba(229,36,32,.25);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.carousel-slide{transition:none}}
@media(max-width:600px){.product-carousel{padding:6px}.product-carousel figcaption{min-height:91px;padding:11px 7px 6px}.carousel-controls{padding-bottom:3px}.carousel-arrow{width:34px;height:34px}}
