.product-carousel{min-width:0}
.carousel-track{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;border-radius:26px;gap:0;isolation:isolate;scrollbar-width:thin}
.carousel-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;display:flex;align-items:stretch}
.carousel-slide>.feature-stage,.carousel-slide>.capture-stage{width:100%}
.capture-stage{margin:0;min-height:400px;padding:20px;border:1px solid #e8e3ef;border-radius:26px;display:flex;align-items:center;justify-content:center;min-width:0}
.capture-stage img{display:block;width:100%;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 8px 28px #22203614;user-select:none}
.is-ready .carousel-track{scrollbar-width:none}
.is-ready .carousel-track::-webkit-scrollbar{display:none}
.carousel-caption{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:45px;padding:8px 4px}
.carousel-caption p{margin:0;font-size:11px;line-height:1.5;color:#747080;word-break:keep-all}
.carousel-counter{flex-shrink:0;font-size:11px;letter-spacing:.08em;color:#4e455f;font-variant-numeric:tabular-nums}
.carousel-counter span{color:#aaa4b3;margin-left:4px}
.carousel-controls{display:none;align-items:center;justify-content:center;gap:15px}
.is-ready .carousel-controls{display:flex}
.carousel-arrow{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #e6e1ec;border-radius:50%;background:#fff;color:#6b587d;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.carousel-arrow .icon{width:17px;height:17px}
.carousel-arrow:hover:not(:disabled){background:#f0eaf7;border-color:#c9bbda;transform:translateY(-1px)}
.carousel-arrow:disabled{opacity:.3;cursor:default}
.carousel-dots{display:flex;align-items:center;gap:1px}
.carousel-dot{display:grid;place-items:center;width:26px;height:38px;padding:0;border:0;background:transparent;cursor:pointer}
.carousel-dot span{display:block;width:5px;height:5px;border-radius:10px;background:#d2cadc;transition:width .2s,background .2s}
.carousel-dot[aria-current=true] span{width:19px;background:#8c70a8}
.carousel-dot:hover span{background:#8c70a8}
.carousel-track:focus-visible,.carousel-arrow:focus-visible,.carousel-dot:focus-visible{outline:2px solid #8c70a8;outline-offset:4px}
@media(max-width:1100px){.capture-stage{min-height:385px;padding:16px}}
@media(max-width:860px){.capture-stage{min-height:410px;padding:24px}}
@media(max-width:600px){.capture-stage{min-height:340px;padding:10px}.carousel-arrow{width:44px;height:44px}.carousel-dot{height:44px}.carousel-caption{padding-inline:2px}.carousel-caption p{font-size:10px}.carousel-counter{font-size:10px}}
