/* Geometry follows the inward curved ring; clipping is outside the perspective scene. */
.story-carousel{position:relative;background:#fff;width:var(--story-viewport-width,100%);max-width:none;margin-left:calc(50% - var(--story-viewport-width,100%) / 2);margin-right:calc(50% - var(--story-viewport-width,100%) / 2);padding-top:5px;color:var(--ink)}.story-carousel-viewport{width:100%;height:470px;overflow:clip;position:relative}.story-carousel-stage{position:relative;width:100%;height:100%;perspective:1325px;perspective-origin:50% 50%;transform-style:preserve-3d;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}.story-carousel-stage.is-grabbing{cursor:grabbing}.story-carousel-ring{position:absolute;left:50%;top:50%;width:0;height:0;transform-style:preserve-3d;will-change:transform}.story-carousel-card.gallery-card{position:absolute;left:-110.8px;top:-138.5px;width:221.6px;height:277px;padding:0!important;margin:0;border:0;border-radius:12px;background:#eee8e1;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform-style:preserve-3d;cursor:inherit;overflow:visible;box-shadow:none;text-align:left;touch-action:pan-y}.story-carousel-card.gallery-card .photo{position:absolute;inset:0;width:100%;height:100%;border-radius:12px;transform:none!important;transition:none;overflow:hidden;background-size:300% auto}.story-carousel-card.gallery-card:hover{padding:0;transform:none}.story-carousel-card.gallery-card:hover .photo{transform:none!important}.story-carousel-card:focus-visible{outline:3px solid #a980cc;outline-offset:5px}.story-carousel-card .media-fallback-label{font-size:8px;top:9px;right:9px;padding:3px 5px}.story-carousel-card .media-play{width:45px;height:45px;font-size:17px}.story-carousel-stage:focus-visible{outline:2px solid #e0cee9;outline-offset:-5px}.story-carousel-bottom{width:min(1240px,calc(100% - 96px));margin:12px auto 0;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.story-carousel-hint{grid-column:1/-1;text-align:center;display:flex;justify-content:center;align-items:center;gap:12px;color:#9a8aa5;font-size:12px;margin:0 0 15px}.story-carousel-hint>span{font-size:21px;color:#a590b4}.story-carousel-controls{display:flex;gap:10px;align-self:start}.story-carousel-controls>button{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid #e3d9eb;background:white;color:#796688;font-size:21px;transition:background .2s}.story-carousel-controls>button:hover{background:#f6f1fa}
@media(max-width:1150px){.story-carousel-bottom{width:calc(100% - 56px)}}
@media(max-width:600px){.story-carousel-viewport{height:350px}.story-carousel-stage{perspective:450px;perspective-origin:50% 50%}.story-carousel-card.gallery-card{width:119.333px;height:179px;left:-59.6665px;top:-89.5px;border-radius:9px}.story-carousel-card.gallery-card .photo{border-radius:9px}.story-carousel-card .media-fallback-label{font-size:6px;padding:2px 4px;top:6px;right:6px}.story-carousel-card .media-play{width:32px;height:32px;font-size:13px}.story-carousel-bottom{width:calc(100% - 40px);margin-top:0;gap:20px 10px}.story-carousel-hint{font-size:10px;gap:10px;margin-bottom:2px}.story-carousel-hint>span{font-size:18px}.story-carousel-controls{gap:6px}.story-carousel-controls>button{width:33px;height:33px;font-size:17px}.story-carousel-stage:focus-visible{outline-offset:-2px}}
@media(prefers-reduced-motion:reduce){.story-carousel-controls>button{transition:none}}


/* Uncaptioned fashion gallery. Empty slots intentionally contain no sample photography. */
.story-carousel-card.gallery-card{background:#f0efee;box-shadow:inset 0 0 0 1px #27232c06}
.story-carousel-card:nth-child(3n+2){background:#efeeed}
.story-carousel-card:nth-child(3n+3){background:#f2f1f0}
.story-photo{position:absolute;inset:0;border-radius:inherit;overflow:hidden}
.story-photo>img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.story-carousel-card.is-empty .media-play{display:none}
.story-carousel-bottom{display:flex;justify-content:center;align-items:center;gap:28px;margin-top:12px}
.story-carousel-hint{margin:0;font-size:13px}
.story-carousel-controls{align-self:center}
.story-photo-viewer #galleryCaption{display:none}
.story-photo-viewer #galleryImage{background:#f4f3f2}
.story-photo-viewer #galleryImage>img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:600px){.story-carousel-bottom{flex-direction:column;gap:14px}.story-carousel-hint{font-size:12px}}
