.photography-page{--muted:#bcb6c4;--line:#ffffff2c}
.photography-main{width:min(1440px,90%);margin:42px auto 0}
.photography-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}
.photography-heading h1{position:static;transform:none;font:900 clamp(36px,7.6vw,112px)/.95 Impact,'Arial Narrow',sans-serif;letter-spacing:-.035em;pointer-events:auto;text-shadow:none;overflow-wrap:anywhere;margin:0}
.photography-heading p{margin:0 0 4px;font-size:14px;line-height:1.5;color:var(--muted);text-align:right}
.photo-filters{display:flex;flex-wrap:wrap;gap:6px 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 0}
.photo-filters a{font-size:14px;line-height:1.5;padding:9px 0;color:var(--muted);text-underline-offset:7px;min-height:44px}
.photo-filters a[aria-current=true]{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px}
.photo-filters a:hover{color:var(--ink)}
.photo-filters small{font-size:12px;margin-left:5px;opacity:.65}
.photo-section-label{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin:30px 0 32px}
.photo-section-label h2{font-size:16px;font-weight:400;margin:0;letter-spacing:.025em}
.photo-section-label p{font-size:13px;color:var(--muted);margin:0;font-variant-numeric:tabular-nums}
.photo-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;row-gap:clamp(32px,5vw,76px);align-items:start}
.photo-frame{margin:0;min-width:0;grid-column:span 6}
.photo-frame:nth-child(6n+1){grid-column:1 / span 6}
.photo-frame:nth-child(6n+2){grid-column:9 / span 4;margin-top:7vw}
.photo-frame:nth-child(6n+3){grid-column:2 / span 9;margin-top:1vw}
.photo-frame:nth-child(6n+4){grid-column:2 / span 4;margin-top:1vw}
.photo-frame:nth-child(6n+5){grid-column:8 / span 5;margin-top:6vw}
.photo-frame:nth-child(6n+6){grid-column:3 / span 8}
.photo-open{display:block;position:relative;background:#16111e;cursor:zoom-in}
.photo-open img{width:100%;height:auto;display:block;transition:filter .3s}
.photo-open:hover img{filter:brightness(1.045)}
.photo-frame figcaption{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0 0;font-size:13px;color:var(--muted);line-height:1.5}
.photo-frame figcaption a{font-size:14px;min-height:30px;display:inline-flex;align-items:center}
.photo-frame figcaption a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--ink)}
.photo-frame figcaption span:last-child{font-variant-numeric:tabular-nums;font-size:12px}
.photo-end{border-top:1px solid var(--line);margin:60px 0 0;padding:28px 0 40px;display:flex;justify-content:space-between;gap:24px;font-size:14px;line-height:1.6}
.photo-end a{text-decoration:underline;text-underline-offset:5px}
.photo-end p{margin:0;color:var(--muted)}
.photography-page a:focus-visible,.photography-page button:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
#photo-viewer{padding:0;margin:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;background:#0b0810;color:var(--ink);overflow:hidden}
.photo-viewer-tools{position:absolute;inset:0 0 auto;z-index:2;display:flex;align-items:center;gap:12px;padding:12px 20px;background:#0b0810ed;min-height:68px}
.photo-viewer-tools p{margin:0 auto 0 0;font-size:14px}
.photo-viewer-tools button{min-width:48px;min-height:44px;border:1px solid #ffffff40;padding:8px 14px;font-size:14px}
.photo-viewer-stage{height:100%;padding:76px 66px 55px;display:grid;place-items:center;overflow:auto;touch-action:pan-y}
.photo-viewer-stage img{max-width:100%;max-height:calc(100dvh - 136px);width:auto;height:auto;object-fit:contain}
#photo-viewer[data-zoomed=true] .photo-viewer-stage{display:block;touch-action:auto}
#photo-viewer[data-zoomed=true] .photo-viewer-stage img{max-width:none;max-height:none;margin:auto}
.photo-viewer-arrow{position:absolute;top:calc(50% - 24px);z-index:2;font-size:26px;min-width:48px;min-height:48px;background:#0b0810bb}
.photo-viewer-arrow[data-prev]{left:6px}.photo-viewer-arrow[data-next]{right:6px}
.photo-viewer-caption{position:absolute;inset:auto 60px 16px;text-align:center;margin:0;font-size:13px;color:var(--muted)}
.photo-viewer-loading{display:none;position:absolute;bottom:45px;left:50%;transform:translateX(-50%);padding:8px 12px;margin:0;background:#0b0810dd;white-space:nowrap;font-size:13px}
#photo-viewer:has(img[aria-busy=true]) .photo-viewer-loading{display:block}
@media(min-width:1600px){.photo-frame:nth-child(6n+2){margin-top:112px}.photo-frame:nth-child(6n+5){margin-top:96px}}
@media(max-width:760px){.photography-main{width:92%;margin-top:30px}.photography-heading{display:block;margin-bottom:24px}.photography-heading h1{font-size:10.6vw}.photography-heading p{text-align:left;margin:15px 0 0}.photo-filters{gap:0 18px;padding:8px 0}.photo-filters a{font-size:14px}.photo-section-label{margin:24px 0}.photo-gallery{grid-template-columns:repeat(6,minmax(0,1fr));gap:30px 10px}.photo-frame:nth-child(n){grid-column:1 / -1;margin-top:0}.photo-frame:nth-child(4n+2){grid-column:2 / -1}.photo-frame:nth-child(4n+4){grid-column:1 / span 5}.photo-frame figcaption{padding-top:8px}.photo-end{display:block;margin-top:38px}.photo-end p{margin-top:18px}.photo-viewer-tools{padding:8px 12px;gap:8px}.photo-viewer-tools p{max-width:50%;font-size:13px}.photo-viewer-tools button{padding:7px 10px}.photo-viewer-stage{padding:76px 0 54px}.photo-viewer-stage img{max-height:calc(100dvh - 140px)}.photo-viewer-arrow{top:auto;bottom:4px;min-height:44px}.photo-viewer-caption{bottom:20px}}
@media(prefers-reduced-motion:reduce){.photo-open img{transition:none}}
