:root{color-scheme:light;--paper:#f3f3f0;--ink:#292a27;--muted:#777870;--rail:220px;--edge:48px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Helvetica Neue",Helvetica,Arial,"Hiragino Kaku Gothic ProN",sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}a:hover,button:hover{opacity:.6}:focus-visible{outline:1px solid var(--ink);outline-offset:5px}
.sidebar{position:fixed;left:var(--edge);top:var(--edge);width:160px}h1{font-family:Georgia,"Times New Roman",serif;font-size:24px;line-height:1.2;font-weight:400;letter-spacing:-.4px;margin:0}.identity p{font-size:10px;letter-spacing:.09em;margin:14px 0 0;text-transform:uppercase;color:var(--muted)}nav{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:56px;font-size:12px;letter-spacing:.025em}nav [aria-current]{text-decoration:underline;text-underline-offset:5px}
main{margin-left:var(--rail);padding:var(--edge) var(--edge) 40px 24px}.gallery{margin:0 auto;width:100%;max-width:1300px}.stage{height:calc(100svh - 172px);min-height:240px;position:relative;display:flex;align-items:center;justify-content:center;touch-action:pan-y}.stage img{display:block;width:100%;height:100%;object-fit:contain;user-select:none}.stage img[hidden]{display:none}.image-status{font-size:12px;color:var(--muted)}.image-status[hidden]{display:none}.image-nav{position:absolute;inset-block:0;width:15%;opacity:0;font-size:22px}.image-nav:hover,.image-nav:focus-visible{opacity:1}.previous{left:0}.next{right:0}.image-nav span{background:var(--paper);padding:12px}
.gallery-controls,.work-caption{display:flex;align-items:center;justify-content:center;gap:26px;margin:0;padding-top:24px;font-size:10px;letter-spacing:.05em;color:var(--muted)}.counter{font-variant-numeric:tabular-nums}.playback{display:flex;align-items:center;gap:22px}.playback button{min-width:28px;min-height:32px}#play{font-size:10px;min-width:38px}.work-caption h2{font-size:13px;font-weight:400;letter-spacing:.12em;margin:0;color:var(--ink)}.work-caption span{font-size:10px}footer{position:fixed;left:var(--edge);bottom:38px;font-size:9px;color:var(--muted);letter-spacing:.025em}
dialog{background:var(--paper);color:var(--ink);border:0;padding:0;width:min(500px,calc(100% - 40px))}dialog::backdrop{background:rgba(35,37,33,.18);backdrop-filter:blur(4px)}.contact-inner{padding:65px 42px 60px;position:relative}.close{position:absolute;right:22px;top:20px;font-size:12px;display:flex;gap:10px;align-items:center}.close span{font-size:20px}h2{font-size:24px;font-weight:400;margin:0 0 32px}.contact-inner>a{display:block;width:fit-content;margin:16px 0 0;font-size:15px;overflow-wrap:anywhere}
@media(max-width:900px){:root{--rail:190px;--edge:32px}.sidebar{width:140px}h1{font-size:22px}}
@media(max-width:600px){:root{--edge:24px}.sidebar{position:static;width:auto;padding:30px 24px 0;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}h1{font-size:22px}.identity p{font-size:9px;margin-top:9px}nav{margin:2px 0 0;gap:12px;align-items:flex-end;font-size:11px}main{margin:0;padding:36px 24px 0}.stage{height:calc(100svh - 265px);min-height:240px}.gallery-controls,.work-caption{padding-top:24px}footer{position:static;text-align:center;margin:28px 24px 24px;font-size:9px}.contact-inner{padding:60px 24px 42px}.image-nav{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
