/* Wenckebachfonds Fotomozaïek. All selectors are namespaced to avoid theme conflicts. */
.wfm-gallery {width:100%;max-width:100%;display:flex;flex-direction:column;gap:var(--wfm-gap,12px);box-sizing:border-box;}
.wfm-gallery *, .wfm-modal * {box-sizing:border-box;}
.wfm-gallery .wfm-row {width:100%;min-width:0;margin:0;}
.wfm-gallery .wfm-tiles {width:100%;height:var(--wfm-row-height,350px);display:grid;gap:var(--wfm-gap,12px);grid-auto-flow:row;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);}
.wfm-gallery .wfm-item {min-width:0;min-height:0;width:100%;height:100%;margin:0;display:flex;flex-direction:column;overflow:hidden;}
/* The FRAME owns all four corners and the colored edge. The photo inside is
   cropped to fit, not scaled down to show its full original aspect ratio. */
.wfm-gallery .wfm-photo-frame {position:relative;display:block;flex:1 1 0%;width:100%;min-width:0;min-height:0;overflow:hidden;border:var(--wfm-border-width,0px) solid var(--wfm-border-color,#ffffff);border-radius:var(--wfm-radius,8px);background:#e4e4e4;box-sizing:border-box;isolation:isolate;}
.wfm-gallery .wfm-tile {position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;overflow:hidden;border:0;border-radius:0;background:transparent;outline-offset:3px;cursor:zoom-in;text-decoration:none;}
.wfm-gallery button.wfm-tile {appearance:none;-webkit-appearance:none;padding:0;margin:0;border:0;box-shadow:none;font:inherit;line-height:normal;text-align:initial;color:inherit;max-width:none;}
.wfm-gallery button.wfm-tile:hover,.wfm-gallery button.wfm-tile:focus {background:transparent;box-shadow:none;}
.wfm-gallery .wfm-photo-frame:focus-within {outline:2px solid currentColor;outline-offset:2px;}
.wfm-gallery .wfm-image {display:block;width:100%;height:100%;max-width:none;max-height:none;min-width:0;min-height:0;object-fit:cover;object-position:var(--wfm-x,50%) var(--wfm-y,50%);margin:0;padding:0;box-shadow:none;border:0;border-radius:0;transition:transform .35s ease;}
.wfm-gallery .wfm-zoom {position:absolute;right:10px;bottom:10px;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s;background:rgba(0,0,0,.55);color:#fff;font:normal 22px/1 sans-serif;padding:8px 10px;border-radius:6px;}
.wfm-gallery .wfm-tile:hover .wfm-zoom,.wfm-gallery .wfm-tile:focus-visible .wfm-zoom {opacity:1;transform:translateY(0);}
.wfm-gallery .wfm-tile:hover .wfm-image {transform:scale(1.025);}
.wfm-gallery .wfm-caption {font:normal 14px/1.5 inherit;color:inherit;padding:7px 1px 2px;flex:0 0 auto;}
.wfm-gallery .wfm-blank {display:block;min-width:0;min-height:0;}
.wfm-gallery[data-lightbox="0"] .wfm-tile {cursor:default;}
.wfm-gallery[data-lightbox="0"] .wfm-zoom {display:none;}
.wfm-gallery[data-lightbox="0"] .wfm-image {transition:none;}
.wfm-gallery[data-lightbox="0"] .wfm-tile:hover .wfm-image {transform:none;}
/* Each row has its own layout, so any number of templates can be combined. */
.wfm-gallery .wfm-layout-single-portrait {max-width:420px;}
.wfm-gallery .wfm-layout-two-landscape .wfm-tiles,.wfm-gallery .wfm-layout-two-portrait .wfm-tiles {grid-template-columns:repeat(2,minmax(0,1fr));}
.wfm-gallery .wfm-layout-two-portrait {max-width:700px;}
.wfm-gallery .wfm-layout-three .wfm-tiles,.wfm-gallery .wfm-layout-three-portrait .wfm-tiles {grid-template-columns:repeat(3,minmax(0,1fr));}
.wfm-gallery .wfm-layout-three-portrait {max-width:870px;}
.wfm-gallery .wfm-layout-mixed .wfm-tiles {grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr) minmax(0,.85fr);}
.wfm-gallery .wfm-layout-feature-left .wfm-tiles {grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr));}
.wfm-gallery .wfm-layout-feature-left .wfm-tiles > :first-child {grid-row:1 / span 2;}
.wfm-gallery .wfm-layout-feature-right .wfm-tiles {grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);grid-template-rows:repeat(2,minmax(0,1fr));}
.wfm-gallery .wfm-layout-feature-right .wfm-tiles > :nth-child(3) {grid-column:2;grid-row:1 / span 2;}
.wfm-gallery .wfm-layout-four .wfm-tiles {grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));}
.wfm-gallery .wfm-layout-five .wfm-tiles {grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));}
.wfm-gallery .wfm-layout-five .wfm-tiles > :first-child {grid-row:1 / span 2;}
@media (max-width:720px) {
    .wfm-gallery .wfm-row {max-width:100%;}
    .wfm-gallery .wfm-tiles,.wfm-gallery .wfm-layout-two-landscape .wfm-tiles,.wfm-gallery .wfm-layout-two-portrait .wfm-tiles,.wfm-gallery .wfm-layout-three .wfm-tiles,.wfm-gallery .wfm-layout-three-portrait .wfm-tiles,.wfm-gallery .wfm-layout-mixed .wfm-tiles,.wfm-gallery .wfm-layout-feature-left .wfm-tiles,.wfm-gallery .wfm-layout-feature-right .wfm-tiles,.wfm-gallery .wfm-layout-four .wfm-tiles,.wfm-gallery .wfm-layout-five .wfm-tiles {height:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;grid-auto-flow:row;}
    .wfm-gallery .wfm-tiles > * {grid-column:auto!important;grid-row:auto!important;}
    .wfm-gallery .wfm-item,.wfm-gallery .wfm-blank {height:auto;aspect-ratio:4/3;}
    .wfm-gallery .wfm-layout-two-portrait .wfm-item,.wfm-gallery .wfm-layout-three-portrait .wfm-item,.wfm-gallery .wfm-layout-mixed .wfm-item:first-child,.wfm-gallery .wfm-layout-mixed .wfm-item:last-child {aspect-ratio:3/4;}
    .wfm-gallery .wfm-layout-single-portrait .wfm-tiles,.wfm-gallery .wfm-layout-single-landscape .wfm-tiles {grid-template-columns:minmax(0,1fr);}
    .wfm-gallery .wfm-layout-single-portrait .wfm-item {aspect-ratio:3/4;max-height:630px;}
}
@media (max-width:480px) {
    .wfm-gallery .wfm-tiles,.wfm-gallery .wfm-layout-two-landscape .wfm-tiles,.wfm-gallery .wfm-layout-two-portrait .wfm-tiles,.wfm-gallery .wfm-layout-three .wfm-tiles,.wfm-gallery .wfm-layout-three-portrait .wfm-tiles,.wfm-gallery .wfm-layout-mixed .wfm-tiles,.wfm-gallery .wfm-layout-feature-left .wfm-tiles,.wfm-gallery .wfm-layout-feature-right .wfm-tiles,.wfm-gallery .wfm-layout-four .wfm-tiles,.wfm-gallery .wfm-layout-five .wfm-tiles {grid-template-columns:minmax(0,1fr);}
    .wfm-gallery .wfm-item {aspect-ratio:4/3;}
    .wfm-gallery .wfm-layout-two-portrait .wfm-item,.wfm-gallery .wfm-layout-three-portrait .wfm-item,.wfm-gallery .wfm-layout-single-portrait .wfm-item,.wfm-gallery .wfm-layout-mixed .wfm-item:first-child,.wfm-gallery .wfm-layout-mixed .wfm-item:last-child {aspect-ratio:3/4;}
}
/* 1024 × 768 is the maximum image stage; the full photograph is never cropped. */
body.wfm-modal-open {overflow:hidden!important;}
.wfm-modal {position:fixed;z-index:2147483000;inset:0;display:flex;align-items:center;justify-content:center;padding:14px;opacity:0;pointer-events:none;transition:opacity var(--wfm-enter,450ms) ease;}
.wfm-modal[hidden] {display:none!important;}
.wfm-modal.is-open {opacity:1;pointer-events:auto;}
.wfm-modal.is-closing {opacity:0;pointer-events:none;transition-duration:var(--wfm-exit,400ms);}
.wfm-modal-shade {position:absolute;inset:0;background:var(--wfm-overlay-color,rgba(0,0,0,.88));}
.wfm-modal-inner {position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:calc(100vw - 32px);max-height:calc(100dvh - 28px);color:#fff;font:normal 15px/1.5 Arial,Helvetica,sans-serif;}
.wfm-modal-stage {display:flex;justify-content:center;align-items:center;width:min(1024px,calc(100vw - 106px));height:min(768px,calc(100dvh - 116px));max-height:768px;background:rgba(25,25,25,.2);border-radius:4px;}
.wfm-modal-image {display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;opacity:1;transition:opacity 180ms ease;box-shadow:0 10px 40px rgba(0,0,0,.25);}
.wfm-modal-image.wfm-switching {opacity:0;}
.wfm-modal button {color:#fff;border:0;box-shadow:none;cursor:pointer;display:grid;place-items:center;background:rgba(30,30,30,.65);transition:background .2s ease;text-decoration:none;font-family:Arial,Helvetica,sans-serif;}
.wfm-modal button:hover,.wfm-modal button:focus-visible {background:rgba(68,68,68,.94);color:#fff;}
.wfm-modal button:focus-visible {outline:2px solid #fff;outline-offset:3px;}
.wfm-modal button[hidden] {display:none!important;}
.wfm-modal-close {position:absolute;z-index:2;top:-13px;right:0;width:42px;height:42px;border-radius:50%;font-size:31px;font-weight:300;line-height:1;}
.wfm-modal-prev,.wfm-modal-next {position:absolute;top:calc(50% - 15px);transform:translateY(-50%);width:42px;height:64px;font-size:45px;line-height:1;border-radius:5px;z-index:2;}
.wfm-modal-prev {left:-50px;}
.wfm-modal-next {right:-50px;}
.wfm-modal-foot {align-self:stretch;display:flex;gap:16px;align-items:flex-start;justify-content:space-between;min-height:33px;padding:8px 0 0;color:#f6f6f6;}
.wfm-modal-caption {margin:0;padding:0;flex:1;overflow-wrap:anywhere;font:normal 14px/1.45 Arial,Helvetica,sans-serif;color:#f6f6f6;}
.wfm-modal-count {margin-left:auto;white-space:nowrap;opacity:.82;font:normal 13px/1.5 Arial,Helvetica,sans-serif;}
@media (max-width:700px) {
    .wfm-modal {padding:8px;}
    .wfm-modal-stage {width:calc(100vw - 48px);height:min(768px,calc(100dvh - 126px));}
    .wfm-modal-prev,.wfm-modal-next {top:calc(50% - 8px);width:40px;height:52px;font-size:36px;}
    .wfm-modal-prev {left:-5px;}
    .wfm-modal-next {right:-5px;}
    .wfm-modal-close {right:3px;top:-8px;}
    .wfm-modal-foot {padding:7px 8px;}
}
@media (prefers-reduced-motion:reduce) {
    .wfm-gallery .wfm-image,.wfm-gallery .wfm-zoom,.wfm-modal,.wfm-modal-image {transition-duration:0ms!important;animation:none!important;}
}
