.wp-block-gallery .g2d-gallery-link { cursor: zoom-in; }
.wp-block-gallery .g2d-gallery-link:focus-visible { outline: 3px solid #c92324; outline-offset: 3px; }
.g2d-lightbox {
  position: fixed;
  inset: 0;
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  height: 100%;
  height: 100dvh;
  max-height: none;
  margin: 0;
  border: 0;
  padding: 64px 64px 48px;
  background: rgba(0, 0, 0, .94);
  color: #fff;
}
.g2d-lightbox[open] { display: flex; align-items: center; justify-content: center; }
.g2d-lightbox::backdrop { background: #000; }
.g2d-lightbox figure { margin: 0; max-width: 100%; text-align: center; }
.g2d-lightbox img { display: block; width: auto; height: auto; max-width: 100%; max-height: calc(100dvh - 180px); margin: auto; object-fit: contain; }
.g2d-lightbox figcaption { margin-top: 12px; max-height: 48px; overflow: auto; font-size: 16px; }
.g2d-lightbox button {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 1px solid #888;
  border-radius: 4px;
  background: #171717;
  color: #fff;
  font: 36px/1 sans-serif;
  cursor: pointer;
}
.g2d-lightbox button:hover { background: #444; }
.g2d-lightbox button:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.g2d-lightbox button[hidden] { display: none; }
.g2d-lightbox-close { top: 12px; right: 12px; }
.g2d-lightbox-prev { left: 8px; top: calc(50% - 24px); }
.g2d-lightbox-next { right: 8px; top: calc(50% - 24px); }
.g2d-lightbox-count { position: absolute; bottom: 12px; left: 0; width: 100%; margin: 0; text-align: center; }
@media (max-width: 600px) { .g2d-lightbox { padding: 64px 12px 96px; } .g2d-lightbox-prev, .g2d-lightbox-next { top: auto; bottom: 40px; } }
