.story-gallery-section{background:#f5f1e8;padding:clamp(85px,9vw,145px) clamp(18px,4vw,70px) clamp(95px,10vw,165px)}
.story-gallery-heading{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(400px,1.25fr);column-gap:clamp(45px,9vw,150px);max-width:1400px;margin:0 auto clamp(55px,6vw,95px);align-items:end}
.story-gallery-heading .venue-eyebrow{grid-column:1;align-self:start}
.story-gallery-heading h2{grid-column:2;font-size:clamp(58px,6vw,94px);line-height:.91;letter-spacing:-.045em;margin:0}
.story-gallery-heading h2 em{font-weight:500}
.story-gallery-heading>p:last-child{grid-column:2;max-width:500px;font-size:14px;line-height:1.85;margin:30px 0 0}
.story-gallery{max-width:1480px;margin:0 auto;columns:4 260px;column-gap:clamp(8px,1vw,16px)}
.story-gallery-item{position:relative;display:block;margin:0 0 clamp(8px,1vw,16px);break-inside:avoid;background:#e6e8e5;overflow:hidden;color:#fff}
.story-gallery-item img{display:block;width:100%;height:auto;transform:scale(1.055);transition:transform .65s cubic-bezier(.2,.65,.25,1),filter .45s ease;will-change:transform}
.story-gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(25,38,38,.28));opacity:0;transition:opacity .35s ease}
.story-gallery-item:hover img,.story-gallery-item:focus-visible img{transform:scale(1.025);filter:saturate(1.04)}
.story-gallery-item:hover::after,.story-gallery-item:focus-visible::after{opacity:1}
.story-gallery-item:focus-visible{outline:3px solid var(--blue-dark);outline-offset:3px}
.gallery-motion-ready .venue-opening-copy{animation:venue-intro-left 1.05s cubic-bezier(.16,.72,.25,1) both}
.gallery-motion-ready .venue-opening>figure{animation:venue-intro-right 1.15s cubic-bezier(.16,.72,.25,1) .08s both}
.gallery-motion-ready .venue-opening>figure img{transform:translate3d(0,var(--venue-hero-drift,0px),0) scale(1.09);will-change:transform}
.gallery-motion-ready .venue-story>div,.gallery-motion-ready .venue-landscape,.gallery-motion-ready .venue-close>*{opacity:0;transform:translateY(48px)}
.gallery-motion-ready .venue-story>div.is-visible,.gallery-motion-ready .venue-landscape.is-visible,.gallery-motion-ready .venue-close>*.is-visible{animation:venue-section-reveal 1s cubic-bezier(.16,.72,.25,1) forwards}
.gallery-motion-ready .venue-story>div:nth-child(2).is-visible{animation-delay:.14s}
.gallery-motion-ready .venue-close>*:nth-child(2).is-visible{animation-delay:.09s}
.gallery-motion-ready .venue-close>*:nth-child(3).is-visible{animation-delay:.18s}
.gallery-motion-ready .venue-close>*:nth-child(4).is-visible{animation-delay:.27s}
.gallery-motion-ready .venue-landscape img{transform:translate3d(0,var(--venue-landscape-drift,0px),0) scale(1.075);will-change:transform}
.gallery-motion-ready .story-gallery-heading>*{opacity:0;transform:translateY(28px)}
.gallery-motion-ready .story-gallery-heading.is-visible>*{animation:gallery-copy-reveal .9s cubic-bezier(.16,.72,.25,1) forwards}
.gallery-motion-ready .story-gallery-heading.is-visible h2{animation-delay:.11s}
.gallery-motion-ready .story-gallery-heading.is-visible>p:last-child{animation-delay:.22s}
.gallery-motion-ready .story-gallery-item{opacity:0;transform:translateY(42px) scale(.992)}
.gallery-motion-ready .story-gallery-item.is-visible{animation:gallery-image-reveal .92s cubic-bezier(.16,.72,.25,1) var(--gallery-reveal-delay,0ms) forwards}
.gallery-motion-ready .story-gallery-item.is-visible img{transition:transform .65s cubic-bezier(.2,.65,.25,1),filter .45s ease}
@keyframes gallery-copy-reveal{to{opacity:1;transform:none}}
@keyframes gallery-image-reveal{to{opacity:1;transform:none}}
@keyframes venue-intro-left{from{opacity:0;transform:translateX(-55px)}to{opacity:1;transform:none}}
@keyframes venue-intro-right{from{opacity:0;transform:translateX(65px) scale(1.02)}to{opacity:1;transform:none}}
@keyframes venue-section-reveal{to{opacity:1;transform:none}}
.gallery-lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:rgba(25,31,31,.98);color:#fff;overflow:hidden}
.gallery-lightbox::backdrop{background:rgba(25,31,31,.8)}
.gallery-lightbox-frame{position:relative;width:100%;height:100%}
.gallery-lightbox-figure{display:grid;place-items:center;width:100%;height:100%;margin:0;padding:clamp(72px,8vw,104px) clamp(60px,8vw,128px) clamp(60px,6vw,80px)}
.gallery-lightbox-figure img{display:block;max-width:100%;max-height:calc(100dvh - 144px);width:auto;height:auto;object-fit:contain}
.gallery-lightbox-figure figcaption{position:absolute;inset-inline:0;bottom:18px;font:500 10px/1.4 Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase;text-align:center;color:#d7e9e9}
.gallery-lightbox button{border:0;background:transparent;color:inherit;cursor:pointer;font-family:Manrope,sans-serif}
.gallery-lightbox-control{position:absolute;z-index:2;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid rgba(255,255,255,.4)!important;border-radius:50%!important;background:rgba(20,28,28,.48)!important;font-size:22px;line-height:1;transition:background .2s ease,border-color .2s ease}
.gallery-lightbox-control:hover,.gallery-lightbox-control:focus-visible{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.7)!important}
.gallery-lightbox-close{top:18px;right:22px;font-size:28px}.gallery-lightbox-previous,.gallery-lightbox-next{top:50%;transform:translateY(-50%)}.gallery-lightbox-previous{left:22px}.gallery-lightbox-next{right:22px}
.gallery-lightbox[open]{animation:gallery-open 180ms ease-out}.gallery-lightbox-lock{overflow:hidden}
@keyframes gallery-open{from{opacity:0}to{opacity:1}}
@media(max-width:800px){.story-gallery-section{padding:75px 12px 95px}.story-gallery-heading{display:block;padding:0 12px;margin-bottom:48px}.story-gallery-heading h2{font-size:clamp(52px,15vw,68px);margin-top:19px}.story-gallery-heading>p:last-child{margin-top:24px}.story-gallery{columns:2;column-gap:7px}.story-gallery-item{margin-bottom:7px}.gallery-lightbox-figure{padding:72px 12px 64px}.gallery-lightbox-figure img{max-height:calc(100dvh - 136px)}.gallery-lightbox-previous,.gallery-lightbox-next{top:auto;bottom:12px;transform:none}.gallery-lightbox-previous{left:12px}.gallery-lightbox-next{right:12px}.gallery-lightbox-close{right:12px}.gallery-lightbox-figure figcaption{bottom:26px}}
@media(max-width:420px){.story-gallery{columns:1}.story-gallery-item{margin-bottom:9px}}
