.lightbox-trigger{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;color:inherit}.lightbox-trigger img{transition:transform .35s ease,filter .35s ease}.lightbox-trigger:hover img{transform:scale(1.018);filter:saturate(1.02) contrast(1.02)}.lightbox{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:clamp(1rem,3vw,2.5rem);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .24s ease,visibility .24s ease}.lightbox.is-open{opacity:1;visibility:visible;pointer-events:auto}.lightbox__backdrop{position:absolute;inset:0;background:radial-gradient(ellipse 70% 52% at 50% 45%,rgba(109,43,58,.32),transparent 58%),linear-gradient(145deg,#1d1a18f0,#3d1e28e6);backdrop-filter:blur(12px)}.lightbox__stage{position:relative;z-index:1;width:min(100%,1320px);max-height:calc(100svh - clamp(2rem,6vw,5rem));display:flex;align-items:center;justify-content:center}.lightbox__figure{position:relative;margin:0;max-width:calc(100vw - clamp(6.5rem,12vw,12rem));max-height:calc(100svh - clamp(5.8rem,10vw,8rem));display:flex;flex-direction:column;align-items:center;gap:.9rem}.lightbox__image-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;max-width:100%;max-height:calc(100svh - clamp(8rem,14vw,11rem));overflow:hidden;padding:clamp(.8rem,2vw,1.35rem);background:linear-gradient(135deg,#f5eee61a,#f5eee609),#1d1a188f;border:1px solid rgba(228,195,134,.36);box-shadow:0 30px 90px #0000006b,inset 0 0 0 1px #f8f2eb0d}.lightbox__image-wrap:after{content:"";position:absolute;inset:.55rem;border:1px solid rgba(248,242,235,.14);pointer-events:none}.lightbox__image{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100svh - clamp(10rem,18vw,14rem));object-fit:contain;opacity:1;transition:opacity .26s ease,transform .26s ease}.lightbox__image.is-changing{opacity:0;transform:scale(.985)}.lightbox__image.is-loading{opacity:0}.lightbox__loader{position:absolute;width:2rem;height:2rem;border:1px solid rgba(228,195,134,.32);border-top-color:var(--brand-gold);border-radius:999px;opacity:0;animation:lightboxSpin .8s linear infinite;transition:opacity .16s ease}.lightbox__image.is-loading+.lightbox__loader{opacity:1}@keyframes lightboxSpin{to{transform:rotate(360deg)}}.lightbox__caption{display:flex;justify-content:space-between;gap:1rem;padding:0 .2rem;color:#f8f2eb9e;font-size:.66rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.lightbox__close,.lightbox__nav{display:inline-grid;place-items:center;border:1px solid rgba(228,195,134,.34);background:#4a342cbd;color:#f8f2eb;cursor:pointer;box-shadow:0 12px 34px #00000038;transition:background .2s ease,border-color .2s ease,transform .2s ease,color .2s ease}.lightbox__close:hover,.lightbox__nav:hover{background:var(--brand-burgundy);border-color:var(--brand-gold);color:var(--brand-gold)}.lightbox__close{position:absolute;top:0;right:0;z-index:3;width:2.9rem;height:2.9rem}.lightbox__nav{position:absolute;top:50%;z-index:2;width:3.25rem;height:3.25rem;border-radius:999px;transform:translateY(-50%)}.lightbox__nav--prev{left:0}.lightbox__nav--next{right:0}.lightbox__nav--prev:hover{transform:translate(-2px,-50%)}.lightbox__nav--next:hover{transform:translate(2px,-50%)}.lightbox svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}body.lightbox-lock{overflow:hidden}@media(max-width:760px){.lightbox{padding:.9rem}.lightbox__stage{width:100%;max-height:calc(100svh - 1.8rem);display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr) auto;align-items:stretch;gap:.75rem}.lightbox__figure{max-width:100%;max-height:calc(100svh - 5.6rem);grid-column:1 / -1;grid-row:1;gap:.65rem}.lightbox__image-wrap{width:100%;max-height:calc(100svh - 9rem)}.lightbox__image{max-height:calc(100svh - 11rem)}.lightbox__nav{position:static;transform:none;grid-row:2;width:100%;height:3rem;border-radius:0}.lightbox__nav--prev{grid-column:1;justify-self:stretch}.lightbox__nav--next{grid-column:2;justify-self:stretch}.lightbox__nav--prev:hover,.lightbox__nav--next:hover{transform:none}.lightbox__close{top:.75rem;right:.75rem;background:#4a342cdb}.lightbox__caption{flex-direction:column;gap:.25rem;text-align:center;font-size:.6rem;line-height:1.5}}@media(prefers-reduced-motion:reduce){.lightbox,.lightbox__image,.lightbox-trigger img,.lightbox__close,.lightbox__nav{transition:none}}
