/* Retains the original NextGEN thumbnail layout without its WordPress runtime. */
.archive-gallery.ngg-galleryoverview {
  display: block !important;
  clear: both;
  width: 100%;
  margin: 40px 0 50px;
  min-height: 100px;
  text-align: center;
  font-size: 0 !important;
  letter-spacing: 0 !important;
}
.archive-gallery .ngg-gallery-thumbnail-box {
  display: inline-block;
  max-width: 100%;
  float: none;
  vertical-align: middle;
}
.archive-gallery .ngg-gallery-thumbnail { margin: 0; border: 0; background: transparent; }
.archive-gallery .ngg-gallery-thumbnail a { display: block; margin: 2px; border: 0; box-shadow: none; }
.archive-gallery .ngg-gallery-thumbnail img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 0;
  box-shadow: none;
  cursor: pointer;
}
.archive-gallery .ngg-gallery-thumbnail img:hover { opacity: .8; }
.archive-gallery a:focus-visible { outline: 3px solid #242752; outline-offset: 2px; }
.archive-gallery .ngg-navigation { clear: both; display: block; padding: 24px 8px 3px; text-align: center; }
.archive-gallery .ngg-navigation a,
.archive-gallery .ngg-navigation span {
  display: inline-block;
  margin: 0 3px 4px 0;
  padding: 4px 8px;
  border: 0;
  border-radius: 2px;
  background: #bbb;
  color: #fff;
  font-size: 14px;
  line-height: 1.4;
  font-weight: bold;
  text-decoration: none;
  box-shadow: none;
}
.archive-gallery .ngg-navigation .current,
.archive-gallery .ngg-navigation a:hover { background: #666; color: #fff; }
.archive-gallery .ngg-navigation .prev,
.archive-gallery .ngg-navigation .next { background: transparent; color: #777; padding: 4px; }
.archive-gallery-lightbox {
  position: fixed;
  width: 100vw;
  height: 100dvh;
  max-width: none;
  max-height: none;
  inset: 0;
  margin: 0;
  padding: 55px 60px 45px;
  border: 0;
  background: rgba(255, 255, 255, .97);
  color: #222;
  overflow: hidden;
  box-sizing: border-box;
}
.archive-gallery-lightbox::backdrop { background: rgba(255, 255, 255, .9); }
.archive-gallery-lightbox[open] { display: flex; align-items: center; justify-content: center; }
.archive-gallery-lightbox figure { display: flex; flex-direction: column; align-items: center; max-width: 100%; max-height: 100%; margin: 0; }
.archive-gallery-lightbox figure img { display: block; width: auto; height: auto; max-width: 100%; max-height: calc(100dvh - 140px); object-fit: contain; }
.archive-gallery-lightbox figcaption { padding: 12px; font: 16px/1.4 Arial, sans-serif; text-align: center; }
.archive-gallery-lightbox button {
  position: absolute;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #222;
  box-shadow: none;
  font: 36px/1 Arial, sans-serif;
  cursor: pointer;
}
.archive-gallery-lightbox button:focus-visible { outline: 3px solid #242752; outline-offset: 2px; }
.archive-gallery-lightbox .archive-gallery-close { top: 12px; right: 12px; font-size: 40px; }
.archive-gallery-lightbox .archive-gallery-previous { left: 8px; top: calc(50% - 22px); }
.archive-gallery-lightbox .archive-gallery-next { right: 8px; top: calc(50% - 22px); }
.archive-gallery-lightbox .archive-gallery-counter { position: absolute; left: 20px; top: 24px; font: 16px/1.4 Arial, sans-serif; }
body.archive-gallery-open { overflow: hidden; }
@media (max-width: 600px) {
  .archive-gallery-lightbox { padding: 65px 44px 40px; }
  .archive-gallery-lightbox .archive-gallery-previous { left: 0; }
  .archive-gallery-lightbox .archive-gallery-next { right: 0; }
}
