/* The complete project collection: full photographs, shared image baselines. */
.photo-gallery-document{--photo-gutter:clamp(24px,4vw,72px);background:var(--ink);color:var(--cream)}
.photo-gallery-document .photo-gallery-header{position:relative;inset:auto;height:auto;min-height:88px;padding:22px var(--photo-gutter);display:flex;align-items:center;mix-blend-mode:normal;pointer-events:auto}
.photo-gallery-brand{display:inline-flex;align-items:center;min-height:44px;max-width:calc(100% - 64px);font:600 clamp(19px,2vw,27px)/1 Integral,Arial,sans-serif;letter-spacing:-.04em;white-space:nowrap;pointer-events:auto;color:var(--cream);-webkit-text-fill-color:transparent;-webkit-text-stroke:1px var(--cream);--wordmark-hover-stroke:1px}
.photo-gallery-document .photo-gallery-header .corner-menu-trigger{top:22px;right:var(--photo-gutter);transform:none;will-change:auto}
.photo-gallery-main{max-width:1920px;margin-inline:auto;padding:clamp(16px,3vw,44px) var(--photo-gutter) 0}
.photo-gallery-heading{display:flex;justify-content:center;align-items:center;min-height:44px;margin-bottom:clamp(44px,5vw,80px)}
.photo-gallery-filters{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:clamp(14px,3vw,42px)}
.photo-gallery-filters[hidden]{display:none}
.photo-gallery-filters button{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 8px;font:400 11px/1.3 DM,Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;color:#b8baae;touch-action:manipulation}
.photo-gallery-filters button[aria-pressed=true]{color:var(--cream)}
.photo-gallery-filters button[aria-pressed=true]::before{content:'';position:absolute;inset:3px -2px;pointer-events:none;background:linear-gradient(currentColor,currentColor) left top/6px 1px no-repeat,linear-gradient(currentColor,currentColor) left top/1px 6px no-repeat,linear-gradient(currentColor,currentColor) right top/6px 1px no-repeat,linear-gradient(currentColor,currentColor) right top/1px 6px no-repeat,linear-gradient(currentColor,currentColor) left bottom/6px 1px no-repeat,linear-gradient(currentColor,currentColor) left bottom/1px 6px no-repeat,linear-gradient(currentColor,currentColor) right bottom/6px 1px no-repeat,linear-gradient(currentColor,currentColor) right bottom/1px 6px no-repeat}
.photo-gallery-grid{--photo-slot-height:clamp(220px,25vw,370px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(64px,6vw,100px) clamp(28px,3.4vw,62px)}
.photo-gallery-card{display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center;touch-action:manipulation}
.photo-gallery-card[hidden]{display:none}
.photo-gallery-image{height:var(--photo-slot-height);width:100%;display:flex;align-items:center;justify-content:center}
.photo-gallery-frame{position:relative;display:block;width:min(100%,calc(var(--photo-slot-height) * var(--photo-aspect)));aspect-ratio:var(--photo-aspect);flex:none}
.photo-gallery-frame img{width:100%;height:100%;object-fit:contain}
.photo-gallery-frame::after{content:'';position:absolute;inset:-9px;opacity:0;pointer-events:none;transition:opacity .25s ease;background:linear-gradient(var(--cream),var(--cream)) left top/16px 1px no-repeat,linear-gradient(var(--cream),var(--cream)) left top/1px 16px no-repeat,linear-gradient(var(--cream),var(--cream)) right top/16px 1px no-repeat,linear-gradient(var(--cream),var(--cream)) right top/1px 16px no-repeat,linear-gradient(var(--cream),var(--cream)) left bottom/16px 1px no-repeat,linear-gradient(var(--cream),var(--cream)) left bottom/1px 16px no-repeat,linear-gradient(var(--cream),var(--cream)) right bottom/16px 1px no-repeat,linear-gradient(var(--cream),var(--cream)) right bottom/1px 16px no-repeat}
.photo-gallery-title{display:block;width:fit-content;max-width:100%;margin:24px auto 0;font:650 clamp(15px,1.3vw,22px)/1.25 Unbounded,Arial,sans-serif;letter-spacing:-.045em;text-transform:uppercase;text-wrap:balance;overflow-wrap:anywhere}
.photo-gallery-card:focus-visible .photo-gallery-frame::after{opacity:1}
.photo-gallery-footer{max-width:calc(1920px - var(--photo-gutter) * 2);margin:clamp(70px,8vw,130px) var(--photo-gutter) 0;padding:24px 0 max(24px,env(safe-area-inset-bottom));border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:11px;color:#b8baae}
.photo-gallery-footer nav,.photo-gallery-footer-meta{display:flex;align-items:center;flex-wrap:wrap;gap:clamp(18px,2.4vw,36px)}
.photo-gallery-footer a{display:inline-flex;align-items:center;min-height:44px}
.photo-gallery-footer .footer-instagram{min-width:44px;justify-content:center}
/* This single rule set is also loaded on the home page for its collection link. */
#stills .stills-project-grid{padding-bottom:0}
#stills .stills-project-grid>.stills-project-card:nth-last-child(1 of :not([hidden])){margin-bottom:0}
.stills-view-all{display:flex;align-items:center;justify-content:center;gap:22px;width:fit-content;max-width:100%;min-height:48px;margin:clamp(32px,3vw,48px) auto 0;padding:10px 4px;font:400 clamp(12px,1.2vw,15px)/1.5 DM,Arial,sans-serif;letter-spacing:.07em;text-align:center;text-transform:uppercase;text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--line)}
.stills-view-all>span:last-child{font-size:24px;text-decoration:none}
.stills-view-all{transform:translate3d(0,var(--last-project-travel,0px),0)}
@media(hover:hover){.photo-gallery-card:hover .photo-gallery-frame::after{opacity:1}.stills-view-all:hover{text-decoration-color:currentColor}}
@media(min-width:1920px){.photo-gallery-footer{margin-inline:auto}}
@media(max-width:1099px){
 .photo-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));--photo-slot-height:clamp(260px,39vw,390px);column-gap:clamp(32px,6vw,64px)}
 .photo-gallery-title{font-size:clamp(17px,2.3vw,24px)}
}
@media(max-width:760px){
 .photo-gallery-document .photo-gallery-header{min-height:78px;padding:17px var(--photo-gutter)}
 .photo-gallery-brand{font-size:clamp(18px,4.7vw,24px)}
 .photo-gallery-document .photo-gallery-header .corner-menu-trigger{top:17px;right:var(--photo-gutter)}
 .photo-gallery-main{padding-top:14px}
 .photo-gallery-heading{margin-bottom:38px}
 .photo-gallery-filters{gap:clamp(5px,2.3vw,18px)}
 .photo-gallery-filters button{font-size:10px;letter-spacing:.035em;padding-inline:7px}
 .photo-gallery-footer{align-items:flex-start;flex-direction:column;gap:5px}
 .photo-gallery-footer nav,.photo-gallery-footer-meta{width:100%;justify-content:space-between;gap:14px}
 .stills-view-all{margin-top:28px;gap:16px}
}
@media(max-width:599px){
 .photo-gallery-grid{grid-template-columns:minmax(0,1fr);--photo-slot-height:min(100vw,58svh);row-gap:58px}
 .photo-gallery-card{width:100%;max-width:400px;margin-inline:auto}
 .photo-gallery-title{font-size:clamp(19px,5vw,27px);margin-top:25px;max-width:96%}
}
@media(prefers-reduced-motion:reduce){.photo-gallery-frame::after{transition:none}}
