:root{--paper:#f2f4f3;--panel:#fff;--ink:#0e2240;--text:#1d2a3a;--muted:#5d6b7a;--rule:#d6dde0;--blue:#2f6fe0;--blue-soft:#e3ecfb;--win:#cfe0f6;--win-ink:#1f4f9a;--int:#ebe4d6;--int-ink:#7a5a2c;--cafe:#f3d6bf;--cafe-ink:#9a4f22;--circ:#e6eaec;--core:#c9d0d6;--wet:#d4e8dd;--slab:#fbfcfc;--wall:#0e2240;--glass:#2f6fe0;--plate-edge:#b9c4cc;--sel:#2f6fe0;--sky1:#9fbcdc;--sky2:#e8eef2;--brick:#ead9ad;--brick2:#d6c08c;--brick-ln:#bfa874;--plinth:#3b3f44;--pane:#3c4955;--pane2:#5d7286;--ground:#e3e6e4;--tank:#8f8a80;--f-display:"Archivo", "Helvetica Neue", Arial, sans-serif;--f-body:"IBM Plex Sans", "Helvetica Neue", Arial, sans-serif;--f-mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--drawing-paper:#fff;--drawing-shadow:0 8px 28px #0e22401f}:root:not([data-theme=dark]){--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--paper:#0c1522;--panel:#121e2e;--ink:#e8eef6;--text:#d5dde7;--muted:#8e9cad;--rule:#24344a;--blue:#6ea0ff;--blue-soft:#17294a;--win:#1d3a63;--win-ink:#9fc2ff;--int:#3a3122;--int-ink:#e3c38f;--cafe:#4a2c1b;--cafe-ink:#f2b48a;--circ:#1a2738;--core:#2b3a4e;--wet:#1f3a32;--slab:#152234;--wall:#cfdbea;--glass:#6ea0ff;--plate-edge:#33465f;--sel:#6ea0ff;--sky1:#1c2c46;--sky2:#4b5a6e;--brick:#bba675;--brick2:#9d8a5e;--brick-ln:#857349;--plinth:#0a0e13;--pane:#18212b;--pane2:#2c3d50;--ground:#18222f;--tank:#6c6860;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--paper);color:var(--text);font-family:var(--f-body);margin:0;font-size:15px;line-height:1.5}.gut{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.wrap{max-width:1200px;margin:0 auto}.mono{font-family:var(--f-mono)}.eyebrow{font:500 11.5px/1.2 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}h1,h2,h3{font-family:var(--f-display);color:var(--ink);text-wrap:balance;margin:0}h2{letter-spacing:-.01em;font-size:clamp(24px,3.4vw,34px);font-weight:800;font-stretch:112%;line-height:1.08}p{margin:0}.num{font-variant-numeric:tabular-nums}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.bar{border-bottom:1px solid var(--rule);background:var(--panel)}.bar .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-block:12px;display:flex}.marks{align-items:center;gap:14px;display:flex}.tsc{font:900 22px/1 var(--f-display);color:var(--ink);letter-spacing:-.02em;font-stretch:110%}.tsc i{color:var(--blue);font-style:normal}.sep{background:var(--rule);width:1px;height:22px}.col{font:600 12px/1.15 var(--f-body);color:var(--ink);letter-spacing:.02em}.col small{font:500 10.5px var(--f-mono);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;display:block}.prep{font:500 11.5px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.hero .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:28px;padding-block:40px 24px;display:grid}.hero h1{letter-spacing:-.025em;font-size:clamp(40px,7vw,76px);font-weight:900;font-stretch:118%;line-height:.95}.hero .loc{font:600 15px var(--f-body);color:var(--muted);margin-top:10px}.lede{max-width:52ch;color:var(--text);margin-top:18px}.stats{background:var(--rule);border:1px solid var(--rule);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:24px;display:grid;overflow:hidden}.stat{background:var(--panel);gap:2px;padding:14px 16px;display:grid}.stat .k{font:500 10.5px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.stat .v{font:800 26px/1.1 var(--f-display);color:var(--ink);font-variant-numeric:tabular-nums;font-stretch:108%}.stat .s{color:var(--muted);font-size:12.5px}.stat.hot .v{color:var(--blue)}.stage{perspective:1700px;perspective-origin:50% 30%;touch-action:pan-y;place-items:center;height:600px;display:grid;position:relative}.stack{width:var(--pw);height:var(--ph);transform-style:preserve-3d;transform:rotateX(58deg) rotateZ(var(--rz,-34deg)) translateZ(-190px) translateY(-30px);transition:transform .6s cubic-bezier(.2,.7,.2,1);position:relative}.plate{transform-style:preserve-3d;transform:translateZ(calc(var(--i) * var(--gap) + var(--lift,0px) + var(--hov,0px)));cursor:pointer;transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .35s;position:absolute;inset:0}.plate svg{width:100%;height:100%;box-shadow:0 0 0 1px var(--plate-edge),0 18px 30px -18px #0e224073;border-radius:2px;display:block;position:absolute;inset:0}.plate .edge{background:var(--plate-edge);transform-origin:bottom;height:7px;position:absolute;bottom:0;left:0;right:0;transform:rotateX(-90deg)}.plate .edge.side{transform-origin:100%;width:7px;height:auto;top:0;left:auto;transform:rotateY(90deg)}.plate .tag{font:700 13px var(--f-mono);color:var(--muted);white-space:nowrap;pointer-events:none;position:absolute;top:50%;left:-74px;transform:translateY(-50%)}.plate:hover{--hov:12px}.plate.on{--hov:0px}.plate.on .tag{color:var(--blue)}.plate.on svg{box-shadow:0 0 0 2px var(--blue),0 26px 40px -18px #0e22408c}.plate.above{opacity:.55}.seg[hidden],.lift[hidden],.legend span[hidden],.vdlink[hidden]{display:none}.lift{background:var(--panel);border:1px solid var(--rule);z-index:5;border-radius:12px;gap:6px;padding:8px;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.lift button{border:1px solid var(--rule);background:var(--paper);width:42px;height:34px;font:700 12.5px var(--f-mono);color:var(--text);cursor:pointer;border-radius:8px}.lift button[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 0 0 3px var(--blue-soft)}.lift button:hover{border-color:var(--blue)}.lift .lbl{font:500 9.5px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center}.viewseg{z-index:6;position:absolute;top:8px;left:4px}.bldg{place-items:center;display:grid;position:absolute;inset:0 64px 34px 0}.bldg svg{width:100%;height:100%;max-height:560px}.b3d{background:linear-gradient(180deg,var(--sky1),var(--sky2) 72%);border-radius:14px;position:absolute;inset:0 64px 34px 0;overflow:hidden}.b3d canvas{display:block;width:100%!important;height:100%!important}.b3d-hint{font:500 10.5px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:#fff;pointer-events:none;background:#0e22408c;border-radius:6px;padding:4px 8px;position:absolute;bottom:10px;right:12px}.stage.mode-x .b3d{visibility:hidden;opacity:0}.stage.has3d .bldg{display:none}.stage.mode-b .stack,.stage.mode-x .bldg{visibility:hidden;opacity:0}.stack,.bldg{transition:opacity .35s,transform .6s cubic-bezier(.2,.7,.2,1)}.fband{fill:var(--blue);fill-opacity:0;cursor:pointer;transition:fill-opacity .2s}.fband:hover{fill-opacity:.2}.fband.on{fill-opacity:.38;stroke:var(--blue);stroke-width:1.2px}.ftag{font:700 12px var(--f-mono);fill:var(--ink)}.drawings{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.dwg{color:inherit;gap:0;text-decoration:none;display:grid;overflow:hidden}.dwg div{justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;display:flex}.dwg b{font:700 15px var(--f-display);color:var(--ink)}.dwg span{font:500 12px var(--f-mono);color:var(--blue)}.dwg:hover{border-color:var(--blue)}.dwg .dwgthumb{aspect-ratio:3/4;background:var(--drawing-paper);border-bottom:1px solid var(--rule);place-items:center;padding:0;display:grid}.dwgthumb img{object-fit:contain;width:100%;height:100%;min-height:0;display:block}.vdlink{font:600 12.5px var(--f-body);color:var(--blue);border:1px solid var(--rule);border-radius:999px;padding:5px 11px;text-decoration:none}@media (width<=900px){.drawings{grid-template-columns:repeat(2,minmax(0,1fr))}}.stage-cap{text-align:center;font:500 11.5px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);position:absolute;bottom:8px;left:0;right:0}@media (prefers-reduced-motion:reduce){.stack,.plate{transition:none}}section{padding-block:44px}.sechead{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px;margin-bottom:18px;display:flex}.sechead p{color:var(--muted);max-width:60ch;margin-top:6px}.tabs{flex-wrap:wrap;gap:6px;display:flex}.tab{border:1px solid var(--rule);background:var(--panel);font:600 13px var(--f-body);cursor:pointer;color:var(--text);border-radius:999px;padding:7px 12px}.tab[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.seg{border:1px solid var(--rule);background:var(--panel);border-radius:999px;padding:3px;display:inline-flex}.seg button{font:600 12.5px var(--f-body);color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:5px 11px}.seg button[aria-pressed=true]{background:var(--blue);color:#fff}.explore{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.card{background:var(--panel);border:1px solid var(--rule);border-radius:10px}.planbox{gap:10px;padding:14px;display:grid}.planbox svg{width:100%;height:auto;max-height:720px;display:block}.planhead{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.planhead h3{font-size:20px;font-weight:800;font-stretch:110%}.legend{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.sw{border:1px solid var(--rule);border-radius:2px;width:12px;height:12px;display:inline-block}.suite{cursor:pointer;transition:filter .15s}.suite:hover{filter:brightness(.94)}.suite.sel{stroke:var(--sel)!important;stroke-width:.9px!important}.side{gap:14px;display:grid}.detail{gap:12px;padding:18px;display:grid}.detail .id{font:800 30px/1 var(--f-display);color:var(--ink);font-stretch:112%}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{font:600 11.5px var(--f-body);border-radius:999px;padding:3px 9px}.chip.win{background:var(--win);color:var(--win-ink)}.chip.int{background:var(--int);color:var(--int-ink)}.chip.cafe{background:var(--cafe);color:var(--cafe-ink)}.chip.sink{background:var(--wet);color:var(--text)}.kv{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.kv div{gap:2px;display:grid}.kv .k{font:500 10.5px var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.kv .v{font:700 19px var(--f-display);color:var(--ink);font-variant-numeric:tabular-nums}.list{overflow-x:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}th,td{text-align:left;border-bottom:1px solid var(--rule);white-space:nowrap;padding:9px 12px}th{font:500 10.5px var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}td.r,th.r{text-align:right}tbody tr{cursor:pointer}tbody tr:hover td,tr.sel td{background:var(--blue-soft)}tfoot td{border-bottom:0;font-weight:700}.rr{grid-template-columns:minmax(0,320px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.ctrls{top:calc(env(safe-area-inset-top,0px) + 12px);gap:18px;padding:18px;display:grid;position:sticky}.ctl{gap:6px;display:grid}.ctl label{justify-content:space-between;align-items:baseline;font-size:13.5px;font-weight:600;display:flex}.ctl label b{font:600 16px var(--f-mono)}.ctl.w label b{color:var(--win-ink)}.ctl.i label b{color:var(--int-ink)}.ctl input{width:100%;accent-color:var(--blue)}.ctl small{color:var(--muted);font-size:12px}.total{background:var(--ink);color:var(--paper);border-radius:10px;gap:4px;padding:16px 18px;display:grid}.total .k{font:500 10.5px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;opacity:.75}.total .v{font:800 34px/1.05 var(--f-display);font-variant-numeric:tabular-nums;font-stretch:110%}.total .s{opacity:.8;font-variant-numeric:tabular-nums;font-size:13px}details{border-top:1px solid var(--rule)}details:first-of-type{border-top:0}summary{cursor:pointer;font-variant-numeric:tabular-nums;grid-template-columns:minmax(90px,1.2fr) repeat(4,minmax(0,1fr));align-items:center;gap:8px;padding:12px 16px;list-style:none;display:grid}summary::-webkit-details-marker{display:none}summary .f{font:700 15px var(--f-display);color:var(--ink)}summary .f:before{content:"▸";width:14px;color:var(--muted);transition:transform .2s;display:inline-block}details[open] summary .f:before{transform:rotate(90deg)}summary .r{text-align:right}.sumhead{border-bottom:1px solid var(--rule);grid-template-columns:minmax(90px,1.2fr) repeat(4,minmax(0,1fr));gap:8px;padding:10px 16px;display:grid}.sumhead span{font:500 10.5px var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.sumhead span:not(:first-child){text-align:right}.inner{padding:0 16px 12px;overflow-x:auto}.inner table{min-width:520px}.inner td,.inner th{padding:7px 10px;font-size:13.5px}.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.step{align-content:start;gap:8px;padding:18px;display:grid}.step .n{font:700 12px var(--f-mono);color:var(--blue)}.step h3{font-size:18px;font-weight:800;font-stretch:108%}.step p{color:var(--muted);font-size:14px}.proof{background:var(--rule);border:1px solid var(--rule);border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:16px;display:grid;overflow:hidden}.proof div{background:var(--panel);gap:2px;padding:16px;display:grid}.proof b{font:800 28px/1.1 var(--f-display);color:var(--ink);font-stretch:110%}.proof span{color:var(--muted);font-size:13px}.contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:20px;display:grid}.who{gap:10px;padding:22px;display:grid}.who .nm{font:800 24px var(--f-display);color:var(--ink);font-stretch:110%}.line{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;display:flex}.line span{-webkit-user-select:all;user-select:all;font-variant-numeric:tabular-nums}.line .lbl{min-width:52px;font:500 10.5px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);-webkit-user-select:none;user-select:none;display:inline-block}.copy{border:1px solid var(--rule);font:600 12px var(--f-body);cursor:pointer;color:var(--text);background:0 0;border-radius:6px;padding:4px 9px}footer{color:var(--muted);border-top:1px solid var(--rule);padding-block:26px 40px;font-size:12.5px}@media (width<=900px){.hero .wrap,.explore,.rr,.contact{grid-template-columns:minmax(0,1fr)}.stage{height:470px}.steps,.proof{grid-template-columns:repeat(2,minmax(0,1fr))}.ctrls{position:static}}@media (width<=520px){.stage{height:400px}summary,.sumhead{grid-template-columns:minmax(70px,1fr) repeat(2,minmax(0,1fr))}summary .h,.sumhead .h{display:none}.kv{grid-template-columns:repeat(2,minmax(0,1fr))}}[hidden]{display:none!important}.sheet-head{padding:28px 0 18px}.sheet-head h1{font:800 clamp(28px,4.4vw,44px)/1.05 var(--f-display);margin:6px 0 10px}.backlink{font:600 13px var(--f-body);color:var(--blue);margin-bottom:18px;text-decoration:none;display:inline-block}.dlbtn{display:inline-block}.sheetpage>.gut>.wrap{max-width:1600px}.sheet-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sheet-pdf-note{font:400 13px/1.5 var(--f-body);color:var(--muted)}.sheet-image{background:var(--drawing-paper);box-shadow:var(--drawing-shadow);border-radius:8px;display:block;overflow:hidden}.sheet-image img{width:100%;height:auto;display:block}.sheet-block{max-width:900px;margin:0 auto 22px}.sheet-design-note{font:400 16px/1.55 var(--f-body);color:var(--ink);margin:14px 0 0}.sheet-opt{font:700 18px var(--f-display);margin:0 0 10px}.sheet-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:16px;display:grid}.sheet-plan{padding:14px}.sheet-plan svg{width:100%;height:auto;max-height:78vh;display:block}.sheet-table{overflow-x:auto}.sheet-notes{margin:6px 0 40px;padding:18px 20px}.sheet-notes ul{color:var(--muted);margin:8px 0 0;padding-left:18px;line-height:1.55}@media (width<=900px){.sheet-grid{grid-template-columns:minmax(0,1fr)}}@media print{@page{size:landscape;margin:12mm}.sheetpage .bar,.sheetpage .backlink,.sheetpage .dlbtn{display:none!important}html,body,.sheetpage{background:#fff!important}.sheet-block{break-after:page;page-break-after:always}.sheet-grid{grid-template-columns:1fr 1.1fr}.sheet-plan svg{max-height:170mm}.card{box-shadow:none}}@media (width<=760px),(hover:none) and (pointer:coarse){input[type=range]{touch-action:pan-y;height:44px}.seg button{min-height:40px;padding-inline:14px}.tab{min-height:44px}.lift{gap:4px;padding:6px}.lift button{width:44px;height:40px}.vdlink{align-items:center;min-height:44px;padding-inline:14px;display:inline-flex}.copy{min-width:44px;min-height:36px;margin-left:6px}.backlink{align-items:center;min-height:44px;display:inline-flex}.eyebrow,.prep,.stage-cap,.chip,.lift .lbl,.lbl,.sumhead span,.line .lbl,th,.col small,.stat .k,.kv .k,.total .k,.b3d-hint{font-size:12px}.inner{background:linear-gradient(to right,var(--panel) 30%,transparent) left/24px 100% no-repeat local,linear-gradient(to left,var(--panel) 30%,transparent) right/24px 100% no-repeat local,linear-gradient(to right,#0000001f,transparent) left/12px 100% no-repeat scroll,linear-gradient(to left,#0000001f,transparent) right/12px 100% no-repeat scroll}.sheet-hint{font:500 12px var(--f-body);color:var(--muted);margin:8px 0 0}}@media (width>=761px) and (hover:hover){.sheet-hint{display:none}}@media (orientation:landscape) and (height<=500px){.hero .wrap{gap:16px;padding-block:16px 12px}.hero h1{font-size:40px}}@media (width<=760px){.bar .wrap{flex-wrap:nowrap;gap:4px 10px;padding-block:6px}.marks{gap:8px;min-width:0}.tsc{font-size:15px}.sep{height:16px}.col{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.col small,.bar .prep{display:none}.hero h1{font-size:clamp(34px,10vw,44px)}.hero .wrap{padding-block:18px 20px}section.gut .wrap{padding-block:28px}}.barright{flex-shrink:0;align-items:center;gap:12px;display:flex}.themebtn{font:500 11.5px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:999px;padding:6px 12px}.themebtn:hover{border-color:var(--blue);color:var(--blue)}:root[data-theme=dark] .t-light,:root:not([data-theme=dark]) .t-dark{display:none}@media (width<=760px){.themebtn{min-height:36px;padding:4px 12px;font-size:12px}}
