.gallery-hero{background:linear-gradient(100deg,#060709f0,#060709d1 45%,#080a0e9e),url(/images/site/gallery-hero-glass.webp) center 30% / cover no-repeat,#0a0a0a;border-bottom:1px solid #e5e3dc;padding:80px 0 72px;color:#fff}.gallery-hero .page-eyebrow{font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#b9bdc4}.gallery-hero h1{margin-top:26px;font-family:Plus Jakarta Sans,Segoe UI,ui-sans-serif,system-ui,sans-serif;font-size:clamp(44px,6.4vw,86px);line-height:.98;letter-spacing:-.035em;font-weight:500;color:#fff}.gallery-hero .lead{margin-top:26px;max-width:680px;color:#d3d7dc;font-size:19px;line-height:1.6}.gallery-main{background:#fff;padding:72px 0 112px}.gallery-head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding-bottom:18px;margin-bottom:32px;border-bottom:1px solid var(--rule, #e5e3dc)}.gallery-count{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#6b6b6b}.gallery-grid{columns:3;column-gap:28px}.gallery-item{margin:0 0 28px;break-inside:avoid;page-break-inside:avoid}.gallery-open{position:relative;display:block;width:100%;padding:0;border:1px solid var(--rule, #e5e3dc);background:#0a0a0a;cursor:zoom-in;overflow:hidden;transition:border-color .25s ease}.gallery-open img{width:100%;height:auto;display:block;transition:opacity .3s ease,transform .45s ease}.gallery-open:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#0a0a0a8c,#0a0a0a00 45%);opacity:0;transition:opacity .25s ease;pointer-events:none}.gallery-zoom{position:absolute;left:14px;bottom:12px;z-index:1;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#fff;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease}.gallery-open:hover,.gallery-open:focus-visible{border-color:var(--red, #c8102e)}.gallery-open:hover img,.gallery-open:focus-visible img{transform:scale(1.03)}.gallery-open:hover:after,.gallery-open:focus-visible:after,.gallery-open:hover .gallery-zoom,.gallery-open:focus-visible .gallery-zoom{opacity:1}.gallery-open:hover .gallery-zoom,.gallery-open:focus-visible .gallery-zoom{transform:translateY(0)}.gallery-item figcaption{display:block;margin-top:12px;padding-top:10px;border-top:1px solid var(--rule, #e5e3dc)}.gallery-meta{display:flex;align-items:center;gap:10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.gallery-index{color:var(--red, #c8102e)}.gallery-cat{color:#9a9a9a}.gallery-cap{display:block;margin-top:6px;font-size:14px;line-height:1.5;color:#3f4247}@media(max-width:980px){.gallery-grid{columns:2;column-gap:20px}.gallery-item{margin-bottom:20px}}@media(max-width:620px){.gallery-grid{columns:1}}.gallery-empty{max-width:640px;padding:48px 0 24px}.gallery-empty h2{margin-top:18px;font-family:Plus Jakarta Sans,Segoe UI,ui-sans-serif,system-ui,sans-serif;font-size:clamp(30px,3.6vw,46px);line-height:1.05;letter-spacing:-.025em;font-weight:500}.gallery-empty p{margin-top:18px;color:#555b62;font-size:17px;line-height:1.6}.gallery-empty .btn{margin-top:28px}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:120;display:grid;grid-template-columns:64px 1fr 64px;align-items:center;padding:24px}.lightbox-backdrop{position:absolute;inset:0;background:#050505e6}.lightbox-figure{position:relative;z-index:1;grid-column:2;margin:0;text-align:center}.lightbox-figure img{max-width:100%;max-height:calc(100vh - 140px);margin:0 auto;display:block}.lightbox-figure figcaption{margin-top:14px;color:#c9c9c5;font-size:14px}.lightbox-close{position:absolute;top:20px;right:20px;z-index:2;width:42px;height:42px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-size:26px;line-height:1;cursor:pointer}.lightbox-nav{position:relative;z-index:1;width:48px;height:48px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-size:30px;line-height:1;cursor:pointer}.lightbox-nav.prev{grid-column:1;justify-self:start}.lightbox-nav.next{grid-column:3;justify-self:end}@media(max-width:1024px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.gallery-grid{grid-template-columns:1fr}.lightbox{grid-template-columns:32px 1fr 32px;padding:12px}}
