.photo-wall-section {
  width: calc(100% - 32px);
  max-width: 1800px;
  margin: 0 auto;
  padding: 0 0 72px;
}

.photo-wall {
  columns: 6;
  column-gap: 8px;
}

#more-photos { margin-top: 8px; }

.photo-wall .photo-tile {
  break-inside: avoid;
  margin: 0 0 8px;
  background: #e2e2dc;
}

.photo-wall .photo-tile img {
  display: block;
  width: 100%;
  height: auto;
}

.photo-wall .photo-tile:focus-visible {
  outline-offset: -4px;
  outline-width: 4px;
}

.gallery-expand {
  display: flex;
  justify-content: center;
  padding: 32px 0 0;
}

#show-all-photos {
  min-height: 56px;
  padding: 12px 24px;
  border: 1px solid #191a18;
  background: transparent;
  color: #191a18;
  cursor: pointer;
  font-size: 16px;
}

#show-all-photos span { margin-left: 28px; }
#show-all-photos:hover { background: #191a18; color: #f4f4f0; }
.photo-wall-section [hidden] { display: none !important; }
#lightbox figure img { max-height: 100%; }
#lightbox .lightbox-nav button { min-height: 44px; }

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 1399px) { .photo-wall { columns: 5; } }
@media (max-width: 1099px) { .photo-wall { columns: 4; } }
@media (max-width: 759px) { .photo-wall { columns: 3; } }
@media (max-width: 559px) {
  .photo-wall-section { width: calc(100% - 24px); padding-bottom: 48px; }
  .photo-wall { columns: 2; }
  .gallery-expand { padding-top: 24px; }
}
