.lb{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center}.lb[hidden]{display:none}.lb__backdrop{position:absolute;inset:0;background:#0f1217f0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.lb__shell{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px 96px}@media(min-width:1024px){.lb__shell{padding:72px 96px 112px}}.lb__close{position:absolute;top:20px;right:20px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.22);color:#ffffffe0;cursor:pointer;border-radius:50%;transition:background .2s ease,border-color .2s ease}.lb__close:hover{background:#ffffff1a;border-color:#ffffff80}.lb__close:focus-visible{outline:2px solid var(--color-carolina);outline-offset:2px}.lb__stage{flex:1;width:100%;display:flex;align-items:center;justify-content:center;min-height:0}.lb__stage img{max-width:100%;max-height:70vh;object-fit:contain;display:block}.lb__stage--pair{display:grid;grid-template-columns:1fr 1px 1fr;gap:0;align-items:center;width:100%;max-width:1500px}.lb__pair-divider{align-self:stretch;background:#ffffff2e}.lb__pair-item{margin:0;display:flex;align-items:center;justify-content:center;min-width:0}.lb__pair-frame{position:relative;display:inline-block;max-width:100%;line-height:0}.lb__pair-frame img{display:block;max-width:100%;max-height:70vh;object-fit:contain}.lb__pair-label{position:absolute;top:12px;left:12px;background:var(--color-carolina);color:#fff;padding:6px 12px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;line-height:1;box-shadow:0 2px 8px #00000059;z-index:1}.lb__caption{position:absolute;bottom:28px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:#ffffffd9;text-align:center;padding:0 16px;max-width:min(100%,720px)}.lb__caption-head{display:flex;gap:8px;align-items:baseline;justify-content:center}.lb__shell:has(.lb__caption-prose:not([hidden])){padding-bottom:36px}.lb__shell:has(.lb__caption-prose:not([hidden])) .lb__stage{flex:0 1 auto}.lb__shell:has(.lb__caption-prose:not([hidden])) .lb__caption{position:static;transform:none;margin-top:18px}.lb__cat{color:var(--color-carolina);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:11px}.lb__cat-divider{color:#ffffff52;font-size:11px}.lb__caption-prose{margin:0;max-width:480px;font-size:13px;line-height:1.55;color:#ffffffdb;white-space:pre-line;text-align:center}.lb__meta{color:#ffffff8c;font-size:11px;letter-spacing:.04em}.lb__counter{position:absolute;bottom:64px;right:28px;color:#ffffff8c;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.lb__nav{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.22);color:#ffffffe0;cursor:pointer;border-radius:50%;transition:background .2s ease,border-color .2s ease}.lb__nav:hover{background:#ffffff1a;border-color:#ffffff80}.lb__nav:focus-visible{outline:2px solid var(--color-carolina);outline-offset:2px}.lb__nav--prev{left:28px}.lb__nav--next{right:28px}@media(max-width:1023px){.lb__nav{display:none}}.lb--single .lb__nav,.lb--pair .lb__nav,.lb--pair .lb__counter,.lb__thumbs{display:none}@media(min-width:1024px){.lb--multi .lb__thumbs{display:flex;gap:10px;justify-content:center;margin-top:24px}}.lb__thumb{width:72px;height:54px;background:transparent;border:1px solid rgba(255,255,255,.22);padding:0;cursor:pointer;overflow:hidden;transition:border-color .2s ease,opacity .2s ease;opacity:.65}.lb__thumb:hover{opacity:.9;border-color:#ffffff80}.lb__thumb img{width:100%;height:100%;object-fit:cover;display:block}.lb__thumb--active{border-color:var(--color-carolina);opacity:1}.lb__thumb:focus-visible{outline:2px solid var(--color-carolina);outline-offset:2px}.lb__dots{display:none;gap:8px;justify-content:center;margin-top:16px}@media(max-width:1023px){.lb--multi .lb__dots{display:flex}}.lb__dot{width:6px;height:6px;border-radius:50%;background:#ffffff4d;transition:background .2s ease}.lb__dot--active{background:#fffffff2}
