/* A continuous gallery: original proportions, one quiet, consistent horizon. */
.photo-showcase{padding:48px 0 64px;background:#fff;overflow:hidden}
.space-slider{--reel-height:clamp(360px,62svh,680px);width:100%;height:var(--reel-height);max-width:none;margin:0;background:#fff;transition:none}
.space-window{width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y}
.space-window::-webkit-scrollbar{display:none}
.space-track{height:100%;width:max-content;display:flex;gap:12px;transform:none!important;transition:none;will-change:auto;padding:0 var(--reel-pad,0px)}
.space-slide{flex:0 0 auto;min-width:0;width:calc(var(--reel-height) * var(--aspect,1.5));height:100%;min-height:0;max-height:none;scroll-snap-align:center;display:block}
.space-slide img{display:block;width:100%;height:100%;object-fit:contain}
.space-arrow{top:50%;width:42px;height:42px;border:1px solid #ffffff80;background:#15151530;box-shadow:none;backdrop-filter:blur(5px);border-radius:50%;font-size:26px;color:white;transform:translateY(-50%)}
.space-prev{left:24px}.space-next{right:24px}
.space-dots{bottom:18px;left:50%;transform:translateX(-50%);gap:2px;border-radius:20px;padding:2px 9px;background:#15151550;backdrop-filter:blur(5px)}
.space-dots button{width:16px;height:24px}.space-dots button:after{width:4px;height:4px;top:10px;left:6px;background:#ffffff70}.space-dots button[aria-pressed="true"]:after{background:white;transform:scale(1.4)}
.space-play{bottom:18px;right:24px;width:30px;height:30px;border-radius:50%;background:#15151550;color:#fff}
@media(max-width:700px){.photo-showcase{padding:26px 0 36px}.space-slider{--reel-height:clamp(320px,55svh,480px)}.space-track{gap:8px}.space-arrow{width:32px;height:32px;font-size:22px}.space-prev{left:12px}.space-next{right:12px}.space-play{right:12px;bottom:14px}.space-dots{bottom:14px}}

/* Edge-to-edge single-image frames, with responsive cropping. */
.photo-showcase{padding:0;background:#fff}
.space-slider{position:relative;width:100%;height:auto;aspect-ratio:16/9}
.space-window{position:relative;height:100%}
.space-track{position:relative;width:100%;height:100%;gap:0;padding:0}
.space-slide{margin:0;flex:0 0 100%;width:100%;height:100%;scroll-snap-align:start}
.space-slide img{width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:700px){.photo-showcase{padding:0}.space-slider{aspect-ratio:4/3}.space-track{gap:0}.space-dots{gap:0;padding:2px 5px}.space-dots button{width:14px}.space-dots button:after{left:5px}.space-play{bottom:50px}}
