:root{color-scheme:dark;--bg:#080b0d;--ink:#f0f1e9;--muted:#8b9598;--line:#293033;--acid:#dcff74;--cyan:#83dbe1;font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}[hidden]{display:none!important}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--acid);outline-offset:4px}button:hover,a:hover{color:var(--acid)}.masthead{height:91px;margin:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.identity{display:flex;align-items:center;gap:13px;font-size:16px;font-weight:650}.monogram{font-family:Impact,'Arial Black',sans-serif;color:var(--acid);font-size:35px;letter-spacing:-3px;transform:skew(-7deg)}.identity small{display:block;font:9px Consolas,monospace;letter-spacing:1.6px;color:var(--muted);margin-top:6px}.edition{font:10px Consolas,monospace;letter-spacing:2px;color:var(--muted)}.masthead nav{display:flex;gap:30px;font-size:12px}.masthead nav a span{color:var(--acid)}main{margin:0 4%}.introduction{display:flex;justify-content:space-between;align-items:end;padding:37px 0 33px}.eyebrow{font:10px Consolas,monospace;letter-spacing:1.5px;color:var(--muted);margin:0 0 16px}.eyebrow i,.stage-top i{display:inline-block;width:5px;height:5px;background:var(--acid);margin-right:8px;vertical-align:2px}h1{margin:0;letter-spacing:-3.2px;font-size:clamp(30px,4.2vw,64px);font-weight:800;line-height:1.15}h1 span{color:var(--acid)}h1 sup{font-family:Arial,sans-serif;font-size:35px;color:var(--acid);vertical-align:top;margin-left:25px}.intro-note{min-width:245px;line-height:1.8;font-size:12px;color:#bec3c3}.intro-note p{margin:0 0 10px}.intro-note>span{font-size:10px;letter-spacing:1px;color:var(--muted)}.project-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:2px}.project-tab{padding:18px 15px;min-height:68px;display:flex;align-items:center;gap:13px;text-align:left;position:relative;background:#101518}.project-tab:first-child{padding-left:17px}.project-tab .tab-number{font:10px Consolas,monospace;color:var(--muted)}.project-tab strong{display:block;font-size:13px;font-weight:600;line-height:1.4}.project-tab small{display:block;font:8px Consolas,monospace;color:var(--muted);letter-spacing:1px;margin-top:3px}.project-tab[aria-selected=true]{background:#1b231c;color:var(--acid)}.project-tab[aria-selected=true]:before{content:'';position:absolute;inset:-1px 0 auto;height:2px;background:var(--acid)}.project-tab .tab-arrow{margin-left:auto;font-size:15px;color:var(--muted)}.project-tab[aria-selected=true] .tab-arrow{color:var(--acid)}.exhibition{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:28px;margin-top:24px;align-items:stretch}.stage-shell{border:1px solid #303b3b;min-width:0;background:#0a1114;position:relative}.stage-top,.stage-bottom{height:34px;padding:0 15px;display:flex;justify-content:space-between;align-items:center;font:9px Consolas,monospace;letter-spacing:1px;color:#9aa6a8;background:#101719}.stage-top{border-bottom:1px solid var(--line)}.stage-top b{font-weight:400;color:#c5d4d2}.stage-top i{width:4px;height:4px;margin-right:7px;vertical-align:1px}.stage-bottom{height:43px;letter-spacing:0;border-top:1px solid var(--line)}.stage-bottom button,.stage-bottom a{font-size:10px;padding:8px 0 8px 15px}.stage-bottom button:first-child{color:var(--acid)}#stage{height:clamp(390px,45vw,510px);position:relative;overflow:hidden}#metro-scene,#product-stage,#video-stage{height:100%;width:100%;position:relative}#metro-canvas{display:block;width:100%;height:100%}#metro-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,8,12,.88),rgba(2,8,12,.25) 48%,transparent 70%),linear-gradient(0deg,rgba(2,7,10,.55),transparent 35%);pointer-events:none}.scene-caption{position:absolute;top:13%;left:5%;z-index:2;pointer-events:none}.scene-kicker{font:9px Consolas,monospace;letter-spacing:3px;color:#8bb5b9}.scene-caption h2{font-size:clamp(25px,3.1vw,45px);letter-spacing:-1px;line-height:1.45;font-weight:650;margin:16px 0}.scene-caption p{font-size:11px;color:#8aadb0;letter-spacing:2px}.scene-credit{position:absolute;bottom:22px;left:5%;color:#93b1b5;z-index:2;font-size:9px;letter-spacing:1px}.film-grain{position:absolute;inset:0;pointer-events:none;opacity:.07;background:repeating-linear-gradient(0deg,transparent 0px,transparent 2px,#9bb 3px,transparent 4px)}.project-note{padding:7px 0 0}.note-number{font-size:38px;font-family:Consolas,monospace;letter-spacing:-3px;line-height:1;color:var(--acid)}.note-number span{font-size:11px;color:var(--muted);letter-spacing:0;margin-left:8px}.project-note .eyebrow{margin:23px 0 11px;font-size:9px}.project-note h2{font-size:22px;letter-spacing:-.5px;margin:0 0 15px}.project-note>p:not(.eyebrow){font-size:12px;line-height:1.9;color:#abb7b8}.try-this{margin:22px 0 15px;padding-top:14px;border-top:1px solid var(--line)}.try-this span{font-size:10px;color:var(--acid)}.try-this p{font-size:12px;line-height:1.85;color:#bfcac8;margin:9px 0}.project-note .disclosure{font-size:10px!important;color:#7e9091!important}.detail-link{padding:17px 0;margin-top:10px;border-top:1px solid var(--line);width:100%;font-size:11px;text-align:left}.detail-link span{float:right}.product-frame{border:0;width:100%;height:100%;display:block;background:#f5f7fa}#product-stage[data-project=ac]{background:radial-gradient(ellipse at center,#243a3b,#0c161a)}#product-stage[data-project=ac] .product-frame{width:min(100%,430px);margin:auto;box-shadow:0 0 80px #0009}#frame-loading{position:absolute;inset:0;background:#0c1317;display:grid;place-items:center;font-size:13px;color:var(--acid);z-index:4}#scene-fallback{position:absolute;inset:0;background:#14262d;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:3}#scene-fallback button{color:var(--acid);padding:16px}#research-video{display:block;width:100%;height:100%;object-fit:contain;background:#080e18}.video-note{position:absolute;top:10px;left:10px;font-size:10px;padding:5px 8px;background:#0a1118dd;color:#aec5cc;pointer-events:none}footer{display:flex;gap:20px;justify-content:space-between;color:#657477;font:9px Consolas,monospace;letter-spacing:1px;margin:25px 0 24px}footer a{color:#8a999b}dialog{color:var(--ink);background:#121c20;border:1px solid #425255;max-width:660px;width:90%;max-height:85vh;padding:40px;line-height:1.8}dialog::backdrop{background:#000a;backdrop-filter:blur(8px)}dialog h2{font-size:27px;margin-top:0}dialog h3{font-size:14px;color:var(--acid)}dialog p{font-size:13px;color:#b7c5c7}dialog a{display:block;color:var(--cyan);font-size:13px;margin:12px 0}#close-dialog{position:absolute;right:12px;top:5px;font-size:26px}.tech-tags{display:flex;flex-wrap:wrap;gap:8px}.tech-tags span{border:1px solid #3b5157;padding:3px 9px;font:11px Consolas,monospace}@media(min-width:1700px){main,.masthead{max-width:1600px;margin-left:auto;margin-right:auto}#stage{height:590px}.exhibition{grid-template-columns:minmax(0,1fr) 290px}}@media(max-width:950px){.edition{display:none}.introduction{padding:30px 0}.intro-note{min-width:auto;font-size:10px;padding-left:20px}h1{font-size:36px}h1 sup{display:none}.exhibition{grid-template-columns:minmax(0,1fr) 210px;gap:20px}.project-tab{padding:14px 10px;gap:8px}.project-tab strong{font-size:11px}.project-tab small{font-size:7px}.tab-arrow{display:none}#stage{height:440px}}@media(max-width:680px){.masthead{height:75px;margin:0 5%}.masthead nav{gap:15px;font-size:10px}.monogram{font-size:31px}.identity{font-size:14px;gap:10px}.identity small{font-size:7px}.introduction{padding:28px 0 25px;display:block}main{margin:0 5%}h1{font-size:35px;letter-spacing:-2px}.eyebrow{font-size:8px}.intro-note{padding:0;margin-top:17px}.intro-note p{font-size:11px;line-height:1.7;margin:0}.intro-note br{display:none}.intro-note>span{display:none}.project-tabs{display:flex;overflow:auto;scrollbar-width:thin;scrollbar-color:#425135 transparent}.project-tab{flex:0 0 145px;min-height:65px}.project-tab strong{font-size:11px}.project-tab small{font-size:7px}.exhibition{display:flex;flex-direction:column;gap:22px;margin-top:18px}#stage{height:420px}.stage-top{padding:0 9px;font-size:7px;letter-spacing:.5px}.stage-bottom{padding:0 9px;font-size:8px}.stage-bottom button{font-size:9px;padding-left:10px}.scene-caption{top:9%;left:7%}.scene-caption h2{font-size:29px}.scene-caption p{font-size:9px}.scene-caption{max-width:85%}.scene-caption h2 br{display:none}.scene-caption h2{max-width:230px}#metro-scene:after{background:linear-gradient(180deg,#040e12c9,transparent 60%,#040e1280)}.project-note{position:relative;padding:0}.note-number{position:absolute;right:0;top:0;font-size:28px}.project-note .eyebrow{margin:0 0 9px;font-size:8px}.project-note h2{font-size:22px;padding-right:70px}.project-note>p{max-width:90%}.try-this{margin-top:14px}.detail-link{margin-top:0;padding:12px 0}footer{flex-wrap:wrap;font-size:7px;gap:10px;margin-bottom:18px}footer span:nth-child(2){display:none}dialog{padding:30px 24px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(max-width:680px){.project-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible;gap:2px}.project-tab{grid-column:span 2;min-width:0;padding:12px 8px;gap:6px;min-height:59px}.project-tab:nth-child(4),.project-tab:nth-child(5){grid-column:span 3}.project-tab:first-child{padding-left:8px}.project-tab small{font-size:6px;letter-spacing:.4px}.project-tab .tab-number{font-size:8px}.project-tab strong{font-size:10px}}
#metro-scene{background:#071418 url('/assets/media/metro-poster.jpg') center/cover no-repeat}#metro-canvas{opacity:0}#metro-canvas[data-ready=true]{opacity:1}
