:root{--paper:#f6f4ef;--ink:#262722;--muted:#66675f;--line:#cecec5;--page-pad:clamp(24px,3.5vw,68px);font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);color-scheme:light;font-size:16px}
*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit;cursor:pointer}button{border:0;background:none}a{color:inherit}button:disabled{opacity:.23;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--ink);outline-offset:6px}button:disabled:focus-visible{outline:0}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:8px;left:8px;background:var(--ink);color:var(--paper);padding:12px 18px;z-index:30;transform:translateY(-200%)}.skip-link:focus{transform:none}
.masthead{height:104px;padding:0 var(--page-pad);display:flex;align-items:center;justify-content:space-between;gap:28px}.identity{display:flex;align-items:baseline;gap:24px;text-decoration:none}.wordmark{font-weight:600;font-size:1.65rem;letter-spacing:-.055em;line-height:1}.author{font-size:.875rem}.masthead nav{display:flex;gap:30px;align-items:center}.masthead nav button{padding:12px 0;font-size:.875rem;min-height:44px}.small-count{font-size:.75rem;margin-left:7px;color:var(--muted);font-variant-numeric:tabular-nums}
.desktop-reading{height:calc(100dvh - 104px);min-height:320px;padding:0 var(--page-pad);display:flex;flex-direction:column}.image-well{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:5px 4vw 12px}.image-well>img{width:100%;height:100%;object-fit:contain}.reading-bar{height:82px;flex:0 0 82px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.direction{display:flex;gap:18px;align-items:center;padding:10px 0;justify-self:start;min-height:44px}.direction>span:first-child:not(.direction-label),.direction>span:last-child:not(.direction-label){font-size:1.5rem;font-weight:400}.direction-label{font-size:.875rem}.direction.next{justify-self:end}.position{display:flex;align-items:center;gap:13px;font-variant-numeric:tabular-nums;font-size:.875rem;letter-spacing:.02em}.position>span:nth-child(3){color:var(--muted)}.fraction-line{height:1px;width:24px;background:var(--line)}.sequence-progress{height:1px;background:var(--line);margin-bottom:16px;flex:0 0 1px}.sequence-progress span{display:block;width:2.5641%;height:100%;background:var(--ink)}.image-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--paper);line-height:1.5}.image-state button{text-decoration:underline;text-underline-offset:5px;padding:12px}.mobile-reading,.mobile-ending{display:none}.noscript-note{margin:2rem var(--page-pad);font-size:1rem}
dialog{color:var(--ink);background:var(--paper);border:0;padding:0;max-width:none;max-height:none}dialog::backdrop{background:rgba(38,39,34,.3)}body.dialog-open{overflow:hidden}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:34px var(--page-pad) 30px;position:sticky;top:0;background:var(--paper);z-index:1}.dialog-head h2{font-size:1.75rem;font-weight:400;letter-spacing:-.04em;line-height:1.2;margin:0}.dialog-head p{font-size:.875rem;color:var(--muted);margin:8px 0 0}.close-dialog{font-size:.875rem;display:flex;align-items:center;gap:20px;min-height:44px;padding:2px 0;white-space:nowrap}.close-dialog span{font-size:1.65rem;line-height:1}.index-dialog{width:100%;height:100dvh;margin:0;overflow-y:auto}.index-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:34px 3vw;padding:15px var(--page-pad) 60px}.index-item{padding:0;text-align:left;min-width:0}.index-space{height:clamp(120px,14vw,220px);display:flex;align-items:center;justify-content:center}.index-space img{max-width:100%;max-height:100%;width:auto;height:auto}.index-number{display:block;margin-top:14px;padding-top:10px;border-top:1px solid var(--line);font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--muted)}.index-item[aria-current=true] .index-number{color:var(--ink);border-color:var(--ink)}.index-item[aria-current=true] .index-number:after{content:' —';color:var(--ink)}
.about-dialog{width:min(850px,calc(100% - 80px));max-height:calc(100dvh - 60px);overflow-y:auto;margin:auto}.about-dialog .dialog-head{padding:24px 44px 16px}.dialog-kicker{font-size:.875rem;padding-top:13px}.about-text{padding:18px 70px 65px}.about-text h2{font-size:clamp(3rem,7vw,5rem);font-weight:400;letter-spacing:-.065em;margin:10px 0 40px;line-height:1}.about-text>p{font-size:1.125rem;line-height:1.65;margin:0 0 25px;max-width:38em}.about-text .medium-note{font-size:.9375rem;color:var(--muted);max-width:33em;margin-top:36px}.about-text .credit{font-size:.8125rem;margin-top:46px;margin-bottom:0;color:var(--muted)}
.mobile-viewer{width:100%;height:100dvh;margin:0;padding:0 18px;overflow:hidden;touch-action:pan-y}.mobile-viewer[open]{display:flex;flex-direction:column}.viewer-top{height:76px;flex:0 0 76px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:.8125rem;font-variant-numeric:tabular-nums}.viewer-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative}.viewer-stage img{width:100%;height:100%;object-fit:contain}.viewer-stage p{position:absolute;background:var(--paper);padding:24px;font-size:1rem;line-height:1.5}.viewer-controls{height:80px;flex:0 0 80px;display:flex;align-items:center;justify-content:space-between}.viewer-controls button{font-size:1.5rem;width:48px;height:48px;border:1px solid var(--line)}
@media(min-width:1600px){.image-well{padding-left:8vw;padding-right:8vw}}
@media(max-width:1000px){.author{font-size:.8125rem}.identity{gap:18px}.index-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px}.index-space{height:18vw}}
@media(max-width:760px){:root{--page-pad:22px}.masthead{height:88px;position:relative;gap:20px}.identity{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.wordmark{font-size:1.45rem}.author{font-size:.75rem}.masthead nav{gap:22px}.masthead nav button{font-size:.875rem}.small-count{display:none}.desktop-reading{display:none}.mobile-reading{display:block}.mobile-frame{margin:0 0 76px;scroll-margin-top:22px}.mobile-image-button{display:block;padding:0;width:100%}.mobile-image-button img{display:block;max-width:100%;width:100%;height:auto}.mobile-frame.portrait .mobile-image-button{width:calc(100% - 44px);margin:auto}.mobile-frame.square .mobile-image-button{width:calc(100% - 32px);margin:auto}.mobile-frame figcaption{margin:14px 22px 0;color:var(--muted);font-size:.75rem;font-variant-numeric:tabular-nums}.mobile-frame:first-child{padding-top:6px}.mobile-ending{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin:28px 22px 38px;padding-top:30px;border-top:1px solid var(--line)}.mobile-ending p{font-size:1.5rem;letter-spacing:-.05em;margin:0}.mobile-ending>span{font-size:.8125rem;color:var(--muted)}.mobile-ending button{font-size:.875rem;padding:14px 0;margin-top:12px;text-decoration:underline;text-underline-offset:5px}.dialog-head{padding:24px 22px 20px}.dialog-head h2{font-size:1.45rem}.index-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px;padding:10px 22px 40px}.index-space{height:43vw;max-height:270px}.about-dialog{width:100%;height:100dvh;max-height:none;margin:0}.about-dialog .dialog-head{padding:22px}.about-text{padding:16px 28px 52px}.about-text h2{font-size:4rem;margin:16px 0 42px}.about-text>p{font-size:1.0625rem;line-height:1.65}.about-text .medium-note{font-size:.9375rem}.mobile-viewer .close-dialog{font-size:.8125rem;gap:10px}.viewer-top{font-size:.8125rem}.image-well{padding:0}}
.wordmark{margin:0}
@media(max-width:760px){.masthead{position:sticky;top:0;z-index:5;background:var(--paper)}.mobile-frame{scroll-margin-top:104px}}
@media(max-width:360px){:root{--page-pad:16px}.masthead nav{gap:16px}.author{font-size:.75rem}.index-grid{padding-left:16px;padding-right:16px;gap:25px 14px}.about-text{padding-left:22px;padding-right:22px}.mobile-viewer{padding:0 12px}}
@media(prefers-reduced-motion:no-preference){button,a{transition:opacity .15s ease}.index-item:hover img{opacity:.82}.masthead nav button:hover{text-decoration:underline;text-underline-offset:5px}.sequence-progress span{transition:width .2s ease}}
