/* Standalone photo lightbox for the static clone. */
.hb-lightbox {
    position: fixed;
    inset: 0;
    z-index: 20000;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, .92);
    padding: 56px 70px;
    box-sizing: border-box;
}
.hb-lightbox.is-open { display: flex; }
.hb-lightbox-image {
    max-width: min(92vw, 1500px);
    max-height: 88vh;
    object-fit: contain;
    border-radius: 2px;
    box-shadow: 0 4px 30px rgba(0,0,0,.45);
    user-select: none;
}
.hb-lightbox-close,
.hb-lightbox-prev,
.hb-lightbox-next {
    position: absolute;
    z-index: 1;
    border: 0;
    background: rgba(0,0,0,.35);
    color: #fff;
    cursor: pointer;
    line-height: 1;
    font-family: Arial, sans-serif;
}
.hb-lightbox-close {
    top: 14px;
    right: 20px;
    padding: 5px 9px;
    font-size: 34px;
    font-weight: 300;
}
.hb-lightbox-prev,
.hb-lightbox-next {
    top: 50%;
    transform: translateY(-50%);
    padding: 16px 15px;
    font-size: 36px;
    border-radius: 3px;
}
.hb-lightbox-prev { left: 18px; }
.hb-lightbox-next { right: 18px; }
.hb-lightbox-close:hover,
.hb-lightbox-prev:hover,
.hb-lightbox-next:hover { background: rgba(97,179,163,.85); }
.hb-lightbox-counter {
    position: absolute;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    color: rgba(255,255,255,.8);
    font: 14px Arial, sans-serif;
}
@media (max-width: 600px) {
    .hb-lightbox { padding: 48px 48px; }
    .hb-lightbox-prev { left: 6px; }
    .hb-lightbox-next { right: 6px; }
    .hb-lightbox-prev, .hb-lightbox-next { padding: 12px 10px; font-size: 28px; }
}
@media (prefers-reduced-motion: no-preference) {
    .hb-lightbox-image { animation: hb-lightbox-in .16s ease-out; }
    @keyframes hb-lightbox-in { from { opacity: .2; transform: scale(.98); } to { opacity: 1; transform: scale(1); } }
}
