/* Public gallery — compact thumbnails, responsive lightbox */
@media(min-width:701px) and (max-height:650px){
 body .gallery-page{padding:32px 4vw 40px;min-height:0}
}
.gallery-page{min-height:65vh;padding:125px 5vw 70px;max-width:1320px;margin:auto}.gallery-page h1{font-size:clamp(2rem,4vw,3.4rem);margin:10px 0}.gallery-page .center{margin-bottom:34px}.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.photo-tile{border:0;background:#181818;color:#eee;padding:0;cursor:pointer;overflow:hidden;text-align:left;border-radius:8px;display:block;min-width:0}.photo-tile img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .2s}.photo-tile:hover img,.photo-tile:focus-visible img{transform:scale(1.035)}.photo-tile span{display:block;font-size:12px;padding:8px 10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lightbox[hidden]{display:none!important}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:9999;display:flex;align-items:center;justify-content:center;padding:48px 70px;color:#fff}.lightbox figure{margin:0;max-width:100%;text-align:center}.lightbox figure img{display:block;max-width:100%;max-height:calc(100dvh - 130px);object-fit:contain;margin:auto}.lightbox figcaption{padding:12px;font-size:14px}.lightbox button{position:absolute;border:0;background:rgba(255,255,255,.13);color:#fff;cursor:pointer;border-radius:6px;font-size:38px;min-width:46px;min-height:50px}.lightbox button:focus-visible{outline:2px solid #fff}.lightbox-close{right:16px;top:14px}.lightbox-prev{left:12px;top:50%;transform:translateY(-50%)}.lightbox-next{right:12px;top:50%;transform:translateY(-50%)}.lightbox-count{position:absolute;bottom:12px;font-size:13px;color:#ddd}@media(max-width:800px){.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}}@media(max-width:520px){.gallery-page{padding:110px 14px 40px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lightbox{padding:60px 45px}.lightbox button{font-size:30px;min-width:35px;min-height:42px}.lightbox-prev{left:3px}.lightbox-next{right:3px}}
