/* Styles for the static gallery, lightbox and search page (see gm-site.js). */
.mini-gallery-item.gm-active { outline: 3px solid #F5A800; outline-offset: -3px; }
.main-image-wrapper iframe.gm-video { aspect-ratio: 16 / 9; border: 0; display: block; }

.gm-lightbox {
  position: fixed; inset: 0; z-index: 2000; background: rgba(0, 0, 0, .92);
  display: flex; align-items: center; justify-content: center;
}
.gm-lightbox img { max-width: 92vw; max-height: 88vh; object-fit: contain; }
.gm-lightbox button {
  position: absolute; background: none; border: 0; color: #fff; font-size: 56px; line-height: 1;
  padding: 8px 18px; cursor: pointer; opacity: .85;
}
.gm-lightbox button:hover { opacity: 1; }
.gm-lb-close { top: 8px; right: 12px; }
.gm-lb-prev { left: 8px; top: 50%; transform: translateY(-50%); }
.gm-lb-next { right: 8px; top: 50%; transform: translateY(-50%); }

.gm-search-page { padding: 32px 0 48px; }
.gm-search-form { max-width: 640px; }
.gm-result { overflow: hidden; transition: transform .15s ease, box-shadow .15s ease; }
.gm-result:hover { transform: translateY(-2px); box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important; }
.gm-result-img {
  position: relative; aspect-ratio: 4 / 3; background: #eee center / cover no-repeat;
}
.gm-sold { position: absolute; top: 10px; left: 10px; }
