.gallery-page {
  --gallery-paper:#efefef;
  background:var(--gallery-paper);
  color:var(--navy);
}
.gallery-page .site-header { color:white }
.gallery-page .nav-group>a,.gallery-page .nav-group>button { background:#bfbfbf }
.gallery-page .nav-group>a:hover,.gallery-page .nav-group>button:hover,
.gallery-page .nav-group>a:focus-visible,.gallery-page .nav-group>button:focus-visible { background:var(--navy) }
.gallery-page .brand img { filter:brightness(0) saturate(100%) invert(10%) sepia(43%) saturate(2463%) hue-rotate(187deg) brightness(87%) contrast(106%) }
.gallery-page .menu-toggle span { background:var(--navy) }
.gallery-main { position:relative; min-height:100svh; overflow:clip; isolation:isolate }
.gallery-main>.page-grid { z-index:-1 }
.gallery-main>.page-grid i { background:rgba(160,168,179,.09) }
.gallery-hero { position:relative; height:28.958333vw; padding-top:17.1vw; text-align:center }
.gallery-hero h1 { font:400 clamp(40px,3.125vw,80px)/1.4 var(--serif) }
.gallery-content { position:relative; margin:0 4.791667vw; padding-bottom:3.854167vw }
.gallery-tabs { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); height:3.90625vw; border-bottom:1px solid #69758a; z-index:2 }
.gallery-tab { display:flex; justify-content:center; align-items:flex-start; padding:.65vw 8px 1vw; border:0; background:transparent; color:#ccc; font:400 clamp(20px,1.5625vw,40px)/1.4 var(--serif); text-transform:uppercase; transition:color .25s ease; white-space:nowrap }
.gallery-tab[aria-selected=true],.gallery-tab:hover,.gallery-tab:focus-visible { color:var(--navy) }
.gallery-collection { position:relative; margin-top:1.927083vw; min-height:30vw; transition:opacity .18s ease }
.gallery-collection.is-switching { opacity:0; pointer-events:none }
.gallery-photo { position:absolute; margin:0; overflow:hidden; background:#e1e1dd; color:white; outline-offset:4px; contain:layout paint }
.gallery-photo:focus-visible { outline:2px solid var(--gold) }
.gallery-photo-surface { position:absolute; inset:0; overflow:hidden }
.gallery-photo img { width:100%; height:100%; max-width:none; object-fit:cover }
.gallery-photo::after { content:''; position:absolute; inset:45% 0 0; background:linear-gradient(to bottom,transparent,rgba(2,14,28,.62)); opacity:0; pointer-events:none; transition:opacity .35s ease }
.gallery-photo figcaption { position:absolute; z-index:1; left:1.05vw; right:1.05vw; bottom:.9vw; margin:0; color:#fff; font:300 clamp(14px,1.041667vw,27px)/1.4 var(--sans); opacity:0; transform:translateY(12px); transition:opacity .35s ease,transform .45s cubic-bezier(.2,.7,.2,1); overflow-wrap:anywhere; text-shadow:0 1px 8px rgba(0,0,0,.45) }
.gallery-photo:hover::after,.gallery-photo:focus-visible::after,.gallery-photo:hover figcaption,.gallery-photo:focus-visible figcaption { opacity:1 }
.gallery-photo:hover figcaption,.gallery-photo:focus-visible figcaption { transform:none }
.gallery-motion-ready .gallery-photo { opacity:var(--gallery-reveal,0); transform:translate3d(0,var(--gallery-rise,70px),0); mask-image:linear-gradient(to bottom,#000 0%,#000 var(--gallery-solid,0%),transparent var(--gallery-end,70%)); -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 var(--gallery-solid,0%),transparent var(--gallery-end,70%)) }
.gallery-announcement { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap }
.gallery-noscript { text-align:center; padding:60px 24px; font:300 20px/1.6 var(--sans) }
@media(max-width:1000px) {
  .gallery-hero { height:330px; padding-top:175px }
  .gallery-tabs { height:65px }
  .gallery-tab { padding:10px 5px 20px; font-size:22px }
  .gallery-content { margin:0 4.8vw; padding-bottom:40px }
  .gallery-collection { margin-top:22px }
  .gallery-photo figcaption { left:15px; right:15px; bottom:13px; font-size:16px }
}
@media(max-width:600px) {
  .gallery-hero { height:265px; padding-top:145px }
  .gallery-hero h1 { font-size:38px }
  .gallery-tabs { height:58px }
  .gallery-tab { font-size:clamp(13px,3.45vw,20px); padding:10px 1px 18px }
  .gallery-collection { margin-top:16px }
  .gallery-content { margin:0 5vw; padding-bottom:24px }
}
@media(hover:none) {
  .gallery-photo::after { opacity:.8 }
  .gallery-photo figcaption { opacity:1; transform:none }
}
@media(prefers-reduced-motion:reduce) {
  .gallery-collection,.gallery-tab,.gallery-photo::after,.gallery-photo figcaption { transition:none }
  .gallery-motion-ready .gallery-photo { opacity:1; transform:none; mask-image:none; -webkit-mask-image:none }
}
