:root{color-scheme:dark;--bg:#000000;--ink:#eeede9;--muted:#9e9fa9;--line:#ffffff18;--cyan:#a7dce0;--pink:#e5b4cc;--mono:ui-monospace,SFMono-Regular,Consolas,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#000000;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--cyan);outline-offset:8px}::selection{background:var(--pink);color:#111}.skip{position:fixed;top:-60px;left:20px;z-index:10;background:var(--ink);color:var(--bg);padding:12px}.skip:focus{top:20px}.scroll-study{height:510svh}.stage{height:100svh;min-height:650px;position:sticky;top:0;isolation:isolate;overflow:hidden;background:var(--bg)}canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}.vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#000000 0%,#000000ef 22%,#00000035 48%,transparent 65%),linear-gradient(0deg,#000000,transparent 20%,transparent 85%,#00000088)}.frame{position:relative;z-index:2;display:flex;flex-direction:column;height:100%;padding:0 clamp(24px,5vw,88px);pointer-events:none}.frame a,.frame button{pointer-events:auto}header{height:104px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line)}.brand{font-size:27px;letter-spacing:-1.5px;font-weight:650}.brand span{font-weight:400;color:#8e9099}nav{display:flex;gap:29px;align-items:center;font-size:12px;color:#9598a2}nav a:hover,nav .selected{color:var(--ink)}nav a span{margin-left:7px;color:#747b87}.independence{font:10px var(--mono);color:var(--cyan);display:flex;align-items:center;gap:9px}.independence span{color:#a4a7af}.content{flex:1;min-height:0;display:grid;grid-template-columns:39% 1fr;align-items:center;gap:25px}.story{display:grid;padding:20px 0 45px}.chapter{grid-area:1/1;visibility:hidden;opacity:0;transform:translateY(16px);transition:opacity .35s,transform .5s,visibility .35s;pointer-events:none}.chapter.active{visibility:visible;opacity:1;transform:none}.chapter:not(.active) a{pointer-events:none}.overline{font:9px/1.8 var(--mono);letter-spacing:1.4px;text-transform:uppercase;color:#aaaeb7;display:flex;align-items:center;gap:11px;margin:0 0 28px}.overline i{width:5px;height:5px;background:var(--cyan);border-radius:50%;box-shadow:0 0 9px #a7dce02a}h1,h2{font-weight:450;letter-spacing:-.065em;line-height:1.03;margin:0 0 29px}h1{font-size:clamp(65px,7.6vw,118px);position:relative}h1 span{color:#a5a6b0}h2{font-size:clamp(43px,4.3vw,66px);letter-spacing:-.055em}h2 span{color:#a5a6b0}.title-star{position:absolute;top:2px;left:310px;width:28px;height:28px;fill:none;stroke:var(--pink);stroke-width:1.1;transform:rotate(9deg)}.body-copy{font-size:15px;line-height:1.9;color:#a3a7b0;margin:0;max-width:310px}.body-copy.secondary{margin-top:14px;font-size:13px}.inline-link{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid #ffffff38;padding:10px 0;font-size:12px;margin-top:24px}.inline-link span{color:var(--cyan)}.inline-link:hover{color:var(--cyan)}.annotation{color:#757b87;font:9px/1.9 var(--mono);margin-top:21px;max-width:290px}.links{display:flex;align-items:baseline;gap:25px}.data-link{font:10px var(--mono);color:#9ca5b2}.data-link:hover{color:var(--cyan)}.figure-area{height:72%;max-height:620px;min-height:300px;position:relative}.figure-top{display:flex;justify-content:space-between;font:8px var(--mono);letter-spacing:1px;color:#737c88;padding:0 8px}.figure-cross{position:absolute;width:9px;height:9px;opacity:.6}.figure-cross:before,.figure-cross:after{content:'';position:absolute;background:#68717c}.figure-cross:before{width:9px;height:1px;top:4px}.figure-cross:after{width:1px;height:9px;left:4px}.cross-one{top:50%;left:0}.cross-two{top:50%;right:0}.foot{padding:0 0 29px;flex-shrink:0}.caption{display:flex;justify-content:space-between;padding:0 0 24px;font:9px var(--mono);color:#89909b;letter-spacing:.3px}.playful{color:#a6a6b2}.bottom{border-top:1px solid var(--line);padding-top:23px;display:flex;align-items:center;justify-content:space-between;gap:20px;font:9px var(--mono);color:#747d8c}.scroll-cue{display:flex;gap:13px;align-items:center}.scroll-cue>span{color:var(--cyan);font-size:15px}.coordinate i{font-style:normal;margin:0 14px;color:#515966}.coordinate #progress{color:#a2b6c0}.chapter-nav{display:flex;align-items:center;gap:12px}.chapter-nav button{border:0;background:none;font:8px var(--mono);color:#7a8392;padding:10px 2px;display:flex;align-items:center;gap:9px}.chapter-nav i{width:22px;height:2px;background:#424952;display:block;transition:width .4s,background .4s}.chapter-nav button.active i{width:46px;background:var(--cyan)}.chapter-nav button.active{color:var(--cyan)}.tooltip{position:absolute;z-index:3;pointer-events:none;border:1px solid #a7dce04d;background:#000000;border-radius:5px;padding:10px 12px;color:#d2e4e9;font:10px/1.8 var(--mono);box-shadow:0 10px 30px #0004;white-space:nowrap}.tooltip[hidden]{display:none}.tooltip small{color:#8eabb5;font-size:8px}.blackout{position:absolute;inset:0;background:#000000;opacity:0;pointer-events:none;z-index:5}.reading{padding:110px clamp(24px,5vw,88px) 30px;background:#000000;min-height:100svh}.reading-head{display:grid;grid-template-columns:1fr 1fr;column-gap:10%;align-items:start}.reading-head .overline{grid-column:1/-1}.reading-head h2{font-size:clamp(40px,5vw,66px)}.reading-head>p:last-child{font-size:16px;line-height:1.9;color:#a3a7b0;max-width:460px;margin-top:0}.research-links{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:60px}.research-links a{border-top:1px solid #ffffff26;padding-top:24px}.research-links small{font:9px var(--mono);color:#83b4bb}.research-links strong{display:block;font-size:20px;letter-spacing:-.5px;font-weight:450;margin:22px 0 14px}.research-links span{font-size:13px;color:#929ba8;line-height:1.8;display:block;max-width:300px}.research-links b{font-weight:400;color:var(--cyan);margin-left:8px}.research-links a:hover strong{color:var(--cyan)}.source-note{margin-top:45px;color:#727a86;font:9px/1.9 var(--mono);max-width:750px}.next{display:flex;justify-content:space-between;align-items:center;margin:70px 0 55px;border-top:1px solid #ffffff20;padding-top:35px}.next>span{font-size:36px;letter-spacing:-1.5px}.next small{font:11px var(--mono);color:var(--pink)}footer{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ffffff17;padding-top:25px;font:9px var(--mono);color:#818994}
@media(min-width:1700px){.content{grid-template-columns:40% 1fr}.body-copy{font-size:17px;max-width:350px}.title-star{left:355px}}
@media(max-width:1050px){.independence{display:none}.content{grid-template-columns:43% 1fr}.title-star{left:250px;width:23px}.body-copy{font-size:14px;max-width:285px}.coordinate{font-size:8px}.coordinate i{margin:0 8px}.figure-top{font-size:7px}}
@media(max-width:650px){.stage{min-height:690px}.frame{padding-inline:24px}header{height:82px}.brand{font-size:24px}nav{gap:19px;font-size:10px}nav a:nth-child(2){display:none}.content{display:block;position:relative}.story{position:absolute;top:33px;left:0;right:0;padding:0}.overline{font-size:8px;letter-spacing:1.1px;margin-bottom:18px}h1{font-size:65px;line-height:1.01;margin-bottom:20px}h2{font-size:41px;line-height:1.05;margin-bottom:16px}.title-star{left:228px;top:0;width:21px;height:21px}.body-copy{font-size:13px;line-height:1.8;max-width:250px}.body-copy.secondary{font-size:11px;margin-top:8px}.inline-link{font-size:10px;margin-top:12px;gap:20px;padding:7px 0}.annotation{font-size:8px;margin-top:12px;max-width:260px}.links{gap:20px}.data-link{font-size:9px}.figure-area{position:absolute;left:0;right:0;top:54%;bottom:0;height:auto;min-height:0}.figure-top{font-size:7px;opacity:.65}.figure-cross{display:none}.vignette{background:linear-gradient(180deg,#000000 0%,#000000fa 24%,#000000d9 38%,transparent 62%,#00000022 78%,#000000 96%)}.foot{padding-bottom:21px}.caption{font-size:8px;padding-bottom:17px;gap:20px}.caption .playful{max-width:110px;text-align:right;line-height:1.5}.bottom{padding-top:15px;gap:15px}.coordinate{display:none}.chapter-nav{gap:9px}.chapter-nav i{width:15px}.chapter-nav button.active i{width:25px}.chapter-nav button{gap:6px}.scroll-cue{font-size:8px;gap:8px}.reading{padding-top:80px}.reading-head{display:block}.reading-head h2{font-size:43px}.reading-head>p:last-child{font-size:14px}.research-links{grid-template-columns:1fr;gap:30px;margin-top:40px}.source-note{font-size:8px}.next{flex-direction:column;align-items:start;gap:22px;margin-top:50px}.next>span{font-size:34px}footer{font-size:8px;flex-wrap:wrap}}
@media(max-height:740px) and (min-width:651px){header{height:80px}.story{padding-bottom:10px}h1{font-size:80px}h2{font-size:46px}.overline{margin-bottom:20px}.body-copy{font-size:13px}.annotation{margin-top:13px}.foot{padding-bottom:18px}.caption{padding-bottom:15px}.figure-area{height:80%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.chapter{transition:none;transform:none}.chapter-nav i{transition:none}}

/* Desktop refinement: quieter framing and a single scroll-driven reading rhythm. */
@media(min-width:1051px){
  .vignette{background:linear-gradient(90deg,#000000 0%,#000000ef 22%,#00000035 48%,transparent 65%),linear-gradient(0deg,#000000 0%,transparent 23%,transparent 73%,#000000e8 91%,#000000 100%)}
  header{height:100px}nav{font-size:13px}
  .figure-area{height:76%;max-height:650px}
  .figure-top{font-size:9px;letter-spacing:1.2px}

  .chapter{transition:none;transform:none}
  .story{will-change:opacity,transform}
  .body-copy{font-size:16px;line-height:1.8;max-width:350px}
  .body-copy.secondary{font-size:13px}
  .overline{font-size:10px;letter-spacing:1.3px}
  .annotation{font-size:10px}
  .inline-link{font-size:13px}
  .caption{font-size:10px;padding-bottom:25px}
  .bottom{position:relative}
  .chapter-nav{position:absolute;left:50%;transform:translateX(-50%);gap:23px}
  .chapter-nav button{font-size:9px;gap:8px}
  .chapter-nav i{width:14px;height:1px}
  .chapter-nav button.active i{width:27px}
  .chapter-nav b{font-weight:400;margin-left:6px}
  .coordinate{font-size:9px}.coordinate>i{margin:0 10px}
}
.proof-facts{display:flex;gap:30px;margin:27px 0 22px}
.proof-facts>div{display:flex;flex-direction:column;gap:9px}
.proof-facts strong{font-size:35px;line-height:1;font-weight:400;letter-spacing:-1.5px;color:#e0e5e6;font-variant-numeric:tabular-nums}
.proof-facts>div:last-child strong{color:var(--cyan)}
.proof-facts span{font:8px var(--mono);color:#808c9a;letter-spacing:.2px}
@media(min-width:1051px) and (max-height:800px){.proof-facts{margin:17px 0;gap:26px}.proof-facts strong{font-size:29px}.body-copy{font-size:14px}.chapter h2{margin-bottom:22px}.chapter .inline-link{margin-top:16px}.chapter .annotation{font-size:9px;margin-top:16px}}
@media(max-width:1250px){.chapter-nav b{display:none}}

/* v3: an object with a silhouette, and a research notebook with room to read. */
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#geometry{cursor:grab;outline:none}
#geometry:focus-visible{outline:1px solid #a7dce060;outline-offset:-12px}
@media(min-width:1051px){
 .content{grid-template-columns:40% 1fr}
 .figure-area{height:80%;max-height:none}

 .figure-top{opacity:.75}
 .title-star{top:5px;left:3.05em;width:25px;height:25px}
 .chapter[data-step="0"] .body-copy{color:#b1b3bb;line-height:1.85}
 .bottom:before{content:'';position:absolute;left:0;top:-1px;height:1px;width:100%;background:#a7dce080;transform:scaleX(var(--travel,0));transform-origin:left}
 .reading{padding-top:140px}
 .reading-head{grid-template-columns:1.1fr 1fr;column-gap:12%}
 .reading-head h2{font-size:clamp(54px,5.4vw,86px)}
 .reading-head>p:last-child{margin-top:9px;font-size:17px;color:#979fa8}
 .research-links{display:block;margin-top:74px;border-bottom:1px solid #ffffff22}
 .research-links a{display:grid;grid-template-columns:20% 39% 1fr 30px;align-items:center;gap:24px;padding:32px 0;position:relative;transition:background .25s}
 .research-links a:before{content:'';position:absolute;inset:0 -20px;background:#a7dce005;opacity:0;transition:opacity .25s;pointer-events:none}
 .research-links a:hover:before{opacity:1}
 .research-links small{font-size:9px;letter-spacing:.4px;color:#738894}
 .research-links strong{margin:0;font-size:clamp(21px,1.8vw,30px);letter-spacing:-.7px;transition:color .2s}
 .research-links span{font-size:13px;line-height:1.8;max-width:280px}
 .paper-arrow{font-size:21px;font-weight:300;color:#82949e;transition:transform .25s,color .25s}
 .research-links a:hover .paper-arrow{transform:translate(3px,-3px);color:var(--cyan)}
 .source-note{font-size:10px;margin-top:30px;line-height:1.9}
 .next{padding-top:48px;margin-top:90px;margin-bottom:70px}
 .next>span{font-size:clamp(45px,5vw,75px);letter-spacing:-3px;color:#a5a6b0;transition:color .25s}
 .next:hover>span{color:var(--ink)}
}
@media(min-width:1051px) and (max-height:800px){.reading{padding-top:110px}}
@media(prefers-reduced-motion:reduce){.research-links a,.research-links a:before,.paper-arrow,.next>span{transition:none}}
/* Research index; counts refer to entries, not distinct publications. */
.index-tools{display:flex;align-items:center;justify-content:space-between;margin-top:65px;scroll-margin-top:30px;gap:25px}
.index-filters{display:flex;gap:28px}.index-filters button{background:none;border:0;border-bottom:1px solid transparent;padding:12px 0;font-size:13px;color:#7e8997;transition:color .2s}
.index-filters button span{font:9px var(--mono);margin-left:8px;color:#576470}.index-filters button.active{color:#dce4e5;border-color:#a7dce0}.index-filters button.active span{color:#a7dce0}.index-filters button:hover{color:#dce4e5}
#index-count{font:10px var(--mono);color:#728694}.index-context{font-size:12px;color:#74828d;margin:22px 0 25px;min-height:20px}
.research-links .work-row[hidden]{display:none}.research-links small em{display:block;font:9px var(--mono);font-style:normal;text-transform:none;letter-spacing:0;color:#949da6;margin-top:10px}
@media(min-width:1051px){.research-links{margin-top:0}.research-links a{grid-template-columns:19% 36% 1fr 24px}.research-links strong{font-size:clamp(20px,1.65vw,28px)}}
@media(min-width:1051px){.figure-area{height:94%}.figure-top{background:linear-gradient(90deg,#00000088,transparent)}}

/* v4: individual scroll studies, with a quiet way to revisit each candidate. */
.frame select{pointer-events:auto}
.chapter-nav{gap:12px}
.chapter-nav select{appearance:none;max-width:290px;width:290px;background:#000000;border:0;border-bottom:1px solid #ffffff20;border-radius:0;padding:10px 22px 10px 9px;color:#b9cbd2;font:10px var(--mono);cursor:pointer;text-overflow:ellipsis;background-image:linear-gradient(45deg,transparent 50%,#7a9ca4 50%),linear-gradient(135deg,#7a9ca4 50%,transparent 50%);background-position:calc(100% - 11px) 17px,calc(100% - 8px) 17px;background-size:3px 3px;background-repeat:no-repeat}
.chapter-nav select:focus-visible{outline:1px solid var(--cyan);outline-offset:4px}
.chapter-nav button{font-size:16px;padding:10px 6px;color:#a7dce0}
.chapter-nav button:disabled{color:#3d454b;cursor:default}




.chapter[data-step]:not([data-step="0"]) .annotation{max-width:330px;line-height:1.85}
@media(min-width:1051px) and (max-width:1400px){.chapter-nav select{width:230px}.coordinate{font-size:8px}.chapter-nav{gap:7px}}




.title-star{filter:drop-shadow(0 0 6px #ff72d3b0);stroke:#ff93db;opacity:var(--anime,.1)}

/* The sculpture owns the centre; the copy reads like a nearby exhibition note. */
@media(min-width:1051px){
 .content{display:block;position:relative}
 .story{height:100%;width:19vw;max-width:290px;align-content:center;padding:24px 0 42px}
 .chapter h1{font-size:clamp(45px,4.25vw,72px);line-height:1.08}
 .chapter h2{font-size:clamp(32px,2.7vw,46px);line-height:1.1;letter-spacing:-.055em}
 .chapter .overline{font-size:8px;letter-spacing:1px;margin-bottom:25px}
 .chapter .body-copy{font-size:13px;line-height:1.85}
 .chapter .body-copy.secondary{font-size:12px}
 .chapter .annotation{font-size:9px;line-height:1.8}
 .chapter .inline-link{font-size:12px;gap:22px}
 .chapter .links{gap:15px;flex-wrap:wrap}
 .chapter .proof-facts{gap:22px}
 .chapter .proof-facts strong{font-size:30px}
 .figure-area{position:absolute;left:calc(50% - 28vw);width:56vw;top:3%;height:94%;min-height:0}
 .figure-top{background:none}
 .vignette{background:linear-gradient(90deg,#000000 0%,#000000e8 15%,#00000030 25%,transparent 33%),linear-gradient(0deg,#000000 0%,transparent 21%,transparent 79%,#000000dd 96%)}
}
@media(min-width:1051px) and (max-height:800px){
 .story{padding-block:15px}
 .chapter h1{font-size:52px}
 .chapter h2{font-size:32px;margin-bottom:20px}
 .chapter .overline{margin-bottom:20px}
 .chapter .body-copy{font-size:12px;line-height:1.75}
 .chapter .annotation{font-size:8px;margin-top:14px}
 .chapter .inline-link{font-size:11px;margin-top:15px}
 .chapter .proof-facts{gap:18px;margin-block:18px}
}
