/* gallery page */

.gal-banner{background:linear-gradient(105deg,rgba(0,0,0,.8),rgba(0,0,0,.35)),#0b1929;padding:110px 20px 60px;text-align:center;font-family:'Poppins',sans-serif}
.gal-banner h1{font-family:'Playfair Display',serif;font-size:clamp(2rem,4vw,3rem);font-weight:900;color:#fff;margin:0 0 14px}
.gal-banner h1 span{color:#f5a623}
.gal-crumb{display:flex;justify-content:center;gap:8px;font-size:13px;color:rgba(255,255,255,.7)}
.gal-crumb a{color:#f5a623;text-decoration:none}
.gal-wrap{max-width:1300px;margin:0 auto;padding:50px 20px 70px}
.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.gal-item{border-radius:14px;overflow:hidden;background:#f7f7f7;box-shadow:0 4px 18px rgba(0,0,0,.08);cursor:pointer;transition:transform .25s}
.gal-item:hover{transform:translateY(-4px)}
.gal-item img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.gal-cap{padding:12px 14px;font-family:'Lora',serif}
.gal-cap strong{display:block;color:#111;font-size:15px}
.gal-cap span{color:#666;font-size:13px}
.gal-empty{text-align:center;color:#666;padding:40px 0}
.gal-lb{position:fixed;inset:0;background:rgba(0,0,0,.9);display:none;align-items:center;justify-content:center;z-index:9999;padding:20px}
.gal-lb.open{display:flex}
.gal-lb img{max-width:100%;max-height:88vh;border-radius:8px}
.gal-lb button{position:absolute;top:16px;right:20px;background:none;border:0;color:#fff;font-size:34px;cursor:pointer}