:root{--room:#203e37;--recess:#142923;--gilt:#d4b477;--silk:#f2e3c0;--porcelain:#dae4dc;--shadow:#080e0c;--muted:#b0c4b8;color-scheme:dark;font-family:'Avenir Next',Avenir,'Segoe UI',sans-serif;background:var(--room);color:var(--porcelain)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 70% 38%,#32574a 0%,var(--room) 57%,#19322c 100%);min-height:100vh}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-underline-offset:5px}button{border:0;background:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--silk);outline-offset:6px}button:hover{color:var(--silk)}[hidden]{display:none!important}.masthead{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:25px 4.4% 20px;font-size:12px;color:var(--muted)}.back{text-decoration:none;font-family:Palatino,'Palatino Linotype',Georgia,serif;font-size:21px;color:var(--silk)}.room-name{margin-left:auto}.text-button{padding:8px 0;border-bottom:1px solid #96ac9d70;font-size:12px}.chapters{display:flex;gap:28px;padding:0 4.4% 16px}.chapters button{display:flex;align-items:center;gap:8px;padding:8px 0;color:var(--muted);font-size:12px}.chapters span{display:grid;place-items:center;width:21px;height:21px;border:1px solid #90aa9555;border-radius:50%;font-family:Palatino,serif}.chapters [aria-current]{color:var(--silk)}.chapters [aria-current] span{background:var(--silk);color:var(--recess);border-color:var(--silk)}main{max-width:1650px;margin:auto}.stage{padding:20px 4.4% 32px;min-height:calc(100svh - 165px)}.surface{display:grid;grid-template-columns:minmax(255px,1fr) minmax(300px,1.62fr);gap:7%;align-items:center}.account{max-width:415px;padding:0 0 30px}.dateline{font-family:Palatino,'Palatino Linotype',Georgia,serif;color:var(--gilt);font-size:20px;margin:0 0 18px}h1{font-family:Palatino,'Palatino Linotype','Book Antiqua',Georgia,serif;color:var(--silk);font-weight:400;font-size:clamp(42px,4.6vw,76px);line-height:1.03;letter-spacing:-2px;margin:0 0 25px}h1:focus{outline:none}.lead{font-family:Palatino,'Palatino Linotype',Georgia,serif;font-size:20px;line-height:1.5;max-width:440px;margin:0;color:#e0e6d8}.instrument{margin:30px 0 22px}.primary,.secondary{padding:15px 21px;border:1px solid var(--gilt);font-size:13px;line-height:1.4}.primary{background:var(--silk);border-color:var(--silk);color:#233c31;box-shadow:0 4px 0 #102b21}.primary:hover{background:#fff0d0;color:#142923}.secondary{color:var(--silk);border-color:#829980}.instruction{color:var(--muted);font-size:12px;line-height:1.65;margin:15px 0}.details{display:flex;flex-wrap:wrap;gap:8px}.details button{font-size:11px;border:1px solid #849b8970;padding:9px 11px}.details button[aria-pressed=true]{border-color:var(--gilt);color:var(--silk);background:#163128}.field-note{font-size:13px;line-height:1.6;min-height:100px;max-width:340px;color:var(--muted)}.field-note p{margin:0}.note-rule{display:block;width:35px;border-top:1px solid var(--gilt);margin-bottom:11px}.advance{display:flex;justify-content:space-between;align-items:center;gap:30px;font-family:Palatino,Georgia,serif;font-size:21px;color:var(--silk);border-bottom:1px solid #a2bda870;padding:15px 0;text-align:left}.advance span{font-family:Arial,sans-serif;font-size:28px}.specimen{margin:0;justify-self:center;width:min(100%,calc((100svh - 220px)*.938));min-width:300px}.picture{position:relative;aspect-ratio:1126/1200;background:var(--shadow);box-shadow:0 22px 60px #081a1670,0 0 0 8px #172c22,0 0 0 9px #d4b47770;overflow:hidden;touch-action:pan-y;--lx:18%;--ly:60%;--radius:95px}.picture>img{width:100%;height:100%;object-fit:fill;display:block;user-select:none;-webkit-user-drag:none}.picture .surface-img{object-fit:cover}.under-img{position:absolute;inset:0;clip-path:circle(0 at var(--lx) var(--ly))}.picture.looking .under-img{clip-path:circle(var(--radius) at var(--lx) var(--ly))}.picture.all .under-img{clip-path:none}.opening{display:none;position:absolute;left:var(--lx);top:var(--ly);width:calc(var(--radius)*2);height:calc(var(--radius)*2);transform:translate(-50%,-50%);border:1px solid #fff5cd;outline:4px solid #e7e0c326;box-shadow:0 0 22px #0009;pointer-events:none;border-radius:50%}.looking:not(.all) .opening{display:block}.opening:after{content:'';position:absolute;height:28px;width:1px;background:#f2e3c0;left:50%;top:100%}.opening span{position:absolute;top:calc(100% + 28px);left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10px;background:#16291fdb;color:#f2e3c0;padding:5px 8px}.reveal-all{position:absolute;right:14px;bottom:14px;color:#fff0d0;background:#14261deb;border:1px solid #dfc89190;padding:11px 14px;font-size:11px;box-shadow:0 2px 15px #0005}.picture.all .reveal-all{color:var(--recess);background:var(--silk)}figcaption{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;line-height:1.5;padding-top:19px}figcaption span:last-child{text-align:right}.wide-stage,.passage-stage{padding-top:16px}.wide-intro{display:flex;justify-content:space-between;gap:8%;align-items:flex-end;margin:0 0 25px}.wide-intro h1{font-size:clamp(36px,3.7vw,59px);margin-bottom:0;letter-spacing:-1.5px}.wide-intro .dateline{font-size:17px;margin-bottom:9px}.wide-intro .lead{font-size:17px;max-width:400px;padding-bottom:5px}.context-figure{width:min(920px,100%);margin:0 auto}.composition{position:relative;aspect-ratio:2000/1404;background:#0d1911;box-shadow:0 16px 40px #05180c50;overflow:hidden}.whole-copy{display:block;width:100%;opacity:.16}.fragment-frame{position:absolute;left:38.5%;top:38.82%;width:39.1%;height:59.33%;outline:1px solid #eadab0;box-shadow:0 0 0 7px #eadab013}.fragment-frame img{height:100%;width:100%;display:block}.fragment-frame span{position:absolute;left:0;bottom:100%;font-size:10px;padding:6px 8px;background:#142923eb;color:var(--silk);white-space:nowrap}.context-footer,.passage-footer{display:flex;align-items:center;gap:5%;justify-content:space-between;margin:28px 0 5px}.context-control{width:32%;min-width:240px;flex-shrink:0;font-size:13px}.context-control label{display:block;margin-bottom:12px;color:var(--silk)}input[type=range]{display:block;width:100%;height:24px;accent-color:var(--gilt);cursor:ew-resize;margin:0}.range-ends{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:5px}.context-note{font-family:Palatino,Georgia,serif;max-width:325px;font-size:17px;line-height:1.45;margin:0;color:#cfddcc}.context-footer .advance,.passage-footer .advance{font-size:18px}.landscape-figure{margin:0 auto;width:min(1100px,100%)}.landscape{position:relative;aspect-ratio:1536/1024;overflow:hidden;box-shadow:0 18px 40px #08190d66;background:#0b0d07}.landscape>img{width:100%;height:100%;display:block}.passage-route{position:absolute;inset:0;width:100%;height:100%}.passage-route path{fill:none;stroke:#eedcab;stroke-width:2;stroke-dasharray:2 9;opacity:.45}.passage-route circle{fill:#ffecc1;stroke:#edb565;stroke-width:6;paint-order:stroke;filter:drop-shadow(0 0 9px #ffe7ae)}.passage-shade{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--px,34%) var(--py,25%),transparent 4%,#060b08b5 62%);opacity:0;transition:opacity .4s}.passage-line{position:absolute;bottom:13%;right:6%;max-width:30%;font-family:Palatino,Georgia,serif;font-size:clamp(18px,2.2vw,34px);color:#f7dfb0;line-height:1.15;text-shadow:0 2px 6px black}.byline{display:block;font-family:'Avenir Next',sans-serif;font-size:11px;color:var(--muted);margin-top:12px}.afterlife-stage{display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center;padding-top:50px}.afterlife-copy{max-width:565px}.afterlife-copy h1{font-size:clamp(42px,4.3vw,70px)}.afterlife-copy blockquote{margin:30px 0;color:var(--silk);font-family:Palatino,Georgia,serif;font-size:24px;line-height:1.35;border-left:1px solid var(--gilt);padding-left:24px}.afterlife-copy cite{font:11px 'Avenir Next',sans-serif;color:var(--muted);display:block;margin-top:15px}.ending-note{max-width:370px;font-size:14px;line-height:1.7;color:var(--muted)}.end-actions{display:flex;align-items:center;gap:20px;margin-top:30px;flex-wrap:wrap}.memory-stack{position:relative;height:620px;width:100%;max-width:650px}.memory{position:absolute;margin:0;background:#17291f;padding:8px;box-shadow:0 15px 35px #07150c80}.memory img{display:block;width:100%;height:auto}.memory figcaption{padding:10px 3px 3px;color:var(--silk);font-size:10px}.memory-source{width:60%;left:0;top:1%;transform:rotate(-5deg)}.memory-cover{width:52%;right:0;top:25%;transform:rotate(5deg)}.memory-passage{width:62%;left:0;top:61%;transform:rotate(-2deg)}.memory-caption{position:absolute;left:63%;top:78%;font-family:Palatino,Georgia,serif;font-size:16px;line-height:1.4;color:var(--muted)}.page-footer{display:flex;justify-content:space-between;padding:22px 4.4%;font-size:10px;color:#93af9f}dialog{width:min(740px,calc(100% - 24px));max-height:90svh;padding:32px 40px;background:#e0e7dd;color:#18352b;border:1px solid #a7b39c;box-shadow:0 35px 100px #0008}dialog::backdrop{background:#07180bd9;backdrop-filter:blur(5px)}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:25px}h2{font:36px Palatino,Georgia,serif;margin:0}.drawer-head button{padding:8px;border-bottom:1px solid #496a59;font-size:13px}.drawer-head button:hover{color:#000}.drawer-intro{font:20px/1.5 Palatino,Georgia,serif;color:#425e4f}dt{font:22px Palatino,Georgia,serif;margin-top:26px}dd{font-size:13px;line-height:1.8;margin:9px 0}dialog a{color:#20543b}dialog .secondary{color:#18352b;border-color:#496a59;margin-top:14px}dialog :focus-visible{outline-color:#20543b}body:has(dialog[open]){overflow:hidden}@media(min-width:1300px){.context-figure{width:min(880px,calc((100svh - 385px)*1.425));min-width:560px}.landscape-figure{width:min(1100px,calc((100svh - 355px)*1.5));min-width:700px}}@media(max-width:900px){.surface{gap:5%;grid-template-columns:1fr 1.2fr}.account h1{font-size:48px}.lead{font-size:18px}.field-note{min-height:115px}.specimen{min-width:0;width:100%}.wide-intro{gap:35px}.wide-intro .lead{font-size:15px}.context-footer{flex-wrap:wrap;gap:20px}.context-control{width:44%}.context-note{width:47%}.context-footer .advance{margin-left:auto}.afterlife-stage{gap:25px}.memory-stack{height:510px}.afterlife-copy blockquote{font-size:21px}.passage-footer{flex-wrap:wrap;gap:25px}.passage-footer .advance{margin-left:auto}.memory-caption{left:62%;top:84%;font-size:14px}}
@media(max-width:620px){.masthead{padding:18px 6%;gap:10px}.room-name{display:none}.masthead .text-button{margin-left:auto}.chapters{padding:2px 6% 8px;gap:8px;justify-content:space-between}.chapters button{font-size:0;gap:5px}.chapters [aria-current]{font-size:11px}.chapters span{font-size:11px;flex-shrink:0}.stage{padding:20px 6% 25px}.surface{display:flex;flex-direction:column;gap:22px}.account{display:contents}.account .dateline{margin-bottom:-12px;align-self:flex-start;font-size:16px}.account h1{align-self:flex-start;font-size:50px;margin:0;letter-spacing:-1.6px}.account .lead{font-size:18px;align-self:flex-start;max-width:350px}.instrument{order:3;width:100%;margin:0}.field-note{order:4;align-self:flex-start;min-height:0;margin-bottom:0;max-width:none}.account .advance{order:5;width:100%}.specimen{order:2;width:calc(100% - 12px);margin:4px 0 0;max-width:450px}.picture{--radius:70px}.instruction br{display:none}.instruction{max-width:300px}.primary{width:100%}.details button{flex:1;padding:11px 5px;font-size:10px}.field-note{font-size:13px}.wide-intro{display:block;margin-bottom:24px}.wide-intro h1{font-size:38px;margin-bottom:18px;letter-spacing:-1px}.wide-intro .lead{font-size:17px;max-width:none}.wide-intro .dateline{font-size:16px}.context-control{width:100%;min-width:0}.context-footer,.passage-footer{display:block;margin-top:24px}.context-note{width:100%;max-width:none;font-size:17px;margin:24px 0}.context-footer .advance,.passage-footer .advance{width:100%;margin-top:15px}.fragment-frame span{font-size:8px;padding:4px}.context-figure figcaption,.landscape-figure figcaption{font-size:9px;gap:15px}.composition{box-shadow:0 10px 25px #071b1480}.passage-line{font-size:18px;max-width:35%;bottom:15%;right:4%}.passage-footer .secondary{margin-top:24px}.afterlife-stage{display:flex;flex-direction:column;gap:20px}.afterlife-copy h1{font-size:45px;letter-spacing:-1.3px}.afterlife-copy .dateline{font-size:16px}.afterlife-copy .lead{font-size:18px}.memory-stack{height:480px;max-width:400px;order:-1;display:none}.afterlife-copy blockquote{font-size:24px;margin:30px 0}.end-actions{display:block}.end-actions .text-button{margin:22px 0 0}.page-footer{padding:20px 6%;font-size:9px}dialog{padding:25px 23px}h2{font-size:30px}.drawer-intro{font-size:19px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.landscape>img.walker{position:absolute;width:6.5%;height:auto;max-width:95px;z-index:2;pointer-events:none;clip-path:polygon(35% 5%,59% 5%,66% 8%,70% 8%,70% 10%,65% 13%,60% 14%,59% 16%,65% 16%,67% 18%,67% 21%,70% 25%,69% 34%,57% 35%,57% 40%,59% 48%,59% 54%,56% 63%,59% 72%,58% 83%,56% 86%,66% 92%,65% 95%,55% 95%,49% 92%,45% 91%,38% 91%,34% 88%,29% 85%,34% 71%,36% 63%,37% 54%,41% 44%,42% 40%,46% 36%,45% 32%,43% 30%,39% 24%,42% 18%,46% 17%,47% 15%,47% 14%,38% 13%,34% 10%)}.passage-route circle{opacity:.4;r:3px}.passage-line{z-index:3}.passage-line.long-line{font-size:clamp(14px,1.6vw,23px);max-width:35%}.memory-cover{top:21%;right:1%}.memory-caption{top:83%}@media(max-width:620px){.chapters button{min-width:40px;min-height:44px}.picture:focus-visible{outline:2px solid var(--silk);outline-offset:5px}.passage-line.long-line{position:relative;max-width:none;bottom:auto;right:auto;padding:18px 12px;background:#111b10;font-size:17px;line-height:1.4}.landscape:has(.long-line){overflow:visible;margin-bottom:110px}.landscape>img.walker{width:8%}}
.memory figcaption{position:absolute;top:14px;left:14px;right:14px;bottom:auto;display:block;padding:6px 8px;background:#142923e8;color:var(--silk);width:fit-content;max-width:calc(100% - 28px)}
@media(max-width:620px){.passage-line.long-line{position:absolute;top:100%;left:0;right:0;width:100%;bottom:auto}.landscape:has(.long-line){margin-bottom:90px}}
