.header [aria-current=page]{text-decoration:underline;text-underline-offset:6px}
.gallery-intro{padding-top:65px;padding-bottom:50px}.gallery-intro h1{font-size:clamp(56px,7.2vw,108px);line-height:1.06;letter-spacing:-.065em;font-weight:500;margin:0 0 30px}.gallery-intro-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px}.gallery-intro-bottom p{color:var(--muted);max-width:470px}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:25px;border-block:1px solid var(--line);padding-block:21px;margin-bottom:40px}.gallery-filters{display:flex;gap:8px;flex-wrap:wrap}.gallery-filters button{padding:11px 16px;background:transparent;border:1px solid transparent;color:var(--ink);font-size:14px;cursor:pointer;min-height:44px}.gallery-filters button:hover{border-color:var(--blue)}.gallery-filters button[aria-pressed=true]{background:var(--blue);color:var(--paper)}#photo-count{font-size:13px;white-space:nowrap;color:var(--muted)}.gallery-grid{columns:3;column-gap:27px}.gallery-item{break-inside:avoid;margin:0 0 35px;scroll-margin-top:30px}.gallery-item[hidden]{display:none}.photo-open{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.photo-open img{width:100%;height:auto;object-fit:contain;transition:filter .2s}.photo-open:hover img{filter:brightness(.94)}.gallery-item figcaption{display:flex;flex-direction:column;gap:4px;margin-top:13px;font-size:14px;line-height:1.5}.gallery-item figcaption span:last-child{font-size:12px;color:var(--muted)}.gallery-cta{display:flex;justify-content:space-between;align-items:center;gap:35px;padding-block:95px}.gallery-cta h2{margin-bottom:15px}.gallery-cta .eyebrow{margin-bottom:16px}.gallery-cta .button{flex-shrink:0}.gallery-cta p:not(.eyebrow){color:var(--muted)}
#photo-dialog{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:oklch(17% .015 267);color:var(--paper)}#photo-dialog::backdrop{background:oklch(17% .015 267)}.lightbox-shell{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:20px 30px;gap:18px}.lightbox-top{display:flex;justify-content:space-between;align-items:center}.lightbox-top p{font-size:14px}.lightbox-top button,.lightbox-bottom button{display:inline-flex;align-items:center;gap:14px;border:1px solid oklch(50% .01 267);background:transparent;color:var(--paper);font-size:14px;padding:10px 18px;min-height:46px;cursor:pointer}.lightbox-top button:hover,.lightbox-bottom button:hover{background:oklch(28% .02 267)}#photo-dialog :focus-visible{outline-color:var(--paper)}.lightbox-image{min-height:0;min-width:0;display:flex;align-items:center;justify-content:center}.lightbox-image img{width:100%;height:100%;object-fit:contain}.lightbox-bottom{display:grid;grid-template-columns:130px minmax(0,1fr) 130px;align-items:center;gap:20px}.lightbox-bottom>div{text-align:center}.lightbox-bottom h2{font-size:20px;letter-spacing:-.5px;line-height:1.3;margin:0 0 5px}.lightbox-bottom p{font-size:13px;color:oklch(80% .01 267)}#next-photo{justify-content:flex-end}body:has(#photo-dialog[open]){overflow:hidden}
@media(max-width:1000px){.gallery-grid{columns:2;column-gap:23px}.gallery-toolbar{align-items:start}.gallery-filters{gap:4px}.gallery-filters button{padding:10px 12px}.gallery-toolbar{flex-wrap:wrap}}
@media(max-width:600px){.gallery-intro{padding-top:38px;padding-bottom:35px}.gallery-intro h1{font-size:clamp(43px,9vw,62px)}.gallery-intro-bottom{display:block}.gallery-intro-bottom .text-link{margin-top:23px}.gallery-intro-bottom p{font-size:16px}.gallery-toolbar{gap:15px;margin-bottom:30px}.gallery-filters button{font-size:13px;padding:9px 12px}.gallery-grid{columns:2;column-gap:16px}.gallery-item{margin-bottom:28px}.gallery-item figcaption{font-size:13px}.gallery-cta{display:block;padding-block:65px}.gallery-cta .button{margin-top:25px}.lightbox-shell{padding:12px 15px;gap:15px}.lightbox-bottom{grid-template-columns:46px minmax(0,1fr) 46px;gap:10px}.lightbox-bottom button{padding:10px;justify-content:center!important;font-size:20px}.lightbox-bottom button span{display:none}.lightbox-bottom h2{font-size:16px}.lightbox-bottom p{font-size:12px}.lightbox-top button{padding:8px 14px}.lightbox-top p{font-size:13px}}
@media(max-width:400px){.gallery-grid{columns:1}.gallery-item{margin-bottom:35px}.gallery-item figcaption{font-size:14px}}
