.photo-carousel-window{overflow:hidden;border-radius:22px;touch-action:pan-y}
.photo-carousel-track{display:flex;gap:20px;transform:translateX(0)}
.photo-carousel-track>button{flex:0 0 calc((100% - 40px)/3);min-width:0;aspect-ratio:4/3;border:0;padding:0;overflow:hidden;border-radius:22px;background:var(--line);cursor:zoom-in}
.photo-carousel-track img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.photo-carousel-track>button:hover img{transform:scale(1.035)}
.photo-carousel-track>button:focus-visible{outline-offset:-5px}
.photo-carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:22px}
.photo-carousel-controls>span{margin-right:auto;font-size:12px;letter-spacing:.14em;color:var(--muted);font-variant-numeric:tabular-nums}
.photo-carousel-controls button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);font-size:22px;transition:background .2s}
.photo-carousel-controls button:hover{background:var(--blue);color:#172a33}
.photo-carousel-controls [data-carousel-pause]{font-size:15px}
@media(max-width:600px){.photo-carousel-track{gap:12px}.photo-carousel-track>button{flex-basis:100%;aspect-ratio:4/3}.photo-carousel-window,.photo-carousel-track>button{border-radius:18px}}
@media(prefers-reduced-motion:reduce){.photo-carousel-track img{transition:none}}
