.gallery-page{background:radial-gradient(circle at 80% 0,rgba(201,154,55,.08),transparent 30%)}
.gallery-toolbar{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:55px}
.gallery-toolbar h2{font-size:clamp(2.8rem,5vw,5.6rem);margin:7px 0 0;max-width:10ch}
.gallery-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.gallery-filter{min-height:38px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;cursor:pointer;transition:.25s}
.gallery-filter:hover,.gallery-filter.active{color:#100c06;background:var(--gold-gradient);border-color:transparent}
.gallery-filter:focus-visible{outline:2px solid var(--ivory);outline-offset:3px}
.gallery-masonry{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:120px;gap:16px}
.gallery-item{grid-column:span 4;grid-row:span 4;margin:0;position:relative;overflow:hidden;border:1px solid var(--line);background:var(--charcoal)}
.gallery-item--wide{grid-column:span 8}
.gallery-item--portrait{grid-row:span 6}
.gallery-item[hidden]{display:none}
.gallery-item button{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease),filter .75s var(--ease);filter:saturate(.82)}
.gallery-item::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(4,4,4,.9),transparent 48%)}
.gallery-item:hover img{transform:scale(1.045);filter:saturate(1)}
.gallery-item figcaption{position:absolute;z-index:2;left:24px;right:24px;bottom:20px;pointer-events:none}
.gallery-item figcaption span,.gallery-item figcaption strong{display:block}.gallery-item figcaption span{font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;color:var(--gold-light)}.gallery-item figcaption strong{font:600 1.65rem/1.05 "Cormorant Garamond";margin-top:4px}
.lightbox[hidden]{display:none}.lightbox{position:fixed;z-index:200;inset:0;display:grid;place-items:center;background:rgba(0,0,0,.94);backdrop-filter:blur(18px);padding:50px 90px}.lightbox figure{margin:0;max-width:min(1200px,85vw);max-height:88vh;text-align:center}.lightbox img{max-width:100%;max-height:80vh;object-fit:contain;box-shadow:0 30px 100px #000}.lightbox figcaption{margin-top:12px;font-family:"Cormorant Garamond";font-size:1.35rem;color:var(--champagne)}.lightbox button{position:absolute;border:1px solid var(--line);background:rgba(10,10,10,.82);color:var(--ivory);display:grid;place-items:center;cursor:pointer}.lightbox-close{right:24px;top:24px;width:46px;height:46px;border-radius:50%;font-size:1.5rem}.lightbox-prev,.lightbox-next{top:50%;width:50px;height:66px;font-size:2rem}.lightbox-prev{left:24px}.lightbox-next{right:24px}.lightbox-open{overflow:hidden}
@media(max-width:900px){.gallery-item{grid-column:span 6}.gallery-item--wide{grid-column:span 12}}
@media(max-width:650px){.gallery-toolbar{display:block}.gallery-filters{justify-content:flex-start;margin-top:25px}.gallery-masonry{display:block}.gallery-item,.gallery-item--wide,.gallery-item--portrait{height:420px;margin-bottom:14px}.gallery-item--portrait{height:560px}.lightbox{padding:70px 15px}.lightbox-prev,.lightbox-next{top:auto;bottom:18px;height:44px}.lightbox-prev{left:calc(50% - 58px)}.lightbox-next{right:calc(50% - 58px)}}
