.gal-page{padding:2.5rem 0 4.5rem}
.gal-filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}
.gal-filters button{font:500 .88rem 'Poppins',sans-serif;background:#fff;border:1px solid var(--line);border-radius:99px;padding:.4rem 1rem;cursor:pointer;color:var(--ink)}
.gal-filters button.on{background:var(--deep);color:#fff;border-color:var(--deep)}
.gal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}
.g-item{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:var(--line)}
.g-item[hidden]{display:none}
.g-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.g-item:hover img{transform:scale(1.05)}
.gal-empty{padding:2rem 0}
.gal-page .cta-strip{margin-top:2.5rem}
.lb{position:fixed;inset:0;z-index:100;background:rgba(6,20,21,.94);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3.5rem 1rem 1.5rem}
.lb img{max-width:100%;max-height:78vh;border-radius:8px;object-fit:contain}
.lb p{color:#fff;margin-top:.8rem;font-size:.95rem;text-align:center}
.lb button{position:absolute;background:rgba(255,255,255,.12);border:0;color:#fff;width:46px;height:46px;border-radius:50%;font-size:1.5rem;cursor:pointer;line-height:1}
.lb button:hover{background:rgba(255,255,255,.28)}
.lb .x{top:.8rem;right:.8rem}.lb .pv{left:.8rem;top:50%}.lb .nx{right:.8rem;top:50%}
@media (max-width:900px){.gal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.gal-grid{gap:.5rem}.lb .pv,.lb .nx{top:auto;bottom:.8rem}}
