/* Shared quiet ending, deliberately outside each page's photographic content. */
[hidden]{display:none!important}
body[data-surface=public] img{-webkit-touch-callout:none;user-select:none;-webkit-user-drag:none}
.image-stage .detail-image{z-index:1;opacity:0;transition:opacity .22s ease-in;pointer-events:none}
.cover-field{display:grid;gap:12px;flex:1;min-width:180px;font-size:12px;color:var(--muted)}
.global-footer{display:flex;flex-direction:column;align-items:center;padding:clamp(100px,16vh,190px) var(--space) 48px;gap:52px}
.footer-monogram{display:block;width:auto;height:37px;opacity:.78}
.global-footer .copyright{justify-content:center;flex-wrap:wrap}
.public-gallery{padding-bottom:0}
.home{height:auto;min-height:0;padding-bottom:0}
.exhibition{flex:none;height:clamp(320px,calc(100svh - 220px),1000px);max-height:none}
.home-footer{min-height:44px;justify-content:center}
.global-footer[data-context=story]{padding-top:clamp(120px,18vh,220px)}
.curated-wall{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(48px,7vw,128px);padding-top:clamp(28px,6vh,80px);row-gap:clamp(90px,12vh,180px);align-items:center}
.curated-wall .photo-tile{box-shadow:none;border:0;border-radius:0}
.curated-wall .photo-tile:nth-child(8n+1){grid-column:1;width:100%;justify-self:end}
.curated-wall .photo-tile:nth-child(8n+2){grid-column:2;width:90%;justify-self:end;margin-top:11vh}
.curated-wall .photo-tile:nth-child(8n+3){grid-column:1;width:90%;justify-self:start;margin-top:5vh}
.curated-wall .photo-tile:nth-child(8n+4){grid-column:2;width:100%;justify-self:start;margin-top:0}
.curated-wall .photo-tile:nth-child(8n+5){grid-column:1;width:96%;justify-self:end}
.curated-wall .photo-tile:nth-child(8n+6){grid-column:2;width:90%;justify-self:start;margin-top:9vh}
.curated-wall .photo-tile:nth-child(8n+7){grid-column:1;width:100%;justify-self:start}
.curated-wall .photo-tile:nth-child(8n+8){grid-column:2;width:94%;justify-self:end;margin-top:7vh}
.curated-wall .photo-tile.priority-hero{width:100%}
.curated-wall .photo-tile.priority-high{width:96%}
.curated-wall .photo-tile.landscape{align-self:center}
.expand-mark{background:transparent;width:36px;height:36px;right:12px;bottom:12px;filter:drop-shadow(0 1px 3px #0008)}
.expand-mark svg,.restore svg{width:22px;height:22px;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}
.v-control{width:52px;height:52px}
.v-control[hidden]{display:none}
.picker-photo{padding:12px;gap:9px;transition:border-color .2s,background .2s}
.picker-photo input,.select-label input,.setting-toggle input,.admin-exif-toggle input{appearance:none;flex:none;width:16px;height:16px;min-height:0;padding:0;border:1px solid #b7af9e;background:transparent;border-radius:3px;display:inline-grid;place-content:center;vertical-align:middle;margin:0}
.picker-photo input[type=radio]{border-radius:50%}
.picker-photo input:checked,.select-label input:checked,.setting-toggle input:checked,.admin-exif-toggle input:checked{background:#80745f;border-color:#80745f}
.picker-photo input:checked::after,.select-label input:checked::after,.setting-toggle input:checked::after,.admin-exif-toggle input:checked::after{content:'';width:7px;height:4px;border-left:1px solid #fff;border-bottom:1px solid #fff;transform:rotate(-45deg) translateY(-1px)}
.picker-photo input[type=radio]:checked::after{width:5px;height:5px;background:white;border:0;border-radius:50%;transform:none}
.picker-photo:has(input:focus-visible){outline:1px solid var(--accent);outline-offset:3px}
.setting-toggle{display:flex;align-items:center;gap:12px;margin:20px 0;min-height:44px}
.admin-exif-toggle{position:absolute;left:24px;bottom:24px;z-index:3;display:flex;align-items:center;gap:12px;color:#eee;min-height:44px;background:#161616d9;padding:8px 12px}
.admin-exif-panel{position:absolute;left:24px;bottom:84px;z-index:3;color:#eee;background:#161616e8;padding:18px;max-width:min(400px,80vw);max-height:50vh;overflow:auto;font-size:12px}
.admin-exif-panel dl{display:grid;grid-template-columns:auto 1fr;gap:8px 18px}.admin-exif-panel dd{margin:0;overflow-wrap:anywhere}.admin-exif-panel dt{color:#aaa}
.result-actions{border-top:1px solid var(--rule);margin-top:18px}.pick-result small{display:block}
.processing-placeholder{height:180px;display:grid;place-items:center;background:#edeae4;color:var(--muted);font-size:12px;letter-spacing:.08em}
@media(max-width:700px){.global-footer{padding-top:88px;padding-bottom:36px;gap:38px}.global-footer[data-context=story]{padding-top:105px}.footer-monogram{height:32px}.global-footer .copyright{font-size:8px;gap:9px}.exhibition{height:clamp(280px,calc(100svh - 205px),720px)}.curated-wall{gap:74px;padding-top:20px}.curated-wall .photo-tile:nth-child(n){margin-top:0;width:100%}.curated-wall .photo-tile:nth-child(3n+2){width:90%}.expand-mark{width:28px;height:28px;right:8px;bottom:8px}.admin-exif-toggle{left:12px;bottom:12px;font-size:11px}.admin-exif-panel{left:12px;bottom:68px}.result-actions .action{font-size:11px;padding:11px 14px}}
@media(min-width:2400px){.wordmark{width:260px}.site-header nav a{font-size:12px}.site-header{min-height:128px}.social svg{width:20px;height:20px}.global-footer .copyright{font-size:10px}.global-footer .copyright-brand{font-size:12px}.global-footer .copyright-rights{font-size:9px}.footer-monogram{height:38px}.v-control{width:56px;height:56px;font-size:38px}.expand-mark{width:36px;height:36px}.exhibition{width:min(80%,2200px)}}
.library-pagination{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.75rem;padding:1.1rem 0 1.6rem;border-top:1px solid var(--line,#ded8cc)}
.library-pagination[hidden]{display:none}
.library-pagination>div{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.75rem;margin-left:auto}
.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev){--pager-height:max(44px,2.75rem);--pager-gap:.75rem}
.photo-picker .picker-toolbar:has(>#picker-prev){justify-content:flex-end;gap:var(--pager-gap);padding-top:1rem;border-top:1px solid var(--rule)}
:is(.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev))> :is(#library-page-status,#home-page-status,#picker-page){order:-1;margin-right:auto;white-space:nowrap;color:var(--muted);font-size:.8rem;line-height:1.5}
:is(.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev)) label{display:flex;align-items:center;flex:none;gap:.6rem;margin:0;width:auto;min-width:0;white-space:nowrap;font-size:.8rem;line-height:1.5}
:is(.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev)) button{display:inline-flex;align-items:center;justify-content:center;flex:none;box-sizing:border-box;height:var(--pager-height);min-height:var(--pager-height);min-width:5rem;margin:0;padding:0 1rem;border:1px solid var(--rule);border-radius:2px;background:transparent;color:var(--ink);font-family:inherit;font-size:.8rem;font-weight:400;letter-spacing:.03em;line-height:1;white-space:nowrap;cursor:pointer}
:is(.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev)) input[type=number]{box-sizing:border-box;flex:none;width:4.25rem;max-width:4.25rem;height:var(--pager-height);min-height:var(--pager-height);margin:0;padding:0 .45rem;border:1px solid var(--rule);border-radius:2px;text-align:center;font-family:inherit;font-size:.8rem;line-height:1.5;background:#fff}
:is(.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev)) button:hover:not(:disabled){background:#eeeae1;border-color:var(--accent)}
:is(.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev)) button:disabled{opacity:.4;cursor:default}
:is(.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev)) :is(button,input):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.library-pagination>#home-selected-hidden{flex-basis:100%;margin:0;text-align:right;font-size:.75rem}
.library-pagination>#home-selected-hidden:empty{display:none}
@media(max-width:600px){.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev){gap:.6rem}.library-pagination>div{gap:.6rem}:is(.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev))> :is(#library-page-status,#home-page-status,#picker-page){flex-basis:100%;margin-right:0}:is(.library-pagination,.photo-picker .picker-toolbar:has(>#picker-prev)) button{padding:0 .8rem}}

/* Scale the layout frame, not the pixels: preserve contain, centre and footer flow. */
.home .exhibition{--home-frame-height:clamp(320px,calc(100svh - 220px),1000px);width:min(calc(100% * var(--home-scale,1)),calc(1280px * var(--home-scale,1)),calc(100vw - 32px));height:min(calc(var(--home-frame-height) * var(--home-scale,1)),max(var(--home-frame-height),calc(100svh - 160px)));align-self:center;margin:0;min-width:0;min-height:0}
.home-display-settings{margin-bottom:40px;display:grid;gap:24px}
.home-display-settings h2,.home-display-settings p{margin:0}
.home-display-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:680px}
.home-display-fields label{display:grid;gap:10px;align-content:start;min-width:0}
.home-display-fields small{color:var(--muted);line-height:1.6}
.home-display-input{display:flex;align-items:center;border:1px solid var(--rule);height:48px;padding-right:16px;gap:12px}
.home-display-input input{border:0;width:100%;min-width:0;height:100%;margin:0;background:transparent}
.home-display-input span{color:var(--muted);flex:none}
.home-display-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
@media(max-width:700px){.home .exhibition{--home-frame-height:clamp(280px,calc(100svh - 205px),720px)}.home-display-fields{grid-template-columns:1fr;gap:20px}.home-display-actions{align-items:flex-start;flex-direction:column;gap:12px}}

@media(min-width:2400px){.home .exhibition{width:min(calc(80% * var(--home-scale,1)),calc(2200px * var(--home-scale,1)),calc(100vw - 32px))}}

@media(max-width:700px){.home .exhibition{height:min(calc(var(--home-frame-height) * var(--home-scale,1)),max(var(--home-frame-height),calc(100svh - 130px)))}}
