:root{--rust:#b7410e;--ink:#242820;--muted:#74796f;--line:#ddded4;--paper:#f5f5ef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 Arial,sans-serif}a{color:inherit;text-decoration:none}header{height:85px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 4vw}.brand{display:flex;align-items:center;gap:17px;font-size:30px;font-weight:900;letter-spacing:-2px}.brand span{font-size:9px;letter-spacing:1.7px;max-width:150px;line-height:1.6}nav{display:flex;gap:28px;font-size:12px}nav a:last-child{border:1px solid var(--ink);padding:9px 14px;margin-top:-9px}.intro{display:flex;justify-content:space-between;align-items:end;padding:45px 4vw 38px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--muted);margin:0 0 15px}h1{font-size:clamp(38px,4.8vw,68px);line-height:1.04;letter-spacing:-3px;margin:0 0 20px}h2{font-size:34px;line-height:1.12;letter-spacing:-1.4px;margin:0 0 16px}h3{font-size:19px;line-height:1.3;margin:8px 0}.lead{max-width:460px;color:var(--muted);font-size:15px}.status{font-size:10px;letter-spacing:1px;padding-bottom:20px}.status p{font-size:13px;letter-spacing:0}.status small{color:var(--muted);font-size:11px;letter-spacing:0}.dot{display:inline-block;width:7px;height:7px;background:var(--rust);border-radius:50%;margin-right:8px}main{padding:0 3vw}.workspace{display:grid;grid-template-columns:200px minmax(300px,1fr) 230px;border:1px solid var(--line);background:#fff;min-height:600px;border-radius:5px;overflow:hidden}aside{padding:25px 20px}aside button{display:block;width:100%;background:none;border:1px solid transparent;text-align:left;padding:13px 10px;margin:4px 0;font-size:13px;cursor:pointer}aside button.active{background:#eceee3;border-color:#d3d7c8}aside button small{display:block;font-size:10px;color:var(--muted);margin-top:4px}label{display:block;font-size:12px;margin:13px 0}input{accent-color:var(--rust)}.divider{height:1px;background:var(--line);margin:25px 0}.aside-note{color:var(--muted);font-size:11px;margin-top:30px;line-height:1.9}.viewport{position:relative;border-left:1px solid var(--line);border-right:1px solid var(--line);background:#eceee6;display:flex;flex-direction:column;min-width:0}.toolbar{padding:16px;display:flex;justify-content:space-between;gap:8px;z-index:1;border-bottom:1px solid var(--line)}.toolbar strong{display:block;font-size:12px;margin-top:5px}.pill{font-size:8px;letter-spacing:1px;color:var(--rust)}button{font-family:inherit}.toolbar button{background:#fff;border:1px solid var(--line);padding:6px 8px;font-size:10px;cursor:pointer;border-radius:3px}.toolbar button:hover{border-color:var(--rust)}canvas{width:100%;height:420px;display:block;touch-action:none;cursor:grab;flex:1;min-height:350px}.canvas-note{position:absolute;bottom:125px;left:16px;font-size:8px;letter-spacing:1px;color:#7a8073}.phase-control{display:flex;gap:15px;background:#fff;padding:20px;border-top:1px solid var(--line)}#play{border:1px solid var(--line);background:var(--ink);color:white;width:38px;height:38px;border-radius:50%;cursor:pointer}.range-wrap{flex:1}.phase-heading{display:flex;justify-content:space-between;font-size:12px}.phase-heading span{color:var(--muted);font-size:10px}input[type=range]{width:100%;cursor:pointer}.ticks{display:flex;justify-content:space-between;font-size:9px;color:var(--muted)}.detail h2{font-size:24px}.detail p{font-size:12px;color:#62695d}.detail small{font-size:10px;color:var(--muted)}.strategy{padding:90px 7vw;display:grid;grid-template-columns:1fr 1.25fr;gap:12vw}.strategy>div>p:last-child{max-width:370px;color:var(--muted);font-size:13px}.timeline article{border-bottom:1px solid var(--line);padding:0 0 22px;margin:0 0 22px}.timeline span{color:var(--rust);font-size:10px;letter-spacing:1px}.timeline p{font-size:13px;color:var(--muted)}.board{margin:0 4vw 60px}.section-head{display:flex;justify-content:space-between;align-items:center}.section-head a{font-size:12px;text-decoration:underline}.board img{width:100%;border:1px solid var(--line);border-radius:4px}.readiness{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px;padding:55px 4vw}.readiness p{font-size:12px;color:#b9bfb0}.readiness h2{font-size:28px}.readiness h3{font-size:16px}.readiness .eyebrow{color:#d18560}footer{padding:35px 4vw;display:flex;gap:40px;align-items:start;font-size:11px;color:var(--muted)}footer b{white-space:nowrap;color:var(--ink)}footer p{margin:0;max-width:740px}footer small{white-space:nowrap}button:focus-visible,a:focus-visible{outline:2px solid var(--rust);outline-offset:3px}@media(max-width:1050px){.workspace{grid-template-columns:170px minmax(280px,1fr)}.detail{grid-column:1/-1;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:10px 25px}.detail .divider{display:none}.detail h2{margin:0}.detail .eyebrow{margin:0}.readiness{grid-template-columns:1fr 1fr}.status{max-width:260px}}@media(max-width:650px){header{height:70px}.brand span{display:none}nav{gap:14px}nav a:last-child{padding:7px}.intro{display:block;padding-top:30px}h1{letter-spacing:-2px}.status{padding-top:10px}.workspace{display:block}aside:first-child{padding:15px}#buildings{display:grid;grid-template-columns:1fr 1fr}aside:first-child .divider,aside:first-child label,aside:first-child .aside-note,aside:first-child>.eyebrow:nth-of-type(2){display:none}.viewport{border-left:0;border-right:0}.toolbar{flex-wrap:wrap}canvas{height:350px;min-height:350px}.detail{display:block}.detail p{margin-bottom:20px}.strategy{display:block;padding:50px 6vw}.timeline{margin-top:35px}.readiness{grid-template-columns:1fr;padding:35px 6vw;gap:15px}footer{display:block}footer p{margin:15px 0}.section-head h2{font-size:26px}}

/* Full-window model presentation */
body{height:100dvh;overflow:hidden}header{height:64px;background:#f5f5ef}nav{align-items:center}nav a:last-child{margin:0}nav button{background:none;border:0;font:inherit;cursor:pointer;color:inherit}main{height:calc(100dvh - 64px);padding:0}.workspace{height:100%;min-height:0;border:0;border-radius:0;grid-template-columns:180px minmax(0,1fr)}.workspace .detail{display:none}.workspace.show-notes{grid-template-columns:180px minmax(0,1fr) 240px}.workspace.show-notes .detail{display:block;overflow:auto;grid-column:auto}.viewport{height:100%;min-height:0;border-right:0}canvas{height:100%;min-height:0;flex:1}.toolbar{padding:13px 20px}.phase-control{padding:18px 25px}.canvas-note{bottom:118px}.aside-note{margin-top:25px}.viewport:fullscreen{height:100dvh;width:100vw}#notes h2{font-size:22px}#notes .divider{display:block}#notes .eyebrow{margin:0 0 12px}
@media(max-width:650px){header{height:58px}.brand{font-size:25px}nav{gap:12px;font-size:10px}main{height:calc(100dvh - 58px)}.workspace,.workspace.show-notes{display:flex;flex-direction:column}.workspace>aside:first-child{padding:8px 12px}.workspace>aside:first-child>.eyebrow{display:none}#buildings{display:flex;gap:4px}#buildings button{padding:7px 4px;text-align:center;margin:0;font-size:9px}#buildings small{display:none}.viewport{flex:1;min-height:0;height:auto}canvas{min-height:0;height:100%}.toolbar{padding:8px 12px}.phase-control{padding:12px}.canvas-note{bottom:102px;font-size:7px}.workspace.show-notes .detail{position:absolute;right:10px;top:160px;z-index:5;background:#f5f5ef;max-height:calc(100dvh - 290px);width:260px;box-shadow:0 8px 30px #0002;border:1px solid #ddded4;padding:18px}nav a:last-child{padding:6px 8px}}

.workspace.show-notes{grid-template-columns:180px minmax(0,1fr) 310px}.phase-buttons{display:grid;gap:4px;margin-bottom:16px}.detail .phase-buttons button{margin:0;padding:8px 10px;border:1px solid #ddded4;font-size:11px}.detail .phase-buttons button.active{border-color:#b7410e;background:#f5e8dd;color:#a63a0c}.gate{background:#eceee3;border-left:3px solid #b7410e;padding:12px}.gate b{font-size:11px}.gate p{margin:5px 0 0}.detail .timing{color:#b7410e;font-weight:bold;font-size:11px}.sequence{padding-left:17px;font-size:11px;line-height:1.8}.sequence li{padding:4px 0}.sequence span{display:block;color:#74796f;font-size:10px}nav a:last-child{border:0;padding:0}#notes{border-left:1px solid #ddded4}#notes .divider{margin:20px 0}
@media(max-width:900px) and (min-width:651px){.workspace.show-notes{grid-template-columns:145px minmax(0,1fr) 250px}.workspace>aside:first-child{padding:20px 12px}.toolbar{flex-wrap:wrap}.toolbar strong{max-width:250px}}
@media(max-width:650px){.workspace.show-notes .detail{position:static;width:100%;max-height:34dvh;box-shadow:none;border:0;border-top:1px solid #ddded4;flex-shrink:0}.workspace.show-notes .viewport{min-height:220px}.detail .phase-buttons{grid-template-columns:1fr 1fr}.detail h2{font-size:18px}.detail p{margin-bottom:12px}#notes>.eyebrow{margin-bottom:8px}.canvas-note{display:none}}

.viewport{background:#f5f3ed}.toolbar{background:#ffffffd9}.canvas-note{color:#696a5e}canvas{cursor:grab}.toolbar .pill{font-weight:bold}.workspace.show-notes{grid-template-columns:165px minmax(0,1fr) 280px}@media(max-width:900px) and (min-width:651px){.workspace.show-notes{grid-template-columns:135px minmax(0,1fr) 230px}}

.material-legend{position:absolute;left:18px;top:90px;display:flex;gap:12px;flex-wrap:wrap;font-size:9px;color:#676a5e;pointer-events:none}.material-legend span:before{content:"";display:inline-block;width:8px;height:8px;background:#ac814a;margin-right:5px}.material-legend span:nth-child(2):before{background:#cfb788}.material-legend span:nth-child(3):before{background:#ddc598}@media(max-width:650px){.material-legend{display:none}}

.elevation-box{margin:18px 0;padding:14px;background:#eeeee2;border:1px solid #d9dbcc}.elevation-box .eyebrow{color:#a13c16}#elevationSchedule table{width:100%;border-collapse:collapse;font-size:11px}#elevationSchedule td{padding:6px 0;border-bottom:1px solid #d9dbcc;vertical-align:top}#elevationSchedule td:last-child{text-align:right;font-weight:bold}#elevationSchedule small{display:block;margin:8px 0;font-size:10px}.elevation-box button{color:#a13c16;font-size:11px;border:1px solid #c6b9a2;background:white;padding:8px;margin:12px 0 0}.elevation-box .key-elevation{font-size:12px;font-weight:bold;color:#a13c16}dialog{width:96vw;max-width:1600px;height:94dvh;max-height:94dvh;padding:0;border:1px solid #b4b7a8;background:#f5f5ef;color:#242820;border-radius:5px}dialog::backdrop{background:#182015a8}.drawing-head{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;height:100px;border-bottom:1px solid #ddded4}.drawing-head h2{font-size:24px;margin:0}.drawing-head .eyebrow{margin-bottom:5px}.drawing-head button{padding:9px 14px;background:white;border:1px solid #bbb;cursor:pointer}.drawing-grid{height:calc(100% - 100px);display:grid;grid-template-columns:270px 1fr}.drawing-grid aside{overflow:auto;border-right:1px solid #ddded4;padding:15px}.drawing-grid section{display:flex;flex-direction:column;padding:12px 20px;min-height:0}.drawing-grid iframe{flex:1;min-height:250px;width:100%;border:1px solid #ddded4;background:white}.drawing-grid a{font-size:12px;color:#a13c16;text-decoration:underline;margin-top:10px}.datum-note{padding:12px;background:#e8eadf;font-size:11px;margin-bottom:16px}.datum-note p{margin:6px 0}.drawing-limit{font-size:10px;color:#666c61;margin:8px 0}#drawingCaption{font-size:12px;font-weight:bold;padding:4px 0 10px}#drawingList button{font-size:11px;margin:2px 0;padding:9px;border:1px solid #ddded4;background:white}#drawingList button.active{background:#f2e4d6;border-color:#b7410e}#drawingList b{color:#a13c16}#drawingList small{font-size:10px}.dimension-title{font-size:11px;font-weight:bold;margin:13px 0 5px}#measurements{font-size:11px;line-height:1.7}.elevation-source{font-size:9px!important}@media(max-width:650px){.drawing-head{height:90px;padding:12px}.drawing-head h2{font-size:18px}.drawing-grid{height:calc(100% - 90px);grid-template-columns:130px 1fr}.drawing-grid aside{padding:8px}.drawing-grid section{padding:8px}.datum-note{font-size:9px;padding:7px}.drawing-limit{font-size:9px}#drawingList button{padding:6px;font-size:10px}#drawingList small{font-size:9px}nav{gap:8px;font-size:9px}.brand{font-size:22px}}

.detail-links{display:grid;gap:5px;margin:15px 0}.detail .detail-links button{padding:8px;font-size:10px;border:1px solid #ddded4;background:white;margin:0;color:#963b17;cursor:pointer}.detail .detail-links button:hover{border-color:#b7410e}

/* Touch layout: keep the model full height; details open as a dismissible sheet. */
.mobile-label,.mobile-close,.drawing-select-label,#drawingSelect,#drawingPreview{display:none}button,summary,input[type=range]{-webkit-tap-highlight-color:transparent}summary{cursor:pointer;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:" +"}.systems-menu[open] summary:after{content:" −"}header,main{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}[hidden]{display:none!important}
@media(max-width:760px),(max-height:500px){
 .desktop-label,.brand span,.model-nav{display:none!important}.mobile-label{display:inline}body{height:100dvh;overflow:hidden;overscroll-behavior:none}header{height:calc(56px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));gap:10px}.brand{font-size:27px;letter-spacing:-1px}nav{gap:8px;font-size:12px}nav button{min-height:44px;padding:7px 10px;border:1px solid #d9dbce;border-radius:5px}main{height:calc(100dvh - 56px - env(safe-area-inset-top))}.workspace,.workspace.show-notes{display:flex;flex-direction:column;min-height:0;height:100%;position:relative}.workspace>aside:first-child{display:flex;gap:7px;align-items:center;padding:6px 10px;border-bottom:1px solid #ddded4;z-index:4}.workspace>aside:first-child>.eyebrow,.workspace>aside:first-child>.divider,.aside-note{display:none}#buildings{display:flex;gap:4px;flex:1;min-width:0}#buildings button{flex:1;min-width:0;min-height:44px;margin:0;padding:7px 3px;text-align:center;font-size:12px;border-radius:5px}#buildings button small{display:none}.systems-menu{position:relative;flex:0 0 55px}.systems-menu summary{font-size:10px;min-height:44px;display:flex;align-items:center;justify-content:center;letter-spacing:0;border:1px solid #ddded4;border-radius:5px;background:#fff}.system-options{position:absolute;right:0;top:49px;width:225px;padding:12px 15px;background:#fff;border:1px solid #ddded4;border-radius:6px;box-shadow:0 8px 25px #0002;z-index:10}.workspace>aside:first-child .system-options label{display:flex;gap:10px;align-items:center;margin:10px 0;min-height:36px;font-size:13px}.system-options input{width:21px;height:21px}.viewport,.workspace.show-notes .viewport{flex:1;min-height:0;height:auto;border:0}.toolbar{display:flex;flex-direction:column;gap:7px;padding:9px 12px;min-height:0}.toolbar>div:first-child{display:flex;gap:8px;align-items:center;min-width:0}.toolbar strong{display:block;max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;margin:0}.toolbar .pill{font-size:7px;white-space:nowrap;flex-shrink:0}.toolbar>div:last-child{display:flex;gap:5px;overflow-x:auto;max-width:100%;padding:1px 0 4px;scrollbar-width:none}.toolbar>div:last-child::-webkit-scrollbar{display:none}.toolbar button{font-size:11px;min-height:44px;flex:0 0 auto;padding:9px 11px;border-radius:5px}canvas{height:100%;min-height:0;flex:1;touch-action:none}.canvas-note,.material-legend{display:none}.phase-control{padding:11px 14px calc(10px + env(safe-area-inset-bottom));gap:12px;flex-shrink:0;align-items:center}#play{width:44px;height:44px;flex:0 0 44px}.phase-heading strong{font-size:12px}.phase-heading span{font-size:10px;white-space:nowrap;padding-left:8px}input[type=range]{height:30px;margin:0}.ticks{font-size:9px}.workspace .detail{display:none}.workspace.show-notes .detail{display:block;position:fixed;left:0;right:0;top:auto;bottom:0;width:100%;height:78dvh;max-height:78dvh;z-index:20;background:#f5f5ef;border:1px solid #c9cdbe;border-radius:16px 16px 0 0;box-shadow:0 -12px 40px #0003;padding:0 20px calc(25px + env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain}.mobile-close{display:block;position:sticky;top:0;width:calc(100% + 40px);margin:0 -20px 18px;padding:15px 20px;min-height:52px;background:#f5f5ef;border:0;border-bottom:1px solid #ddded4;text-align:right;font-size:13px;font-weight:bold;z-index:2}.detail h2{font-size:23px}.detail p,#measurements{font-size:13px;line-height:1.6}.detail .eyebrow{font-size:10px}.detail .phase-buttons{grid-template-columns:1fr 1fr}.detail .phase-buttons button,.detail .detail-links button{min-height:44px;font-size:12px}.elevation-box button{min-height:44px;font-size:12px}.elevation-box table{font-size:12px}.viewport:fullscreen{height:100dvh}.drawing-head{height:90px;padding:12px 14px}.drawing-head h2{font-size:18px;letter-spacing:-.5px}.drawing-head .eyebrow{font-size:8px}.drawing-head button{min-height:44px;white-space:nowrap;padding:8px 12px}.drawing-grid{display:flex;flex-direction:column;height:calc(100% - 90px)}.drawing-grid>aside{display:none}.drawing-grid>section{height:100%;padding:12px;min-height:0;overflow:auto}.drawing-select-label{display:block;font-size:11px;margin-bottom:5px}#drawingSelect{display:block;width:100%;font-size:16px;min-height:44px;padding:8px;border:1px solid #c4c9b8;background:white;border-radius:5px;margin-bottom:8px}#drawingCaption{font-size:11px;font-weight:normal}#drawingFrame{display:none}#drawingPreview{display:block;flex:1;min-height:200px;overflow:auto;background:white;border:1px solid #ddded4;touch-action:pan-x pan-y pinch-zoom}#drawingImage{display:block;width:100%;height:auto}.drawing-grid a{min-height:44px;display:flex;align-items:center;font-size:12px;margin:4px 0}.drawing-limit{font-size:10px}.drawing-grid .drawing-limit{margin:0}dialog{height:100dvh;max-height:100dvh;width:100vw;max-width:100vw;border:0;border-radius:0;margin:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
}
@media(max-height:500px){header{height:44px;padding-top:0}main{height:calc(100dvh - 44px)}.workspace>aside:first-child{padding:2px 10px}#buildings button,.systems-menu summary{min-height:36px}.toolbar{flex-direction:row;justify-content:space-between;align-items:center;padding:3px 10px;gap:8px}.toolbar>div:first-child{max-width:35%}.toolbar>div:last-child{max-width:65%;padding:0}.toolbar button{min-height:36px;font-size:10px;padding:6px 8px}.phase-control{padding:4px 12px calc(4px + env(safe-area-inset-bottom))}.ticks{display:none}#play{height:38px;width:38px;flex-basis:38px}.phase-heading strong{font-size:10px}input[type=range]{height:24px}.drawing-head{height:66px}.drawing-grid{height:calc(100% - 66px)}.drawing-limit{display:none}.drawing-grid section{display:grid;grid-template-columns:250px 1fr;grid-template-rows:44px 1fr;gap:8px}.drawing-select-label{display:none}#drawingSelect{grid-column:1;grid-row:1;margin:0;font-size:13px}#drawingCaption{grid-column:1;grid-row:2}#drawingPreview{grid-column:2;grid-row:1/3;min-height:0}.drawing-grid a{grid-column:1;grid-row:2;align-self:end}.workspace.show-notes .detail{height:90dvh;max-height:90dvh}}

/* Align the brand and navigation inside the same header gutter. */
header{padding-left:max(24px,2.2vw,env(safe-area-inset-left));padding-right:max(24px,2.2vw,env(safe-area-inset-right));gap:24px;align-items:center;flex-shrink:0}
header .brand{display:inline-flex;align-items:center;gap:15px;flex:0 0 auto;line-height:1;white-space:nowrap;font-size:30px;letter-spacing:-1.5px}
header .brand>span{font-size:9px;letter-spacing:1.7px;line-height:1.55;max-width:150px;white-space:normal}
header nav{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:25px;line-height:1.2}
header nav a,header nav button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:7px 3px;font-size:12px;white-space:nowrap}
@media(max-width:760px),(max-height:500px){header{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));gap:10px}header .brand{font-size:27px;letter-spacing:-1px;gap:0}header nav{gap:8px}header nav button{padding:7px 10px;font-size:12px}header nav .model-nav{display:none}}
@media(max-height:500px){header .brand{font-size:24px}header nav button{min-height:36px}}
