.photo-page{padding-block:48px 96px}.photo-intro{grid-template-columns:1.5fr 1fr;align-items:end;gap:48px;margin-bottom:40px;display:grid}.photo-intro h1{font-size:clamp(44px,4.2vw,68px)}.photo-intro p{max-width:43ch;color:var(--muted);font-size:17px;line-height:1.7}.photo-intro .text-link{min-height:44px;margin-top:12px}.gallery-toolbar{border-block:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;margin-bottom:28px;padding-block:12px;display:flex}.gallery-filters{flex-wrap:wrap;gap:8px 24px;display:flex}.gallery-filters[hidden]{display:none}.gallery-filters button{min-height:44px;color:var(--muted);border-bottom:2px solid #0000;padding:8px 0;font-size:16px}.gallery-filters button[aria-pressed=true]{color:var(--ink);border-color:var(--amber)}.gallery-info{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 24px;font-size:14px;display:flex}.photo-contact-sheet{columns:4;column-gap:24px}.photo-contact-sheet figure{vertical-align:top;break-inside:avoid;width:100%;margin:0 0 28px;display:inline-block}.photo-contact-sheet figure[hidden]{display:none}.photo-thumbnail{cursor:zoom-in;display:block;position:relative}.photo-thumbnail img{background:#e4ded3;width:100%;height:auto}.photo-thumbnail .photo-expand{color:#faf8f2;background:#28251fe6;place-items:center;width:32px;height:32px;display:grid;position:absolute;bottom:10px;right:10px}.photo-thumbnail:hover .photo-expand{background:#75420b}.photo-contact-sheet figcaption{color:var(--muted);margin-top:10px;font-size:14px;line-height:1.5}.photo-viewer{color:#faf8f2;overscroll-behavior:contain;background:#191713;border:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0}.photo-viewer::backdrop{background:#191713}.photo-viewer:not([open]){display:none}.viewer-shell{height:100%;padding:max(16px, env(safe-area-inset-top)) max(32px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(32px, env(safe-area-inset-left));grid-template-rows:auto minmax(0,1fr) auto;gap:16px;display:grid}.viewer-topbar{justify-content:space-between;align-items:center;gap:24px;display:flex}.viewer-topbar p{color:#ded8cc;font-size:14px}.photo-viewer button{color:#faf8f2;background:#2c2923;justify-content:center;align-items:center;gap:8px;min-width:48px;min-height:48px;padding:12px;font-size:15px;display:inline-flex}.photo-viewer button:hover{background:#494236}.photo-viewer button:disabled{opacity:.45;cursor:default}.photo-viewer :is(button,a):focus-visible{outline-offset:4px;outline:2px solid #f5d5a2}.viewer-stage{justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative}.viewer-stage img{object-fit:contain;width:100%;height:100%}.viewer-stage img[hidden],.viewer-stage [hidden]{display:none}.viewer-status{text-align:center;color:#ded8cc;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.viewer-bottom{justify-content:space-between;align-items:center;gap:24px;display:flex}.viewer-caption{font-family:var(--serif);font-size:22px;line-height:1.4}.viewer-original{color:#ded8cc;text-underline-offset:4px;align-items:center;min-height:44px;font-size:13px;text-decoration:underline;display:inline-flex}.viewer-navigation{flex-shrink:0;gap:12px;display:flex}.photo-viewer[data-viewer-state=ready][data-viewer-motion=full] .viewer-stage img{animation:.28s cubic-bezier(.16,1,.3,1) both photo-open}@keyframes photo-open{0%{opacity:.65;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media (width<=1100px){.photo-contact-sheet{columns:3;gap:20px}.photo-intro{grid-template-columns:1fr;gap:24px}.photo-intro p{max-width:62ch}}@media (width<=760px){.photo-page{padding-block:32px 64px}.photo-intro{gap:20px;margin-bottom:24px}.photo-intro h1{font-size:clamp(36px,6.8vw,52px)}.photo-intro p{font-size:16px}.gallery-toolbar{gap:8px;margin-bottom:24px}.gallery-filters{gap:16px}.gallery-filters button{font-size:14px}.gallery-info{justify-content:space-between;width:100%;font-size:12px}.photo-contact-sheet{column-gap:16px}.photo-contact-sheet figure{margin-bottom:24px}.photo-contact-sheet figcaption{font-size:13px}.viewer-shell{padding-inline:max(16px, env(safe-area-inset-left)) max(16px, env(safe-area-inset-right));gap:12px}.viewer-bottom{align-items:start;gap:16px}.viewer-caption{font-size:18px}.viewer-navigation{gap:8px}.viewer-navigation button span{display:none}}@media (width<=649px){.photo-contact-sheet{columns:2}}@media (prefers-reduced-motion:reduce){.photo-viewer .viewer-stage img{animation:none!important}}
