/* Full-width photography, with text kept away from the viewport edge. */
:root{--page-gutter:clamp(18px,3vw,64px)}
body .nav-wrap{max-width:none;padding-inline:var(--page-gutter)}
body .hero{width:100%;max-width:none;margin:0;padding-inline:var(--page-gutter)}
body .hero-layout,body .hero-topline,body .hero-base{max-width:none}
body.hero-direction-2 .hero-layout{position:static}
body.hero-direction-2 .hero-visual{inset:0;width:100%;height:100%}
body .section.site-gallery{max-width:none;width:100%;padding-inline:var(--page-gutter)}
#gallery-featured-photos.gallery-collage{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:clamp(150px,15vw,280px);grid-auto-flow:row dense;gap:24px}
.gallery-collage>.gallery-tile{display:flex;flex-direction:column;min-width:0;min-height:0}
.gallery-collage>.collage-span-3{grid-column:span 3}.gallery-collage>.collage-span-4{grid-column:span 4}.gallery-collage>.collage-span-6{grid-column:span 6}.gallery-collage>.collage-span-12{grid-column:span 12}.gallery-collage>.collage-tall{grid-row:span 2}
#gallery-photos .gallery-open{min-height:0;aspect-ratio:auto;flex:1;width:100%;position:relative}
#gallery-photos .gallery-open img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
#gallery-photos figcaption{flex:none;min-height:29px;font-size:12px;line-height:1.5;padding-top:10px}
#gallery-photos figcaption>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#gallery-photos figcaption>span:last-child{font-size:9px}
.gallery-all-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 22px}
.gallery-all-grid .gallery-tile{display:flex;flex-direction:column;min-height:0}
#gallery-all-photos .gallery-open{aspect-ratio:16/10;flex:none}
.gallery-library-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}
.gallery-library-actions>p{font-size:12px;color:var(--muted)}
.gallery-library-actions .button{font-size:11px;min-height:44px}
#gallery-photos[hidden],#gallery-featured-photos[hidden],#gallery-all-photos[hidden],#gallery-library-actions[hidden]{display:none!important}
@media(min-width:2000px){body.hero-direction-2 .hero-copy{max-width:780px;padding-block:110px 130px}.hero-direction-2 .hero h1{font-size:110px}.hero-direction-2 .hero-intro{font-size:18px;max-width:540px}}
@media(max-width:1000px){.gallery-all-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#gallery-featured-photos.gallery-collage{gap:18px;grid-auto-rows:clamp(150px,19vw,210px)}}
@media(max-width:760px){#gallery-featured-photos.gallery-collage{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:20px 14px}.gallery-collage>.gallery-tile{grid-column:span 1;grid-row:auto}.gallery-collage>.gallery-tile:first-child,.gallery-collage>.gallery-tile:last-child:nth-child(even){grid-column:span 2}#gallery-photos .gallery-open{flex:none;aspect-ratio:4/3}#gallery-photos figcaption{font-size:11px;min-height:28px;gap:8px}.gallery-all-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.gallery-library-actions{flex-direction:column;align-items:flex-start;gap:12px}.gallery-library-actions .button{width:100%;justify-content:space-between}body.hero-direction-2 .hero-visual{height:100%}}
@media(prefers-reduced-motion:reduce){.gallery-open img{transition:none}}
