.bld{--space:clamp(64px, 9vw, 120px);--col:60ch}.bld h1,.bld h2,.bld h3{color:var(--ink);font-weight:300}.bld .acc{color:var(--accent-ink)}.bld .col{width:min(var(--col), 100% - 2 * var(--gutter));margin-inline:auto}.bld .wide{width:min(1180px, 100% - 2 * var(--gutter));margin-inline:auto}.bld .ph{color:var(--mute);text-decoration:underline dashed var(--leader) 1px;text-underline-offset:.28em}.bld .draft{border:1px dashed var(--accent);font:500 var(--fs-label)/1.4 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);vertical-align:.25em;border-radius:4px;margin-left:.6em;padding:2px 7px;display:inline-block}.bld .grid-bg{isolation:isolate;position:relative}.bld .grid-bg:before{content:"";z-index:-1;pointer-events:none;opacity:.7;background-image:linear-gradient(var(--hair) 1px, transparent 1px), linear-gradient(90deg, var(--hair) 1px, transparent 1px), linear-gradient(color-mix(in srgb, var(--hair) 40%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--hair) 40%, transparent) 1px, transparent 1px);background-position:top;background-size:120px 120px,120px 120px,24px 24px,24px 24px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 22% 78%,#0000);mask-image:linear-gradient(#0000,#000 22% 78%,#0000)}.bld .intro{padding-top:clamp(20px,3vw,36px);padding-bottom:24px}.bld .intro h1{letter-spacing:-.025em;text-wrap:balance;margin-top:12px;font-size:clamp(32px,3.5vw,52px);line-height:1.06}.bld .intro h1 em{font-family:var(--f-serif);color:var(--mute);font-style:italic}.bld .intro .row{gap:14px;margin-top:14px;display:grid}.bld .intro .why{max-width:44ch;font:300 clamp(19px, 1.7vw, 22px)/1.4 var(--f-serif);color:var(--ink-2)}.bld .facts{flex-wrap:wrap;gap:6px 0;display:flex}.bld .facts span+span:before{content:"";vertical-align:4px;background:var(--leader);width:16px;height:1px;margin:0 10px;display:inline-block}@media (width>=1000px){.bld .intro .row{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:32px}}.bld .doors{padding-inline:var(--gutter);max-width:var(--maxw);flex-direction:column;gap:6px;margin-inline:auto;display:flex}.bld .door{border-radius:var(--radius-card);background:var(--ink);height:clamp(320px,56svh,520px);color:var(--on-dark);text-decoration:none;display:block;position:relative;overflow:hidden}.bld .door img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease-out);position:absolute;inset:0}.bld .door:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(to top, var(--scrim) 0%, var(--scrim-2) 30%, transparent 100%);height:62%;position:absolute;inset:auto 0 0}.bld .door .cap{z-index:2;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px 16px;padding:20px;display:grid;position:absolute;inset:auto 0 0}.bld .door .n{font:500 var(--fs-label)/1 var(--f-mono);letter-spacing:.08em;grid-column:1/-1}.bld .door .n:after{content:"";vertical-align:4px;background:var(--accent);width:28px;height:1px;margin-left:10px;display:inline-block}.bld .door .name{color:var(--on-dark);letter-spacing:-.02em;font-size:clamp(32px,3.6vw,50px);font-weight:300;line-height:1}.bld .door .f{font:500 var(--fs-label)/1.5 var(--f-mono);letter-spacing:.08em;text-transform:uppercase}.bld .door .ph{color:var(--on-dark);text-decoration-color:var(--on-dark)}.bld .door .go{border:1px solid var(--on-dark);width:48px;height:48px;transition:background .3s var(--ease-out), color .3s var(--ease-out);border-radius:50%;grid-area:2/2/4;place-items:center;font-size:18px;display:grid}.bld .door:hover .go,.bld .door:focus-visible .go{background:var(--on-dark);color:var(--ink)}.bld .door:hover img,.bld .door:focus-visible img{transform:scale(1.15)}.bld .door:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.bld .seam-note{text-align:center;margin-top:12px}@media (width>=1000px){.bld .doors{flex-direction:row;height:clamp(420px,62vh,620px)}.bld .door{height:auto;transition:flex-grow .7s var(--ease-out);flex:1 1 0}.bld .doors:hover .door,.bld .doors:focus-within .door{flex-grow:.86}.bld .doors .door:hover,.bld .doors .door:focus-visible{flex-grow:1.14}.bld .door .cap{padding:28px 32px}}.bld .s{padding-top:var(--space)}.bld .s.first{padding-top:clamp(28px,3vw,40px)}.bld .s-head{align-items:center;gap:16px;margin-bottom:clamp(28px,4vw,52px);display:flex}.bld .s-head:after{content:"";background:var(--hair-2);flex:1;height:1px}.bld .s-head h2{font:500 var(--fs-eyebrow)/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}.bld .s-head .code{order:2}.bld .band{padding-block:clamp(36px,5vw,64px)}.bld .passage .num{margin-bottom:12px;display:block}.bld .passage h3{font:400 clamp(22px, 2.2vw, 28px)/1.2 var(--f-sans);letter-spacing:-.015em}.bld .passage p{font:300 clamp(22px, 2.6vw, 30px)/1.35 var(--f-serif);color:var(--ink-2);margin-top:14px}.bld .fig{margin:0}.bld .fig picture{display:contents}.bld .fig.bleed img{object-fit:cover;width:100%;height:clamp(240px,40vw,520px)}.bld .fig.inset{width:min(1180px, 100% - 2 * var(--gutter));margin-inline:auto}.bld .fig.inset img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-inner);width:100%;height:auto}.bld .fig figcaption{font:500 var(--fs-label)/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);justify-content:space-between;gap:12px;padding-top:10px;display:flex}.bld .fig.bleed figcaption{padding-inline:var(--gutter)}.bld .notes{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--card);display:grid;overflow:hidden}.bld .notes>div{border-bottom:1px solid var(--hair-2);min-width:0;padding:22px 24px 26px}.bld .notes>div:last-child{border-bottom:0}.bld .notes h3{font:400 21px/1.25 var(--f-sans);letter-spacing:-.01em;margin-top:12px}.bld .notes p{font:300 19px/1.45 var(--f-serif);color:var(--ink-2);margin-top:8px}@media (width>=700px){.bld .notes{grid-template-columns:repeat(3,minmax(0,1fr))}.bld .notes>div{border-bottom:0;border-right:1px solid var(--hair-2)}.bld .notes>div:last-child{border-right:0}}.bld .projects{gap:16px;display:grid}@media (width>=700px){.bld .projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}.bld .proj{text-decoration:none;display:block}.bld .proj .frame{border-radius:var(--radius-card) var(--radius-card) 0 0;display:block;overflow:hidden}.bld .proj img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;transition:transform .9s var(--ease-out)}.bld .proj:hover img{transform:scale(1.025)}.bld .proj .tb{border:1px solid var(--line);border-radius:0 0 var(--radius-card) var(--radius-card);background:var(--card);border-top:0;grid-template-columns:72px minmax(0,1fr) 56px;display:grid}.bld .proj .tb>span{min-width:0;padding:14px 16px}.bld .proj .tb>span+span{border-left:1px solid var(--hair-2)}.bld .proj .tname{color:var(--ink);letter-spacing:-.01em;font-size:clamp(22px,2.2vw,28px);font-weight:300;line-height:1.15;display:block}.bld .proj .tb .label{margin-top:6px;display:block}.bld .proj .ar{color:var(--ink);transition:transform .3s var(--ease-out);place-items:center;font-size:20px;display:grid}.bld .proj:hover .ar{transform:translate(3px)}.bld .proj:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--radius-card)}.bld .cards{gap:16px;display:grid}@media (width>=700px){.bld .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1000px){.bld .cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}.bld .card{border-radius:var(--radius-card);background:var(--card);flex-direction:column;min-width:0;padding:12px 12px 22px;display:flex}.bld .card .draw{border:1px solid var(--hair);border-radius:var(--radius-inner);background:var(--paper);padding:10px}.bld .card .draw svg{width:100%;height:auto;display:block}.bld .card .meta{justify-content:space-between;gap:12px;margin:16px 10px 0;display:flex}.bld .card h3{font:400 22px/1.25 var(--f-sans);letter-spacing:-.01em;margin:8px 10px}.bld .card p{font-size:var(--fs-read);color:var(--ink-3);margin:0 10px;line-height:1.55}.bld .card .lnk{min-height:44px;color:var(--accent-ink);align-items:center;margin:12px 10px 0;font-weight:500;text-decoration:none;display:inline-flex}.bld .card .lnk:hover{text-decoration:underline}.bld svg.dwg text{font-family:var(--f-mono);font-size:calc(var(--fs-label) * var(--k,1));letter-spacing:.08em;text-transform:uppercase;fill:var(--ink-2)}.bld svg.dwg .sw{fill:none;stroke-width:1px;vector-effect:non-scaling-stroke}.bld svg.dwg .sw.s-accent{stroke-width:1.5px}.bld svg.dwg .dash{stroke-dasharray:6 4}.bld .points{counter-reset:p;margin:0;padding:0;list-style:none}.bld .points li{counter-increment:p;border-top:1px solid var(--hair-2);font:300 clamp(22px, 2.6vw, 30px)/1.3 var(--f-serif);color:var(--ink-2);grid-template-columns:3rem minmax(0,1fr);padding:20px 0;display:grid}.bld .points li:last-child{border-bottom:1px solid var(--hair-2)}.bld .points li:before{content:"0" counter(p);font:500 var(--fs-label)/2.6 var(--f-mono);letter-spacing:.08em;color:var(--accent-ink)}.bld .phero{max-width:var(--maxw);padding-inline:var(--gutter);gap:6px;margin:clamp(12px,2vw,20px) auto 0;display:grid}.bld .phero .shot{aspect-ratio:4/3;border-radius:var(--radius-card);background:var(--ink);margin:0;position:relative;overflow:hidden}.bld .phero .shot picture{display:contents}.bld .phero .shot img{object-fit:cover;width:100%;height:100%}.bld .side{border-radius:var(--radius-card);background:var(--card);flex-direction:column;min-width:0;padding:20px;display:flex}.bld .back{min-height:44px;color:var(--accent-ink);font:500 var(--fs-label)/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;margin:-10px 0 8px;text-decoration:none;display:inline-flex}.bld .side h1{letter-spacing:-.025em;margin-top:10px;font-size:clamp(40px,4.6vw,68px);line-height:1}.bld .side .sub{max-width:30ch;font:300 clamp(19px, 1.7vw, 22px)/1.4 var(--f-serif);color:var(--ink-2);margin:12px 0 20px}.bld .tblock{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--paper);grid-template-columns:repeat(2,minmax(0,1fr));margin:auto 0 0;display:grid;overflow:hidden}.bld .tblock>div{border-right:1px solid var(--hair-2);border-bottom:1px solid var(--hair-2);min-width:0;padding:10px 12px}.bld .tblock>div:nth-child(2n){border-right:0}.bld .tblock>div:nth-last-child(-n+2){border-bottom:0}.bld .tblock>div:last-child:nth-child(odd){border-right:0;grid-column:1/-1}.bld .tblock dt{font:500 var(--fs-label)/1.2 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-bottom:4px}.bld .tblock dd{font:400 14px/1.4 var(--f-sans);color:var(--ink);overflow-wrap:anywhere;margin:0}@media (width>=1000px){.bld .phero{grid-template-columns:minmax(0,7fr) minmax(0,5fr);height:clamp(440px,64vh,640px)}.bld .phero .shot{aspect-ratio:auto;height:100%}.bld .side{padding:28px 32px 24px}}.bld .sheet{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--paper);overflow:hidden}.bld .sheet .pending{text-align:center;place-items:center;min-height:220px;padding:24px;display:grid}.bld .sheet-foot{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);display:grid}.bld .sheet-foot>div{border-bottom:1px solid var(--hair-2);min-width:0;padding:12px 16px}.bld .sheet-foot>div:last-child{border-bottom:0}.bld .sheet-foot p:not(.label){font:300 19px/1.45 var(--f-serif);color:var(--ink-2);margin-top:4px}@media (width>=700px){.bld .sheet-foot{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.bld .sheet-foot>div{border-right:1px solid var(--hair-2);border-bottom:0}.bld .sheet-foot>div:last-child{border-right:0}}.bld .gal{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.bld .gal a{aspect-ratio:1;border-radius:var(--radius-inner);background:var(--hair);cursor:zoom-in;display:block;position:relative;overflow:hidden}.bld .gal picture{display:contents}.bld .gal img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out)}.bld .gal a:hover img{transform:scale(1.03)}.bld .gal a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.bld .gal .code{color:var(--on-dark);font:500 var(--fs-label)/1.2 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(to top, var(--scrim), transparent);padding:24px 10px 8px;position:absolute;bottom:0;left:0;right:0}.bld .gal a:first-child,.bld .gal a:last-child:nth-child(2n){aspect-ratio:16/9;grid-column:span 2}@media (width>=700px){.bld .gal{grid-template-columns:repeat(4,minmax(0,1fr))}.bld .gal a{aspect-ratio:4/3}.bld .gal a:first-child{aspect-ratio:auto;grid-row:span 2}.bld .gal a:last-child:nth-child(2n){aspect-ratio:4/3;grid-column:span 1}.bld .gal a:last-child:nth-child(4n+2){aspect-ratio:3;grid-column:1/-1}}.bld .next{max-width:var(--maxw);padding-inline:var(--gutter);gap:6px;margin-inline:auto;display:grid}.bld .next .panel{border-radius:var(--radius-card);background:var(--card);text-decoration:none;display:grid;overflow:hidden}.bld .next .txt{flex-direction:column;gap:10px;padding:24px 20px 28px;display:flex}.bld .next .nname{color:var(--ink);letter-spacing:-.03em;font-size:clamp(44px,6vw,88px);font-weight:300;line-height:.95}.bld .next .go{color:var(--ink);align-items:center;gap:12px;margin-top:auto;padding-top:16px;font-weight:500;display:inline-flex}.bld .next .go i{border:1px solid var(--ink);width:48px;height:48px;transition:background .3s var(--ease-out), color .3s var(--ease-out);border-radius:50%;place-items:center;font-style:normal;display:grid}.bld .next .panel:hover .go i,.bld .next .panel:focus-visible .go i{background:var(--ink);color:var(--card)}.bld .next .panel:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.bld .next .pic{aspect-ratio:3/2;margin:0;display:block;overflow:hidden}.bld .next .pic picture{display:contents}.bld .next .pic img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease-out)}.bld .next .panel:hover img{transform:scale(1.03)}.bld .next .all{min-height:44px;color:var(--accent-ink);align-items:center;padding:6px 4px;font-weight:500;text-decoration:none;display:inline-flex}.bld .next .all:hover{text-decoration:underline}@media (width>=1000px){.bld .next .panel{grid-template-columns:minmax(0,5fr) minmax(0,7fr);min-height:420px}.bld .next .txt{padding:36px}.bld .next .pic{aspect-ratio:auto}}@media (prefers-reduced-motion:reduce){.bld *,.bld :before,.bld :after{transition:none!important}.bld .door:hover img,.bld .proj:hover img,.bld .gal a:hover img,.bld .next .panel:hover img{transform:none}}
