:root{--paper:#fffcf9;--paper2:#f5f0eb;--ink:#1a1915;--muted:#6b6560;--accent:#b95230;--peach:#d4714a;--night:#202c37;--serif:'Newsreader',Georgia,serif;--sans:'Inter',sans-serif;--p:0;color-scheme:light;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}::selection{background:#e8a88c;color:#1a1915}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--peach);outline-offset:6px}button{font:inherit;cursor:pointer}h1,h2,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.035em}em{font-weight:400;color:var(--accent)}.nav{position:absolute;left:0;right:0;top:0;height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;z-index:20}.brand{font:500 24px var(--serif);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.brand-dot{width:7px;height:7px;border-radius:50%;background:var(--peach)}.nav nav{display:flex;align-items:center;gap:32px;font-size:13px}.nav nav>a:hover{color:var(--accent)}.nav-cta{border-bottom:1px solid currentColor;padding-bottom:5px}.skip{position:fixed;top:-100px;left:20px;background:var(--paper);padding:12px;z-index:100}.skip:focus{top:10px}.chapter{height:220svh;position:relative;--p:0}.chapter.intro{height:290svh}.stage{position:sticky;top:0;height:100svh;min-height:640px;overflow:hidden;isolation:isolate}.copy{position:absolute;z-index:5;left:7.5%;top:50%;transform:translateY(-50%);width:40%;max-width:530px}.copy h1,.copy h2{font-size:clamp(46px,5.4vw,82px)}.copy p{margin-top:28px;font-size:clamp(16px,1.25vw,19px);line-height:1.7;color:var(--muted)}.copy strong{font-weight:500;color:var(--ink)}.text-link{display:inline-flex;gap:24px;align-items:center;margin-top:32px;font-size:13px;font-weight:500;border-bottom:1px solid #b9afa4;padding-bottom:8px;transition:color .2s,gap .2s}.text-link:hover{color:var(--accent);gap:32px}.scene-art{position:absolute;inset:0;z-index:0}.city-art{left:43%;overflow:visible}.sky{position:absolute;inset:0 -5% 0 0;background:linear-gradient(160deg,#eadccd,#b9cbce 60%,#91a8ae);clip-path:ellipse(85% 85% at 88% 45%);transition:background 1s}.moon{position:absolute;width:90px;height:90px;border-radius:50%;background:#fcf2de;right:18%;top:17%;box-shadow:8px 12px 24px #27374922;transform:translateY(calc(var(--p)*-70px))}.distant{position:absolute;inset:24% -10% 12% 0;filter:drop-shadow(-8px 10px 12px #1c2c3820)}.block{position:absolute;bottom:0;background:#829398;border-top:8px solid #95a3a4;box-shadow:inset -18px 0 #697e86}.b1{height:55%;width:18%;left:0}.b2{height:78%;width:22%;left:21%}.b3{height:63%;width:18%;left:48%}.b4{height:100%;width:22%;left:72%}.city-block{position:absolute;left:16%;right:4%;top:27%;bottom:10%;background:#e7d9c5;box-shadow:inset -30px 0 #bfb39d,-20px 28px 32px #27313b35;transform-origin:58% 36%;will-change:transform}.roof{position:absolute;top:-14px;left:-9px;right:-9px;height:19px;background:#d0c3b0;box-shadow:0 7px 9px #17232c18}.window-grid{position:absolute;inset:7% 11% 7% 7%;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(7,1fr);gap:16px 12px}.window-grid i{background:#708f9b;border:4px solid #f0e5d2;box-shadow:inset 3px 3px 3px #10222b45,2px 3px 2px #74694c2c;position:relative;transition:background .7s}.window-grid i:after{content:'';position:absolute;left:45%;top:0;bottom:0;width:2px;background:#e8dcc4}.window-grid i.lit{background:#f0b475;box-shadow:inset 2px 2px 3px #a47345,0 0 16px #edab7c45}.window-grid i.chosen{background:#a6d6e4}.building-base{position:absolute;bottom:0;height:6%;width:100%;background:#c7baa6}.foreground-ledge{position:absolute;left:-15%;right:-10%;bottom:-5%;height:18%;background:#5b6f72;clip-path:polygon(0 45%,23% 25%,48% 35%,74% 8%,100% 30%,100% 100%,0 100%);filter:drop-shadow(0 -12px 9px #263b4522)}.floating-time{position:absolute;right:9%;top:13%;font:400 17px var(--sans);letter-spacing:.04em;color:#42555e;z-index:3}.room{position:absolute;inset:0;opacity:0;transform:scale(.82);transform-origin:62% 55%;will-change:transform,opacity}.room-wall{position:absolute;inset:10% -10% 14% 4%;background:#35434e;box-shadow:inset 25px 12px 38px #131e273b}.window-frame{position:absolute;top:18%;height:41%;width:38%;right:14%;border:17px solid #c8c2b6;background:#8bafc1;box-shadow:15px 16px 18px #14212d65,inset 6px 7px 10px #1d303550;transform:skewY(-3deg)}.window-frame:before{content:'';position:absolute;left:46%;top:0;bottom:0;width:10px;background:#c8c2b6}.window-frame:after{content:'';position:absolute;left:0;right:0;top:45%;height:10px;background:#c8c2b6}.floor{position:absolute;bottom:6%;height:25%;left:-4%;right:-10%;background:#8e8577;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}.reader{position:absolute;right:3%;bottom:6%;height:65%;width:74%;filter:drop-shadow(-18px 20px 18px #101b2840)}.reader img{width:100%;height:100%;object-fit:contain}.reader.fallback{background:url('assets/guide-cover.webp') center/contain no-repeat}.reader.fallback img{display:none}.lamp{position:absolute;left:13%;top:30%;height:48%;width:14%;border-left:6px solid #b9a58b}.lamp:before{content:'';position:absolute;width:100%;height:20%;left:-50%;top:0;background:#dfb784;clip-path:polygon(20% 0,80% 0,100% 100%,0 100%);filter:drop-shadow(3px 7px 7px #10192166)}.plant{position:absolute;right:-1%;bottom:11%;height:27%;width:18%;z-index:4}.plant b{position:absolute;bottom:0;left:24%;height:35%;width:56%;background:#a96548;clip-path:polygon(0 0,100% 0,83% 100%,17% 100%)}.plant i{position:absolute;bottom:28%;left:49%;height:60%;width:9px;background:#677963;transform:rotate(-20deg);transform-origin:bottom}.plant i:before{content:'';position:absolute;left:-32px;top:5px;width:42px;height:72px;border-radius:80% 0 80% 0;background:#879276;box-shadow:5px 5px 8px #18292f30}.plant i:nth-child(2){transform:rotate(27deg);height:77%}.plant i:nth-child(3){transform:rotate(55deg);height:49%}.night-copy{opacity:0;pointer-events:none;color:#f5eee4}.night-copy em{color:#edb495}.night-copy p{color:#c9d1d2}.intro .stage{background:var(--paper);transition:background .4s}.intro.night .stage{background:#202c37}.intro.night .sky{background:linear-gradient(160deg,#293747,#506174 65%,#b4b6ae)}.intro.night .floating-time{color:#f1ddc7}.intro.night .scene-footer{color:#bdc8c9}.scene-footer{position:absolute;left:7.5%;right:6%;bottom:32px;z-index:8;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#6b6560;letter-spacing:.02em}.scene-footer a{border-bottom:1px solid currentColor}.scroll-cue{display:flex;align-items:center;gap:14px}.scroll-cue i{width:1px;height:28px;background:currentColor;position:relative}.scroll-cue i:after{content:'';width:5px;height:5px;border-right:1px solid;border-bottom:1px solid;position:absolute;bottom:0;left:-2px;transform:rotate(45deg)}.bridge{padding:140px 8%;background:var(--paper);position:relative;z-index:2}.bridge>p{font-size:16px;color:var(--muted);margin-bottom:28px}.bridge h2{font-size:clamp(52px,7vw,96px);max-width:900px}.bridge-bottom{margin-top:60px;display:flex;gap:60px;justify-content:space-between;border-top:1px solid #e8e4df;padding-top:28px}.bridge-bottom span{font-size:13px;white-space:nowrap}.bridge-bottom p{max-width:480px;color:var(--muted);font-size:16px}.mind .stage{background:#f5f0eb}.mind-art{left:42%;right:0}.illustration{position:absolute;overflow:hidden;filter:drop-shadow(14px 23px 20px #30231c22);will-change:transform}.illustration img{width:100%;height:100%;object-fit:cover;display:block}.mind .illustration{left:19%;top:16%;width:71%;height:70%;border-radius:48% 48% 2% 2%;transform:rotate(4deg)}.paper-disc{position:absolute;right:-7%;top:10%;width:94%;height:89%;border-radius:50% 0 0 50%;background:#e5dacc;box-shadow:inset 20px -5px 30px #c2ac951a}.thought-sheet{position:absolute;width:23%;height:22%;background:#fffcf5;box-shadow:8px 15px 22px #503d2925;padding:18px;z-index:3;transform:rotate(-12deg)}.thought-sheet i{display:block;width:90%;height:2px;background:#b3a897;margin:12px 0}.thought-sheet i:nth-child(2){width:65%}.sheet-a{top:15%;left:7%}.sheet-b{top:48%;right:-3%;transform:rotate(16deg);z-index:0}.sheet-c{bottom:9%;left:13%;transform:rotate(10deg)}.paper-ribbon{position:absolute;bottom:4%;right:8%;height:29%;width:39%;border:22px solid #c07957;border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(-30deg);filter:drop-shadow(8px 12px 8px #563e2c30)}.art-word{position:absolute;left:8%;bottom:31%;font:italic 30px/1.1 var(--serif);transform:rotate(-10deg);color:#8e5239;z-index:4}.scene-quote{font:italic 22px/1.4 var(--serif);color:#8d523b;margin-top:32px;opacity:var(--beat,1);transform:translateY(calc((1 - var(--beat,1))*15px))}.second-beat{opacity:var(--beat,1)}.connection .stage{background:#eee4d8}.connection-art{left:0;right:45%}.connection .copy{left:59%;width:35%;max-width:510px}.oval-back{position:absolute;left:-14%;right:-1%;top:12%;bottom:4%;border-radius:0 52% 45% 0;background:#dacabb;box-shadow:10px 20px 40px #593c2420}.connection .illustration{left:9%;top:17%;width:80%;height:72%;border-radius:46% 46% 2% 2%;transform:rotate(-4deg)}.chat-slip{position:absolute;z-index:4;background:#fffcf9;color:#3d3630;padding:20px 27px;box-shadow:8px 16px 20px #44362926;font-family:var(--serif);font-size:25px;line-height:1.3}.slip-human{left:4%;top:25%;transform:rotate(-6deg)}.slip-ai{right:0;bottom:16%;background:#345967;color:#fff9ef;min-width:180px;transform:rotate(5deg)}.typing{display:flex;gap:6px;height:30px;align-items:center}.typing i{height:5px;width:5px;border-radius:50%;background:currentColor}.reply{display:none}.connection.answered .typing{display:none}.connection.answered .reply{display:block}.front-paper{position:absolute;left:-10%;right:-10%;bottom:-4%;height:14%;background:#c6b399;clip-path:polygon(0 60%,25% 20%,45% 55%,70% 10%,100% 60%,100% 100%,0 100%)}.thread{position:absolute;width:50%;height:35%;bottom:9%;left:12%;border:2px solid #bb7a52;border-top-color:transparent;border-right-color:transparent;border-radius:50%;transform:rotate(-20deg);z-index:2}.absence .stage{background:#202b32;color:#fff6eb}.absence .copy em{color:#e6ab89}.absence .copy p{color:#c9cecb}.absence .scene-quote{color:#e6ab89}.absence .scene-footer{color:#bec5c2}.absence-art{left:45%;overflow:hidden}.back-wall{position:absolute;inset:8% -20% 0 0;background:#34474b;clip-path:polygon(10% 8%,100% 0,100% 100%,0 100%)}.shelf{position:absolute;left:0;right:0;top:61%;height:13px;background:#b39475;box-shadow:0 18px 18px #0b1a2055}.portrait{position:absolute;top:20%;right:16%;height:31%;width:33%;border:12px solid #baa18a;background:#d8caba;box-shadow:14px 17px 17px #0d1b2150;transform:rotate(6deg);overflow:hidden}.portrait:before{content:'';position:absolute;left:31%;top:16%;width:40%;height:39%;background:#ab9581;border-radius:50%}.portrait:after{content:'';position:absolute;left:10%;bottom:-20%;width:90%;height:70%;background:#7d8a80;border-radius:50% 50% 0 0}.phone{position:absolute;left:15%;top:33%;width:36%;height:49%;background:#17262a;border:9px solid #bdad96;box-shadow:18px 28px 30px #08141955;border-radius:23px;transform:rotate(-9deg);z-index:3;overflow:hidden}.speaker{width:23%;height:4px;border-radius:10px;background:#8e9a97;margin:14px auto}.phone-message{padding:25% 10%;transition:opacity .3s;opacity:calc(1 - var(--fade,0))}.phone-message>span{font-size:12px;color:#acc8c6}.phone-message p{font:26px/1.35 var(--serif);color:#f6e8d6;margin-top:17px}.phone-message i{height:2px;background:#7d9291;display:block;margin-top:17px;width:80%}.phone-message i:last-child{width:55%;margin-top:8px}.phone-silence{position:absolute;left:10%;right:10%;top:47%;font-size:13px;text-align:center;color:#9aacaa;opacity:var(--fade,0)}.table-edge{position:absolute;bottom:-3%;left:-12%;right:-20%;height:20%;background:#94795f;transform:rotate(-5deg);box-shadow:0 -12px 20px #112c3730;z-index:4}.vase{position:absolute;right:3%;bottom:13%;height:22%;width:18%;border-radius:12% 12% 40% 40%;background:#c8b196;box-shadow:inset -16px -4px #ae947b,9px 15px 13px #10242b40;z-index:5}.vase i{position:absolute;width:4px;height:90%;top:-83%;left:50%;background:#a3967b;transform:rotate(15deg)}.vase i:last-child{transform:rotate(-21deg);height:110%;top:-105%}.about{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding:140px 8%;background:var(--paper)}.about-art img{width:100%;height:auto;display:block;border-radius:48% 48% 1% 1%;box-shadow:10px 20px 30px #614c3220}.about-art>span{display:block;margin-top:20px;font-size:12px;color:var(--muted)}.about h2{font-size:clamp(44px,5.3vw,76px)}.about p{max-width:490px;margin-top:25px;color:var(--muted);font-size:17px}.about strong{font-weight:500;color:var(--ink)}.closing{min-height:90svh;background:#f5eee5;position:relative;overflow:hidden;display:flex;align-items:center;padding:100px 8%}.closing-copy{position:relative;z-index:2;width:62%}.closing h2{font-size:clamp(44px,5.8vw,88px)}.closing p{color:var(--muted);margin-top:28px;font-size:17px}.closing-art{position:absolute;right:-6%;width:43%;top:12%;bottom:-8%;transform:rotate(8deg)}.closing-art img{width:100%;height:100%;object-fit:cover;border-radius:49% 49% 0 0;box-shadow:-10px 15px 30px #42352220}.actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:38px}.actions .text-link{margin:0}.button{display:inline-flex;gap:35px;padding:16px 23px;background:#a84e30;color:#fff;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#853d25;transform:translateY(-2px)}footer{padding:42px 6% 76px;display:flex;justify-content:space-between;gap:24px;align-items:center;font-size:12px;color:var(--muted)}footer .brand{color:var(--ink)}.journey{position:fixed;bottom:15px;left:50%;transform:translateX(-50%);z-index:30;display:flex;align-items:center;gap:18px;background:#fffcf9;padding:9px 16px;box-shadow:0 3px 18px #1a191519;font-size:10px;white-space:nowrap;border-radius:4px}.journey button{font-size:10px;border:0;background:none;color:#6b6560;padding:2px 0;border-bottom:1px dotted #8b7d70}.journey button:hover{color:var(--accent)}#journey-track{width:90px;height:2px;background:#e8e4df}#journey-track i{display:block;height:100%;width:0;background:var(--accent)}[data-depth]{will-change:transform}
@media(min-width:1700px){.copy{left:10%}.city-art{left:45%}.scene-footer{left:10%}}
@media(max-width:800px){.nav{height:74px;padding:0 6%}.nav .brand{font-size:22px}.nav nav{gap:18px;font-size:12px}.nav nav>a:first-child{display:none}.chapter{height:200svh}.chapter.intro{height:245svh}.stage{min-height:620px}.copy,.connection .copy{left:7%;top:13%;transform:none;width:85%;max-width:none}.copy h1,.copy h2{font-size:clamp(36px,7.7vw,55px);line-height:1.02}.copy h1 br:nth-child(2){display:none}.copy h1{max-width:440px}.copy p{font-size:14px;margin-top:16px;line-height:1.55}.hero-copy .text-link{margin-top:18px;font-size:12px}.scene-art.city-art{left:12%;top:34%;bottom:0}.city-block{top:23%;left:14%;right:-5%;bottom:10%}.floating-time{top:16%;font-size:13px}.moon{height:55px;width:55px;top:8%;right:10%}.window-grid{gap:8px 7px;inset:6% 12% 7% 7%}.window-grid i{border-width:2px}.night-copy{top:14%;width:88%}.night-copy h2 br:nth-child(1){display:none}.room{inset:0}.reader{height:77%;width:83%;bottom:6%;right:-5%}.room-wall{inset:10% -10% 7% 4%}.window-frame{top:17%;height:40%;width:42%;right:19%;border-width:10px}.scene-footer{left:7%;right:7%;bottom:51px;font-size:10px}.scene-footer>span:last-child,.scene-footer>a{display:none}.scene-art.mind-art{left:12%;top:38%;bottom:3%}.scene-art.connection-art{left:0;right:8%;top:39%;bottom:3%}.scene-art.absence-art{left:13%;top:36%;bottom:1%}.copy .second-beat{max-width:320px}.copy .scene-quote{display:none}.mind .illustration{top:5%;height:90%;left:20%;width:72%}.paper-disc{top:0}.thought-sheet{padding:12px;width:26%;height:25%}.thought-sheet i{margin:8px 0}.sheet-a{top:7%}.sheet-c{bottom:0}.art-word{font-size:22px;left:4%;bottom:29%}.connection .illustration{top:0;height:90%}.oval-back{top:0}.chat-slip{padding:13px 17px;font-size:19px}.slip-human{top:14%;left:5%}.slip-ai{bottom:16%;right:0;min-width:136px}.portrait{height:32%;width:30%;top:11%;border-width:8px}.phone{top:25%;height:54%;width:35%;left:22%;border-width:6px;border-radius:17px}.phone-message{padding:18% 10%}.phone-message p{font-size:21px}.phone-silence{font-size:10px}.vase{width:15%;right:5%}.bridge{padding:80px 7%}.bridge h2{font-size:52px}.bridge>p{font-size:14px;max-width:250px}.bridge-bottom{margin-top:35px;display:block;padding-top:24px}.bridge-bottom p{margin-top:18px;font-size:14px}.about{padding:75px 7%;grid-template-columns:1fr;gap:42px}.about-art{max-width:400px}.about h2{font-size:48px}.about p{font-size:16px}.closing{min-height:900px;align-items:flex-start;padding:75px 7%}.closing-copy{width:100%}.closing h2{font-size:45px}.closing p{font-size:15px}.closing-art{width:67%;top:auto;bottom:-8%;height:48%;right:-3%}.actions{gap:18px;margin-top:28px;align-items:flex-start;flex-direction:column}.journey{bottom:12px;gap:12px;width:max-content;max-width:94%;padding:8px 12px}#journey-track{width:55px}footer{flex-direction:column;align-items:flex-start;padding:36px 7% 75px;gap:15px}.scene-footer{max-width:75%}}
@media(max-height:700px) and (min-width:801px){.copy h1,.copy h2{font-size:59px}.copy p{font-size:15px;margin-top:18px}.scene-quote{font-size:19px;margin-top:22px}.stage{min-height:580px}}
body.reduced .chapter{height:auto!important}body.reduced .stage{position:relative;height:100svh}body.reduced [data-depth]{transform:none!important}body.reduced .night-copy{display:none}body.reduced .hero-copy{opacity:1!important}body.reduced .second-beat,body.reduced .scene-quote{opacity:1!important}body.reduced .intro .stage{background:var(--paper)}body.reduced .phone-message{opacity:1!important}body.reduced .phone-silence{display:none}body.reduced .room{opacity:0!important}body.reduced .city-block{opacity:1!important;transform:none!important}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.reader svg{width:100%;height:100%;overflow:visible}

@media(max-width:800px){.scene-art.mind-art{top:43%}.scene-art.connection-art{top:44%}.copy h1 em{margin-right:.12em}.scroll-cue{display:none}}
.scroll-cue{color:#26383b}.intro.night .scroll-cue{color:#d0dcdb}

.night-static{display:none}body.reduced .night-static{display:block;padding:65px 8%;background:#202c37;color:#f5eee4}body.reduced .night-static h2{font-size:clamp(34px,5vw,64px);max-width:700px}body.reduced .night-static p{margin-top:24px;max-width:600px;color:#c9d1d2}.journey button{min-height:28px;padding:5px 0}
/* Opening editorial pass: lecture-based copy and optional context. */
.copy .author-line{font-size:13px;margin:0 0 23px;color:var(--muted)}
.hero-copy h1{font-size:clamp(44px,5vw,76px)}
.opening-message{font:italic 24px/1.4 var(--serif);color:#edb495;margin-top:28px}
.night-copy .text-link,.night-static .text-link{color:#f5eee4;border-color:#95a6ae}
.disclosure{padding-top:110px;padding-bottom:100px}
.disclosure-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:7vw;align-items:start}
.disclosure-intro h2{font-size:clamp(44px,5.7vw,80px)}
.disclosure-intro p{color:var(--muted);max-width:48ch;margin:0 0 20px}
.context-trigger{background:none;border:0;border-bottom:1px solid #b9afa4;padding:10px 0;min-height:44px;color:var(--accent);font-size:14px;display:inline-flex;gap:24px;align-items:center;text-align:left}
.context-trigger:hover{color:var(--ink)}.context-trigger span{font-size:23px}
.hesitations{display:flex;gap:16px 35px;flex-wrap:wrap;margin:70px 0 60px;padding:30px 0;border-block:1px solid #e8e4df;color:var(--muted);font:italic 23px/1.45 var(--serif)}
.hesitations span{flex:1 1 180px}
.disclosure-turn{max-width:780px;margin-left:auto}
.disclosure-turn p{font:400 30px/1.35 var(--serif);color:var(--ink)}
.disclosure-turn>span{display:block;margin-top:18px;font-size:12px;color:var(--muted)}
.disclosure .bridge-bottom{margin-top:65px}
.context-panel{position:fixed;inset:0 0 0 auto;width:min(640px,92vw);height:100dvh;max-height:100dvh;max-width:none;margin:0;padding:0;border:0;background:var(--paper);color:var(--ink);box-shadow:-18px 0 65px #111a2640;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#b9afa4 var(--paper2)}
.context-panel::backdrop{background:#18232b99}
.context-panel-head{position:sticky;top:0;background:var(--paper);z-index:1;padding:16px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e8e4df;font-size:12px;color:var(--muted)}
.context-close{border:0;background:none;color:var(--ink);min-height:44px;padding:10px 8px;font-size:13px}.context-close:hover{color:var(--accent)}
.context-close span{margin-left:12px;font-size:21px}
.context-panel-body{padding:36px 42px 45px}.context-panel h2{font-size:clamp(36px,4vw,54px)}.context-panel h2:focus{outline:none}.context-panel p{font-size:16px;line-height:1.75;margin:20px 0;color:var(--muted)}
.context-panel h3{font:500 26px/1.2 var(--serif);margin:42px 0 16px;letter-spacing:-.015em}
.barriers{margin:34px 0}.barriers>div{padding:22px 0;border-top:1px solid #e8e4df}.barriers dt{font:400 25px/1.25 var(--serif)}.barriers dd{margin:12px 0 0;color:var(--muted);font-size:15px;line-height:1.75}
.context-sources{border-top:1px solid #e8e4df;margin-top:38px}.context-sources h3{font-size:22px}.context-sources ul{padding-left:18px;font-size:13px;color:var(--muted);line-height:1.8}.context-sources li{margin-bottom:14px}.context-panel a{text-decoration:underline;text-underline-offset:4px}.context-return{border-bottom:1px solid #b9afa4;margin-top:22px}
body.context-open{overflow:hidden}.journey button{min-height:44px}
@media(max-width:800px){.nav nav{gap:14px}.nav nav>a{font-size:11px}.copy .author-line{font-size:11px;margin:0 0 10px}.hero-copy{top:12%}.hero-copy h1{font-size:clamp(34px,8vw,52px);max-width:420px}.copy h1 br:nth-child(2){display:initial}.hero-copy p{margin-top:14px}.scene-art.city-art{top:44%}.night-copy{top:13%;width:86%}.night-copy h2{max-width:340px}.opening-message{font-size:20px;margin-top:18px}.night-copy .text-link{margin-top:15px;min-height:40px}.disclosure{padding:70px 7%}.disclosure-intro{grid-template-columns:1fr;gap:30px}.disclosure-intro h2{font-size:46px}.disclosure-intro p{font-size:15px}.hesitations{margin:38px 0;gap:20px;font-size:22px}.hesitations span{flex-basis:42%}.disclosure-turn p{font-size:27px}.disclosure .bridge-bottom{margin-top:40px}.context-panel{inset:7dvh 0 0;width:100%;height:93dvh;max-height:93dvh;border-radius:18px 18px 0 0}.context-panel-head{padding:12px 20px}.context-panel-body{padding:28px 25px 40px}.context-panel h2{font-size:40px}.context-panel p{font-size:15px}.barriers dt{font-size:24px}.night-static .opening-message{font-size:23px}}
@media(max-height:700px) and (max-width:800px){.hero-copy h1{font-size:32px}.hero-copy p,.night-copy p{font-size:13px;margin-top:10px}.copy .author-line{margin-bottom:8px}.hero-copy .text-link{margin-top:10px}.scene-art.city-art{top:48%}.night-copy h2{font-size:34px}.night-copy .opening-message{margin-top:12px;font-size:18px}}
/* One diorama, one story: the disclosure beat stays in the same room. */
.chapter.intro{height:420svh}.why-copy{opacity:0;pointer-events:none;color:#f5eee4}.why-copy em{color:#edb495}.why-copy p{color:#c9d1d2;margin-top:22px}.why-copy h2{font-size:clamp(44px,4.7vw,70px)}.why-copy .context-trigger,.why-static .context-trigger{color:#edb495;border-color:#95a6ae;margin-top:14px}.why-copy .pupil-beat{opacity:var(--pupil,0);margin-top:22px}.why-copy .pupil-beat p{font:italic 25px/1.35 var(--serif);color:#edb495}.room-thoughts{position:absolute;inset:0;z-index:4;pointer-events:none;opacity:var(--thoughts,0)}.room-thoughts span{position:absolute;color:#e7ddd0;background:#35434eef;box-shadow:6px 10px 16px #101c2730;padding:12px 18px;font:italic 21px/1.3 var(--serif)}.room-thoughts span:nth-child(1){left:55%;top:15%;transform:rotate(-5deg)}.room-thoughts span:nth-child(2){right:4%;top:28%;transform:rotate(5deg)}.room-thoughts span:nth-child(3){left:47%;top:43%;transform:rotate(-4deg)}.room-thoughts span:nth-child(4){right:7%;bottom:18%;transform:rotate(3deg)}.why-static{margin-top:65px}.why-static .context-trigger{display:inline-flex}body.reduced .why-copy,body.reduced .room-thoughts{display:none}
@media(max-width:800px){.chapter.intro{height:380svh}.why-copy{top:10%;width:88%}.why-copy h2{font-size:38px}.why-copy p{font-size:14px;margin-top:14px}.why-copy .context-trigger{font-size:12px;margin-top:8px}.why-copy .pupil-beat{margin-top:10px}.why-copy .pupil-beat p{font-size:19px}.room-thoughts span{font-size:16px;padding:8px 12px}.room-thoughts span:nth-child(1){left:14%;top:57%}.room-thoughts span:nth-child(2){right:3%;top:65%}.room-thoughts span:nth-child(3){left:8%;top:74%}.room-thoughts span:nth-child(4){right:5%;bottom:12%}.intro .city-art{top:calc(44% + var(--why,0)*7%)}}
@media(max-height:700px) and (max-width:800px){.why-copy h2{font-size:32px}.why-copy p{font-size:13px;margin-top:10px}.why-copy .pupil-beat p{font-size:17px}.why-copy .context-trigger{min-height:38px}.room-thoughts span{font-size:14px}.intro .city-art{top:calc(48% + var(--why,0)*8%)}}
/* A whole conversation inside one diorama; no detached text interlude. */
.chapter.agreement{height:360svh;--agree:0;--reconsider:0}.agreement .stage{background:#f3e9dc}.agreement-art{left:45%;right:0;perspective:1000px}.mirror-backing{position:absolute;inset:12% -9% 8% 8%;background:#dfcdb5;transform:rotate(-5deg);box-shadow:-14px 20px 35px #68462818}.mirror-picture{position:absolute;left:0;right:-12%;top:22%;bottom:16%;box-shadow:12px 22px 30px #68462830;transform-origin:center}.mirror-picture img{width:100%;height:100%;object-fit:cover;object-position:47% 50%;display:block}.dialogue-paper{position:absolute;z-index:3;padding:20px 26px;font:400 clamp(21px,2vw,30px)/1.25 var(--serif);box-shadow:8px 14px 24px #4d321f30;max-width:85%}.question-paper{left:0;top:12%;background:var(--paper);transform:rotate(-4deg)}.answer-paper{right:4%;bottom:13%;background:#70402c;color:#fff8ee;opacity:calc(var(--agree)*(1 - var(--reconsider)));transform:translateY(calc((1 - var(--agree))*25px)) rotate(4deg)}.opening-paper{left:10%;bottom:13%;background:#fffaf0;color:#344d4d;opacity:var(--reconsider);transform:translateY(calc((1 - var(--reconsider))*28px)) rotate(-3deg)}.echo-word{position:absolute;z-index:2;color:#653b29;font:italic clamp(28px,3.5vw,52px)/1 var(--serif);opacity:calc(var(--agree)*(1 - var(--reconsider)));transform:translateY(calc(var(--reconsider)*-70px))}.echo-one{top:38%;left:0;rotate:-12deg}.echo-two{bottom:32%;right:4%;rotate:8deg}.agreement .copy{width:37%;max-width:530px}.agreement .copy h2{font-size:clamp(42px,4.8vw,72px)}.agreement .copy p{font-size:clamp(16px,1.25vw,19px);margin-top:24px}.agreement-beat:not([data-agreement-beat="0"]){opacity:0}.agreement-beat[inert]{pointer-events:none}.agreement .context-trigger{margin-top:20px;gap:16px}.agreement .scene-footer{color:#655a4f}.agreement .scene-footer>span:first-child{max-width:65%}.agreement .context-trigger:hover{color:#653b29}
@media(max-width:800px){.chapter.agreement{height:340svh}.agreement .copy{left:7%;top:8%;transform:none;width:86%;max-width:none}.agreement .copy h2{font-size:clamp(35px,8vw,50px)}.agreement .copy p{font-size:14px;margin-top:16px;line-height:1.55}.agreement .text-link{margin-top:14px;min-height:44px}.agreement .context-trigger{margin-top:12px;font-size:12px;min-height:44px}.agreement-art{left:5%;right:0;top:46%;bottom:5%}.mirror-picture{top:18%;bottom:15%;left:6%;right:-5%}.mirror-backing{inset:8% -6% 3% 15%}.dialogue-paper{font-size:20px;padding:13px 18px;max-width:80%}.question-paper{top:3%;left:0}.answer-paper{bottom:4%;right:7%}.opening-paper{bottom:4%;left:6%}.echo-word{font-size:30px}.echo-one{left:0;top:48%}.echo-two{right:4%;bottom:30%}.agreement .scene-footer{bottom:25px;font-size:10px}.agreement .scene-footer>span:first-child{max-width:90%}}
@media(max-width:800px) and (max-height:700px){.agreement .copy{top:6%}.agreement .copy h2{font-size:32px}.agreement .copy p{font-size:13px;margin-top:12px}.agreement .context-trigger{margin-top:8px}.agreement-art{top:49%;bottom:6%}.dialogue-paper{font-size:17px;padding:10px 14px}}
body.reduced .agreement .stage{height:auto;min-height:0;padding:65px 7% 55px;overflow:visible}body.reduced .agreement-art{position:relative;left:auto;right:auto;top:auto;bottom:auto;height:clamp(270px,40vw,500px);margin-bottom:40px}body.reduced .agreement .copy{position:relative;left:auto;top:auto;transform:none;width:100%;max-width:650px;margin:0 auto 60px;opacity:1!important}body.reduced .agreement .copy br{display:none}body.reduced .agreement .copy h2{max-width:15ch}body.reduced .agreement .copy p{max-width:48ch}body.reduced .agreement .scene-footer{position:relative;left:auto;right:auto;bottom:auto}body.reduced .agreement .question-paper,body.reduced .agreement .echo-word,body.reduced .agreement .answer-paper,body.reduced .agreement .opening-paper{display:none}body.reduced .agreement .mirror-picture{inset:0;max-width:750px;margin:auto;box-shadow:none}body.reduced .agreement .mirror-picture img{object-fit:contain}body.reduced .agreement .mirror-backing{display:none}
/* Keep the final reply and its provenance above the fixed reading controls. */
@media(max-width:800px){.agreement-art{bottom:16%}.agreement .scene-footer{bottom:82px}.agreement .scene-footer>span:first-child{max-width:100%}.agreement .opening-paper,.agreement .answer-paper{bottom:1%}body.reduced .agreement-art{bottom:auto}body.reduced .agreement .scene-footer{bottom:auto}}
@media(min-width:801px) and (max-width:1200px){.agreement .scene-footer{bottom:82px}body.reduced .agreement .scene-footer{bottom:auto}}

/* v6 — the narrative copy becomes a paper layer inside the agreement diorama. */
.agreement-art{inset:0;overflow:hidden}
.agreement .mirror-backing{inset:7% -9% 7% 19%;transform:rotate(-4deg)}
.agreement .mirror-picture{left:23%;right:-6%;top:11%;bottom:9%}
.agreement .question-paper{left:auto;right:6%;top:6%;transform:rotate(3deg)}
.agreement .opening-paper{left:auto;right:7%;bottom:12%}
.agreement .echo-one{left:24%}
.agreement .copy{left:5.5%;top:50%;width:min(42%,590px);max-width:none}
.agreement-story-paper{padding:30px 34px 29px;background:#fffaf2f2;box-shadow:13px 19px 34px #4d321f30;border-left:3px solid var(--accent);transform:translateY(-50%) rotate(-1deg);backdrop-filter:blur(2px)}
.agreement-story-paper:after{content:"";position:absolute;left:18px;right:-10px;bottom:-12px;height:15px;background:#e5d2ba;z-index:-1;transform:rotate(1.5deg)}
.agreement .copy h2{font-size:clamp(39px,4.15vw,64px)}
.agreement .copy p{font-size:clamp(15px,1.1vw,18px);margin-top:19px;line-height:1.58}
.agreement .text-link{margin-top:20px;background:#fffdf8;border:0;border-left:2px solid var(--accent);padding:11px 15px;box-shadow:5px 8px 15px #4d321f1f;transform:rotate(.5deg);gap:28px}
.agreement .text-link:hover{gap:34px}
.agreement .context-trigger{margin-top:17px;background:#fffdf8;border:0;border-left:2px solid var(--accent);padding:10px 14px;box-shadow:5px 8px 15px #4d321f1f}
@media(max-width:800px){
 .agreement-art{inset:0}
 .agreement .mirror-backing{inset:37% -8% 7% 7%}
 .agreement .mirror-picture{top:39%;bottom:10%;left:1%;right:-8%}
 .agreement .copy{left:5%;top:8%;width:90%}
 .agreement-story-paper{padding:19px 20px 18px;transform:rotate(-.6deg)}
 .agreement .copy h2{font-size:clamp(32px,7.7vw,45px)}
 .agreement .copy p{font-size:13.5px;margin-top:12px;line-height:1.48}
 .agreement .text-link{margin-top:11px;min-height:42px;padding:8px 12px;font-size:12px}
 .agreement .context-trigger{margin-top:9px;font-size:11.5px;min-height:42px;padding:7px 11px}
 .agreement .dialogue-paper{font-size:18px;padding:11px 15px;max-width:76%}
 .agreement .question-paper{top:34%;right:5%;left:auto}
 .agreement .answer-paper{bottom:15%;right:4%}
 .agreement .opening-paper{bottom:14%;right:5%;left:auto}
 .agreement .echo-word{font-size:27px}.agreement .echo-one{left:3%;top:58%}.agreement .echo-two{right:4%;bottom:30%}
}
@media(max-width:800px) and (max-height:700px){
 .agreement .copy{top:6%}.agreement-story-paper{padding:14px 16px 13px}
 .agreement .copy h2{font-size:30px}.agreement .copy p{font-size:12.5px;margin-top:9px}
 .agreement .text-link,.agreement .context-trigger{margin-top:7px;min-height:38px}
 .agreement .mirror-backing{inset:39% -8% 9% 7%}.agreement .mirror-picture{top:41%;bottom:12%}
 .agreement .dialogue-paper{font-size:15px;padding:8px 11px}.agreement .question-paper{top:37%}.agreement .answer-paper,.agreement .opening-paper{bottom:17%}
}
body.reduced .agreement-story-paper{background:transparent;box-shadow:none;border-left:0;padding:0;transform:none;backdrop-filter:none}
body.reduced .agreement-story-paper:after{display:none}
body.reduced .agreement .text-link,body.reduced .agreement .context-trigger{box-shadow:none;background:transparent;border-left:0;border-bottom:1px solid #b9afa4;padding-left:0}

/* v7 — cognitive outsourcing unfolds as one three-beat paper diorama. */
.chapter.mind{height:360svh;--offload:0;--reflect:0}
.mind .stage{background:#f5f0eb}
.mind .mind-art{inset:0;overflow:hidden}
.mind .paper-disc{right:-5%;top:5%;width:86%;height:92%}
.mind .illustration{left:20%;top:9%;width:77%;height:82%;border-radius:48% 48% 2% 2%;transform:rotate(3deg)}
.mind .thought-sheet{transition:opacity .25s linear}
.mind .sheet-a{top:11%;left:17%;opacity:calc(1 - var(--offload)*.65)}
.mind .sheet-b{top:49%;right:0;opacity:calc(.35 + var(--offload)*.65)}
.mind .sheet-c{bottom:8%;left:19%;opacity:calc(1 - var(--offload)*.72 + var(--reflect)*.72)}
.mind-slip{position:absolute;z-index:4;padding:15px 19px;background:#fffdf8;color:#5f574f;box-shadow:7px 12px 22px #4c352329;font-size:12px;line-height:1.45;letter-spacing:.02em}
.mind-slip b{font:400 24px/1.1 var(--serif);color:var(--ink);letter-spacing:-.02em}
.mind-assignment{right:7%;top:6%;transform:rotate(3deg)}
.mind-output{right:4%;bottom:12%;background:#2587a8;color:#e9f9ff;opacity:calc(var(--offload)*(1 - var(--reflect)));transform:translateY(calc((1 - var(--offload))*24px)) rotate(4deg)}
.mind-output b{color:#fff}
.mind-test{right:7%;bottom:12%;opacity:var(--reflect);transform:translateY(calc((1 - var(--reflect))*24px)) rotate(-3deg)}
.mind .copy{left:5.5%;top:50%;width:min(40%,570px);max-width:none}
.mind-story-paper{padding:30px 34px 29px;background:#fffaf2f2;box-shadow:13px 19px 34px #4d321f30;border-left:3px solid var(--accent);transform:translateY(-50%) rotate(-1deg);backdrop-filter:blur(2px)}
.mind-story-paper:after{content:"";position:absolute;left:18px;right:-10px;bottom:-12px;height:15px;background:#e5d2ba;z-index:-1;transform:rotate(1.5deg)}
.mind .copy h2{font-size:clamp(39px,4.15vw,64px)}
.mind .copy p{font-size:clamp(15px,1.1vw,18px);margin-top:19px;line-height:1.58}
.mind-beat:not([data-mind-beat="0"]){opacity:0}.mind-beat[inert]{pointer-events:none}
.mind .text-link{margin-top:20px;background:#fffdf8;border:0;border-left:2px solid var(--accent);padding:11px 15px;box-shadow:5px 8px 15px #4d321f1f;transform:rotate(.5deg);gap:28px}
.mind .text-link:hover{gap:34px}
.mind .context-trigger{margin-top:17px;background:#fffdf8;border:0;border-left:2px solid var(--accent);padding:10px 14px;box-shadow:5px 8px 15px #4d321f1f;gap:16px}
.mind .scene-footer{color:#655a4f}.mind .scene-footer>span:first-child{max-width:65%}
@media(max-width:800px){
 .chapter.mind{height:340svh}.mind .mind-art{inset:0}
 .mind .paper-disc{right:-16%;top:38%;width:110%;height:58%}
 .mind .illustration{top:40%;bottom:10%;height:auto;left:-3%;width:108%}
 .mind .copy{left:5%;top:8%;width:90%;max-width:none}
 .mind-story-paper{padding:19px 20px 18px;transform:rotate(-.6deg)}
 .mind .copy h2{font-size:clamp(32px,7.7vw,45px)}
 .mind .copy p{font-size:13.5px;margin-top:12px;line-height:1.48}
 .mind .text-link{margin-top:11px;min-height:42px;padding:8px 12px;font-size:12px}
 .mind .context-trigger{margin-top:9px;font-size:11.5px;min-height:42px;padding:7px 11px}
 .mind-slip{padding:9px 12px;font-size:9px}.mind-slip b{font-size:17px}
 .mind-assignment{top:36%;right:4%}.mind-output,.mind-test{bottom:15%;right:4%}
 .mind .sheet-a{top:39%;left:3%}.mind .sheet-b{top:64%;right:-4%}.mind .sheet-c{bottom:13%;left:5%}
 .mind .scene-footer{bottom:82px;font-size:10px}.mind .scene-footer>span:first-child{max-width:100%}
}
@media(max-width:800px) and (max-height:700px){
 .mind .copy{top:6%}.mind-story-paper{padding:14px 16px 13px}
 .mind .copy h2{font-size:30px}.mind .copy p{font-size:12.5px;margin-top:9px}
 .mind .text-link,.mind .context-trigger{margin-top:7px;min-height:38px}
 .mind .paper-disc{top:41%;height:55%}.mind .illustration{top:43%;bottom:13%}
 .mind-assignment{top:39%}.mind-output,.mind-test{bottom:18%}
}
body.reduced .mind .stage{height:auto;min-height:0;padding:65px 7% 55px;overflow:visible}
body.reduced .mind-art{position:relative;inset:auto;height:clamp(270px,40vw,500px);margin-bottom:40px}
body.reduced .mind .copy{position:relative;left:auto;top:auto;transform:none;width:100%;max-width:650px;margin:0 auto 60px;opacity:1!important}
body.reduced .mind .copy br{display:none}body.reduced .mind .copy h2{max-width:15ch}body.reduced .mind .copy p{max-width:48ch}
body.reduced .mind-story-paper{background:transparent;box-shadow:none;border-left:0;padding:0;transform:none;backdrop-filter:none}
body.reduced .mind-story-paper:after{display:none}
body.reduced .mind .text-link,body.reduced .mind .context-trigger{box-shadow:none;background:transparent;border-left:0;border-bottom:1px solid #b9afa4;padding-left:0}
body.reduced .mind .scene-footer{position:relative;left:auto;right:auto;bottom:auto}
body.reduced .mind-slip,body.reduced .mind .thought-sheet,body.reduced .mind .paper-ribbon{display:none}
body.reduced .mind .illustration{inset:0;max-width:750px;margin:auto;width:auto;height:auto;position:absolute;transform:none!important}
body.reduced .mind .illustration img{object-fit:contain}

/* v8 — cards now travel continuously through the scroll interval instead of popping. */
.agreement-story-paper,.mind-story-paper{transform-origin:left center;transform:translate3d(var(--card-x,0px),calc(-50% + var(--card-y,0px)),0) rotate(calc(-1deg + var(--card-r,0deg))) scale(var(--card-s,1));will-change:transform,opacity}
.agreement .answer-paper,.agreement .opening-paper,.mind-output,.mind-test{will-change:transform,opacity}
.agreement .answer-paper{transform:translate3d(calc((1 - var(--agree))*55px),calc((1 - var(--agree))*35px),0) rotate(calc(8deg - var(--agree)*4deg)) scale(calc(.93 + var(--agree)*.07))}
.agreement .opening-paper{transform:translate3d(calc((1 - var(--reconsider))*-55px),calc((1 - var(--reconsider))*35px),0) rotate(calc(-8deg + var(--reconsider)*5deg)) scale(calc(.93 + var(--reconsider)*.07))}
.mind-output{transform:translate3d(calc((1 - var(--offload))*48px),calc((1 - var(--offload))*32px),0) rotate(calc(8deg - var(--offload)*4deg)) scale(calc(.93 + var(--offload)*.07))}
.mind-test{transform:translate3d(calc((1 - var(--reflect))*-48px),calc((1 - var(--reflect))*32px),0) rotate(calc(-8deg + var(--reflect)*5deg)) scale(calc(.93 + var(--reflect)*.07))}
@media(max-width:800px){.agreement-story-paper,.mind-story-paper{transform:translate3d(var(--card-x,0px),var(--card-y,0px),0) rotate(calc(-.6deg + var(--card-r,0deg))) scale(var(--card-s,1));transform-origin:center top}}
body.reduced .agreement-story-paper,body.reduced .mind-story-paper{transform:none!important}

/* v9 — whole-site scene system: one visual language, a different mechanic per chapter. */
.scene-kicker{font:600 10px/1.2 var(--sans)!important;text-transform:uppercase;letter-spacing:.17em;color:var(--accent)!important;margin:0 0 19px!important}

/* Opening: camera, light and free typography — no paper cards. */
.hero-copy{transform:translate3d(calc(var(--hero-exit,0)*-54px),calc(-50% - var(--hero-exit,0)*28px),0) scale(calc(1 - var(--hero-exit,0)*.025));will-change:transform,opacity}
.night-copy{transform:translate3d(calc(var(--why,0)*-58px),calc(-50% + (1 - var(--night-in,0))*58px - var(--why,0)*28px),0) scale(calc(.97 + var(--night-in,0)*.03));will-change:transform,opacity}
.why-copy{transform:translate3d(calc((1 - var(--why,0))*68px),-50%,0) scale(calc(.97 + var(--why,0)*.03));will-change:transform,opacity}
.room-thoughts span{background:transparent;box-shadow:none;text-shadow:0 2px 12px #101c27;opacity:var(--thoughts,0);will-change:transform,opacity}
.room-thoughts span:nth-child(1){transform:translate3d(0,calc((1 - var(--thoughts,0))*34px),0) rotate(-5deg)}
.room-thoughts span:nth-child(2){transform:translate3d(0,calc((1 - var(--thoughts,0))*54px),0) rotate(5deg);opacity:calc(var(--thoughts,0)*.86)}
.room-thoughts span:nth-child(3){transform:translate3d(0,calc((1 - var(--thoughts,0))*74px),0) rotate(-4deg);opacity:calc(var(--thoughts,0)*.72)}
.room-thoughts span:nth-child(4){transform:translate3d(0,calc((1 - var(--thoughts,0))*94px),0) rotate(3deg);opacity:calc(var(--thoughts,0)*.58)}

/* Synthetic intimacy: dialogue becomes light and a drawn connective line. */
.chapter.connection{height:340svh;--connect:0;--bond:0}
.connection .stage{background:#eee4d8}
.connection-art{inset:0;overflow:hidden}
.connection .oval-back{left:-11%;right:38%;top:7%;bottom:3%;border-radius:0 54% 44% 0}
.connection .illustration{left:2%;top:10%;width:62%;height:82%;border-radius:48% 48% 2% 2%;clip-path:ellipse(calc(47% + var(--bond)*7%) calc(46% + var(--bond)*8%) at 48% 52%);filter:drop-shadow(14px 23px 20px #30231c22) saturate(calc(.82 + var(--connect)*.18))}
.connection-glow{position:absolute;left:30%;top:21%;width:29%;height:62%;border-radius:48%;background:radial-gradient(ellipse,#f5b65080 0,#efae3f30 46%,transparent 72%);opacity:calc(.18 + var(--connect)*.45 + var(--bond)*.37);transform:scale(calc(.75 + var(--connect)*.18 + var(--bond)*.18));filter:blur(calc(20px - var(--bond)*8px));mix-blend-mode:screen;z-index:2}
.connection .copy{left:59%;top:50%;width:35%;max-width:510px;transform:translate3d(0,calc(-50% + var(--story-y,0px)),0) scale(var(--story-scale,1));transform-origin:left center;will-change:transform,opacity}
.connection .copy h2{font-size:clamp(42px,4.7vw,71px)}
.connection .copy p:not(.scene-kicker){font-size:clamp(15px,1.18vw,18px);line-height:1.65;margin-top:22px}
.connection-beat:not([data-connection-beat="0"]){opacity:0}.connection-beat[inert]{pointer-events:none}
.connection .text-link,.connection .context-trigger{margin-top:22px}
.connection .slip-human{opacity:calc(1 - var(--bond)*.72);transform:translate3d(calc(var(--connect)*-18px),calc(var(--connect)*-24px),0) rotate(-6deg) scale(calc(1 - var(--connect)*.04))}
.connection .slip-ai{opacity:calc(.18 + var(--connect)*.82);transform:translate3d(calc((1 - var(--connect))*42px),calc((1 - var(--connect))*26px),0) rotate(5deg) scale(calc(.94 + var(--connect)*.06))}
.connection .typing{display:flex;opacity:calc(1 - var(--connect));position:absolute;inset:0;align-items:center;padding:20px 27px}
.connection .reply{display:block;opacity:var(--connect);clip-path:inset(0 calc((1 - var(--connect))*100%) 0 0);white-space:nowrap}
.connection .thread{clip-path:inset(0 calc((1 - var(--connect))*100%) 0 0);transform:rotate(calc(-28deg + var(--bond)*8deg)) scale(calc(.8 + var(--bond)*.25));opacity:calc(.25 + var(--connect)*.75)}
.connection-ring{position:absolute;border:1px solid #e1a26170;border-radius:50%;z-index:1;opacity:calc(var(--bond)*.7);transform:scale(calc(.55 + var(--bond)*.55)) rotate(calc(var(--bond)*18deg));transform-origin:center}
.connection .ring-a{left:20%;top:16%;width:43%;height:72%}.connection .ring-b{left:25%;top:22%;width:34%;height:60%;transform:scale(calc(.45 + var(--bond)*.62)) rotate(calc(var(--bond)*-16deg))}
.connection .front-paper{transform:translate3d(0,calc(var(--bond)*28px),0)}
.connection .scene-footer{color:#655a4f}

/* Platform loss: the whole room, not a card, powers down. */
.chapter.absence{height:350svh;--disconnect:0;--silence:0}
.absence .stage{background:rgb(calc(32 - var(--silence)*14) calc(43 - var(--silence)*19) calc(50 - var(--silence)*21));transition:none}
.absence-art{left:39%;right:0;overflow:hidden}
.absence .copy{left:7.5%;top:50%;width:38%;max-width:540px;transform:translate3d(0,calc(-50% + var(--story-y,0px)),0) scale(var(--story-scale,1));transform-origin:left center;will-change:transform,opacity}
.absence .copy h2{font-size:clamp(43px,4.9vw,74px)}
.absence .copy p:not(.scene-kicker){font-size:clamp(15px,1.18vw,18px);line-height:1.65;margin-top:23px}
.absence .scene-kicker{color:#e6ab89!important}.absence .text-link,.absence .context-trigger{color:#e6ab89;border-color:#778487;margin-top:22px}
.absence-beat:not([data-absence-beat="0"]){opacity:0}.absence-beat[inert]{pointer-events:none}
.absence-quote-beat h2{font-size:clamp(45px,5.25vw,80px)!important}
.room-glow{position:absolute;inset:8% -10% 0 0;background:radial-gradient(circle at 31% 53%,#6fb2b44d 0,transparent 30%),radial-gradient(circle at 69% 32%,#dec09524 0,transparent 24%);opacity:calc(1 - var(--silence)*.9);filter:blur(8px)}
.absence .back-wall:after{content:"";position:absolute;inset:0;background:#071217;opacity:calc(var(--silence)*.72)}
.absence .portrait{opacity:calc(1 - var(--silence)*.78);filter:grayscale(calc(var(--silence)*1)) brightness(calc(1 - var(--silence)*.38))}
.absence .phone{box-shadow:18px 28px 30px #08141955,0 0 calc(45px - var(--silence)*30px) #78c7c861;filter:brightness(calc(1 - var(--silence)*.35))}
.absence .phone-message{opacity:calc(1 - var(--disconnect));transform:translateY(calc(var(--disconnect)*-22px))}
.phone-warning{position:absolute;inset:37% 9% auto;padding:16px 10px;border-block:1px solid #76908e;color:#cbdad6;opacity:calc(var(--disconnect)*(1 - var(--silence)));transform:translateY(calc((1 - var(--disconnect))*24px));text-align:center}
.phone-warning span{display:block;color:#8fb6b4;font-size:10px;text-transform:uppercase;letter-spacing:.15em}.phone-warning b{display:block;margin-top:9px;font:400 16px/1.3 var(--serif)}
.absence .phone-silence{display:block;opacity:var(--silence);transform:translateY(calc((1 - var(--silence))*20px));font-size:clamp(17px,1.35vw,20px);font-weight:500;line-height:1.3;letter-spacing:.01em}
.shutdown-line{position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,transparent,#b4d0cb,#e6ab89,transparent);z-index:7;transform:scaleX(var(--silence));opacity:calc(var(--silence)*(1 - var(--silence)));box-shadow:0 0 18px #d4f0e8}
.absence .vase{filter:brightness(calc(1 - var(--silence)*.48))}.absence .scene-footer{color:#bec5c2}

/* About and closing remain editorial interludes, but belong to the same paper world. */
.about{--view:0;min-height:100svh;position:relative;overflow:hidden;isolation:isolate;grid-template-columns:1.12fr .88fr;padding:10svh 7%;gap:3vw;background:#fbf7f1}
.about:before{content:"";position:absolute;inset:7% 41% 5% -8%;background:#e9ded0;border-radius:0 50% 47% 0;transform:translateX(calc((1 - var(--view))*-10%)) rotate(-2deg);z-index:-1}
.about-art{position:relative;transform:translate3d(calc((1 - var(--view))*-70px),calc((1 - var(--view))*45px),0) rotate(calc((1 - var(--view))*-3deg));opacity:calc(.25 + var(--view)*.75)}
.about-aperture{overflow:hidden;clip-path:ellipse(calc(25% + var(--view)*38%) calc(28% + var(--view)*34%) at 52% 52%);filter:drop-shadow(12px 20px 28px #614c3220)}
.about-art img{box-shadow:none;border-radius:0}.about-art>span{margin-left:4%}
.about-copy{position:relative;z-index:2;margin-left:-5vw;transform:translate3d(calc((1 - var(--view))*70px),0,0);opacity:var(--view)}
.about-copy .scene-kicker{margin-bottom:22px!important}.about-copy p{max-width:46ch}
.closing{--view:0;min-height:100svh;padding:100px 7%;background:#f2e7d9;isolation:isolate}
.closing:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f2e7d9 0 31%,#f2e7d9dd 46%,transparent 72%);z-index:0;pointer-events:none}
.closing-copy{width:58%;transform:translate3d(calc((1 - var(--view))*-70px),0,0);opacity:calc(.15 + var(--view)*.85);z-index:3}
.closing-art{right:-3%;width:66%;top:7%;bottom:5%;transform:translate3d(calc((1 - var(--view))*90px),calc((1 - var(--view))*35px),0) rotate(calc(5deg + (1 - var(--view))*5deg));clip-path:ellipse(calc(42% + var(--view)*17%) calc(43% + var(--view)*14%) at 58% 52%)}
.closing-art img{border-radius:0;filter:saturate(calc(.75 + var(--view)*.25)) brightness(calc(.82 + var(--view)*.18))}
.lantern-glow{position:absolute;left:64%;top:56%;width:18%;aspect-ratio:1;border-radius:50%;background:#dff7ff80;filter:blur(22px);mix-blend-mode:screen;opacity:var(--view);transform:scale(calc(.6 + var(--view)*.6))}
.closing .scene-kicker{margin-bottom:22px!important}.closing .actions{position:relative;z-index:4}

@media(max-width:800px){
 .hero-copy{transform:translate3d(calc(var(--hero-exit,0)*-34px),calc(var(--hero-exit,0)*-24px),0)}
 .night-copy{transform:translate3d(calc(var(--why,0)*-36px),calc((1 - var(--night-in,0))*42px - var(--why,0)*24px),0)}
 .why-copy{transform:translate3d(calc((1 - var(--why,0))*44px),0,0)}
 .chapter.connection{height:330svh}.connection-art{inset:0}.connection .oval-back{left:-12%;right:-8%;top:38%;bottom:4%}
 .connection .illustration{left:-6%;top:40%;width:111%;height:55%}.connection-glow{left:39%;top:50%;width:44%;height:38%}
 .connection .copy{left:7%;top:9%;width:86%;max-width:none;transform:translate3d(0,var(--story-y,0px),0) scale(var(--story-scale,1))}
 .connection .copy h2{font-size:clamp(34px,8vw,47px)}.connection .copy p:not(.scene-kicker){font-size:13.5px;line-height:1.5;margin-top:13px}
 .connection .scene-kicker{margin-bottom:10px!important}.connection .text-link,.connection .context-trigger{margin-top:12px;min-height:40px;font-size:12px}
 .connection .chat-slip{font-size:17px;padding:11px 14px}.connection .slip-human{top:38%;left:4%}.connection .slip-ai{bottom:12%;right:3%;min-width:120px}.connection .typing{padding:11px 14px}
 .connection .ring-a{left:17%;top:43%;width:75%;height:47%}.connection .ring-b{left:28%;top:48%;width:58%;height:37%}.connection .scene-footer{bottom:82px}
 .chapter.absence{height:340svh}.absence-art{left:5%;right:0;top:37%;bottom:3%}
 .absence .copy{left:7%;top:9%;width:86%;max-width:none;transform:translate3d(0,var(--story-y,0px),0) scale(var(--story-scale,1))}
 .absence .copy h2,.absence-quote-beat h2{font-size:clamp(34px,8vw,47px)!important}.absence .copy p:not(.scene-kicker){font-size:13px;line-height:1.48;margin-top:13px}
 .absence .scene-kicker{margin-bottom:10px!important}.absence .text-link,.absence .context-trigger{margin-top:12px;min-height:40px;font-size:12px}
 .absence .scene-footer{bottom:82px}.absence .portrait{right:10%;top:8%;width:28%}.absence .phone{left:16%;top:23%;width:39%;height:57%}
 .phone-warning{inset:34% 7% auto;padding:10px 6px}.phone-warning b{font-size:13px}
 .about{min-height:auto;grid-template-columns:1fr;padding:75px 7% 90px;gap:45px}.about:before{inset:4% -10% 48% 0}
 .about-art{max-width:none}.about-copy{margin-left:0;transform:translate3d(0,calc((1 - var(--view))*45px),0)}.about-aperture{clip-path:ellipse(calc(33% + var(--view)*35%) calc(35% + var(--view)*33%) at 52% 52%)}
 .closing{min-height:920px;padding:76px 7%;align-items:flex-start}.closing:after{background:linear-gradient(180deg,#f2e7d9 0 42%,#f2e7d9dd 54%,transparent 78%)}
 .closing-copy{width:100%;transform:translate3d(0,calc((1 - var(--view))*45px),0)}.closing-art{width:112%;height:54%;left:-5%;right:auto;top:auto;bottom:-2%;clip-path:ellipse(calc(43% + var(--view)*17%) calc(44% + var(--view)*15%) at 54% 54%)}
 .lantern-glow{left:63%;top:55%}
}
@media(max-width:800px) and (max-height:700px){
 .connection .copy,.absence .copy{top:6%}.connection .copy h2,.absence .copy h2,.absence-quote-beat h2{font-size:31px!important}.connection .copy p:not(.scene-kicker),.absence .copy p:not(.scene-kicker){font-size:12.5px;margin-top:9px}.connection .text-link,.connection .context-trigger,.absence .text-link,.absence .context-trigger{margin-top:7px;min-height:37px}
 .connection .illustration{top:43%;height:50%}.connection .oval-back{top:41%}.absence-art{top:39%;bottom:5%}
}
body.reduced .connection .stage,body.reduced .absence .stage{height:auto;min-height:0;padding:65px 7% 55px;overflow:visible}
body.reduced .connection-art,body.reduced .absence-art{position:relative;inset:auto;height:clamp(300px,48vw,540px);margin-bottom:45px}
body.reduced .connection .copy,body.reduced .absence .copy{position:relative;left:auto;top:auto;transform:none;width:100%;max-width:650px;margin:0 auto 60px;opacity:1!important}
body.reduced .connection .copy br,body.reduced .absence .copy br{display:none}body.reduced .connection .copy h2,body.reduced .absence .copy h2{max-width:16ch}
body.reduced .connection .scene-footer,body.reduced .absence .scene-footer{position:relative;left:auto;right:auto;bottom:auto}
body.reduced .connection .chat-slip,body.reduced .connection-ring,body.reduced .connection .thread,body.reduced .connection-glow,body.reduced .absence .shutdown-line,body.reduced .absence .phone-warning{display:none}
body.reduced .connection .illustration{inset:0;max-width:800px;margin:auto;width:auto;height:auto;position:absolute;clip-path:none;transform:none!important}
body.reduced .connection .illustration img{object-fit:contain}body.reduced .absence .phone-message{opacity:1!important;transform:none}body.reduced .about-copy,body.reduced .closing-copy{opacity:1;transform:none}
.mind .thought-sheet,.absence .phone-message{transition:none}

/* v10 — calmer type scale for short and mid-sized screens. */
.connection .copy h2{font-size:clamp(38px,min(4.25vw,7.4svh),61px)}
.connection .copy p:not(.scene-kicker){font-size:clamp(15px,1.08vw,17px)}
.about h2{font-size:clamp(40px,min(4.65vw,7.2svh),66px)}
.about p{font-size:clamp(15px,1.2vw,17px);line-height:1.62}
@media(min-width:801px) and (max-width:1300px){
 .connection .copy{left:58%;width:37%}.connection .copy h2{font-size:clamp(38px,4.15vw,52px)}
 .connection .copy p:not(.scene-kicker){font-size:15px;line-height:1.58;margin-top:18px}
 .connection .scene-kicker{margin-bottom:15px!important}
 .about{grid-template-columns:1.05fr .95fr;gap:2vw}.about-copy{margin-left:-3vw}.about h2{font-size:clamp(43px,4.35vw,56px)}.about p{font-size:15.5px}
}
@media(max-width:800px){
 .connection .copy h2{font-size:clamp(29px,6.4vw,36px)}
 .connection .copy p:not(.scene-kicker){font-size:14px;line-height:1.5}
 .about h2{font-size:clamp(36px,9vw,42px);line-height:1.04}.about p{font-size:15px;line-height:1.58}
}
@media(max-width:800px) and (max-height:700px){
 .connection .copy{top:4%;left:7%;right:7%;width:auto;padding:5px 0 12px;background:linear-gradient(90deg,rgba(238,228,216,.98) 0 86%,rgba(238,228,216,0) 100%)}
 .connection .copy h2{font-size:27px!important;line-height:.95}
 .connection .copy p:not(.scene-kicker){font-size:13.5px;line-height:1.42;margin-top:12px;max-width:40em}
 .connection .copy .scene-kicker{margin-bottom:8px!important}
 .connection .copy .text-link{font-size:12.5px;margin-top:14px}
}
