/* Local tiled gallery styles for Jekyll (no external deps). */
.tiled-gallery,
.wp-gallery {
  clear: both;
  display: grid;
  gap: 4px;
  grid-auto-flow: dense;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  grid-auto-rows: 96px;
  margin: 1rem 0;
  overflow: hidden;
}

.tiled-gallery .tiled-gallery-item,
.wp-gallery .tiled-gallery-item {
  grid-column: span 2;
  grid-row: span 2;
  margin: 0;
  overflow: hidden;
  position: relative;
}

.tiled-gallery .tiled-gallery-item.item--wide,
.wp-gallery .tiled-gallery-item.item--wide {
  grid-column: span 4;
  grid-row: span 2;
}

.tiled-gallery .tiled-gallery-item.item--tall,
.wp-gallery .tiled-gallery-item.item--tall {
  grid-column: span 2;
  grid-row: span 4;
}

.tiled-gallery .tiled-gallery-item.item--hero,
.wp-gallery .tiled-gallery-item.item--hero {
  grid-column: span 4;
  grid-row: span 4;
}

.tiled-gallery .tiled-gallery-item.item--small,
.wp-gallery .tiled-gallery-item.item--small {
  grid-column: span 2;
  grid-row: span 1;
}

.tiled-gallery .tiled-gallery-item a,
.wp-gallery .tiled-gallery-item a {
  display: block;
  height: 100%;
}

.tiled-gallery .tiled-gallery-item img,
.wp-gallery .tiled-gallery-item img {
  border: none;
  display: block;
  height: 100%;
  margin: 0 !important;
  max-width: none;
  object-fit: cover;
  width: 100%;
}

.tiled-gallery .tiled-gallery-caption,
.wp-gallery .tiled-gallery-caption {
  background: rgba(255, 255, 255, 0.8);
  bottom: 0;
  color: #333;
  font-size: 13px;
  overflow: hidden;
  padding: 8px 10px;
  position: absolute;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}

@media (max-width: 900px) {
  .tiled-gallery,
  .wp-gallery {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-auto-rows: 84px;
  }

  .tiled-gallery .tiled-gallery-item.item--hero,
  .wp-gallery .tiled-gallery-item.item--hero {
    grid-column: span 4;
    grid-row: span 3;
  }
}

@media (max-width: 600px) {
  .tiled-gallery,
  .wp-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 110px;
  }

  .tiled-gallery .tiled-gallery-item,
  .wp-gallery .tiled-gallery-item,
  .tiled-gallery .tiled-gallery-item.item--wide,
  .wp-gallery .tiled-gallery-item.item--wide,
  .tiled-gallery .tiled-gallery-item.item--tall,
  .wp-gallery .tiled-gallery-item.item--tall,
  .tiled-gallery .tiled-gallery-item.item--hero,
  .wp-gallery .tiled-gallery-item.item--hero,
  .tiled-gallery .tiled-gallery-item.item--small,
  .wp-gallery .tiled-gallery-item.item--small {
    grid-column: span 2;
    grid-row: span 2;
  }
}
