.public-story[hidden]{display:none!important}.app.public-view{grid-template-rows:64px minmax(0,1fr)!important}.app.public-view>footer{display:none!important}.app.public-view>header{gap:18px;padding:0 24px;z-index:20}.app.public-view>header>.tagline,.app.public-view>header>.top-stat,.app.public-view>header>.header-spacer{display:none!important}.app.public-view>header>.brand{margin-right:auto;flex-shrink:0}.app.public-view>header>.milestones{display:flex;gap:20px;margin-left:auto;white-space:nowrap}.app.public-view .account-summary,.app.public-view .account-stats,.app.public-view .account-links>button:not(.public-edit){display:none}.public-edit{display:none}.public-view .public-edit{display:flex}.app.public-view>main{grid-row:2;overflow:hidden;touch-action:none}.public-view .mode-bar,.public-view .viewer-controls,.public-view .daylight-tools,.public-view .map-hud,.public-view #viewerHint,.public-view #modelLayers,.public-view #orthoLayers,.public-view .camera-marker,.public-view .siteflow-zone-card,.public-view #devicePanelDock,.public-view #orthoZoom{display:none!important}.public-view #scene{transition:filter .65s ease}.public-financial #scene{filter:blur(9px) brightness(.65)}.public-financial .siteflow-world-label-layer{visibility:hidden}.public-story{position:absolute;inset:0;z-index:6;pointer-events:none;color:#fff;background:linear-gradient(180deg,#10131580 0%,transparent 45%,#10131570 100%);font-family:Arial,sans-serif}.public-copy{position:absolute;top:clamp(24px,6vh,72px);left:clamp(24px,5vw,90px);right:24px;max-width:650px;text-shadow:0 2px 18px #0008}.public-eyebrow{font-size:12px;letter-spacing:.17em;text-transform:uppercase;color:#d0d2d0;margin:0 0 16px}.public-copy h1{font-size:clamp(32px,4.5vw,70px);letter-spacing:-.04em;line-height:1.05;margin:0 0 20px;font-weight:500}.public-description{font-size:clamp(14px,1.3vw,18px);line-height:1.65;max-width:490px;margin:0;white-space:pre-line}.public-metrics{display:flex;gap:40px;margin-top:28px}.public-metrics[hidden]{display:none}.public-metrics strong{display:block;font-size:clamp(24px,3vw,40px);font-weight:500}.public-metrics span{font-size:12px;color:#ccc;display:block;margin-top:6px}.public-bottom{position:absolute;bottom:max(22px,env(safe-area-inset-bottom));left:clamp(24px,5vw,90px);right:clamp(24px,5vw,90px);display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:11px;color:#ddd}.public-steps{display:flex;gap:10px;pointer-events:auto}.public-steps button{border:0;padding:12px 0;width:28px;background:transparent;cursor:pointer}.public-steps button:after{content:'';display:block;height:2px;background:#ffffff55}.public-steps button[aria-current=true]:after{background:#e45e69}.public-zone-dock{position:absolute;bottom:80px;left:clamp(24px,5vw,90px);width:min(760px,calc(100% - 48px));border:1px solid #ffffff30;border-radius:14px;padding:22px;background:#171c20bb;backdrop-filter:blur(18px);box-sizing:border-box}.public-zone-dock[hidden],.public-finance[hidden],.public-copy[hidden]{display:none}.public-zone-dock h2{font-size:20px;font-weight:500;margin:0 0 8px}.public-zone-dock p{font-size:13px;line-height:1.6;margin:0 0 16px;color:#ddd;max-height:14vh;overflow:auto;pointer-events:auto;white-space:pre-line}.public-zone-tabs{display:flex;gap:8px;pointer-events:auto}.public-zone-tabs button{flex:1;min-width:0;padding:14px 12px;background:#ffffff05;border:1px solid #ffffff25;border-radius:8px;color:#eee;text-align:left;font-size:12px;cursor:pointer}.public-zone-tabs button:before{content:'';display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:8px;background:var(--zone-color)}.public-zone-tabs button[aria-pressed=true]{border-color:var(--zone-color);background:#ffffff12}.public-finance{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(580px,calc(100% - 40px));box-sizing:border-box;padding:36px;background:#171c20b8;border:1px solid #ffffff30;border-radius:16px;backdrop-filter:blur(18px)}.public-finance h2{font-size:clamp(26px,3vw,40px);font-weight:500;letter-spacing:-.03em;margin:0 0 26px}.public-finance dl{display:grid;grid-template-columns:1fr 1fr;margin:0;gap:0}.public-finance dt,.public-finance dd{margin:0;border-top:1px solid #ffffff20;padding:18px 0;font-size:14px;overflow-wrap:anywhere}.public-finance dd{text-align:right;color:#ccc}.public-contact a{display:block;text-align:center;background:#a84049;color:#fff;border-radius:7px;padding:14px;margin-top:16px;text-decoration:none;pointer-events:auto}.public-view .iphone-gate{display:none!important}@media(max-width:760px){.app.public-view{grid-template-rows:82px minmax(0,1fr)!important}.app.public-view>header{height:82px!important;min-height:0;display:flex!important;flex-wrap:wrap;align-content:center;gap:7px 12px;padding:8px 14px!important}.app.public-view>header>.brand{height:25px;font-size:16px}.app.public-view>header>.milestones{order:3;width:100%;justify-content:center;gap:16px;margin:0}.app.public-view>header>.milestones button{font-size:10px;padding:5px 0}.app.public-view .account-menu-wrap{margin-left:auto}.public-copy{top:28px;left:24px}.public-copy h1{font-size:36px}.public-description{font-size:14px;max-width:340px;line-height:1.55}.public-metrics{gap:24px;margin-top:22px}.public-zone-dock{left:16px;width:calc(100% - 32px);padding:16px;bottom:76px}.public-zone-dock h2{font-size:17px}.public-zone-tabs button{padding:11px 8px;font-size:10px}.public-bottom{left:18px;right:18px;flex-wrap:wrap;gap:3px}.public-hint{width:100%;font-size:10px}.public-finance{padding:24px}.public-story[data-stage='2'] .public-description{display:none}.public-story[data-stage='2'] .public-copy h1{font-size:28px}}@media(prefers-reduced-motion:reduce){.public-view #scene{transition:none}}
.app.mode-resolved:not(.public-view)>nav,.app.mode-resolved:not(.public-view)>aside{animation:public-layout-in .25s ease-out}@keyframes public-layout-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.public-steps{position:static!important;width:auto!important;height:auto!important;flex-direction:row!important;padding:0!important;background:none!important;border:0!important}.public-view .account-menu{z-index:50}.public-view #assetsView,.public-view #devicesView{display:none!important}@media(prefers-reduced-motion:reduce){.app.mode-resolved:not(.public-view)>nav,.app.mode-resolved:not(.public-view)>aside{animation:none}}
body:has(.app.public-view)>.mobile-intro,body:has(.app.public-view)>.iphone-gate,body:has(.app:not(.mode-resolved))>.mobile-intro{display:none!important}

