.lightbox{width:min(960px,calc(100vw - 2.5rem));max-height:calc(100vh - 3rem);border:0;padding:0;background:var(--bg-page);color:var(--text-main);border-radius:0 0 0 60px;box-shadow:0 24px 64px rgba(0,0,0,0.28);overflow:hidden}.lightbox[open]{display:flex;flex-direction:column;align-items:center;animation:lightbox-in 0.25s ease}.lightbox::backdrop{background:rgba(0,30,50,0.78)}@keyframes lightbox-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.lightbox-close{position:absolute;top:0.75rem;right:0.75rem;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-page);border:0;border-radius:50%;padding:0;cursor:pointer;color:var(--text-muted);transition:color 0.2s ease}.lightbox-close:hover{color:var(--brand-primary)}.lightbox-close:focus-visible{outline:2px solid var(--brand-secondary);outline-offset:2px}.lightbox-nav{position:absolute;top:50%;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-page);border:0;border-radius:50%;padding:0;cursor:pointer;color:var(--text-muted);font-size:1.125rem;line-height:1;transform:translateY(-50%);transition:color 0.2s ease}.lightbox-nav--prev{left:0.75rem}.lightbox-nav--next{right:0.75rem}.lightbox-nav:hover{color:var(--brand-primary)}.lightbox-nav:focus-visible{outline:2px solid var(--brand-secondary);outline-offset:2px}.lightbox-figure{margin:0;display:flex;flex-direction:column;align-items:center;width:100%;min-height:0;padding:2.5rem 3.5rem 1.25rem;overflow-y:auto}.lightbox-img{display:block;max-width:100%;max-height:72vh;object-fit:contain;border-radius:0 0 0 40px}.lightbox-caption{display:flex;flex-direction:column;align-items:center;gap:0.5rem;width:100%;padding-top:1rem;text-align:center}.lightbox-caption-text{font-family:var(--font-heading);font-weight:700;font-size:1rem;letter-spacing:0.04em;text-transform:uppercase;color:var(--text-heading)}.lightbox-description{max-width:60ch;font-size:0.9375rem;line-height:1.7;color:var(--text-main)}.lightbox-description p:last-child{margin-bottom:0}.lightbox-source{display:inline-flex;align-items:center;gap:0.375rem;font-weight:600;font-size:0.9375rem;color:var(--brand-primary);text-decoration:none;border-bottom:2px solid transparent;transition:border-color 0.2s ease}.lightbox-source:hover,.lightbox-source:focus-visible{border-bottom-color:var(--brand-secondary)}.lightbox-source:focus-visible{outline:2px solid var(--brand-secondary);outline-offset:2px}.lightbox-caption-text[hidden],.lightbox-description[hidden],.lightbox-source[hidden]{display:none}.lightbox-counter{padding-bottom:1rem;font-size:0.8125rem;font-weight:700;letter-spacing:0.08em;color:var(--text-muted)}body.modal-open{overflow:hidden}@media (max-width:640px){.lightbox{width:calc(100vw - 1.5rem);max-height:calc(100vh - 2rem)}.lightbox-figure{padding:2.5rem 1rem 1rem}.lightbox-nav{width:36px;height:36px}.lightbox-nav--prev{left:0.5rem}.lightbox-nav--next{right:0.5rem}}