
.coverflow{--flow-width:min(52vw,660px);padding:35px 0 48px;overflow:hidden;}
.flow-track{display:flex;gap:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding:34px calc((100% - var(--flow-width))/2);align-items:center;outline-offset:-5px;-webkit-overflow-scrolling:touch;}
.flow-track::-webkit-scrollbar{display:none}
.flow-slide{flex:0 0 var(--flow-width);width:var(--flow-width);scroll-snap-align:center;scroll-snap-stop:always;position:relative;margin-right:calc(var(--flow-width) * -.52);}.flow-slide:last-child{margin-right:0}
.flow-image{height:min(44vw,540px);transform:perspective(1200px) translateX(var(--shift,0px)) rotateY(var(--angle,0deg)) scale(var(--scale,1));transform-origin:center;will-change:transform;}
.flow-image img{display:block;width:100%;height:100%;object-fit:contain;max-height:none;filter:none;}
.flow-caption{text-align:center;font:inherit;font-size:13px;line-height:1.5;margin:8px 20px 12px;color:inherit}.flow-controls{display:flex;justify-content:center;gap:14px;margin-top:5px;}
.flow-controls button{width:44px;height:44px;border:1px solid #c9c9c1;border-radius:50%;background:transparent;color:inherit;font:inherit;font-size:22px;cursor:pointer;}
.flow-controls button:hover{background:#e9e8e2}.flow-controls button:focus-visible,.flow-track:focus-visible{outline:2px solid #6f372c}.flow-controls button:disabled{opacity:.25;cursor:default}
@media(max-width:700px){.coverflow{--flow-width:72vw;padding:12px 0 28px}.flow-track{padding-top:22px;padding-bottom:22px}.flow-image{height:95vw;max-height:480px}.flow-controls{gap:10px}}
@media(prefers-reduced-motion:reduce){.flow-image{transform:none!important;will-change:auto}.flow-track{scroll-behavior:auto!important}}

/* Controls remain keyboard-accessible without visible buttons beneath the gallery. */
.flow-controls{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.flow-controls:focus-within{position:relative;width:auto;height:auto;margin:12px 0;overflow:visible;clip:auto}

.flow-image{backface-visibility:hidden;transition:transform 120ms linear,opacity 140ms linear}.flow-track{cursor:grab}.flow-track.is-dragging{cursor:grabbing;scroll-snap-type:none!important}.flow-track.is-dragging .flow-image{transition:none}.flow-track img{user-select:none;-webkit-user-drag:none}@media(prefers-reduced-motion:reduce){.flow-image{transition:none!important}}
.flow-pause{display:block;margin:10px auto 0;border:0;background:none;font:inherit;font-size:14px;width:32px;height:32px;color:#76766e;cursor:pointer}.flow-pause[hidden]{display:none}.flow-pause:focus-visible{outline:2px solid #6f372c}.flow-slide{scroll-snap-stop:normal}

.flow-image img{filter:drop-shadow(0 5px 4px rgba(36,34,29,.055))}

/* Keep dragging a gallery gesture, never a document selection. */
.flow-track,.flow-slide,.flow-image,.flow-image img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.flow-track.is-recentering .flow-image{transition:none!important}.flow-slide::selection,.flow-image::selection,.flow-image img::selection{background:transparent}

/* No visible player UI; keyboard users retain a focus-revealed pause action. */
.flow-pause:not(:focus-visible){position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}

.gallery-crop{position:relative;overflow:hidden;height:100%;margin:auto;max-width:100%}.gallery-crop--timber{aspect-ratio:1550/1720}.gallery-crop--stone{aspect-ratio:1557/1715}.gallery-crop img{position:absolute!important;top:0;height:auto!important;max-height:none!important;max-width:none!important;object-fit:initial!important}.gallery-crop--timber img{width:104.516129%!important;left:0}.gallery-crop--stone img{width:102.247913%!important;left:-2.247913%}

.flow-track:focus:not(:focus-visible),.flow-track.is-dragging{outline:none!important}.flow-track:focus-visible{outline:2px solid #6f372c;outline-offset:-5px}
