/* The film has an end; the collection never grows as you browse. */
.journey {height:450svh}
.main-nav {gap:clamp(18px,2.4vw,38px)}
.collection-shortcut {padding:12px 0;border-bottom:1px solid rgba(238,233,223,.35)}
.collection-total {margin-left:auto;letter-spacing:.06em;font-size:9px;color:#67685d}
.reveal-line {display:block;will-change:transform}
.collection-guidance {font-size:11px;color:#65665c;display:block}
.archive .work-button {transform:translate3d(0,var(--editorial-y,0px),0);will-change:transform}
.archive .work-description {position:relative}
.work-dialog {width:min(1380px,96vw);overflow:hidden;max-height:94svh}
.dialog-shell {height:min(820px,90svh);min-height:0;grid-template-columns:minmax(0,1fr) 290px}
.dialog-media {min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#dad5cb}
.dialog-art {display:block;position:relative;flex:1;min-height:0;height:100%;overflow:auto;padding:28px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8e8c81 transparent;background:#dad5cb}
.dialog-art img {display:block;margin:0 auto;max-width:none;max-height:none;object-fit:contain;user-select:none}
.dialog-art.is-zoomed {cursor:grab}
.dialog-art.is-dragging {cursor:grabbing}
.detail-controls {display:flex;align-items:center;gap:8px;padding:12px 22px;border-top:1px solid rgba(25,26,22,.16);flex-shrink:0;font-size:10px;background:#e4dfd5}
.detail-controls button {height:36px;min-width:36px;padding:0 9px;border:1px solid rgba(25,26,22,.2);background:transparent;color:var(--ink);font-size:18px}
.detail-controls #zoom-fit {font-size:11px}
.detail-controls button:hover:not(:disabled) {background:var(--ink);color:var(--paper)}
.detail-controls button:disabled {opacity:.3;cursor:default}
#zoom-status {min-width:45px;margin-left:6px;font-variant-numeric:tabular-nums}
.detail-hint {margin-left:auto;color:#616256;font-size:10px}
.dialog-info {padding:100px 28px 28px;min-width:0;overflow-y:auto}
.dialog-source {display:flex;gap:18px;border-bottom:1px solid var(--line);padding-bottom:9px;margin-top:28px;font-size:11px}
.dialog-source:hover {color:#a33a22}
.dialog-navigation {padding-top:35px}
.dialog-close {z-index:4}
.archive :is(button,a):focus-visible,
body.is-archive .site-header a:focus-visible,
.work-dialog :is(button,a):focus-visible {outline-color:#9b2f13}
.dialog-art:focus-visible {outline:2px solid #9b2f13;outline-offset:-5px}
.artwork-load-notice {margin:auto;padding:24px;max-width:340px;text-align:center;font-size:13px;line-height:1.6;color:var(--ink)}
.artwork-load-notice[hidden],.dialog-art img[hidden] {display:none!important}
.artwork-load-notice button {min-height:44px;margin-top:14px;padding:10px 18px;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer}
.site-footer :is(button,a):focus-visible {outline-color:var(--ink)}
@media (max-width:900px) {
 .studio-link {display:none!important}
 .dialog-shell {grid-template-columns:minmax(0,1fr) 240px}
 .dialog-info {padding:90px 22px 24px}
}
@media (max-width:600px) {
 .journey {height:380svh}
 .main-nav {gap:18px}
 .main-nav .film-link {display:inline-flex}
 .collection-total {max-width:145px;text-align:right;font-size:8px;letter-spacing:0}
 .collection-shortcut {display:none}
 .work-dialog {width:96vw;max-height:94svh;overflow:auto}
 .dialog-shell {display:flex;height:auto;min-height:0}
 .dialog-media {height:54svh;min-height:300px;flex-shrink:0}
 .dialog-art {padding:16px;padding-top:42px}
 .dialog-info {padding:22px;overflow:visible}
 .dialog-info h2 {font-size:30px;margin:10px 0 12px}
 .dialog-info #dialog-text {font-size:12px}
 .dialog-source {margin-top:18px;font-size:10px;width:max-content}
 .dialog-navigation {padding-top:20px}
 .detail-controls {padding:8px 12px;gap:6px}
 .detail-controls button {height:32px;min-width:32px}
 .detail-hint {font-size:8px}
 .dialog-close {position:fixed;top:8px;right:8px}
}
@media (prefers-reduced-motion:reduce) {
 .reveal-line,.archive .work-button {transform:none!important;will-change:auto}
}
body.reduce-motion .reveal-line,body.reduce-motion .archive .work-button {transform:none!important;will-change:auto}
html:has(body.reduce-motion) {scroll-behavior:auto}

.work-enquiry {display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:44px;margin-top:22px;padding:12px 14px;background:var(--ink);color:var(--paper);font-size:11px;transition:background .2s,transform .2s}
.work-enquiry:hover {background:#853b26}
.work-enquiry span,.archive-pagination button span,.dialog-source span {display:inline-block;transition:transform .2s}
.work-enquiry:hover span,.dialog-source:hover span {transform:translate(3px,-3px)}
.archive-pagination button:hover:not(:disabled) span {transform:translateX(3px)}
.archive-pagination #previous-page:hover:not(:disabled) span {transform:translateX(-3px)}
.detail-controls button,.archive-pagination button,.filter {min-height:44px;transition:color .2s,background .2s,transform .2s}
.detail-controls button{min-width:44px}
.dialog-navigation button,.dialog-close{min-width:44px;min-height:44px}
:is(.detail-controls button,.archive-pagination button,.work-enquiry):active:not(:disabled){transform:scale(.97)}
:is(.archive,.work-dialog) :is(a,button):focus-visible,.dialog-art:focus-visible {outline:2px solid #8b361c;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.work-enquiry,.work-enquiry span,.archive-pagination button,.archive-pagination button span,.dialog-source span,.detail-controls button,.filter{transition:none;transform:none!important}}
