/* C03: native top-level scroll, compact floating action. No dock reservation. */
.floating-demo{display:flex!important;position:fixed;left:auto;right:24px;bottom:calc(18px + env(safe-area-inset-bottom));transform:none;width:auto;min-width:184px;min-height:46px;padding:0 17px;gap:22px;align-items:center;justify-content:space-between;background:#444fc5;color:#fff;border:1px solid #929af0;border-radius:12px;box-shadow:0 5px 16px #11163c33;font:600 12px/1.3 Manrope,Arial,sans-serif;z-index:50;transition:opacity .16s ease,background .16s ease;animation:none!important}
.floating-demo::before,.floating-demo::after{display:none!important}
.floating-demo:hover{background:#3540b5}.floating-demo:active{background:#29359b}.floating-demo:focus-visible{outline:3px solid #abb4ff;outline-offset:3px}
.floating-demo[hidden],.floating-demo[data-clearance=hidden]{opacity:0!important;visibility:hidden;pointer-events:none}
body.cta-neutral .floating-demo{background:#f4f3eb;color:#20283d;border-color:#c6c9dc;box-shadow:0 5px 16px #10192e25}
body.cta-neutral .floating-demo>span{color:#444fc5}
@media(min-width:1101px){.floating-demo.in-showcase{right:calc(50% - 92px)}}
@media(max-width:600px){.floating-demo{right:14px;bottom:calc(12px + env(safe-area-inset-bottom));min-width:174px;min-height:44px;padding:0 14px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.floating-demo{transition:none}}
/* One shared service workspace, three distinct illustrative modules. */
.continuity-board{gap:0;border:1px solid #a6b9b1;border-radius:16px;background:#f1f5ec;box-shadow:0 15px 38px #16362d12;overflow:hidden;grid-template-columns:1fr 1fr 1.1fr}
.continuity-board .after-option{border:0;border-radius:0;box-shadow:none;background:transparent;padding:25px;gap:0;min-width:0}
.continuity-board .after-option+.after-option{border-left:1px solid #b9c9bf}
.module-label{display:block;font:600 9px/1.4 Manrope,sans-serif;letter-spacing:.12em;color:#658077;margin-bottom:18px}
.continuity-board h3{font-size:25px;letter-spacing:-.035em;margin:0 0 10px}
.continuity-board .after-status{min-height:0;margin:0;font-size:12px;line-height:1.5}
.continuity-board .after-status strong{font-size:29px;font-weight:500;letter-spacing:-.05em;margin-right:3px}
.continuity-board .after-terms{margin:8px 0 0;font-size:10px;max-width:260px}
.continuity-board .after-description{font-size:12px;line-height:1.75;margin:20px 0 22px}
.continuity-board .after-action{margin-top:auto;font-size:11px;background:#e2ecdf;box-shadow:none}
.ownership-map{margin-top:24px;padding:20px 12px;border-radius:10px;background:linear-gradient(130deg,#dfe9dc,#edf2e4);border:1px solid #c1d0c1}
.ownership-assets{display:flex;justify-content:space-between;gap:5px}.ownership-assets span{font:500 10px Manrope;text-align:center;flex:1;padding:10px 3px;background:#f7faef;border:1px solid #c2d2c0;border-radius:5px}
.ownership-connector{height:22px;margin:0 15%;border-left:1px solid #8baa96;border-right:1px solid #8baa96;border-bottom:1px solid #8baa96;position:relative;border-radius:0 0 6px 6px}
.ownership-connector:after{content:'';position:absolute;top:0;bottom:-12px;left:50%;width:1px;background:#8baa96}
.ownership-destination{display:flex;align-items:center;justify-content:center;gap:10px;margin:12px auto 0;padding:12px 5px;color:#2c5a4c;font:600 12px Manrope}
.ownership-destination svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5}
.maintenance-functions{margin:19px 0 23px;border-top:1px solid #c1d0c1}
.maintenance-functions>div{display:flex;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #c1d0c1;font-size:12px}
.maintenance-functions svg{width:24px;height:24px;fill:none;stroke:#688b7b;stroke-width:1.35;flex:none}
.maintenance-functions small{display:block;font-size:10px;margin-top:3px;color:#6b8277}
.sprint-cycle{margin-top:19px}.cycle-stages{display:flex;justify-content:space-between;align-items:center;font-size:10px;gap:3px}.cycle-stages i{color:#789688;font-style:normal}
.sprint-focus{display:flex;gap:11px;align-items:center;margin-top:15px;padding:15px 12px;border:1px solid #a6bda9;border-radius:9px;background:linear-gradient(130deg,#dce9d5,#e8efdf)}
.sprint-focus>span{font-size:25px;color:#567c65}.sprint-focus strong{display:block;font:600 13px Manrope}.sprint-focus small{display:block;margin-top:5px;font-size:10px;color:#607c68}
@media(max-width:1100px){.continuity-board .after-option{padding:20px}.continuity-board h3{font-size:22px}.ownership-assets{flex-direction:column}.ownership-assets span{padding:7px}.ownership-connector{height:13px}.ownership-map{padding:13px}.continuity-board .after-description{font-size:11px}}
@media(max-width:800px){.continuity-board{display:flex;flex-direction:column}.continuity-board .after-option{padding:25px}.continuity-board .after-option+.after-option{border-left:0;border-top:1px solid #b9c9bf}.continuity-board h3{font-size:27px}.ownership-assets{flex-direction:row}.ownership-map{margin-top:18px}.continuity-board .after-description{font-size:13px;margin-block:18px}.maintenance-functions{margin-block:18px}.maintenance-functions>div{padding-block:12px}.continuity-board .after-action{margin-top:4px}.module-label{margin-bottom:12px}.cycle-stages{font-size:11px}.sprint-cycle{margin-top:20px}}
@media(max-width:359px){.continuity-board .after-option{padding:19px}.continuity-board h3{font-size:24px}.ownership-assets span{font-size:9px}.continuity-board .after-action{font-size:10px}}
/* Showcases have one fine physical edge; the site keeps its own brand. */
.showcase-site{outline:1px solid #5b655d55;box-shadow:0 2px 0 #fff9 inset,0 3px 0 #858c7966,0 20px 35px -15px #16201955,0 0 0 4px #e7ebdf50}
.showcase-current .showcase-site{outline-color:#9eaf9770;box-shadow:0 1px 0 #cfddbb45 inset,0 3px 0 #07150bcc,0 22px 38px -14px #030f0aaa,0 0 0 4px #9aac9228}
.showroom-summary .showcase-site{box-shadow:0 1px 0 #fff6 inset,0 2px 0 #53635255,0 13px 22px -11px #16201966,0 0 0 2px #d8e1d550}
.demo-concept-object .screen-face{outline:1px solid #82999180;box-shadow:0 3px 0 #647f6c55,0 15px 25px -16px #133c3170}
@media(max-width:600px){.showcase-site{box-shadow:0 1px 0 #fff9 inset,0 2px 0 #858c7966,0 12px 21px -12px #16201966,0 0 0 2px #e7ebdf70}.showcase-current .showcase-site{box-shadow:0 1px 0 #cfddbb45 inset,0 2px 0 #07150bcc,0 12px 23px -10px #030f0a88,0 0 0 2px #9aac9240}}
/* Distinct finite cues retain the existing illustration material family. */
.delivery-stage.art-arrive .compass-object{animation:direction-resolve .85s ease-out both}
.delivery-stage.art-arrive .assembly-tool{animation:assembly-fit .8s ease-out both}
.delivery-stage.art-arrive .release-object{animation:release-rise .8s ease-out both}
@keyframes direction-resolve{from{opacity:.3;transform:rotate(-18deg)}to{opacity:1;transform:rotate(0)}}
@keyframes assembly-fit{from{opacity:.3;transform:translate(13px,-15px)}to{opacity:1;transform:translate(0,0)}}
@keyframes release-rise{from{opacity:.3;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
/* Commissioning: origin, first room, pendant, garage. No endless energy loop. */
.current-studio .c-terminal{animation:none!important}
.c-commission-panel{opacity:var(--c-panel)}
.current-studio .c-route{filter:none;stroke-width:4;stroke:#e7ddb0}
.current-studio .c-light-route{stroke-dashoffset:calc(1 - var(--c-light-run));opacity:calc(.18 + var(--c-lights)*.65)}
.c-kitchen-route{stroke-dashoffset:calc(1 - var(--c-kitchen-run));opacity:calc(.18 + var(--c-room-two)*.65)}
.current-studio .c-ev-route{stroke:#b7e5dd;stroke-dashoffset:calc(1 - var(--c-ev-run));opacity:calc(.18 + var(--c-ev)*.65)}
.current-studio .c-pulse{filter:none;stroke-width:7}
.c-kitchen-pulse{stroke:#fff5d7;stroke-dashoffset:calc(.075 - var(--c-kitchen-run));opacity:var(--c-kitchen-spark)}
.c-living-spill{opacity:var(--c-lights)}.c-kitchen-spill{opacity:var(--c-room-two)}.c-garage-spill{opacity:var(--c-ev)}
.current-studio .c-room-light{mix-blend-mode:normal}.current-studio .c-light-dot,.current-studio .c-ev-response{filter:none}
.showcase.manual-world .c-living-spill{transition:opacity .45s ease .1s}.showcase.manual-world .c-kitchen-spill{transition:opacity .45s ease .25s}.showcase.manual-world .c-garage-spill{transition:opacity .45s ease .3s}
.showcase.manual-world [data-manual-circuit=lighting] .c-kitchen-pulse{animation:c-route-arrival .85s ease-out .15s both}
.reduced-scene .current-studio *,.motion-paused .current-studio *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.current-studio *{animation:none!important;transition:none!important}}
