/* Public photo gallery, v0.10.2: non-destructive photo frames and responsive lightbox. */
#galleryGrid.gallery{display:block;position:relative;width:100%;min-height:0}
#galleryGrid.gallery figure,#galleryGrid.gallery figure:first-child,#galleryGrid.gallery figure:nth-child(4),#galleryGrid.gallery figure.isFeatured{display:block;position:absolute;inset:auto;box-sizing:border-box;margin:0;min-height:0;border:1px solid #2e333e;border-radius:7px;cursor:zoom-in;overflow:hidden;isolation:isolate}
#galleryGrid.gallery figure.isFeatured{box-shadow:0 1px 0 #e02550}
#galleryGrid .galleryPhoto{position:absolute;inset:0;background:#141921 center/cover no-repeat;transition:filter .2s ease}
#galleryGrid button.galleryPhoto{display:block;box-sizing:border-box;appearance:none;border:0;border-radius:0;padding:0;color:inherit;cursor:zoom-in}
#galleryGrid figure:hover .galleryPhoto{filter:brightness(1.08)}
#galleryGrid button.galleryPhoto:focus-visible{outline:3px solid #ff4b7c;outline-offset:-3px;z-index:1}
#galleryGrid figure figcaption{position:absolute;inset:auto 0 0;z-index:2;padding:32px 15px 14px;background:linear-gradient(transparent,#020407dc);font-weight:800;letter-spacing:.9px;font-size:12px;text-transform:uppercase}
.galleryFeaturedLabel{background:#be1649;color:white;font-size:9px;padding:4px 6px;border-radius:3px;display:inline-block;margin-right:8px}
#lightbox.lightbox .galleryLightboxPrev,#lightbox.lightbox .galleryLightboxNext{position:absolute;z-index:2;top:50%;transform:translateY(-50%);border:1px solid #ffffff6b;border-radius:50%;width:49px;height:49px;background:#10141bbd;font-size:36px;line-height:35px;color:white}
#lightbox.lightbox .galleryLightboxPrev{left:14px;right:auto}
#lightbox.lightbox .galleryLightboxNext{right:14px;left:auto}
#galleryLightboxCaption.galleryLightboxCaption{position:absolute;bottom:12px;left:60px;right:60px;color:#fff;text-align:center;padding:12px;background:#080b12a6;font-size:12px;letter-spacing:.7px;border-radius:5px}
#lightbox.lightbox img#lightboxImage{max-width:calc(100% - 130px);max-height:calc(100vh - 104px);object-fit:contain}
@media(max-width:600px){#lightbox.lightbox img#lightboxImage{max-width:calc(100% - 24px);max-height:calc(100vh - 145px)}#lightbox.lightbox .galleryLightboxPrev,#lightbox.lightbox .galleryLightboxNext{top:auto;bottom:55px;transform:none;width:42px;height:42px;font-size:29px}#galleryLightboxCaption.galleryLightboxCaption{bottom:7px;left:58px;right:58px;padding:8px;font-size:10px}}

/* Desktop justified rows: restrained featured emphasis and smooth focus handling. */
@media(min-width:900px){#galleryGrid.gallery figure.isFeatured{border-color:#c0224e;box-shadow:inset 0 0 0 1px #c0224e,0 0 0 1px #1a1320}#galleryGrid.gallery figure.isFeatured:hover{border-color:#ff4679}}
