/* A quiet photographic collection, using the Foundation's existing palette and type. */
.gallery-heading{padding:90px 0 64px;display:grid;grid-template-columns:1.4fr 1fr;gap:70px;align-items:end}
.gallery-heading h1{font:clamp(60px,6.5vw,100px)/1.02 var(--serif);letter-spacing:-.05em;margin:0}
.gallery-heading .eyebrow{margin-bottom:30px}
.gallery-heading-copy{max-width:365px;padding-bottom:9px;color:var(--muted);font-size:14px;line-height:1.85}
.gallery-heading-copy p+p{margin-top:15px}.gallery-heading-copy>span{display:block;font-size:8px;letter-spacing:.14em;margin-top:30px}
.gallery-filters{display:flex;flex-wrap:wrap;gap:8px;padding-top:25px;border-top:1px solid var(--line)}
.gallery-filters button{font-size:11px;padding:11px 17px;border:1px solid var(--line);border-radius:30px;min-height:44px;transition:background .2s,color .2s}
.gallery-filters button:hover{background:#e9eddf}.gallery-filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.gallery-filters small{font-size:9px;margin-left:7px;opacity:.7}.gallery-count{font-size:10px;letter-spacing:.04em;color:var(--muted);margin:22px 0 26px}
.gallery-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 23px}
.gallery-card{min-width:0}.gallery-card button{display:block;width:100%;text-align:left;padding:0}
.gallery-card-image{display:block;overflow:hidden;background:#dfe3d7;aspect-ratio:3/2}
.gallery-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s,filter .45s}
.gallery-card button:hover img{transform:scale(1.025);filter:brightness(.94)}
.gallery-card-label{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-top:15px}
.gallery-card-label strong{font:25px/1.13 var(--serif);letter-spacing:-.02em;font-weight:400}.gallery-card-label svg{flex:none}
.gallery-card-place{display:block;font-size:9px;letter-spacing:.055em;text-transform:uppercase;color:var(--muted);margin-top:10px;line-height:1.7}
.gallery-card button:focus-visible{outline:2px solid var(--orange);outline-offset:6px}.gallery-colophon{margin-top:50px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:35px;color:var(--muted);font-size:10px;line-height:1.9}
.gallery-end{padding:80px 0 85px}.gallery-end h2{font-size:50px;margin-bottom:30px}
#gallery-viewer{padding:0;width:min(1260px,calc(100% - 36px));max-width:none;max-height:calc(100dvh - 28px);background:#102e35;color:#f5f3e9;border:1px solid #4c6266;overflow:auto;box-shadow:0 24px 90px #00101780}
#gallery-viewer::backdrop{background:#071a20eb;backdrop-filter:blur(5px)}
.viewer-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 24px}.viewer-top>span{font-size:9px;letter-spacing:.15em;color:#bacbc9}
#viewer-close{display:flex;align-items:center;gap:13px;font-size:12px;min-height:42px;padding:6px 0 6px 16px}#viewer-close>span{font-size:25px;font-weight:300}
.viewer-image-wrap{background:#092027;position:relative}.viewer-image-wrap img{width:100%;height:61dvh;object-fit:contain;display:block}.viewer-image-wrap>p{padding:24px;font-size:13px}
.viewer-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:22px 28px 28px}.viewer-caption{max-width:840px;min-width:0}#viewer-location{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#c2d0ce;margin-bottom:9px}#viewer-title{font-size:30px;line-height:1.1;margin:0 0 8px}#viewer-caption{font-size:12px;line-height:1.7;color:#c2d0ce;margin:0}
#viewer-story{display:inline-flex;align-items:center;gap:10px;padding:10px 0 3px;margin-top:5px;font-size:11px;border-bottom:1px solid #6c8180;color:#f5f3e9}
.viewer-navigation{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none}.viewer-navigation button{min-height:44px;min-width:44px;font-size:25px;font-weight:300}.viewer-navigation button:hover,#viewer-close:hover{color:var(--lime)}#viewer-position{min-width:50px;text-align:center;font-size:10px;color:#c2d0ce}
#gallery-viewer button:focus-visible,#gallery-viewer a:focus-visible{outline:2px solid #dce6ba;outline-offset:3px}
#viewer-reflection-wrap{margin-top:20px;padding-left:18px;border-left:1px solid #7e9491}.reflection-label{font-size:8px;letter-spacing:.12em;color:#bacbc9;margin:0 0 10px}#viewer-reflection-wrap blockquote{font:18px/1.55 var(--serif);margin:0;max-width:700px;color:#f5f3e9}#viewer-alternate{margin-top:16px}#viewer-alternate summary{font-size:11px;cursor:pointer;color:#dce6ba;padding:8px 0}#viewer-alternate blockquote{margin-top:8px}.viewer-top{position:sticky;top:0;background:#102e35;z-index:1}
@media(max-width:1050px){.gallery-heading{gap:40px}.gallery-collection{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-heading h1{font-size:74px}.viewer-bottom{align-items:center}}
@media(max-width:760px){.gallery-heading{display:block;padding:55px 0 35px}.gallery-heading h1{font-size:clamp(54px,12vw,78px)}.gallery-heading .eyebrow{font-size:9px;margin-bottom:24px}.gallery-heading-copy{max-width:440px;margin-top:25px;font-size:13px;padding:0}.gallery-heading-copy>span{margin-top:23px;font-size:8px}.gallery-filters{gap:7px;padding-top:20px}.gallery-filters button{font-size:10px;padding:10px 13px}.gallery-collection{gap:28px 16px}.gallery-card-label strong{font-size:23px}.gallery-card-place{font-size:8px;margin-top:8px}.gallery-colophon{display:block;margin-top:35px;font-size:9px}.gallery-colophon p+p{margin-top:15px}.gallery-end{padding:55px 0}.gallery-end h2{font-size:40px}#gallery-viewer{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.viewer-top{padding:8px 16px}.viewer-top>span{font-size:8px}.viewer-image-wrap img{height:47dvh}.viewer-bottom{display:block;padding:20px 18px 12px}#viewer-title{font-size:28px}#viewer-caption{font-size:11px}.viewer-navigation{margin-top:15px;border-top:1px solid #3e575b;padding-top:8px}.gallery-page .site-footer>div{flex-wrap:wrap}}
@media(max-width:520px){.gallery-collection{grid-template-columns:1fr;gap:30px}.gallery-card-label strong{font-size:27px}.gallery-card-place{font-size:9px}.gallery-count{margin-bottom:22px}}

.gallery-card .photo-credit{font-size:10px;line-height:1.55;margin-top:7px}.viewer-caption #viewer-credit{font-size:10px;color:#c2d0ce;margin:10px 0 0}
