/* Gallery — page-specific layout */

.gallery-h1 { font-size: 56px; line-height: 1.06; }
.gallery-lead { max-width: 640px; margin: 20px auto 0; }

.gallery-masonry { column-count: 4; column-gap: 18px; }
.gallery-tile { break-inside: avoid; margin-bottom: 18px; border-radius: 6px; overflow: hidden; box-shadow: 0 6px 20px rgba(92, 59, 40, .08); cursor: pointer; }
.gallery-tile img { width: 100%; display: block; }
.gallery-tile:hover img { opacity: .92; }

.gallery-lightbox { display: none; position: fixed; inset: 0; z-index: 2000; background: rgba(42, 31, 24, .88); align-items: center; justify-content: center; padding: 40px; }
.gallery-lightbox.tt-open { display: flex; }
.gallery-lightbox-img { max-width: 90%; max-height: 90vh; border-radius: 6px; box-shadow: 0 20px 60px rgba(0, 0, 0, .5); }
.gallery-lightbox-close { position: absolute; top: 24px; right: 30px; color: #fff; font-size: 34px; cursor: pointer; line-height: 1; }

@media (max-width: 980px) {
  .gallery-h1 { font-size: 50px !important; }
  .gallery-masonry { column-count: 3; }
}
@media (max-width: 620px) {
  .gallery-h1 { font-size: 40px !important; }
  .gallery-masonry { column-count: 2; column-gap: 12px; }
}
