/* Live photo archive — preserve the complete frame and embedded photo credits. */
.nav-photos{display:none}
.gallery-entry{display:inline-flex;align-items:center;gap:24px;margin-top:32px;min-height:48px;border-bottom:1px solid var(--accent);font-size:15px;color:var(--ink)}
#gallery,.gallery-chapter{scroll-margin-top:100px}
.live-gallery{background:#101010}
.gallery-wrap{max-width:1400px;margin:0 auto}
.gallery-heading-row{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:48px}
.gallery-heading-row .h2{margin:0;line-height:1.04;font-size:clamp(52px,7.8vw,112px)}
.gallery-heading-row .h2 em{font-style:normal;color:var(--accent)}
.gallery-intro{padding-bottom:8px;line-height:1.9;font-size:16px;color:var(--ink)}
.gallery-intro p:first-child{font-family:var(--mono);font-size:14px;color:#bbb5aa;letter-spacing:.04em}
.gallery-intro span{display:block;color:#bbb5aa;font-size:14px;margin-top:18px}
.gallery-credit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:24px 40px;padding:28px;margin-bottom:40px;border:1px solid #49443b;background:#191815}
.gallery-credit-label{font:12px/1.8 var(--mono);letter-spacing:.08em;color:var(--accent);margin-bottom:10px}
.gallery-credit h3{font:600 clamp(24px,2.5vw,32px)/1.5 var(--body);color:var(--ink)}
.gallery-credit-body>p{font:15px/1.9 var(--body);color:#d0cbc2}
.gallery-credit-links{display:flex;flex-wrap:wrap;gap:4px 24px;margin-top:12px}
.gallery-credit-links a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font:14px var(--body);color:var(--ink);text-decoration:underline;text-underline-offset:5px}
.gallery-credit-links a:hover{color:var(--accent)}
.gallery-jump{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:88px;border-block:1px solid var(--line)}
.gallery-jump a{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;padding:24px;min-width:0;border-right:1px solid var(--line);transition:background .2s}
.gallery-jump a:first-child{border-left:1px solid var(--line)}
.gallery-jump a:hover{background:#20201e}
.gallery-jump a>span:nth-child(2){font-family:var(--display);font-size:clamp(22px,2.6vw,36px);line-height:1.2;overflow-wrap:anywhere}
.gallery-jump-num{font:14px var(--mono);color:var(--accent);padding-top:4px}
.gallery-jump-count{grid-column:2;font:12px var(--mono);color:#bbb5aa;letter-spacing:.08em;display:flex;justify-content:space-between;gap:10px}
.gallery-chapter{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,4fr);gap:40px;padding-top:40px;margin-top:80px;border-top:1px solid var(--line)}
.gallery-artist{align-self:start;position:sticky;top:100px;min-width:0}
.gallery-artist-index{font:14px var(--mono);letter-spacing:.12em;color:var(--accent);margin-bottom:18px}
.gallery-artist h3{font:clamp(30px,3.5vw,50px)/1.15 var(--display);letter-spacing:-.015em;overflow-wrap:anywhere}
.gallery-artist-tag{font:12px/1.9 var(--mono);letter-spacing:.06em;color:#bbb5aa;margin-top:20px}
.gallery-artist-count{font:12px var(--mono);letter-spacing:.07em;color:#bbb5aa;margin-top:36px}
.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.live-photo{display:block;min-width:0;background:#080808;border:1px solid #30302d;transition:border-color .2s}
.live-photo:hover{border-color:var(--accent)}
.live-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.live-photo-lead{grid-column:1/-1}
.live-photo-lead img{aspect-ratio:auto}
.live-photo-caption{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;min-height:44px;font:12px var(--mono);color:#bbb5aa;background:#171716}
.live-photo-caption>span:last-child{font:14px var(--body);color:var(--ink);display:flex;align-items:center;gap:10px}
.photo-plus{color:var(--accent);font-size:20px}
.gallery-more{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;margin-top:24px;padding:18px 22px;min-height:56px;background:transparent;border:1px solid #77736b;color:var(--ink);font:15px var(--body);text-align:left;cursor:pointer}
.gallery-more:hover{background:#25231f;border-color:var(--accent)}
.gallery-more>span:last-child{font-size:24px;color:var(--accent);flex-shrink:0}
.gallery-extra{margin-top:24px}
.gallery-back{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:20px;min-height:44px;font-size:14px;color:#c4beb3}
.gallery-back:hover,.gallery-entry:hover{color:#fff}
.gallery-endnote{margin-top:80px;padding-top:28px;border-top:1px solid var(--line);font:12px/1.9 var(--mono);letter-spacing:.12em;color:#bbb5aa;text-align:center}
.live-gallery a:focus-visible,.gallery-entry:focus-visible,.nav-photos:focus-visible,.live-gallery button:focus-visible{outline:3px solid #e1c99f;outline-offset:5px}
.photo-viewer{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;padding:16px 28px;margin:0;border:0;background:rgba(7,7,7,.98);color:#f2efe9;overflow:auto;overscroll-behavior:contain}
.photo-viewer::backdrop{background:#070707}
.photo-viewer-shell{max-width:1600px;height:100%;min-height:300px;margin:0 auto;display:flex;flex-direction:column}
.photo-viewer-top{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-shrink:0;padding-bottom:16px}
.photo-viewer-event{font:12px var(--mono);letter-spacing:.12em;color:#bbb5aa;margin-bottom:8px}
.photo-viewer-top h2{font:clamp(24px,3vw,36px)/1.1 var(--display)}
.photo-control{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;min-width:100px;padding:10px 18px;border:1px solid #77736b;background:#161615;color:#f2efe9;font:14px var(--body);cursor:pointer;flex-shrink:0}
.photo-control:hover{background:#363129;border-color:#d8bf96}
.photo-close span{font-size:26px;line-height:1}
.photo-viewer-stage{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center}
.photo-viewer-stage img{width:100%;height:100%;object-fit:contain;min-height:0}
.photo-viewer-stage .photo-hidden{visibility:hidden}
.photo-viewer-status{position:absolute;max-width:100%;padding:16px;font-size:15px;line-height:1.9;text-align:center;background:#101010;color:#f2efe9}
.photo-viewer-status a{text-decoration:underline;text-underline-offset:5px}
.photo-viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;flex-shrink:0}
.photo-counter{font:18px var(--mono);white-space:nowrap}
.photo-counter span{color:#bbb5aa;font-size:14px}
.photo-viewer-help{text-align:center;color:#bbb5aa;font-size:12px;padding-top:12px;flex-shrink:0}
@media(min-width:761px) and (max-width:1250px){.nav{gap:20px}.nav .brand{font-size:16px;letter-spacing:.08em}.nav ul{gap:12px;font-size:12px;letter-spacing:.04em}}
@media(max-width:1100px){.nav ul{display:none}.nav-photos{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:12px var(--mono);flex-shrink:0}.gallery-chapter{grid-template-columns:1fr;gap:24px}.gallery-artist{position:static;display:grid;grid-template-columns:1fr auto;gap:8px 20px;align-items:baseline}.gallery-artist-index{grid-column:1/-1;margin-bottom:0}.gallery-artist h3{font-size:42px}.gallery-artist-tag{grid-column:1;margin-top:0}.gallery-artist-count{grid-column:2;grid-row:2;margin-top:0}.gallery-heading-row{align-items:flex-start;flex-direction:column}.gallery-jump a{padding:20px 14px}}
@media(max-width:760px){
 .nav{padding:14px 20px;gap:12px;width:100%;max-width:100vw;display:grid;grid-template-columns:minmax(0,1fr) auto}.nav .brand{min-width:0;font-size:15px;letter-spacing:.06em;gap:8px}.nav .brand span{min-width:0;overflow-wrap:anywhere}.nav .brand img{height:26px;flex-shrink:0}
 .nav-photos{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:12px var(--mono);flex-shrink:0}
 .live-gallery{padding:72px 20px}.live-gallery .eyebrow{font-size:12px;letter-spacing:.14em;gap:10px}.live-gallery .eyebrow::before{width:20px}
 .gallery-heading-row{gap:24px;margin-bottom:32px}.gallery-heading-row .h2{font-size:clamp(46px,10vw,74px)}
 .gallery-intro p:first-child{font-size:12px}.gallery-intro span{margin-top:12px}
 .gallery-credit{grid-template-columns:1fr;gap:16px;padding:20px;margin-bottom:32px}.gallery-credit-label{font-size:11px;letter-spacing:.03em}.gallery-credit-links{gap:4px 20px}
 .gallery-jump{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:48px}.gallery-jump a{padding:18px 12px;gap:8px 10px}.gallery-jump a:nth-child(3){border-left:1px solid var(--line)}.gallery-jump a:nth-child(n+3){border-top:1px solid var(--line)}.gallery-jump a>span:nth-child(2){font-size:25px}.gallery-jump-count{font-size:12px;letter-spacing:0}
 .gallery-chapter{margin-top:48px;padding-top:28px}.gallery-artist h3{font-size:36px}.gallery-artist-count{font-size:12px;letter-spacing:0}.gallery-artist-tag{font-size:12px}.gallery-grid{gap:12px}
 .live-photo-caption{padding:7px 9px}.live-photo-caption>span:last-child{gap:4px}.gallery-endnote{margin-top:48px;font-size:12px;letter-spacing:.03em}
 .photo-viewer{padding:16px 12px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}.photo-viewer-event{font-size:12px;letter-spacing:.02em}.photo-control{min-width:88px;padding:10px 12px;gap:8px}.photo-viewer-help{font-size:12px;line-height:1.8}.photo-viewer-bottom{gap:8px}
}
@media(prefers-reduced-motion:reduce){.live-gallery *{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:380px){.nav .brand{font-size:12px;letter-spacing:.02em}.nav .brand img{height:24px}.gallery-artist-count{grid-column:1;grid-row:auto;margin-top:4px}}
