/* Media enhancement only; existing card geometry and action positions are unchanged. */
.stepup-shop .stepup-card-media[data-stepup-media-ready] > .stepup-card-image-link { touch-action: pan-y pinch-zoom; }
.stepup-shop .stepup-card-media-layer { position: absolute; inset: 0; opacity: 0; transition: opacity 200ms ease; pointer-events: none; }
.stepup-shop .stepup-card-media-layer.is-current { opacity: 1; }
.stepup-shop .stepup-card-media-dots { position: absolute; inset: auto 0 60px; display: flex; justify-content: center; margin-inline: auto; width: max-content; max-width: 100%; z-index: 2; }
.stepup-shop .stepup-card-media-dots[hidden] { display: none; }
.stepup-shop .stepup-card-media-dots button { display: inline-flex; align-items: center; justify-content: center; width: 24px; min-width: 24px; height: 24px; padding: 0; margin: 0; border: 0; background: transparent; cursor: pointer; }
.stepup-shop .stepup-card-media-dots span { width: 4px; height: 4px; border-radius: 50%; background: #faf9f6; border: 1px solid #555; box-sizing: content-box; }
.stepup-shop .stepup-card-media-dots [aria-pressed="true"] span { background: #191919; border-color: #191919; }
.stepup-shop .stepup-card-media-dots button:focus-visible { outline: 2px solid #dc1a2e; outline-offset: -2px; }
.stepup-shop .stepup-card-media-dots button:disabled { opacity: .35; cursor: default; }
@media(prefers-reduced-motion:reduce) { .stepup-shop .stepup-card-media-layer { transition: none; } }
