/* WWJ Albums – front-end */
.pg-overview{margin:20px 0}
.pg-cat{margin:0 0 34px}
.pg-cat-title{margin:0 0 14px;font-size:1.4rem}

.pg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin:18px 0}
.pg-grid .pg-card,.pg-grid figure{margin:0;display:block;position:relative;overflow:hidden;border-radius:10px;aspect-ratio:1/1;background:#e9e9e9;cursor:pointer}
/* foto vult de hele tegel, ongeacht thema-CSS (Astra forceert vaak height:auto) */
.pg-grid .pg-card img,.pg-grid figure img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none;margin:0;object-fit:cover;display:block;transition:transform .35s ease}
.pg-grid .pg-card:hover img,.pg-grid figure:hover img{transform:scale(1.06)}
.pg-noimg{position:absolute;inset:0;display:block;width:100%;height:100%;background:repeating-linear-gradient(45deg,#eee,#eee 10px,#e3e3e3 10px,#e3e3e3 20px)}

.pg-grid figure:focus-visible,.pg-grid .pg-card:focus-visible{outline:3px solid #2271b1;outline-offset:2px}
.pg-card-title{position:absolute;left:0;right:0;bottom:0;padding:12px 14px;color:#fff;font-weight:600;line-height:1.2;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.pg-card-title em{font-style:normal;font-weight:400;opacity:.85;font-size:.85em}

/* download-knop op een foto */
.pg-gallery figure .pg-dl{position:absolute;top:8px;right:8px;width:34px;height:34px;line-height:34px;text-align:center;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:18px;text-decoration:none;opacity:0;transform:translateY(-4px);transition:opacity .2s ease,transform .2s ease}
.pg-gallery figure:hover .pg-dl,.pg-gallery figure:focus-within .pg-dl{opacity:1;transform:none}
.pg-dl:hover{background:rgba(0,0,0,.85);color:#fff}

/* lightbox */
.pg-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:99999}
.pg-lightbox.open{display:flex}
.pg-lightbox img{max-width:92vw;max-height:82vh;object-fit:contain;border-radius:4px}
.pg-lb-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.14);color:#fff;border:0;font-size:34px;width:56px;height:74px;cursor:pointer;border-radius:6px}
.pg-lb-btn:hover{background:rgba(255,255,255,.28)}
.pg-lb-prev{left:16px}.pg-lb-next{right:16px}
.pg-lb-close{position:absolute;top:16px;right:20px;background:none;border:0;color:#fff;font-size:42px;cursor:pointer;line-height:1}
.pg-lb-download{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);background:#fff;color:#111;padding:9px 18px;border-radius:30px;text-decoration:none;font-weight:600;font-size:.95rem}
.pg-lb-download:hover{background:#f0f0f0;color:#111}
.pg-lb-stage{margin:0;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.pg-lb-counter{color:#fff;opacity:.75;font-size:.85rem;margin-top:10px}
.pg-lightbox button:focus-visible,.pg-lightbox a:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* laad meer */
.pg-hidden{display:none!important}
.pg-load-more{display:block;margin:6px auto 24px;padding:11px 26px;border:0;border-radius:30px;background:#2271b1;color:#fff;font-weight:600;font-size:.95rem;cursor:pointer}
.pg-load-more:hover{background:#185a92}

@media(max-width:600px){
  .pg-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
  .pg-lb-btn{width:44px;height:60px;font-size:26px}
}
