.df-bunny-single-galleries { margin-top: 32px; }
.df-bunny-gallery-section { margin-top: 32px; }
.df-bunny-gallery-title { margin: 0 0 16px; }
.df-bunny-gallery-grid {
  columns: 3 220px;
  column-gap: 12px;
}
.df-bunny-gallery-link {
  display: block;
  break-inside: avoid;
  margin: 0 0 12px;
  overflow: hidden;
  text-decoration: none;
}
.df-bunny-gallery-image {
  display: block;
  width: 100%;
  height: auto;
  transition: transform .2s ease;
}
.df-bunny-gallery-link:hover .df-bunny-gallery-image { transform: scale(1.015); }
.df-bunny-lightbox {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(0,0,0,.92);
}
.df-bunny-lightbox[hidden] { display: none; }
.df-bunny-lightbox-image {
  max-width: min(96vw, 1600px);
  max-height: 90vh;
  width: auto;
  height: auto;
  object-fit: contain;
}
.df-bunny-lightbox-close,
.df-bunny-lightbox-prev,
.df-bunny-lightbox-next {
  position: absolute;
  border: 0;
  background: rgba(0,0,0,.45);
  color: #fff;
  cursor: pointer;
  font-size: 32px;
  line-height: 1;
}
.df-bunny-lightbox-close { top: 18px; right: 18px; width: 44px; height: 44px; }
.df-bunny-lightbox-prev,
.df-bunny-lightbox-next { top: 50%; transform: translateY(-50%); width: 50px; height: 64px; }
.df-bunny-lightbox-prev { left: 14px; }
.df-bunny-lightbox-next { right: 14px; }
@media (max-width: 640px) {
  .df-bunny-gallery-grid { columns: 2 140px; column-gap: 8px; }
  .df-bunny-gallery-link { margin-bottom: 8px; }
}
