/* PF-PROJECTEN-AF-20261012: projectenpagina — rooster, filters, lichtbak, voor/na */
.pf-projecten{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
@media(min-width:768px){.pf-projecten{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}}
@media(min-width:1024px){.pf-projecten{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
.pf-projecten figure[hidden]{display:none!important}
.pf-projecten figcaption{font-size:.85rem;line-height:1.4;margin-top:6px;overflow-wrap:anywhere}
.pf-projecten figcaption a{color:#0E5F8F;font-weight:700}
.pfp-open{display:block;width:100%;padding:0;margin:0;border:0;background:none;cursor:zoom-in;border-radius:10px}
.pfp-open:focus-visible{outline:3px solid #0E5F8F;outline-offset:3px}
.pfp-open img{transition:opacity .2s ease}
.pfp-open:hover img{opacity:.88}

.pfp-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.pfp-filters[hidden]{display:none}
.pfp-filter{min-height:44px;padding:8px 16px;border-radius:999px;border:1.5px solid #c9d6e2;background:#fff;color:#1f2a37;font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;line-height:1.2}
.pfp-filter:hover{border-color:#0E5F8F;color:#0E5F8F}
.pfp-filter:focus-visible{outline:3px solid #0E5F8F;outline-offset:2px}
.pfp-filter[aria-pressed="true"]{background:#0E5F8F;border-color:#0E5F8F;color:#fff}
.pfp-filter .pfp-n{font-weight:400;opacity:.8;margin-left:4px}
.pfp-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.pfp-voorna{padding:48px 0;background:#f4f7fa}
.pfp-voorna[hidden]{display:none}
.pfp-pairs{display:grid;grid-template-columns:1fr;gap:22px}
@media(min-width:900px){.pfp-pairs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pfp-pair{margin:0;background:#fff;border-radius:14px;padding:12px;box-shadow:0 8px 24px rgba(20,30,45,.08)}
.pfp-pair-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pfp-pair-row figure{margin:0;position:relative}
.pfp-pair-row img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.pfp-tag{position:absolute;left:8px;top:8px;background:rgba(20,30,45,.82);color:#fff;font-size:.75rem;font-weight:700;padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}
.pfp-pair>figcaption{font-size:.9rem;margin-top:10px;color:#1f2a37;font-weight:600}

.pfp-lb{position:fixed;inset:0;z-index:2000;background:rgba(10,16,24,.94);display:flex;align-items:center;justify-content:center;padding:56px 12px 72px;touch-action:pan-y}
.pfp-lb[hidden]{display:none}
.pfp-lb-fig{margin:0;max-width:min(1100px,100%);max-height:100%;display:flex;flex-direction:column;align-items:center;min-width:0}
.pfp-lb-img{display:block;max-width:100%;max-height:calc(100vh - 170px);max-height:calc(100dvh - 170px);width:auto;height:auto;object-fit:contain;border-radius:8px;background:#111}
.pfp-lb-cap{color:#e8edf2;font-size:.92rem;line-height:1.45;text-align:center;margin-top:12px;max-width:760px;overflow-wrap:anywhere}
.pfp-lb-cap .pfp-lb-n{display:block;color:#9fb0c1;font-size:.8rem;margin-top:4px}
.pfp-lb-btn{position:absolute;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:26px;line-height:48px;text-align:center;cursor:pointer;padding:0}
.pfp-lb-btn:hover{background:rgba(255,255,255,.26)}
.pfp-lb-btn:focus-visible{outline:3px solid #fff;outline-offset:2px}
.pfp-lb-close{top:10px;right:10px}
.pfp-lb-prev{left:10px;top:50%;transform:translateY(-50%)}
.pfp-lb-next{right:10px;top:50%;transform:translateY(-50%)}
@media(max-width:767px){.pfp-lb-prev,.pfp-lb-next{top:auto;bottom:12px;transform:none}.pfp-lb-prev{left:calc(50% - 60px)}.pfp-lb-next{right:calc(50% - 60px)}}
html.pfp-lb-open,html.pfp-lb-open body{overflow:hidden}
@media(prefers-reduced-motion:reduce){.pfp-open img{transition:none}}
.pfp-voorna-head{text-align:center;max-width:700px;margin:0 auto 22px}
.pfp-voorna-head h2{font-size:2rem;margin:9px 0 0}
@media(max-width:767px){
.pfp-filters{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -22px 16px;padding:2px 22px 8px;scroll-padding:0 22px}
.pfp-filters::-webkit-scrollbar{display:none}
.pfp-filter{flex:0 0 auto;white-space:nowrap}
.pfp-voorna-head h2{font-size:1.6rem}
}
