:root{font-family:Arial,Helvetica,"PingFang TC","Noto Sans TC",sans-serif;color:#181818;background:#fff;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-decoration:none}.shell{max-width:1680px;margin:auto;padding:0 5vw}header{min-height:170px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d9d9d9;gap:30px}.identity{width:min(430px,65vw);display:block}.identity img{width:100%;height:auto;display:block}.edition{font-size:10px;line-height:1.7;letter-spacing:.14em;text-align:right;color:#666}.hero{padding:65px 0 58px}.status{display:flex;align-items:center;gap:12px;font-size:10px;font-weight:700;letter-spacing:.16em}.light{width:7px;height:7px;border-radius:50%;background:#db7a3e;box-shadow:0 0 0 5px #db7a3e12}.status-zh{margin-left:auto;letter-spacing:.08em;color:#777}h1{font-size:clamp(100px,15vw,224px);line-height:.85;letter-spacing:-.075em;margin:48px 0 58px;font-weight:600;position:relative}h1 span{color:#b5b5b5}h1 sup{font-size:.4em;vertical-align:top;font-weight:300;margin-left:5vw;letter-spacing:0}.hero-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.hero-foot p{font-size:clamp(18px,1.7vw,25px);line-height:1.5;margin:0;letter-spacing:-.025em}.index,.section-label{font-size:10px;letter-spacing:.13em;color:#777}.manifesto{border-top:1px solid #d9d9d9;padding:55px 0 70px;display:grid;grid-template-columns:1fr 2fr;gap:30px}h2{font-size:clamp(30px,4vw,62px);font-weight:500;letter-spacing:-.045em;line-height:1.1;margin:0 0 28px}.dash{color:#b5b5b5}.definition{display:flex;align-items:center;gap:24px;font-size:14px;color:#555}.definition strong{font-size:12px;color:#181818;border:1px solid #ddd;border-radius:30px;padding:9px 15px;letter-spacing:.12em}.brand-link{display:inline-flex;gap:40px;border-bottom:1px solid #777;padding:10px 0;margin-top:20px;font-size:12px}footer{border-top:1px solid #d9d9d9;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 0 35px;font-size:11px}footer p{margin:0}.footer-note{color:#777}footer a{font-size:20px}.identity:focus-visible,.brand-link:focus-visible,footer a:focus-visible{outline:2px solid #d5783e;outline-offset:8px}@media(max-width:600px){.shell{padding:0 7vw}header{min-height:124px}.edition{font-size:8px}.identity{width:74%}.hero{padding:36px 0 38px}.status{font-size:8px;letter-spacing:.08em;gap:8px}.status-zh{font-size:9px}h1{font-size:clamp(95px,22vw,140px);margin:42px 0}h1 sup{margin-left:2vw}.index{font-size:8px;max-width:85px;text-align:right;line-height:1.6}.manifesto{grid-template-columns:1fr;padding:30px 0 42px;gap:24px}.definition{font-size:12px;gap:13px}.footer-note{display:none}footer{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Infinite becoming — an open, white architectural drawing. */
.hero-composition{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:0;min-height:520px;margin:12px 0 40px}
.hero-composition h1{font-size:clamp(100px,12.4vw,194px);margin:30px 0 50px;z-index:1}
.hero-composition h1 sup{display:none}
.sculpture{position:relative;margin:0;min-width:0;width:100%;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.scene-heading{display:flex;justify-content:space-between;padding:14px 0 0;font:9px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;color:#888}
.sculpture canvas{display:block;width:100%;height:440px;cursor:grab;touch-action:pan-y;outline-offset:2px}
.sculpture.dragging canvas{cursor:grabbing}
.sculpture canvas:focus-visible{outline:1px solid #777}
.sculpture figcaption{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding:0 0 12px;border-bottom:1px solid #e9e9e9}
.scene-number{font:10px ui-monospace,SFMono-Regular,Consolas,monospace;color:#999;letter-spacing:.1em}
.sculpture h2{font-size:19px;line-height:1.2;letter-spacing:-.035em;margin:7px 0}
.sculpture figcaption p{font-size:10px;line-height:1.5;color:#888;margin:0}
.scene-controls{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}
.scene-controls button{font-family:inherit;font-size:10px;line-height:1.8;color:#555;border:0;border-bottom:1px solid #ccc;border-radius:0;background:transparent;padding:5px 0;cursor:pointer;white-space:nowrap}
.scene-controls button:hover{color:#000;border-color:#111}
.scene-controls button:focus-visible{outline:2px solid #333;outline-offset:4px}
.scene-fallback{position:absolute;inset:35% 0 auto;text-align:center;font-size:24px;font-weight:500}
.scene-fallback span{font-size:9px;letter-spacing:.2em;line-height:3}
.sculpture.ready .scene-fallback{display:none}
.sculpture:not(.ready) canvas{visibility:hidden}
.sculpture.unavailable .scene-controls{display:none}
@media(min-width:1600px){.sculpture canvas{height:500px}}
@media(max-width:900px){.hero-composition{grid-template-columns:.8fr 1.2fr;min-height:420px}.hero-composition h1{font-size:clamp(85px,13.5vw,130px)}.sculpture canvas{height:360px}.scene-controls{gap:10px}.sculpture h2{font-size:17px}}
@media(max-width:600px){.hero-composition{display:block;margin:12px 0 32px}.hero-composition h1{font-size:clamp(100px,23vw,145px);margin:40px 0 18px}.sculpture canvas{height:340px}.scene-heading{padding-top:10px;font-size:8px}.sculpture figcaption{padding-bottom:18px}.sculpture h2{font-size:19px}.scene-controls{gap:14px}.scene-controls button{font-size:11px;padding:7px 0}.sculpture figcaption p{font-size:10px}}
