/* Bosstad – soepele fotoviewer op de fietspagina (2026-11-03). Zie novamira-sandbox/bosstad-fotoviewer.php */

.bt-gallery__main{cursor:zoom-in}
.bt-gallery__main img{transition:opacity .12s ease}
.bt-gallery__thumb{cursor:pointer}

html.bs-fv-open,html.bs-fv-open body{overflow:hidden}

.bs-fv{position:fixed;inset:0;z-index:100000;background:#fff;opacity:0;visibility:hidden;transition:opacity .16s ease,visibility 0s linear .16s;-webkit-tap-highlight-color:transparent}
.bs-fv.is-open{opacity:1;visibility:visible;transition:opacity .16s ease}

.bs-fv__stage{position:absolute;inset:0;margin:0;display:flex;align-items:center;justify-content:center;padding:64px 96px 118px;box-sizing:border-box;cursor:zoom-out;touch-action:pan-y}
.bs-fv__img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transform:scale(.985);transition:transform .2s ease,opacity .12s ease;user-select:none;-webkit-user-drag:none}
.bs-fv.is-open .bs-fv__img{transform:none}
.bs-fv__img.is-wissel{opacity:.25}

.bs-fv button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#1C2022}
.bs-fv button:focus-visible{outline:2px solid #2E9E92;outline-offset:2px}
.bs-fv svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.bs-fv .bs-fv__x{position:absolute;top:16px;right:16px;z-index:2;width:44px;height:44px;border-radius:50%;background:#fff;box-shadow:0 2px 12px rgba(28,32,34,.10)}
.bs-fv .bs-fv__nav{position:absolute;top:50%;z-index:2;width:48px;height:48px;margin-top:-24px;border-radius:50%;background:#fff;box-shadow:0 2px 12px rgba(28,32,34,.10);transition:transform .12s ease}
.bs-fv .bs-fv__nav:hover{transform:scale(1.06)}
.bs-fv .bs-fv__nav--prev{left:24px}
.bs-fv .bs-fv__nav--next{right:24px}

.bs-fv__bar{position:absolute;left:0;right:0;bottom:18px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}
.bs-fv__cnt{font-size:13px;letter-spacing:.04em;color:#697478}
.bs-fv__strip{display:flex;gap:8px;pointer-events:auto;max-width:92vw;overflow-x:auto;padding:2px}
.bs-fv .bs-fv__t{width:58px;height:58px;border-radius:6px;background:#fff;border:1.5px solid #E3E4E2;overflow:hidden;flex:0 0 auto;opacity:.7;transition:opacity .12s,border-color .12s}
.bs-fv .bs-fv__t img{width:100%;height:100%;object-fit:contain}
.bs-fv .bs-fv__t.is-active,.bs-fv .bs-fv__t:hover{opacity:1;border-color:#2E9E92}

.bs-fv.bs-fv--een .bs-fv__nav,.bs-fv.bs-fv--een .bs-fv__bar{display:none}

@media (max-width:767px){
	.bs-fv__stage{padding:60px 0 104px}
	.bs-fv .bs-fv__nav{display:none}
	.bs-fv .bs-fv__x{top:12px;right:12px}
	.bs-fv .bs-fv__t{width:50px;height:50px}
}

@media (prefers-reduced-motion:reduce){
	.bs-fv,.bs-fv__img,.bt-gallery__main img{transition:none}
}

.bs-fv:focus{outline:none}
