.galleries-page {
  padding: clamp(2.5rem, 6vw, 6rem) var(--gutter) clamp(4rem, 7vw, 7rem);
  min-height: 65vh;
}
.galleries-intro { margin-bottom: clamp(2rem, 4vw, 4rem); }
.galleries-intro .section-label,
.galleries-intro .galleries-eyebrow { margin: 0 0 1.25rem; font: 500 .75rem/1.5 var(--mono); }
.galleries-intro h1 { margin: 0; font: 400 clamp(3.5rem, 8vw, 8.5rem)/1.05 var(--sans); letter-spacing: -.065em; }
.galleries-intro > p:last-child:not(:first-child) { max-width: 38rem; margin: 1.5rem 0 0; color: var(--ink); font: 400 1.125rem/1.6 var(--sans); }
.galleries-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1.5rem 2rem; padding: 0 0 1.5rem; margin-bottom: 2rem; border-bottom: 1px solid var(--line); }
.galleries-filters { display: flex; align-items: center; flex-wrap: wrap; gap: .625rem; min-width: 0; }
.galleries-filters button { display: inline-flex; align-items: center; gap: .625rem; min-height: 44px; max-width: 100%; padding: .625rem 1rem; background: transparent; border: 1px solid var(--line); border-radius: 2px; color: var(--red); font: 500 .875rem/1.4 var(--sans); overflow-wrap: anywhere; cursor: pointer; transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease; }
.galleries-filters button:hover { background: var(--red-tint); border-color: var(--red); }
.galleries-filters button[aria-pressed="true"] { color: var(--paper); background: var(--red); border-color: var(--red); }
.galleries-filters button .galleries-filter-count { font: 400 .6875rem/1.4 var(--mono); opacity: .75; }
.galleries-preview-banner { padding:14px var(--gutter); background:var(--ink); color:var(--paper); font:400 .75rem/1.6 var(--sans); }
.galleries-preview-banner a { text-decoration:underline; text-underline-offset:3px; margin-left:.75rem; }
#galleries-count { margin: 0; flex-shrink: 0; color: var(--muted); font: 400 .75rem/1.5 var(--mono); }
.gallery-grid.galleries-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; align-items: start; }
.gallery-grid.galleries-grid[data-masonry] { grid-auto-rows: 1px; row-gap: 0; }
.galleries-grid .portrait-card { position: relative; min-width: 0; }
.galleries-grid .portrait-card[hidden],
#galleries-empty[hidden] { display: none !important; }
.galleries-grid .image-wrap { aspect-ratio: auto; border-radius: 0; }
.galleries-grid .image-wrap img { width: 100%; height: auto; object-fit: contain; }
.galleries-grid figcaption { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
#galleries-empty { margin: 0; padding: 3rem 0; color: var(--muted); font: 400 1rem/1.6 var(--sans); }
@media (max-width: 1100px) {
  .gallery-grid.galleries-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px) {
  .gallery-grid.galleries-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .galleries-toolbar { align-items: start; gap: 1rem; }
  .galleries-intro > p:last-child:not(:first-child) { font-size: 1rem; }
  .galleries-filters { gap: .5rem; }
  .galleries-filters button { padding: .625rem .875rem; }
}
