.event-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.event-gallery-grid .project-gallery-item--lead{grid-column:1/-1}
[data-media-gallery] .project-gallery-item button{display:block;aspect-ratio:16/10;cursor:zoom-in}
.event-gallery-grid .project-gallery-item--lead button{aspect-ratio:16/8}
[data-media-gallery] .project-gallery-item img{width:100%;height:100%;aspect-ratio:auto}
[data-media-gallery] .project-gallery-item video{display:block;width:100%;aspect-ratio:16/10;object-fit:contain;background:var(--navy-deep)}
.construction-article-content [data-media-gallery]{margin-top:48px}
.event-gallery-carousel{margin-top:clamp(28px,4vw,48px);padding-top:clamp(28px,4vw,48px);border-top:1px solid var(--line)}
.event-gallery-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 26px)/2);column-gap:26px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--teal-dark) var(--line);padding-bottom:16px;cursor:grab}
.event-gallery-track .project-gallery-item{scroll-snap-align:start}
.event-gallery-track .project-gallery-item button{aspect-ratio:16/11}
.event-gallery-track img{user-select:none}
.event-gallery-track.is-dragging{scroll-snap-type:none;user-select:none}
.event-gallery-track.is-dragging,.event-gallery-track.is-dragging button{cursor:grabbing}
.event-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
.event-gallery-count{color:var(--ink-soft);font-size:.76rem;font-variant-numeric:tabular-nums}
.event-gallery-count b{margin-left:10px;color:var(--navy);font-weight:500}
.event-gallery-navigation{display:flex;gap:10px}
.event-gallery-navigation button,.event-lightbox button{display:grid;place-items:center;width:48px;height:48px;flex:none;border:1px solid var(--line);border-radius:50%;transition:color .2s,border-color .2s,background .2s}
.event-gallery-navigation svg,.event-lightbox button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.4}
.event-gallery-navigation button:hover:not(:disabled){color:var(--white);background:var(--navy);border-color:var(--navy)}
.event-gallery-navigation button:disabled{opacity:.3;cursor:default}
body.event-lightbox-open{overflow:hidden}
.event-lightbox{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:20px 28px;border:0;background:rgba(0,19,27,.98);color:var(--white);overflow:hidden;overscroll-behavior:contain}
.event-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px}
.event-lightbox::backdrop{background:var(--navy-black)}
.event-lightbox-top{display:flex;align-items:center;justify-content:space-between;gap:24px}
.event-lightbox-top>span{max-width:72ch;color:rgba(255,255,255,.72);font-size:.78rem;line-height:1.5}
.event-lightbox button{border-color:rgba(255,255,255,.32)}
.event-lightbox button[hidden]{display:none}
.event-lightbox button:hover{color:var(--gold);border-color:var(--gold);background:rgba(253,218,114,.08)}
.event-lightbox button:focus-visible{outline-color:var(--gold)}
.event-lightbox-stage{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;padding-inline:76px;touch-action:pan-y pinch-zoom}
.event-lightbox-stage img{width:100%;height:100%;min-height:0;object-fit:contain;user-select:none}
.event-lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:rgba(0,19,27,.6)}
.event-lightbox-arrow.is-previous{left:0}
.event-lightbox-arrow.is-next{right:0}
.event-lightbox-count{text-align:center;color:var(--gold);font-size:.8rem;font-variant-numeric:tabular-nums;letter-spacing:.08em}
.event-lightbox-bottom>[data-photo-caption]{max-width:80ch;margin:0 auto 10px;text-align:center;color:rgba(255,255,255,.72);font-size:.76rem;max-height:4.5em;overflow:auto}
@media(max-width:760px){
  .event-gallery-grid{gap:12px}
  .event-gallery-grid .project-gallery-item--lead button{aspect-ratio:16/10}
  .event-gallery-grid .project-gallery-zoom{width:32px;height:32px;top:8px;right:8px}
  .event-gallery-grid .project-gallery-zoom svg{width:16px}
  .event-gallery-track{grid-auto-columns:86%;column-gap:14px}
  .event-gallery-controls{gap:12px;margin-top:22px;padding-top:18px}
  .event-gallery-navigation button{width:44px;height:44px}
  .event-lightbox{padding:12px 12px max(20px,env(safe-area-inset-bottom))}
  .event-lightbox[open]{gap:12px}
  .event-lightbox-top>span{font-size:.68rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .event-lightbox-stage{padding:0 0 62px}
  .event-lightbox-arrow{top:auto;bottom:0;transform:none;width:44px!important;height:44px!important}
  .event-lightbox-arrow.is-previous{left:calc(50% - 54px)}
  .event-lightbox-arrow.is-next{right:calc(50% - 54px)}
}
@media(prefers-reduced-motion:reduce){
  [data-media-gallery] img,.event-gallery-navigation button,.event-lightbox button{transition:none}
}
.event-videos{scroll-margin-top:96px}
.event-videos .project-gallery-head h2{max-width:none;font-size:clamp(2rem,4vw,3.4rem);line-height:1.12}
.event-video-player{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:var(--navy-deep);border:1px solid var(--line)}
.event-video-player+.event-video-player{margin-top:32px}

/* Preserve the complete composition of wide presentation strips and diagrams. */
[data-media-gallery] .project-gallery-item--panorama button{aspect-ratio:var(--gallery-ratio);min-height:100px;background:var(--white)}
[data-media-gallery] .project-gallery-item--panorama img{object-fit:contain}
