/* Watch a house get built. Without scripts or WebGL the ten stages read as an illustrated list. */
.bd{position:relative;background:var(--deep);color:var(--paper)}
.bd canvas,.bd-labels,.bd-hud{display:none}
.bd-steps{list-style:none;margin:0;padding:clamp(40px,6vw,90px) var(--pad);display:grid;gap:clamp(28px,4vw,56px);max-width:1180px;margin-inline:auto}
.bd-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(18px,3vw,44px);align-items:center}
.bd-step figure{margin:0;border-radius:3px;overflow:hidden;background:#cfe0ea;aspect-ratio:16/10}
.bd-step img{display:block;width:100%;height:100%;object-fit:cover}
.bd-k{font:600 11px/1.3 "Manrope",sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze-l);margin:0 0 10px;display:flex;gap:10px;flex-wrap:wrap;align-items:baseline}
.bd-k b{font:400 30px/1 "Fraunces",serif;letter-spacing:0;color:var(--paper)}
.bd-step h2{font:400 clamp(26px,2.5vw,36px)/1.12 "Fraunces",serif;margin:0 0 12px;color:var(--paper);letter-spacing:-.01em}
.bd-step p{margin:0 0 10px;font:400 16px/1.55 "Manrope",sans-serif;color:#E9E3D6;max-width:56ch}
.bd-f{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.bd-f li{display:grid;grid-template-columns:104px 1fr;gap:12px;font:400 14px/1.45 "Manrope",sans-serif;color:#E9E3D6;border-top:1px solid rgba(253,250,243,.16);padding-top:8px}
.bd-f b{font:600 10.5px/1.5 "Manrope",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze-l)}
.bd-f .g b{color:#F0C173}
.bd-cta{display:inline-block;margin-top:14px;font:600 11.5px/1.2 "Manrope",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#1B2B33;background:#F0C173;padding:14px 18px;border-radius:2px;text-decoration:none}.bd-cta:hover{background:#FDFAF3}.bd-cta:focus-visible{outline:2px solid #FDFAF3;outline-offset:3px}
@media(max-width:820px){.bd-step{grid-template-columns:1fr}}

/* live version */
.bd-on{height:1180vh}.bd-on.bd-15{height:1770vh}
.bd-on .bd-stick{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.bd-on canvas{display:block;position:absolute;inset:0;width:100%;height:100%}
.bd-on .bd-labels{display:block;position:absolute;inset:0;pointer-events:none;overflow:hidden}
.bd-fade{position:absolute;inset:0;background:#f4f7f8;opacity:0;pointer-events:none}
.bd-lab{position:absolute;left:0;top:0;font:600 11.5px/1 "Manrope",sans-serif;letter-spacing:.04em;color:#1F2328;background:rgba(253,250,243,.94);padding:6px 9px 6px;border-radius:2px;white-space:nowrap;opacity:0;transition:opacity .45s;box-shadow:0 4px 14px -6px rgba(0,0,0,.45);will-change:transform}
.bd-lab::after{content:"";position:absolute;left:50%;top:100%;width:1px;height:22px;background:rgba(253,250,243,.94)}
.bd-lab::before{content:"";position:absolute;left:50%;top:calc(100% + 22px);width:7px;height:7px;margin:-3px 0 0 -3.5px;border-radius:50%;background:#C4623F;box-shadow:0 0 0 2px rgba(253,250,243,.94)}
.bd-lab.on{opacity:1}
.bd-lab.bd-ok{background:#1B2B33;color:#F0C173;border:1.5px solid #F0C173;letter-spacing:.14em;text-transform:uppercase;font-size:11px;padding:9px 12px 9px 30px;transform-origin:50% 50%}.bd-lab.bd-ok::after{left:11px;top:50%;width:11px;height:6px;margin-top:-6px;background:none;border-left:2px solid #F0C173;border-bottom:2px solid #F0C173;transform:rotate(-45deg)}.bd-lab.bd-ok::before{display:none}
.bd-on .bd-steps{position:absolute;left:var(--pad);bottom:clamp(20px,4vh,48px);width:min(440px,calc(100% - 2*var(--pad)));padding:0;margin:0;display:block;max-width:none}
.bd-on .bd-step{position:absolute;left:0;bottom:0;width:100%;display:block;background:rgba(27,43,51,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(253,250,243,.14);border-radius:3px;padding:22px 24px 20px;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .5s,transform .6s var(--ease),visibility 0s .5s}
.bd-on .bd-step.on{opacity:1;visibility:visible;transform:none;transition:opacity .5s .1s,transform .6s .1s var(--ease)}
.bd-on .bd-step figure{display:none}
.bd-on .bd-step h2{font-size:clamp(23px,2vw,29px)}
.bd-on .bd-step p{font-size:14.5px;line-height:1.5}
.bd-on .bd-f li{font-size:13px;grid-template-columns:92px 1fr}
.bd-on .bd-hud{display:flex;position:absolute;left:var(--pad);right:var(--pad);top:108px;align-items:center;gap:16px;color:#1F2328;background:rgba(253,250,243,.92);padding:6px 6px 6px 18px;border-radius:3px;box-shadow:0 8px 24px -14px rgba(0,0,0,.5);font:600 11px/1 "Manrope",sans-serif;letter-spacing:.16em;text-transform:uppercase;transition:color .6s}
.bd-n{font-variant-numeric:tabular-nums}
.bd-t{color:#8C5925;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.bd-n,.bd-play{white-space:nowrap;flex:none}
.bd-bar{flex:1;height:2px;background:rgba(31,35,40,.18);position:relative;min-width:40px}
.bd-bar i{position:absolute;inset:0;background:#C4623F;transform-origin:0 50%;transform:scaleX(0)}
.bd-ph{display:flex;align-items:center;gap:3px;flex:none}.bd-ph b{font-weight:600;margin-right:6px;color:#5F666D}.bd-ph i{font-style:normal;width:20px;height:20px;display:grid;place-items:center;border:1px solid rgba(31,35,40,.3);border-radius:50%;font-size:10px;letter-spacing:0;color:#5F666D;transition:background .4s,color .4s,border-color .4s}.bd-ph i.done{background:rgba(31,35,40,.12);border-color:transparent}.bd-ph i.on{background:#9C4A2F;border-color:#9C4A2F;color:#FDFAF3}
.bd-on .bd-stick::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 90% at 60% 45%,transparent 55%,rgba(20,24,28,.34) 100%)}
.bd-ask{font:inherit;letter-spacing:inherit;text-transform:inherit;color:#9C4A2F;text-decoration:none;border-bottom:1px solid currentColor;padding:4px 0;white-space:nowrap;flex:none}.bd-ask:hover{color:#1F2328}.bd-snd{font:inherit;letter-spacing:inherit;text-transform:inherit;color:#1F2328;background:none;border:1px solid rgba(31,35,40,.35);border-radius:2px;padding:0 12px;min-height:44px;cursor:pointer;white-space:nowrap;flex:none}.bd-snd[aria-pressed="true"]{background:#9C4A2F;border-color:#9C4A2F;color:#FDFAF3}.bd-snd:focus-visible,.bd-ask:focus-visible{outline:2px solid #1F2328;outline-offset:3px}
.bd-real{background:var(--deep);color:var(--paper);padding:clamp(48px,6vw,96px) 0}.bd-real .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,64px);align-items:center}.bd-real h2{color:var(--paper);margin:8px 0 14px}.bd-real p{color:#E9E3D6;max-width:44ch}.bd-real .meta{color:var(--bronze-l)}.bd-real .ph-fig{margin:0;position:static}.bd-real .plate-cap,.bd-real .plate-cap b{color:#FDFAF3}@media(max-width:820px){.bd-real .wrap{grid-template-columns:1fr}}
.bd-play{font:inherit;letter-spacing:inherit;text-transform:inherit;color:#FDFAF3;background:#1F2328;border:0;border-radius:2px;padding:12px 16px;min-height:44px;cursor:pointer}
.bd-play:focus-visible,.bd-rail button:focus-visible{outline:2px solid #1F2328;outline-offset:3px}
.bd-rail{position:absolute;right:calc(var(--pad) - 6px);top:50%;transform:translateY(-50%);display:none;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}
.bd-on .bd-rail{display:flex}
.bd-rail button{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-height:30px;min-width:44px;padding:0 6px;background:none;border:0;cursor:pointer;font:600 10.5px/1 "Manrope",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#1F2328}
.bd-rail span{opacity:0;transform:translateX(6px);transition:opacity .3s,transform .3s;background:rgba(253,250,243,.94);padding:5px 8px;border-radius:2px}
.bd-rail button::after{content:"";width:9px;height:9px;border-radius:50%;border:1.5px solid #1F2328;background:rgba(253,250,243,.7);flex:none;transition:transform .3s,background .3s}
.bd-rail button[aria-current="step"]::after{background:#C4623F;border-color:#C4623F;transform:scale(1.5)}
.bd-rail button:hover span,.bd-rail button:focus-visible span,.bd-rail button[aria-current="step"] span{opacity:1;transform:none}
.bd-dusk .bd-rail button{color:#FDFAF3}.bd-dusk .bd-rail button::after{border-color:#FDFAF3}.bd-dusk .bd-rail span{color:#1F2328}
@media(max-width:1250px){.bd-ph b{display:none}}
@media(min-width:1100px){.bd-on .bd-steps{width:min(900px,calc(100% - 2*var(--pad) - 150px))}.bd-on .bd-step>div{display:grid;grid-template-columns:1.2fr 1fr;column-gap:30px;align-items:start}.bd-on .bd-step>div>*{grid-column:1}.bd-on .bd-step .bd-f{grid-column:2;grid-row:1/span 5;margin-top:4px}.bd-on .bd-step .bd-cta{grid-column:2;justify-self:start}.bd-on .bd-step{padding:18px 24px 16px}.bd-on .bd-step p{margin-bottom:4px}}
@media(max-width:820px){
  .bd-on .bd-hud{top:76px;gap:10px;font-size:10px;letter-spacing:.12em;left:10px;right:10px;padding-left:12px}
  .bd-on .bd-steps{left:10px;width:calc(100% - 20px);bottom:calc(70px + env(safe-area-inset-bottom))}
  .bd-on .bd-step{padding:14px 16px 13px}
  .bd-on .bd-step h2{font-size:21px;margin-bottom:6px}
  .bd-on .bd-step p{font-size:13.5px;line-height:1.45;margin-bottom:6px}
  .bd-on .bd-f{margin-top:8px;gap:5px}.bd-on .bd-f li{font-size:12.5px;grid-template-columns:78px 1fr;padding-top:5px}
  .bd-k{font-size:10px;margin-bottom:6px}.bd-k b{font-size:22px}
  .bd-on .bd-rail{display:none}.bd-ask{display:none}.bd-snd{padding:0 9px}.bd-ph b{display:none}.bd-ph i{width:15px;height:15px;font-size:8.5px}.bd-ph{gap:2px}.bd-bar{display:none}.bd-t{flex:1}
  .bd-lab{font-size:10.5px;padding:5px 7px}
  .bd-play{padding:10px 12px}
}
@media(max-width:820px){.bd-on .bd-step{max-height:calc(100vh - 290px);max-height:min(calc(100svh - 290px),54svh);overflow-y:auto}.bd-play{font-size:0!important;padding:0 15px!important}.bd-play::before{content:"\25B6";font-size:13px;letter-spacing:0}.bd-play[aria-pressed="true"]::before{content:"\275A\275A";font-size:11px}}
@media(max-width:820px) and (max-height:700px){.bd-on .bd-step p.x{display:none}.bd-on .bd-step{max-height:calc(100svh - 330px)}}
@media(prefers-reduced-motion:reduce){.bd-on .bd-step,.bd-lab{transition:none}}

/* page furniture */
.bd-head{background:var(--paper);padding:calc(96px + clamp(30px,4vw,64px)) 0 clamp(30px,4vw,56px)}
.bd-head h1{max-width:16ch}
.bd-head .lede{max-width:58ch;margin-top:clamp(18px,2vw,30px)}
.bd-note{font:400 13.5px/1.5 "Manrope",sans-serif;color:var(--ink-mute);margin-top:18px;max-width:62ch}
.bd-sum{padding:clamp(56px,7vw,110px) 0;background:var(--paper)}
.bd-sum+.bd-sum{background:var(--paper-2)}
.bd-sum h2{max-width:22ch;margin-bottom:clamp(20px,2.4vw,36px)}
.bd-tl{width:100%;border-collapse:collapse;font:400 15.5px/1.45 "Manrope",sans-serif}
.bd-tl th,.bd-tl td{text-align:left;vertical-align:top;padding:14px 16px 14px 0;border-top:1px solid var(--rule)}
.bd-tl thead th{font:600 11px/1.3 "Manrope",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);border-top:0}
.bd-tl tbody th{font:400 19px/1.25 "Fraunces",serif;color:var(--ink);white-space:nowrap;padding-right:22px}
.bd-tl td:nth-child(2){white-space:nowrap;color:var(--bronze-t);font-weight:600}
.bd-tl tfoot td,.bd-tl tfoot th{font-weight:600;border-top:2px solid var(--ink)}
.bd-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(16px,2vw,28px);list-style:none;margin:0;padding:0;counter-reset:g}
.bd-g li{counter-increment:g;border-top:2px solid var(--ink);padding-top:14px;font:400 15px/1.5 "Manrope",sans-serif;color:var(--ink-soft)}
.bd-g li::before{content:counter(g,decimal-leading-zero);display:block;font:600 11px/1 "Manrope",sans-serif;letter-spacing:.16em;color:var(--terracotta-t);margin-bottom:10px}
.bd-g b{display:block;font:400 21px/1.2 "Fraunces",serif;color:var(--ink);margin-bottom:6px}
.bd-more{margin-top:clamp(24px,3vw,40px);font:400 15.5px/1.6 "Manrope",sans-serif;max-width:68ch}
@media(max-width:700px){.bd-tl thead{display:none}.bd-tl tr{display:block;border-top:1px solid var(--rule);padding:12px 0}.bd-tl th,.bd-tl td{display:block;border:0;padding:2px 0}.bd-tl tbody th{white-space:normal}.bd-tl tfoot tr{border-top:2px solid var(--ink)}}
