.filter-tabs{display:flex;justify-content:center;gap:10px;margin-bottom:50px;flex-wrap:wrap}
.filter-tab{padding:10px 24px;border-radius:50px;font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition);border:2px solid #e0dcd4;background:var(--white);color:var(--text-body)}
.filter-tab:hover,.filter-tab.active{background:var(--navy);color:var(--white);border-color:var(--navy)}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.gallery-item{position:relative;overflow:hidden;border-radius:var(--radius-md);cursor:pointer}
.gallery-item img{width:100%;height:280px;object-fit:cover;transition:var(--transition)}
.gallery-item:hover img{transform:scale(1.1)}
.gallery-item .gallery-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(11,29,53,.7));opacity:0;transition:var(--transition);display:flex;align-items:flex-end;padding:20px}
.gallery-item:hover .gallery-overlay{opacity:1}
.gallery-overlay span{color:var(--white);font-size:.9rem;font-weight:600}
.gallery-item.tall{grid-row:span 2}
.gallery-item.tall img{height:100%}
.gallery-item.wide{grid-column:span 2}

@media(max-width:991.98px){.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-item.wide{grid-column:span 1}}
@media(max-width:767.98px){.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-item.tall{grid-row:span 1}.gallery-item img,.gallery-item.tall img{height:200px}}
