/* ---------- GALLERY HERO ---------- */
.gallery-intro{max-width:640px;}
.gallery-intro p{font-size:17px;}

/* ---------- FILTER TABS ---------- */
.filter-tabs{
  display:flex; flex-wrap:wrap; gap:10px;
  margin:34px 0 36px;
}
.filter-tab{
  padding:10px 18px;
  background:var(--navy-panel);
  border:1px solid var(--line);
  color:var(--muted);
  font-family:var(--mono); font-size:12.5px; letter-spacing:.04em; text-transform:uppercase;
  cursor:pointer;
  transition:.15s ease;
}
.filter-tab:hover{color:var(--text); border-color:var(--muted-2);}
.filter-tab.active{background:var(--amber); color:var(--navy-deep); border-color:var(--amber);}
.filter-tab .count{opacity:.65; margin-left:5px;}

/* ---------- GRID ---------- */
/* Photos here are for browsing only — no click-to-enlarge, so no pointer
   cursor or hover affordances that would imply an interaction that isn't
   there. */
.gallery-grid{
  display:grid; grid-template-columns:repeat(2,1fr); gap:14px;
}
@media(min-width:640px){.gallery-grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:980px){.gallery-grid{grid-template-columns:repeat(4,1fr);}}

.gallery-tile{
  position:relative;
  aspect-ratio:3/4;
  overflow:hidden;
  border:1px solid var(--line);
  background:var(--navy-panel);
}
.gallery-tile img{
  width:100%; height:100%; object-fit:cover; display:block;
}
.gallery-tile::before{
  content:"";
  position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg, rgba(16,41,83,0) 55%, rgba(16,41,83,.85) 100%);
}
.gallery-tile .tag{
  position:absolute; left:10px; bottom:10px; z-index:2;
  padding:0; border:none; background:none;
  font-family:var(--mono); font-size:10.5px; letter-spacing:.05em; text-transform:uppercase;
  color:var(--amber);
}
.gallery-tile .tag::before, .gallery-tile .tag::after{content:none;}

.gallery-empty{
  padding:60px 0; text-align:center; color:var(--muted-2);
  font-family:var(--mono); font-size:13px; letter-spacing:.04em; text-transform:uppercase;
  display:none;
}
.gallery-empty.show{display:block;}
