.gallery-grid img[role="button"],
.city-gallery-grid img[role="button"],
.before-after-gallery img[role="button"]{cursor:zoom-in}
.gallery-grid img[role="button"]:focus-visible,
.city-gallery-grid img[role="button"]:focus-visible,
.before-after-gallery img[role="button"]:focus-visible{outline:4px solid #ffa400;outline-offset:3px}
.gallery-lightbox{width:min(1100px,96vw);max-width:96vw;max-height:92vh;margin:auto;padding:0;border:0;background:#111;color:#fff;box-shadow:0 20px 70px rgba(0,0,0,.55)}
.gallery-lightbox::backdrop{background:rgba(0,0,0,.86)}
.gallery-lightbox img{display:block;width:auto;max-width:100%;height:auto;max-height:calc(92vh - 64px);margin:auto;object-fit:contain;background:#111}
.gallery-lightbox-close{position:absolute;top:10px;right:10px;z-index:2;display:grid;width:44px;height:44px;padding:0;place-items:center;border:2px solid #fff;border-radius:50%;background:#25282a;color:#fff;font:700 30px/1 Arial,sans-serif;cursor:pointer}
.gallery-lightbox-close:hover,.gallery-lightbox-close:focus-visible{background:#ffa400;color:#111;outline:0}
.gallery-lightbox-caption{margin:0;padding:16px 64px 16px 18px;color:#fff;font-size:15px;line-height:1.4}
.gallery-page .inner-hero{min-height:250px;padding-top:52px;padding-bottom:52px}
.gallery-page .core-intro{padding-top:48px;padding-bottom:48px}
.gallery-page .core-section-alt{padding-top:48px}
@media(max-width:680px){
  .gallery-lightbox{max-height:94vh}
  .gallery-lightbox img{max-height:calc(94vh - 72px)}
  .gallery-lightbox-caption{padding:14px 58px 14px 14px;font-size:13px}
  .gallery-page .inner-hero{min-height:auto;padding-top:30px;padding-bottom:30px}
  .gallery-page .core-intro{padding-top:36px;padding-bottom:36px}
  .gallery-page .core-section-alt{padding-top:36px}
}
