.gallery-body{min-height:100svh;display:flex;flex-direction:column}
.gallery-body .site-header{flex-shrink:0}
.gallery-page{width:100%;max-width:none;flex:1;margin:0;padding:clamp(28px,5.9vw,100px) 2.3vw 32px}
.gallery-body .footer{flex:none;width:100%;max-width:none;padding:20px 2.3vw 12px;font-size:9px}
.detail-layout{display:grid;grid-template-columns:17.3fr 7.9fr 44fr 5.5fr 20.7fr;gap:0;align-items:start}
.cycle-nav{grid-column:1;grid-row:1;min-width:0}
.viewer-stage{grid-column:3;grid-row:1;width:min(100%,calc((100svh - 280px)*1286/888));aspect-ratio:1286/888;justify-self:end;overflow:hidden;background:transparent}
.feature-stage{background:#f2f0eb}
.artwork-open{display:block;width:100%;height:100%;cursor:zoom-in}
.reference-art{display:block;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center}
.viewer-under{grid-column:5;grid-row:1;min-width:0;padding-top:.4vw}
.cycle-label{padding:0 0 1.55vw;color:var(--muted);font-size:clamp(10px,.83vw,13px);letter-spacing:.14em;text-transform:uppercase}
.cycle-nav a{display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:10px;align-items:center;text-decoration:none;font:400 clamp(15px,1.25vw,22px)/1.25 Georgia,serif}
.cycle-name{display:block;min-width:0;border-bottom:1px solid var(--line);padding:.5vw 0 .6vw;overflow-wrap:anywhere}
.cycle-count{font:400 11px Arial,sans-serif;color:var(--muted);letter-spacing:.1em;text-align:right}
.cycle-nav a.selected .cycle-name{font-style:italic;font-weight:700}
.viewer-arrows{display:flex;justify-content:flex-start;gap:14px;align-items:center;min-height:28px;font:400 2.1vw/1 Georgia,serif}
.viewer-arrows a{font:inherit;text-decoration:none}
.viewer-meta{margin-top:5.4vw}
.work-number{font:700 3.6vw/1 Georgia,serif;margin-bottom:2.2vw}
.metadata-fields{border-top:1px solid var(--line);padding-top:.8vw}
.metadata-field{margin-bottom:.65vw}
.field-label{display:block;font:400 .75vw/1.2 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.5vw}
.field-value{display:block;font:400 1.3vw/1.2 Georgia,serif;margin:0;overflow-wrap:anywhere}
.artwork-open:focus-visible,.viewer-arrows a:focus-visible,.cycle-nav a:focus-visible,.artwork-close:focus-visible{outline:1px solid var(--ink);outline-offset:4px}
.artwork-dialog{position:fixed;inset:0;box-sizing:border-box;width:100vw;height:100svh;max-width:none;max-height:none;padding:64px 24px 24px;margin:0;border:0;background:var(--paper);overflow:hidden}
.artwork-dialog::backdrop{background:var(--paper)}
.artwork-dialog[open]{display:flex;align-items:center;justify-content:center}
.artwork-dialog img{width:100%;height:100%;object-fit:contain}
.artwork-close{position:absolute;right:24px;top:18px;border:0;background:transparent;color:var(--ink);font:12px/1.5 Arial,Helvetica,sans-serif;letter-spacing:.06em;padding:8px;cursor:pointer}
html.artwork-expanded{overflow:hidden}
@media(max-width:800px){
 .gallery-page{padding:28px 4vw}.gallery-body .footer{padding:20px 4vw 12px}
 .detail-layout{grid-template-columns:minmax(0,1fr) minmax(150px,28%);gap:24px}
 .cycle-nav{grid-column:1/-1;display:flex;gap:18px;flex-wrap:wrap}.cycle-label{width:100%;padding:0}
 .cycle-nav a{font-size:14px;grid-template-columns:auto auto;gap:8px}.cycle-count{font-size:10px}.cycle-name{padding:6px 0}
 .viewer-stage{grid-column:1;grid-row:2;width:100%}.viewer-under{grid-column:2;grid-row:2}
 .viewer-arrows{font-size:26px}.viewer-meta{margin-top:26px}.work-number{font-size:38px;margin-bottom:20px}
 .metadata-fields{padding-top:12px}.metadata-field{margin-bottom:12px}.field-label{font-size:9px;margin-bottom:6px}.field-value{font-size:15px}
}
@media(max-width:520px){
 .detail-layout{grid-template-columns:1fr;gap:22px}.viewer-stage{grid-column:1;grid-row:2}
 .viewer-under{grid-column:1;grid-row:3;display:grid;grid-template-columns:76px minmax(0,1fr);gap:16px}
 .viewer-meta{margin-top:0}.work-number{font-size:24px;margin-bottom:12px}.metadata-fields{padding-top:12px}
 .artwork-dialog{padding:64px 12px 16px}
}
