/* Progressive enhancement: the original grid remains available without JavaScript. */
.gallery-coverflow .gallery-grid{display:block;position:relative;height:clamp(300px,34vw,430px);perspective:1200px;overflow:hidden;isolation:isolate;touch-action:pan-y;background:radial-gradient(ellipse at 50% 95%,#c9c3b650,transparent 65%);border-radius:18px}
.gallery-coverflow .gallery-item,.gallery-coverflow .gallery-item.wide{position:absolute;left:50%;top:50%;width:min(70%,640px);height:calc(100% - 48px);grid-row:auto;border-radius:12px;border:1px solid #aaa49a60;background:#dedad3;box-shadow:0 14px 28px #292a2d24;transform:translate(-50%,-50%) translateX(calc(var(--offset)*68%)) rotateY(calc(var(--side)*-38deg)) scale(var(--scale));transform-origin:center;z-index:var(--layer);opacity:var(--opacity);transition:transform .42s ease,opacity .32s ease,box-shadow .32s ease;backface-visibility:hidden}
.gallery-coverflow .gallery-item[data-far=true]{visibility:hidden;pointer-events:none}
.gallery-coverflow .gallery-item img{width:100%;height:100%;object-fit:contain!important;object-position:center!important;transform:none!important;user-select:none;-webkit-user-drag:none}
.gallery-coverflow .gallery-item>span{display:none}
.gallery-coverflow .gallery-item[data-active=true]{box-shadow:0 18px 38px #292a2d30;border-color:#aaa49a}
.gallery-coverflow .gallery-item:focus-visible{outline:3px solid #292a2d;outline-offset:5px}
.gallery-flow-controls{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:20px auto 0;max-width:960px}
.gallery-flow-info{min-width:0}.gallery-flow-count{font-size:12px;letter-spacing:.12em;color:#55565a;margin:0 0 6px}.gallery-flow-caption{font-size:22px;font-weight:500;line-height:1.3;margin:0}.gallery-flow-help{font-size:13px;color:#55565a;margin:8px 0 0}
.gallery-flow-arrows{display:flex;gap:10px;flex-shrink:0}.gallery-flow-arrows button{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;border:1px solid #8a867f;background:transparent;color:#292a2d;font-size:24px;line-height:1}
.gallery-flow-arrows button:hover{background:#e4dfd8}.gallery-flow-arrows button:disabled{opacity:.35;cursor:default}
.gallery-flow-dots{display:flex;justify-content:center;gap:0;flex-wrap:wrap;margin-top:16px}.gallery-flow-dots button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none;border-radius:50%}.gallery-flow-dots button::after{content:'';width:7px;height:7px;border-radius:50%;background:#868078;transition:width .2s}.gallery-flow-dots button[aria-current=true]::after{width:24px;height:7px;border-radius:8px;background:#292a2d}
@media(max-width:600px){.gallery-coverflow{padding-left:5%;padding-right:5%}.gallery-coverflow .gallery-grid{height:320px;margin-inline:-3%;perspective:850px}.gallery-coverflow .gallery-item,.gallery-coverflow .gallery-item.wide{width:78%;height:260px;transform:translate(-50%,-50%) translateX(calc(var(--offset)*70%)) rotateY(calc(var(--side)*-28deg)) scale(var(--scale))}.gallery-flow-controls{gap:12px;align-items:flex-start}.gallery-flow-caption{font-size:20px}.gallery-flow-arrows{gap:6px}.gallery-flow-arrows button{width:44px;height:44px}.gallery-flow-help{max-width:250px}}
@media(prefers-reduced-motion:reduce){.gallery-coverflow .gallery-item,.gallery-coverflow .gallery-item.wide{transition:none;transform:translate(-50%,-50%) translateX(calc(var(--offset)*82%)) scale(var(--scale))}.gallery-flow-dots button::after{transition:none}}
@media(forced-colors:active){.gallery-flow-dots button::after{background:ButtonText}.gallery-flow-dots button[aria-current=true]{outline:2px solid Highlight}.gallery-coverflow .gallery-item{border:2px solid ButtonText}}

@media(max-width:360px){.gallery-flow-dots button{width:38px}}