.public-scroll-cue{position:absolute;bottom:56px;left:50%;display:flex;flex-direction:column;align-items:center;gap:5px;transform:translateX(-50%);color:#fff9;font-size:10px;letter-spacing:.18em;pointer-events:none}.public-scroll-cue svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.3;animation:public-scroll-nudge 2s ease-in-out infinite}.public-story[data-stage="3"] .public-scroll-cue{display:none}.public-story[data-stage="2"] .public-description{display:block;font-size:16px;letter-spacing:.08em}@keyframes public-scroll-nudge{0%,100%{transform:translateY(-3px);opacity:.4}55%{transform:translateY(5px);opacity:1}}@media(prefers-reduced-motion:reduce){.public-scroll-cue svg{animation:none}}

@media(min-width:761px){.public-scroll-cue{display:none}}

.public-contact{margin-top:22px}.public-contact-heading{font-size:20px;letter-spacing:-.02em}.public-contact p{font-size:13px;color:#bbb;margin:8px 0 18px}.public-contact .public-contact-primary{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:#a84049;border:1px solid #ffffff20;border-radius:8px;transition:background .2s}.public-contact .public-contact-primary:hover{background:#bb4c56}.public-contact a:focus-visible{outline:2px solid #fff;outline-offset:4px}.public-contact .public-contact-email{background:none;padding:8px 0;margin-top:12px;font-size:13px;color:#ddd}.public-contact small{display:block;text-align:center;font-size:11px;color:#999;margin-top:2px}@media(max-height:700px){.public-finance{max-height:calc(100% - 88px);overflow:auto;pointer-events:auto}.public-finance dt,.public-finance dd{padding:10px 0}}

.public-intro-video{position:absolute;right:clamp(24px,5vw,90px);top:50%;transform:translateY(-50%);height:min(72vh,calc(100% - 120px));aspect-ratio:9/16;border:1px solid #ffffff40;border-radius:12px;overflow:hidden;background:#16191b;box-shadow:0 14px 50px #0005;pointer-events:auto}.public-intro-video[hidden]{display:none}.public-intro-video video{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.public-video-sound{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:38px;height:38px;padding:9px;border:1px solid #ffffff30;border-radius:50%;background:#13171bc9;color:#fff;cursor:pointer;backdrop-filter:blur(10px)}.public-video-sound svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.public-video-sound:focus-visible{outline:2px solid #fff;outline-offset:-4px}.has-intro-video .public-copy{max-width:min(490px,calc(100% - 9vw - 35vh))}@media(max-width:760px){.has-intro-video .public-copy{max-width:calc(100% - 48px)}.public-intro-video{top:auto;bottom:85px;right:18px;transform:none;height:clamp(150px,29vh,240px);border-radius:9px}.public-video-sound{width:32px;height:32px;right:7px;bottom:7px;padding:7px}.has-intro-video .public-description{max-height:24vh;overflow:auto;pointer-events:auto}}

.public-intro-video>video{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;aspect-ratio:9/16;object-fit:contain}

.public-video-open{position:absolute;inset:0;border:0;background:transparent;cursor:zoom-in;padding:0}.public-video-open:focus-visible{outline:2px solid white;outline-offset:-4px}.public-video-sound{z-index:2}.public-video-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;overflow:hidden;color:white}.public-video-dialog::backdrop{background:#050709e8;backdrop-filter:blur(10px)}.public-video-stage{position:absolute;inset:20px 64px;display:flex;align-items:center;justify-content:center;pointer-events:none}.public-video-stage video{display:block;width:auto!important;height:100%!important;max-width:100%!important;max-height:100%!important;aspect-ratio:9/16!important;object-fit:contain!important;border-radius:9px}.public-video-close{position:absolute;right:20px;top:20px;display:grid;place-items:center;width:44px;height:44px;padding:12px;border:1px solid #ffffff40;border-radius:50%;background:#202428bb;color:white;cursor:pointer}.public-video-close svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.5;fill:none}.public-video-close:focus-visible{outline:2px solid white;outline-offset:4px}@media(max-width:760px){.public-video-stage{inset:60px 12px 20px}.public-video-close{top:max(12px,env(safe-area-inset-top));right:12px}}

@media(max-width:760px){
.app{height:100dvh!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:82px minmax(0,1fr) calc(72px + env(safe-area-inset-bottom,0px))!important}
.app>header{grid-column:1!important;grid-row:1!important;height:82px!important;min-height:0;display:flex!important;flex-wrap:wrap;align-content:center;gap:7px 12px;padding:8px 14px!important}
.app>header>.brand{height:25px;font-size:16px;margin-right:auto;flex-shrink:0}.app>header>.tagline,.app>header>.top-stat,.app>header>.header-spacer{display:none!important}
.app>header>.account-menu-wrap{margin-left:auto}.app>header>.milestones{order:3;display:flex;align-items:center;width:100%;justify-content:center;gap:16px;margin:0;white-space:nowrap}.app>header>.milestones button{font-size:10px;padding:5px 0}
.app>main{grid-column:1!important;grid-row:2!important;min-height:0;min-width:0;width:100%}.app>aside,.app>footer{display:none!important}
/* Mobile Development: left navigation and the right inspector below the viewer. */
.app:not(.public-view){grid-template-columns:52px minmax(0,1fr)!important;grid-template-rows:82px minmax(0,1fr) clamp(170px,30dvh,270px)!important}
.app:not(.public-view)>header{grid-column:1/-1!important}
.app:not(.public-view)>main{grid-column:2!important;grid-row:2!important}
.app:not(.public-view)>nav{grid-column:1!important;grid-row:2/4!important;position:relative!important;inset:auto!important;display:flex!important;flex-direction:column!important;align-items:center;justify-content:flex-start;gap:9px;width:52px!important;height:auto!important;min-height:0;padding:12px 0 max(12px,env(safe-area-inset-bottom))!important;border:0;border-right:1px solid #ffffff20;background:#18191b;overflow-x:hidden;overflow-y:auto;z-index:4}
.app:not(.public-view)>nav>.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 auto;width:50px;min-height:46px;gap:4px;padding:4px 2px;font-size:9px;text-decoration:none;border-radius:7px}.app:not(.public-view)>nav .nav-icon{width:20px;height:20px;flex:none}
.app:not(.public-view)>aside{display:block!important;grid-column:2!important;grid-row:3!important;position:relative!important;inset:auto!important;width:100%!important;height:100%!important;min-height:0;max-height:none!important;margin:0;padding:14px 14px calc(14px + env(safe-area-inset-bottom,0px));border:0;border-top:1px solid #ffffff25;overflow:auto;overscroll-behavior:contain;background:#18191bf5;z-index:5}
.app:not(.public-view)>aside h2{font-size:16px}.app:not(.public-view)>aside .location-card{margin-bottom:12px}.app:not(.public-view)>aside .location-card strong{font-size:17px}
.app.public-view{grid-template-rows:82px minmax(0,1fr)!important}.app.public-view>nav{display:none!important}
.app:not(.public-view) .viewer-controls{bottom:16px;left:12px;gap:5px;max-width:calc(100% - 24px);flex-wrap:wrap}.app:not(.public-view) .mode-bar{bottom:66px;right:12px;gap:5px}.app:not(.public-view) #orthoLayers{bottom:110px;max-height:calc(100% - 160px);overflow:auto}.app:not(.public-view) #viewerHint{bottom:110px}
}

.public-film-intro,.public-film-links{position:absolute;top:50%;transform:translateY(-50%);width:clamp(180px,22vw,340px);color:#e5e5e3;font-family:Inter,Arial,sans-serif}.public-film-intro{left:5vw}.public-film-links{right:4vw;display:block;padding:0;border:0;background:none}.film-kicker{font-size:10px;line-height:1.5;letter-spacing:.17em;text-transform:uppercase;color:#a7aaad;margin:0 0 28px}.public-film-intro h2{font-size:clamp(38px,5vw,76px);font-weight:400;line-height:1;letter-spacing:-.055em;margin:0}.public-film-intro h2>span{display:block;font-size:17px;letter-spacing:-.01em;color:#aeb0b2;margin-top:20px}.film-summary{font-size:13px;line-height:1.75;color:#aeb0b2;margin:24px 0 36px}.film-area strong{display:block;font-size:clamp(26px,3vw,44px);font-weight:400;letter-spacing:-.035em}.film-area>span,.film-perimeter{font-size:11px;color:#92969a;line-height:1.8}.film-perimeter{margin-top:12px}.public-film-links>p[data-film-topic]{font-size:12px;line-height:1.8;color:#9a9da1;margin:0 0 34px;transition:color .5s}.public-film-links button{display:inline;padding:0 0 4px;margin:4px 0 6px;border:0;border-bottom:1px solid #ffffff35;background:none;color:#e3e4e2;font:inherit;font-size:clamp(18px,2vw,28px);letter-spacing:-.025em;cursor:pointer;text-align:left;transition:color .2s,border-color .2s}.public-film-links button span{font-size:15px;margin-left:10px;color:#bc5961}.public-film-links button:hover,.public-film-links button:focus-visible{color:white;border-color:#d75d68;outline:none}.public-film-links small{display:block;font-size:11px;color:#83888c}.public-film-links .is-current button{border-color:#bd5962;color:#fff}.public-video-stage{inset:20px 30vw}.public-film-links>p:last-child{margin-bottom:0}@media(max-width:1000px){.public-film-intro{display:none}.public-video-stage{inset:40px 24px 100px}.public-film-links{top:auto;bottom:max(14px,env(safe-area-inset-bottom));left:16px;right:16px;width:auto;transform:none;display:flex;align-items:center;justify-content:center;gap:20px}.public-film-links>.film-kicker,.public-film-links small{display:none}.public-film-links>p[data-film-topic]{margin:0;font-size:0;line-height:1}.public-film-links button{font-size:12px;margin:0;padding:12px 0;white-space:nowrap}.public-film-links button span{font-size:11px;margin-left:3px}.public-film-links br{display:none}}@media(prefers-reduced-motion:reduce){.public-film-links>p[data-film-topic],.public-film-links button{transition:none}}

/* Mobile workspace navigation separates the viewer from the inspector. */
@media(max-width:760px){
.app:not(.public-view){grid-template-columns:minmax(0,1fr)!important;grid-template-rows:82px minmax(0,1fr) 62px clamp(150px,28dvh,250px)!important}
.app:not(.public-view)>main{grid-column:1!important;grid-row:2!important}
.app:not(.public-view)>nav{grid-column:1!important;grid-row:3!important;display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-around;gap:0;width:100%!important;height:62px!important;padding:4px 6px!important;border:0;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20;overflow-x:auto;overflow-y:hidden}
.app:not(.public-view)>nav>.nav-item{flex:1 0 42px;width:auto;min-width:42px;height:52px;min-height:0;gap:3px;padding:3px 2px;font-size:9px}
.app:not(.public-view)>nav .nav-site-capture br{display:none}
.app:not(.public-view)>aside{grid-column:1!important;grid-row:4!important;border-top:0}
}

.public-background-video{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;aspect-ratio:auto;z-index:5;pointer-events:none;opacity:0;visibility:hidden;background:#101315;transition:opacity .5s ease,visibility 0s .5s}.public-background-video.is-active{opacity:1;visibility:visible;transition:opacity .5s ease}.public-background-video.is-active~.public-story{background:linear-gradient(90deg,#080a0d99,transparent 75%),linear-gradient(0deg,#080a0d77,transparent 35%)}@media(prefers-reduced-motion:reduce){.public-background-video{transition:none}}

.public-compare{position:absolute;right:clamp(18px,5vw,90px);top:50%;transform:translateY(-50%);width:min(38vw,54vh,520px);border:1px solid #ffffff35;border-radius:12px;overflow:hidden;background:#202225d9;box-shadow:0 16px 48px #0005;pointer-events:none}.public-compare[hidden]{display:none}.public-compare-images{position:relative;aspect-ratio:2048/1638;overflow:hidden;background:#454545}.public-compare-images img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}.public-compare-caption{display:flex;justify-content:space-between;padding:12px 14px;font-size:11px;letter-spacing:.08em;color:#c8cbcd;background:#171a1de6}.has-compare .public-copy{max-width:45%}@media(max-width:760px){.public-compare{top:auto;bottom:92px;right:18px;transform:none;width:min(58vw,240px)}.public-compare-caption{padding:9px 11px;font-size:10px}.has-compare .public-copy{max-width:calc(100% - 48px)}}

.public-story.has-compare .public-finance{left:clamp(24px,5vw,90px);right:auto;top:50%;transform:translateY(-50%);width:min(42vw,520px)}@media(max-width:760px){.public-story.has-compare .public-finance{left:24px;right:24px;top:28px;transform:none;width:auto;max-height:calc(45% - 28px);overflow:auto}.public-story.has-compare .public-compare{left:50%;right:auto;bottom:76px;transform:translateX(-50%);width:min(78vw,40vh,340px)}}

.public-mapping-controls{position:absolute;right:clamp(18px,5vw,90px);bottom:80px;width:270px;padding:16px;border:1px solid #ffffff25;border-radius:12px;background:#171b1edb;backdrop-filter:blur(16px);pointer-events:auto}.public-mapping-controls[hidden]{display:none}.mapping-controls-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:12px}.mapping-controls-heading button{border:0;background:none;color:#aaa;font-size:11px;padding:6px;cursor:pointer}.mapping-controls-heading button:hover{color:white}.public-mapping-controls label{display:grid;grid-template-columns:56px 1fr 42px;align-items:center;gap:10px;margin:10px 0;font-size:11px;color:#c8cacc}.public-mapping-controls input{width:100%;margin:0;accent-color:#d45460;cursor:pointer}.public-mapping-controls output{text-align:right;font-variant-numeric:tabular-nums;font-size:10px;color:#92979d}@media(max-width:760px){.public-mapping-controls{right:16px;bottom:76px;width:min(270px,calc(100% - 32px));padding:12px 14px}}
