:root{--cover-color:#b9afc2;--black:#000;--white:#fff;--serif:'Times New Roman','Songti SC','STSong',serif;--sans:Arial,'PingFang SC',sans-serif;--gutter:22px}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-snap-type:none}body{margin:0;background:#000;color:#fff;font-family:var(--serif);font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:pointer}button,a{touch-action:manipulation;outline-offset:6px}button:hover,a:hover{text-decoration:underline;text-underline-offset:4px}img{display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-size:inherit;font-weight:400}::selection{background:var(--cover-color);color:#000}.skip{position:fixed;left:20px;top:-60px;z-index:40;padding:8px;background:#fff;color:#000}.skip:focus{top:15px}.book-tools{position:fixed;left:var(--gutter);right:var(--gutter);top:20px;z-index:20;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none;font-size:18px;line-height:1.2}.book-tools>a,.book-tools>div{pointer-events:auto}.book-tools>div{display:flex;gap:26px;font-size:14px}.book-tools>div span{font-style:italic;margin-left:3px}body[data-surface=morandi] .book-tools,body[data-surface=white] .book-tools,body[data-surface=morandi] .page-controls,body[data-surface=white] .page-controls{color:#000}body[data-surface=black] .book-tools,body[data-surface=black] .page-controls{color:#fff}.sheet{height:100svh;min-height:580px;width:100%;position:relative;scroll-snap-align:start;overflow:hidden}.morandi{background:var(--cover-color);color:#000}.white{background:#fff;color:#000}.black{background:#000;color:#fff}.cover-bottom{position:absolute;left:var(--gutter);bottom:24px;display:flex;align-items:baseline;gap:55px}.cover h1{font-size:clamp(20px,2.05vw,32px);line-height:1.1;letter-spacing:-.5px}.cover-bottom>a{font-family:var(--sans);font-size:11px;display:flex;gap:22px;align-items:center}.cover-bottom>a span{font-size:21px}.cover-edition{position:absolute;left:var(--gutter);bottom:100px;font-size:12px;line-height:1.5}.intro-copy{position:absolute;left:var(--gutter);bottom:26px;width:440px;font-size:clamp(20px,2.05vw,31px);line-height:1.38;letter-spacing:-.5px}.intro-copy p+p{margin-top:25px}.intro-copy em{font-style:normal}.intro-copy p[lang=en]{font-style:italic;font-size:.8em;line-height:1.2;letter-spacing:0}.intro-enter{position:absolute;right:var(--gutter);top:130px;font-size:16px}.page-heading{position:absolute;left:var(--gutter);top:80px;font-size:21px;line-height:1.25}.chapter-number{position:absolute;left:var(--gutter);top:158px;font-size:13px;line-height:1.5}.page-heading em{font-style:italic;font-size:.8em;display:block;margin-top:5px}.page-caption{position:absolute;left:var(--gutter);bottom:23px;max-width:65%;font-size:15px;line-height:1.2;z-index:2}.page-caption p:first-child{font-style:italic}.page-caption p+p{margin-top:4px;font-size:12px}.spread-stage{position:absolute;inset:17% 10% 13%;display:flex;align-items:center;justify-content:center;gap:12px}.photo-slot{display:flex;align-items:center;justify-content:center;height:100%;min-width:0;flex:1;position:relative}.photo-slot img{width:100%;height:100%;object-fit:contain}.photo-slot:hover{text-decoration:none}.photo-slot:after{content:'↗';position:absolute;right:9px;bottom:9px;font:14px var(--sans);opacity:0;color:#fff;background:#0009;padding:5px;transition:opacity .2s}.photo-slot:hover:after,.photo-slot:focus-visible:after{opacity:1}.spread-single .spread-stage{inset:13% 10% 12%}.spread-wide .spread-stage{inset:10% 3% 10%}.spread-small .spread-stage{inset:24% 24% 23%}.spread-offset .spread-stage{inset:13% 6% 14% 20%}.spread-triptych .spread-stage{inset:20% 7% 19%;gap:9px}.chapter-first .spread-stage{inset:15% 10% 14% 25%}.chapter-first .page-caption{max-width:22%}.chapter-first .page-caption p+p{margin-top:12px;font-family:var(--sans);font-size:10px;line-height:1.8}.chapter-first .page-heading{font-size:25px}.page-controls{position:fixed;right:var(--gutter);bottom:20px;display:flex;align-items:center;gap:18px;z-index:20;font-size:14px;line-height:1.2;pointer-events:none}.page-controls>*{pointer-events:auto}.page-controls button{font-family:var(--sans);font-size:20px;padding:2px 5px}.page-controls button:disabled{opacity:.3;cursor:default;text-decoration:none}#page-counter{font-size:12px;min-width:55px;text-align:center;font-variant-numeric:tabular-nums}.colophon-copy{position:absolute;left:var(--gutter);bottom:30px;font-size:24px;line-height:1.35}.colophon-copy p+p{margin-top:22px;font-size:18px}.colophon-copy>a{display:block;font-size:18px;margin-top:25px}.colophon-note{position:absolute;right:var(--gutter);top:100px;font-size:14px;line-height:1.4}.end .page-heading{top:80px;font-size:30px}.end-bottom{position:absolute;left:var(--gutter);bottom:26px;display:flex;gap:60px;align-items:baseline;font-size:25px}.end-bottom>a{font-size:15px}dialog{border:0;max-width:none;max-height:none;width:100%;height:100dvh;margin:0;padding:22px;color:#000;background:#fff;overflow-y:auto}dialog::backdrop{background:#000}dialog[open]{display:block}body:has(dialog[open]) .book-tools,body:has(dialog[open]) .page-controls{visibility:hidden}.index-top{display:flex;align-items:baseline;justify-content:space-between;gap:25px;font-size:20px}.index-top button{font-size:14px}.index-layout{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-top:14vh}.index-intro{font-size:27px;line-height:1.2}.index-intro span{display:block;font:12px var(--sans);margin-top:25px}#index-list a{display:grid;grid-template-columns:40px 1fr 1fr 60px;gap:18px;align-items:baseline;border-top:1px solid #000;padding:17px 0;font-size:24px}#index-list a:last-child{border-bottom:1px solid #000}#index-list a>span:first-child{font-size:13px}#index-list em{font-size:16px}#index-list small{font-size:12px;text-align:right}.index-bottom{display:flex;gap:35px;margin-top:70px;font-size:15px;flex-wrap:wrap}#contact-dialog{background:#f6f6f6}#contact-filters{display:flex;flex-wrap:wrap;gap:20px;margin:50px 0 30px;font-size:14px}#contact-filters button[aria-pressed=true]{text-decoration:underline;text-underline-offset:5px}#contact-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:28px 15px}#contact-grid button{min-width:0;text-align:left}#contact-grid img{width:100%;height:160px;object-fit:contain;background:#000}#contact-grid span{font-size:12px;display:block;margin-top:8px}#lightbox{background:#000;color:#fff;padding:65px 7% 95px;overflow:hidden}#large-photo{width:100%;height:100%;object-fit:contain}.viewer-top,.viewer-bottom{position:absolute;left:22px;right:22px;display:flex;justify-content:space-between;gap:20px;align-items:baseline}.viewer-top{top:20px;font-size:16px}.viewer-top button{font-size:14px}.viewer-bottom{bottom:20px;align-items:flex-end}.viewer-bottom h2{font-size:20px}.viewer-bottom p{font-size:11px;color:#999;margin-top:8px}.viewer-bottom>span{font-size:13px}#prev-photo,#next-photo{position:absolute;top:47%;font-size:25px;font-family:var(--sans);padding:15px}#prev-photo{left:5px}#next-photo{right:5px}[hidden]{display:none!important}@media(min-width:1800px){:root{--gutter:26px}.book-tools{font-size:24px}.page-heading{font-size:25px}.page-caption{font-size:20px}.page-caption p+p{font-size:15px}}@media(max-width:900px){.intro-copy{font-size:25px}.index-layout{grid-template-columns:1fr;gap:45px;margin-top:10vh}.index-intro{font-size:22px}.index-intro span{margin-top:10px}#index-list a{font-size:22px}#index-list em{font-size:14px}#contact-grid{grid-template-columns:repeat(4,1fr)}.chapter-first .spread-stage{inset:18% 7% 22%}.chapter-first .page-caption{max-width:70%}.chapter-first .page-caption p+p{margin-top:5px}.cover-bottom{gap:30px}.cover-bottom>a{font-size:10px}}@media(max-width:600px){:root{--gutter:16px}html{scroll-snap-type:none}.sheet{min-height:540px}.book-tools{top:17px;font-size:17px}.book-tools>div{gap:18px;font-size:12px}.book-tools>div span{display:none}.cover h1{font-size:24px;max-width:250px;line-height:1.2}.cover-bottom{bottom:76px;display:block}.cover-bottom>a{margin-top:25px;font-size:11px;gap:25px}.cover-edition{bottom:220px;font-size:11px}.page-controls{bottom:19px;gap:16px}.intro-copy{width:calc(100% - 32px);font-size:23px;bottom:90px;line-height:1.45;letter-spacing:0}.intro-copy p+p{margin-top:25px}.intro-copy p[lang=en]{font-size:20px}.intro-enter{top:100px;left:16px;right:auto;font-size:13px}.page-heading{top:73px;font-size:19px}.page-heading em{font-size:13px;margin-top:6px}.chapter-number{top:145px;font-size:11px}.page-caption{bottom:76px;max-width:90%;font-size:15px}.page-caption p+p{font-size:10px}.spread-stage{inset:18% 6% 21%;gap:6px}.spread-single .spread-stage{inset:17% 6% 20%}.spread-wide .spread-stage{inset:17% 0 20%}.spread-small .spread-stage{inset:24% 14% 27%}.spread-offset .spread-stage{inset:20% 5% 22% 10%}.chapter-first .spread-stage{inset:24% 6% 27%}.chapter-first .page-heading{font-size:23px}.chapter-first .page-caption{max-width:90%}.chapter-first .page-caption p+p{font-size:10px;max-width:290px}.spread-triptych .spread-stage{inset:25% 4% 26%;gap:4px}.spread-pair.landscape-pair .spread-stage{inset:18% 15% 21%;flex-direction:column;gap:12px}.landscape-pair .photo-slot{min-height:0;width:100%}.photo-slot:after{display:none}.colophon-copy{font-size:22px;bottom:110px}.colophon-copy p+p{font-size:16px}.colophon-copy>a{font-size:15px}.colophon-note{left:16px;top:130px;font-size:12px}.end .page-heading{top:80px;font-size:27px}.end-bottom{display:block;bottom:90px;font-size:24px}.end-bottom>a{display:block;margin-top:25px;font-size:14px}dialog{padding:17px}.index-top{font-size:18px}.index-top button{font-size:12px;white-space:nowrap}.index-layout{margin-top:65px;gap:38px}.index-intro{font-size:24px}#index-list a{grid-template-columns:25px 1fr 30px;gap:10px;padding:18px 0;font-size:21px}#index-list em{grid-column:2;font-size:14px;grid-row:auto}#index-list small{grid-column:3;grid-row:1}.index-bottom{margin-top:38px;gap:22px;font-size:13px}#contact-filters{gap:18px;margin:35px 0 25px;font-size:12px}#contact-grid{grid-template-columns:repeat(2,1fr);gap:25px 12px}#contact-grid img{height:130px}#contact-grid span{font-size:11px}#lightbox{padding:70px 8% 120px}.viewer-top{left:16px;right:16px;font-size:13px}.viewer-top button{font-size:12px}.viewer-bottom{left:16px;right:16px;bottom:30px;gap:12px}.viewer-bottom h2{font-size:18px}.viewer-bottom p{font-size:9px;max-width:250px;overflow-wrap:anywhere}.viewer-bottom>span{font-size:12px;white-space:nowrap}#prev-photo,#next-photo{font-size:19px;padding:8px}#prev-photo{left:0}#next-photo{right:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Scroll-linked depth: only the visible spreads are painted by JavaScript. */
.sheet .spread-stage{transform:translate3d(0,var(--page-shift,0px),0) scale(var(--page-scale,1));opacity:var(--page-opacity,1);transform-origin:50% 50%}
.sheet>.page-heading,.sheet>.chapter-number,.sheet>.page-caption,.sheet>.intro-copy,.sheet>.intro-enter,.sheet>.cover-bottom,.sheet>.cover-edition,.sheet>.colophon-copy,.sheet>.colophon-note,.sheet>.end-bottom{transform:translate3d(0,var(--text-shift,0px),0);opacity:var(--text-opacity,1)}
.sheet .photo-slot:nth-child(2){translate:0 calc(var(--page-shift,0px) * -.12)}
.sheet .photo-slot:nth-child(3){translate:0 calc(var(--page-shift,0px) * -.2)}
body.is-paging .book-tools,body.is-paging .page-controls{transition:color .25s ease}
@media(prefers-reduced-motion:reduce){.sheet .spread-stage,.sheet>.page-heading,.sheet>.chapter-number,.sheet>.page-caption,.sheet>.intro-copy,.sheet>.intro-enter,.sheet>.cover-bottom,.sheet>.cover-edition,.sheet>.colophon-copy,.sheet>.colophon-note,.sheet>.end-bottom{transform:none!important;opacity:1!important;animation:none!important}.sheet .photo-slot{translate:none!important}}

/* Keep an explicit route to the cover on every page and overlay. */
.dialog-actions{display:flex;align-items:center;gap:24px;font-size:14px;white-space:nowrap}.home-link{white-space:nowrap}@media(max-width:600px){.book-tools>div{gap:14px}.dialog-actions{gap:14px;font-size:12px}.viewer-top{font-size:12px}}

.book-brand{white-space:nowrap}@media(max-width:420px){.book-tools{gap:12px}.book-brand{font-size:14px}.book-tools>div{gap:10px;font-size:11px}}
