:root{--night:#070b10;--paper:#eae6dc;--muted:#aaa99f;--faint:#74776f;--olive:#a8ac82;--line:rgba(234,230,220,.16);--serif:"Iowan Old Style","Baskerville","Songti SC","STSong",serif;--sans:-apple-system,BlinkMacSystemFont,"Helvetica Neue","PingFang SC",sans-serif;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;color-scheme:dark}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--night);color:var(--paper)}body{font-family:var(--sans);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}button:disabled{cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:1px solid var(--olive);outline-offset:7px}::selection{color:var(--night);background:var(--olive)}.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;z-index:100;left:20px;top:-70px;padding:12px;background:var(--paper);color:var(--night)}.skip:focus{top:15px}.home{height:100svh;min-height:640px;position:relative;overflow:hidden;isolation:isolate}.masthead{position:absolute;left:5%;right:5%;top:max(35px,env(safe-area-inset-top));display:flex;align-items:center;justify-content:space-between;z-index:10}.signature{display:flex;align-items:center;gap:15px;text-decoration:none}.signature svg{width:28px;height:28px;stroke:var(--paper);stroke-width:.8;fill:none;opacity:.8}.signature>span{font-family:var(--sans);letter-spacing:.23em;font-size:17px;font-weight:400}.signature small{display:block;font:8px/1.5 var(--mono);letter-spacing:.2em;color:var(--faint);margin-top:6px}.index-trigger{display:flex;align-items:center;gap:17px;font-size:12px;letter-spacing:.12em;padding:10px 0 10px 15px}.index-trigger i{width:22px;display:grid;gap:5px}.index-trigger b{height:1px;background:var(--paper);display:block;font-weight:normal}.index-trigger b:last-child{width:13px;justify-self:end;transition:width .3s}.index-trigger:hover b:last-child{width:22px}
.sculpture{position:absolute;inset:0;z-index:-2;transition:filter .6s,transform .8s cubic-bezier(.2,.7,.2,1)}.sculpture img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;animation:materialize 1.8s .1s forwards}.sculpture-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,11,16,.25),transparent 35%,transparent 70%,rgba(7,11,16,.2)),linear-gradient(var(--night),transparent 14%,transparent 86%,var(--night));pointer-events:none}.home:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 42%,transparent 34%,rgba(7,11,16,.5) 100%)}
.connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;opacity:0;animation:materialize 1.8s .4s forwards}.connection{fill:none;stroke:rgba(234,230,220,.19);stroke-width:.75;transition:stroke .5s}.connection.active{stroke:rgba(236,233,216,.75)}.connection-glow{fill:none;stroke:#fbebc7;stroke-width:1.2;opacity:0;filter:drop-shadow(0 0 4px #ffeecc);stroke-dasharray:18 400;pointer-events:none}.connection-glow.active{opacity:.8;animation:signal 2.8s linear infinite}.anchor{fill:var(--olive);opacity:.6;transition:opacity .4s,r .4s}.anchor.active{opacity:1;r:3}.entrances{position:absolute;inset:0}.entrance{position:absolute;display:flex;align-items:center;gap:16px;text-decoration:none;min-height:52px;color:var(--muted);padding:8px 0;opacity:0;animation:arrive .9s forwards;transition:color .3s;touch-action:manipulation}.entrance.left{left:22%;transform:translate(-100%,-50%)}.entrance.right{right:17%;transform:translate(100%,-50%);text-align:right}.e1{top:29%;animation-delay:.5s}.e2{top:49%;left:18%!important;animation-delay:.65s}.e3{top:68%;animation-delay:.8s}.e4{top:28%;animation-delay:.55s}.e5{top:48%;right:14%!important;animation-delay:.7s}.e6{top:67%;animation-delay:.85s}.entry-no{font:9px/1 var(--mono);letter-spacing:.04em;color:var(--faint);align-self:center;transition:color .3s}.entry-name{font-family:var(--serif);font-size:23px;letter-spacing:.16em;position:relative;white-space:nowrap}.entry-name small{display:block;position:absolute;top:calc(100% + 8px);left:0;font:8px/1.4 var(--mono);letter-spacing:.13em;color:var(--olive);white-space:nowrap;opacity:0;transform:translateY(3px);transition:opacity .3s,transform .3s}.right .entry-name small{right:0;left:auto}.entry-dot{height:5px;width:5px;flex:0 0 5px;background:var(--olive);border-radius:50%;box-shadow:0 0 0 4px rgba(168,172,130,.035);transition:box-shadow .3s,background .3s}.entrance:hover,.entrance:focus-visible{color:var(--paper)}.entrance:hover .entry-no,.entrance:focus-visible .entry-no{color:var(--olive)}.entrance:hover small,.entrance:focus-visible small{opacity:1;transform:none}.entrance:hover .entry-dot,.entrance:focus-visible .entry-dot{background:#eae6cd;box-shadow:0 0 15px rgba(255,235,195,.4),0 0 0 5px rgba(168,172,130,.08)}
.whisper{position:absolute;bottom:15.5%;left:7.2%;display:flex;gap:15px;align-items:flex-start;pointer-events:none;opacity:0;animation:materialize 1.8s 1s forwards}.whisper-rule{width:25px;height:1px;background:var(--olive);margin-top:13px}.whisper p{font:20px/1.5 var(--serif);letter-spacing:.14em;margin:0}.whisper p span{display:block;color:var(--faint);font:8px/1.8 var(--mono);letter-spacing:.14em;margin-top:7px}.home-footer{position:absolute;bottom:max(30px,env(safe-area-inset-bottom));left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.12em;color:var(--muted)}.sep{padding:0 12px;color:var(--faint)}.invitation{font:10px var(--serif);color:var(--faint);transition:opacity .2s}.edition{font:8px var(--mono);letter-spacing:.12em;color:var(--faint);display:flex;align-items:center;gap:12px}.edition-dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--olive)}body.reading .sculpture{transform:translateX(-26%) scale(.92);filter:brightness(.5)}
.reader{position:fixed;inset:0 0 0 auto;width:min(950px,78vw);height:100dvh;max-width:none;max-height:none;margin:0;padding:0;background:#0b1015;border:0;border-left:1px solid var(--line);color:var(--paper);overflow:hidden;box-shadow:-40px 0 120px #0005}.reader::backdrop{background:rgba(2,5,8,.32);backdrop-filter:blur(3px)}.reader[open]{animation:open-reader .55s cubic-bezier(.2,.7,.2,1)}.reader-scroll{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#454b45 transparent}.reader-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:25px clamp(25px,4vw,66px);position:sticky;top:0;background:rgba(11,16,21,.96);border-bottom:1px solid var(--line);z-index:4;backdrop-filter:blur(10px)}.back,.reader-index{font-size:11px;letter-spacing:.08em;padding:8px 0;white-space:nowrap;color:var(--muted)}.back span{font-size:18px;margin-right:10px;color:var(--olive)}.back:hover,.reader-index:hover{color:var(--paper)}.sample-label{font:10px var(--sans);color:var(--olive);letter-spacing:.08em}.reader-body{padding:55px clamp(25px,5vw,80px) 28px}.chapter-kicker{font:10px var(--mono);color:var(--olive);letter-spacing:.16em;margin:0 0 17px}.chapter-heading h2{font:400 clamp(38px,4.3vw,60px)/1.3 var(--serif);letter-spacing:.08em;margin:0;outline:none}.chapter-deck{font:14px/1.9 var(--serif);letter-spacing:.03em;color:var(--muted);margin:22px 0 40px;max-width:33em}.filter-row{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 24px}.filter{padding:8px 12px;border:1px solid transparent;border-radius:2px;font-size:11px;color:var(--muted);transition:color .2s,border-color .2s}.filter:hover{color:var(--paper)}.filter[aria-pressed=true]{color:var(--paper);border-color:rgba(168,172,130,.4);background:rgba(168,172,130,.05)}.entry-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.archive-entry{border-bottom:1px solid var(--line)}.archive-entry[hidden]{display:none}.archive-entry summary{position:relative;display:grid;grid-template-columns:63px 1fr 18px;align-items:start;gap:18px;list-style:none;cursor:pointer;padding:25px 0;transition:padding .3s}.archive-entry summary::-webkit-details-marker{display:none}.archive-entry summary:hover{padding-left:7px}.entry-date{font:10px/1.8 var(--mono);color:var(--faint);padding-top:4px;white-space:nowrap}.list-title{font:400 23px/1.5 var(--serif);letter-spacing:.025em;margin:0;display:block}.list-meta{display:block;margin-top:9px;font:10px/1.6 var(--sans);color:var(--muted);letter-spacing:.03em}.entry-plus{font:300 20px/1.8 var(--sans);color:var(--olive);transition:transform .3s}.archive-entry details[open] .entry-plus{transform:rotate(45deg)}.entry-body{margin-left:81px;padding:0 0 30px;max-width:37em}.entry-body p{font:16px/2 var(--serif);color:#c7c8be;margin:0 0 14px}.entry-body .content-note{font:11px/1.8 var(--sans);color:var(--faint);margin-top:20px}.entry-body .tag{font:10px var(--mono);color:var(--olive);letter-spacing:.06em}.project-entry summary{grid-template-columns:63px 1fr 18px}.project-entry .list-title{font-family:var(--sans);letter-spacing:.08em;font-size:25px}.project-figure{height:150px;display:flex;align-items:center;justify-content:center;margin:0 0 20px;background:radial-gradient(ellipse at 50% 50%,#18211f6b,transparent 70%);border-bottom:1px solid var(--line)}.project-figure svg{width:85%;height:130px;stroke:#b8bba4;stroke-width:.7;fill:none}.project-figure circle{fill:var(--olive);stroke:var(--paper)}.project-spec{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:24px 0 0;font-size:11px}.project-spec dt{color:var(--faint);margin-bottom:5px}.project-spec dd{margin:0;color:var(--muted);line-height:1.6}.thesis-details{margin:10px 0 0}.thesis-details>div{padding:13px 0;border-top:1px solid var(--line)}.thesis-details dt{font-size:11px;color:var(--olive);margin-bottom:10px}.thesis-details dd{margin:0;font:15px/1.95 var(--serif);color:#c7c8be}.thesis-details .falsifier{border-left:1px solid var(--olive);padding-left:17px;margin-top:12px;border-top:0}.year-title{font:13px var(--mono);font-weight:400;color:var(--olive);letter-spacing:.12em;margin:32px 0 16px}.year-title span{font-size:9px;color:var(--faint);margin-left:15px}.book-entry summary{grid-template-columns:1fr 18px;padding:21px 0}.book-entry .entry-body{margin-left:0}.book-entry .list-title{font-size:22px}.book-original{font:12px/1.8 var(--sans);color:var(--faint);margin-bottom:13px}.quote-mark{color:var(--olive);font:40px var(--serif);line-height:.8;margin-right:4px}.year-group[hidden]{display:none}.empty-result{font:14px/1.9 var(--serif);color:var(--muted);padding:30px 0}.travel-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.globe-wrap{position:sticky;top:105px;min-width:0}.globe-wrap canvas{display:block;max-width:100%;width:100%;aspect-ratio:1;cursor:grab;touch-action:pan-y;border-radius:50%}.globe-wrap canvas:active{cursor:grabbing}.globe-caption{font:10px/1.9 var(--sans);color:var(--muted);text-align:center;margin-top:8px;min-height:3.8em}.globe-caption span{font:9px/1.8 var(--mono);color:var(--faint)}.travel-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.country{width:100%;display:grid;grid-template-columns:40px 1fr 15px;text-align:left;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:18px 0;color:var(--muted);transition:color .3s}.country:hover,.country[aria-pressed=true]{color:var(--paper)}.country-year{font:9px var(--mono);color:var(--faint)}.country-name{font:20px/1.5 var(--serif)}.country-name small{display:block;font:9px/1.8 var(--sans);color:var(--faint);margin-top:3px}.country-mark{font:12px var(--serif);color:var(--olive)}.country-note{margin:20px 0 0;padding-top:18px;border-top:1px solid var(--line);font:13px/1.9 var(--serif);color:var(--muted)}.contact-empty{padding:35px 0 50px;border-top:1px solid var(--line)}.contact-symbol{display:block;font:52px var(--serif);color:var(--olive);margin-bottom:24px}.contact-empty h3{font:24px var(--serif);font-weight:400;margin:0 0 17px}.contact-empty p{font:14px/2 var(--serif);color:var(--muted);max-width:28em}.contact-link{display:block;font:clamp(20px,3vw,34px)/1.6 var(--serif);margin-bottom:20px;text-decoration-thickness:1px;text-underline-offset:8px;overflow-wrap:anywhere}.contact-links{display:flex;gap:24px;flex-wrap:wrap}.contact-links a{font:12px var(--mono);text-underline-offset:6px}.copy-email{font:12px var(--sans);border:1px solid var(--line);padding:10px 15px}.copy-status{font:11px var(--sans);color:var(--olive);margin-left:15px}.index-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.index-list a{display:flex;align-items:baseline;gap:26px;padding:22px 0;border-bottom:1px solid var(--line);text-decoration:none}.index-list .index-number{font:11px var(--mono);color:var(--olive)}.index-list strong{font:28px var(--serif);font-weight:400;flex:1}.index-list small{font:9px var(--mono);color:var(--faint);letter-spacing:.06em}.index-list .index-arrow{color:var(--muted)}.reader-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);margin-top:65px;padding-top:25px}.reader-footer a{text-decoration:none;display:flex;gap:12px;align-items:center;font-size:12px;color:var(--muted)}.reader-footer a:hover{color:var(--paper)}.reader-footer span{font:8px var(--mono);color:var(--faint);letter-spacing:.1em}.no-js{position:fixed;bottom:60px;left:5%;max-width:90%;padding:15px;background:#0b1015;font-size:13px}
@keyframes materialize{to{opacity:1}}@keyframes arrive{from{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur(0)}}@keyframes signal{to{stroke-dashoffset:-418}}@keyframes open-reader{from{transform:translateX(6%);opacity:0}to{transform:none;opacity:1}}
@media(min-aspect-ratio:19/10){.sculpture img{width:90%;left:5%}.whisper{bottom:20%}.entrance.left{left:25%}.e2{left:21%!important}.entrance.right{right:22%}.e5{right:19%!important}}
@media(max-width:900px){.reader{width:90vw}.entrance.left{left:20%}.e2{left:16%!important}.entrance.right{right:17%}.e5{right:13%!important}.entry-name{font-size:21px}.entry-no{font-size:8px}.whisper{bottom:17%;left:6%}.whisper p{font-size:17px}.whisper p span{font-size:7px}.reader-body{padding-top:40px}.reader-bar{padding-block:20px}}
@media(max-width:600px){.home{min-height:650px}.masthead{left:7%;right:7%;top:max(30px,env(safe-area-inset-top))}.signature{gap:12px}.signature svg{width:24px;height:24px}.signature>span{font-size:15px}.signature small{font-size:6px;letter-spacing:.13em}.index-trigger{font-size:11px;gap:12px}.sculpture img{width:210%;left:-55%;object-fit:contain}.sculpture-shade{background:linear-gradient(var(--night),transparent 18%,transparent 76%,var(--night)),linear-gradient(90deg,#070b1022,transparent 30%,transparent 70%,#070b1022)}.entrance{gap:9px;min-height:56px}.entry-name{font-size:19px;letter-spacing:.12em;text-shadow:0 1px 10px #000,0 0 20px #070b10}.entry-no{font-size:8px}.entry-dot{width:4px;height:4px;flex-basis:4px}.entry-name small{font-size:6px;letter-spacing:.07em;top:calc(100% + 6px)}.entrance.left{left:23%}.entrance.right{right:23%}.e1,.e4{top:32%}.e2,.e5{top:49%}.e3,.e6{top:66%}.e2{left:21%!important}.e5{right:21%!important}.e3{left:24%!important}.e6{right:24%!important}.whisper{left:7%;bottom:14.5%;gap:10px}.whisper-rule{width:18px;margin-top:11px}.whisper p{font-size:17px;letter-spacing:.1em}.whisper p span{font-size:6px;letter-spacing:.1em;margin-top:5px}.home-footer{left:7%;right:7%;bottom:max(25px,env(safe-area-inset-bottom));font-size:9px}.sep{padding:0 7px}.invitation{position:absolute;left:0;bottom:43px;font-size:10px}.edition{font-size:6px;gap:7px}.reader{width:100%;border-left:0}.reader-bar{padding:17px 23px;gap:10px}.back,.reader-index{font-size:10px}.sample-label{font-size:9px}.back span{margin-right:6px}.reader-body{padding:35px 25px 25px}.chapter-heading h2{font-size:42px}.chapter-kicker{font-size:9px}.chapter-deck{font-size:14px;margin-bottom:30px}.list-title{font-size:21px}.archive-entry summary{grid-template-columns:51px 1fr 14px;gap:12px;padding-block:22px}.entry-date{font-size:8px;padding-top:7px}.entry-body{margin-left:0;padding-top:0}.entry-body p{font-size:15px}.entry-plus{font-size:18px}.project-entry summary{grid-template-columns:43px 1fr 14px}.book-entry summary{grid-template-columns:1fr 14px}.travel-layout{grid-template-columns:1fr;gap:25px}.globe-wrap{position:relative;top:auto;order:-1;display:flex;flex-direction:column;align-items:center}.globe-wrap canvas{width:min(270px,75vw);touch-action:pan-y}.globe-caption{margin:0}.country{grid-template-columns:50px 1fr 20px}.country-name small{display:inline;margin-left:10px}.country-note{display:none}.index-list a{gap:18px}.index-list strong{font-size:25px}.index-list small{font-size:7px}.reader-footer{margin-top:45px}.reader-footer span{font-size:7px}body.reading .sculpture{transform:scale(.95);filter:brightness(.4)}}
.stone-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}.fracture-ready #monolith{opacity:0!important;animation:none}.fracture-ready .stone-canvas{opacity:1}.entrances{pointer-events:none}.entrance{pointer-events:auto}.anchor-hit{fill:transparent;stroke:none;pointer-events:all;cursor:pointer}
.entry-name{transition:transform .32s cubic-bezier(.2,.8,.2,1),color .25s,text-shadow .25s;transform-origin:left center}.right .entry-name{transform-origin:right center}.entrance.is-active .entry-name{color:#fff4d9;transform:translate(var(--magnet-x,0px),var(--magnet-y,0px)) scale(1.09);text-shadow:0 0 18px rgba(255,227,160,.33)}.entrance.is-active .entry-name small{opacity:1;transform:none}.entrance.is-active .entry-no{color:var(--olive)}.entrance.is-active .entry-dot{background:#fff0ce;box-shadow:0 0 16px rgba(255,227,160,.5),0 0 0 5px rgba(168,172,130,.07)}
@media(max-width:600px){.sculpture img{width:180%;left:-40%}.entrance.left{left:7%!important;transform:translateY(-50%)}.entrance.right{right:7%!important;transform:translateY(-50%)}.e1,.e4{top:30%}.entry-name{color:var(--paper);text-shadow:0 0 4px #070b10,0 0 10px #070b10,0 0 20px #070b10}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.sculpture img,.connections,.entrance,.whisper{opacity:1}.connection-glow.active{opacity:.6}}

/* Navigation follows measured material seams; the prepared cutout leaves room for the footer. */
.sculpture img{height:90%;top:2%}.connection-glow.active{animation:none;stroke-dasharray:none;opacity:.16}
@media(max-width:600px){.entrance .entry-no{display:none}}
