@font-face{font-family:Manrope;font-weight:200 800;font-display:swap;src:url('assets/manrope-latin-wght-normal.woff2')}@font-face{font-family:Libre;src:url('assets/libre-baskerville-latin-400-italic.woff2');font-style:italic}:root{font-family:Manrope,Arial,sans-serif;font-size:16px;color:#f7faf8;background:#1e2b2d;--bg:#1e2b2d;--panel:#274743;--green:#80ddb1;--line:#ffffff20;--muted:#adc3bc}*{box-sizing:border-box}body{margin:0;height:100dvh;display:grid;grid-template-rows:82px 3px minmax(0,1fr) 72px;overflow:hidden}button,input,select,textarea{font:inherit}button,a,select{cursor:pointer}button{color:inherit}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--green);outline-offset:3px}[hidden]{display:none!important}header{display:flex;align-items:center;padding:0 3vw;gap:24px;border-bottom:1px solid var(--line);background:var(--bg);z-index:3}.brand img{width:157px;display:block}.studio-label{font-size:14px;border-left:1px solid var(--line);padding-left:24px;white-space:nowrap}.studio-label b{color:var(--green)}.header-actions{margin-left:auto;display:flex;align-items:center;gap:12px}select{color:white;background:var(--panel);border:1px solid #ffffff30;border-radius:8px;padding:9px;max-width:100%}.icon-button{background:none;border:0;font-size:25px;padding:5px}#headerSteps{display:flex;gap:15px;font-size:12px;color:#78968b;margin-left:25px}#headerSteps .current{color:var(--green)}#progress{background:#ffffff0b}#progress div{height:3px;background:var(--green);transition:width .3s}#app{overflow:auto;min-height:0}footer{padding:0 3vw;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);gap:20px;background:var(--bg)}#footerNote{color:var(--muted);font-size:12px}#footerActions{display:flex;gap:12px;align-items:center}.page{max-width:1440px;margin:auto;padding:32px 4vw}.eyebrow{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--green);font-weight:700}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.5rem,4.1vw,4.6rem);font-weight:500;letter-spacing:-.055em;line-height:1.12;margin:18px 0 24px}h1 em{color:var(--green);font-family:Libre,Georgia,serif;font-weight:400}h2{font-size:28px;font-weight:500;letter-spacing:-.04em;margin:8px 0 18px}h3{font-size:17px;margin:0 0 12px}p{line-height:1.6}.muted,.note{color:var(--muted)}.note{font-size:12px;line-height:1.6;margin:12px 0}.primary,.secondary,.text-button{padding:12px 21px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;font-size:14px;font-weight:650;border:1px solid transparent}.primary{background:var(--green);color:var(--bg)}.primary:hover{background:#b8f0d5}.secondary{background:transparent;border-color:#ffffff35;color:#fff}.secondary:hover{background:#ffffff0b}.text-button{background:transparent;color:var(--muted);padding:9px 0}.wide{width:100%}.welcome{display:grid;grid-template-columns:1.1fr 1fr;gap:6vw;align-items:center;min-height:calc(100dvh - 220px)}.welcome .intro{max-width:570px;color:var(--muted)}.welcomeImage{width:100%;max-height:260px;object-fit:cover;border-radius:16px;object-position:center}.form-panel,.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:28px}.form-panel .primary{margin-top:20px}.loginIcon{font-size:30px;color:var(--green);margin:0 0 30px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:block;font-size:14px;margin-bottom:15px}.field>span{display:block;margin-bottom:8px;color:#dbe6e1;line-height:1.45}.field input,.field textarea{width:100%;background:var(--bg);border:1px solid #ffffff30;border-radius:8px;color:#fff;padding:11px 13px;min-height:46px}.field select{width:100%;min-height:46px}.field input:invalid{box-shadow:none}.field input::placeholder{color:#839e94}.setupLayout{display:grid;grid-template-columns:minmax(420px,1fr) minmax(300px,.8fr);gap:35px}.setupLayout>.visualPanel{position:sticky;top:0;align-self:start}.visualPanel img{width:100%;border-radius:18px;border:1px solid var(--line)}.visualPanel .card{margin-top:18px}.statRow{display:flex;justify-content:space-between;gap:18px;font-size:14px;padding:12px 0;border-bottom:1px solid var(--line)}.statRow strong{color:var(--green);white-space:nowrap}.floorNav{display:flex;gap:8px;overflow:auto;padding-bottom:16px;margin-bottom:10px}.floorNav button{white-space:nowrap}.floorNav .active{background:var(--green);color:var(--bg);border-color:var(--green)}.sectionDivider{border-top:1px solid var(--line);padding-top:22px;margin-top:12px}.reviewGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.reviewCard img{width:100%;height:150px;object-fit:cover;border-radius:12px;margin-bottom:15px}.reviewCard{background:var(--panel);border:1px solid var(--line);padding:18px;border-radius:16px}.reviewCard .statRow{font-size:13px}.error{color:#ffbe9d;font-size:14px;line-height:1.5;min-height:20px}.check{display:flex;gap:9px;align-items:flex-start;font-size:14px;margin:14px 0;color:#dbe6e1;line-height:1.5}input[type=checkbox]{accent-color:var(--green);width:18px;height:18px;flex-shrink:0;margin:2px 0}.notice{padding:16px;background:#173f37;border:1px solid #80ddb130;border-radius:12px;font-size:13px;color:#c4dbcf;line-height:1.6}.summaryTiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.summaryTiles .card{padding:20px}.summaryTiles strong{display:block;font-size:28px;color:var(--green);margin-bottom:7px}.summaryTiles span{font-size:13px;color:var(--muted)}
#labView{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.labTop{padding:18px 24px 14px;display:flex;justify-content:space-between;align-items:center;gap:15px}.labTop h2{font-size:23px;margin:5px 0 0}.labActions{display:flex;gap:8px}.labActions button{padding:9px 14px;font-size:13px}.labGrid{display:grid;grid-template-columns:320px minmax(300px,1fr) 300px;min-height:0;border-top:1px solid var(--line)}#leftPanel,#rightPanel{overflow:auto;padding:20px 18px;scrollbar-width:thin;scrollbar-color:#577d6e transparent}#leftPanel{border-right:1px solid var(--line)}#rightPanel{border-left:1px solid var(--line)}#world{position:relative;overflow:hidden;min-height:380px;background:#203b39}#worldHost{position:absolute;inset:0}canvas{display:block;touch-action:none;width:100%;height:100%}.worldToolbar{position:absolute;top:15px;left:15px;right:15px;display:flex;flex-wrap:wrap;gap:8px;pointer-events:none}.worldToolbar button{pointer-events:auto;font-size:12px;padding:9px 13px;border:1px solid #ffffff35;background:#1e2b2dde;border-radius:25px;backdrop-filter:blur(10px)}.worldCaption{position:absolute;bottom:88px;left:18px;right:18px;font-size:12px;color:#d8e8df;background:#172d2dce;padding:8px 12px;border-radius:6px;pointer-events:none}.spaceBar{position:absolute;bottom:0;left:0;right:0;background:#1e2b2df2;border-top:1px solid var(--line);padding:14px 18px;display:flex;gap:15px;justify-content:space-between;align-items:center}.spaceBar select{max-width:45%;font-size:13px}.spaceBar strong{font-size:14px}.spaceBar small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.eventBar{padding:12px 22px;font-size:13px;min-height:47px;color:#c6dfd2;background:#22453e;border-top:1px solid var(--line)}.floorButton{width:100%;text-align:left;background:#274743;border:1px solid var(--line);border-radius:12px;padding:16px;margin:9px 0}.floorButton strong{display:block;font-size:15px;color:#ecf8f1}.floorButton span{display:block;font-size:12px;color:var(--muted);margin-top:7px;line-height:1.5}.floorButton:hover{border-color:var(--green)}.productRow{border:1px solid var(--line);background:#274743;border-radius:12px;margin:10px 0;overflow:hidden}.product{display:flex;align-items:center;gap:10px;width:100%;padding:11px 10px;background:transparent;border:0;text-align:left}.product.active{background:#365b50}.product img{width:47px;height:54px;background:white;object-fit:contain;border-radius:6px}.product strong{display:block;font-size:14px}.product small{display:block;font-size:12px;line-height:1.4;color:var(--muted);margin-top:5px}.product .plus{margin-left:auto;color:var(--green);font-size:20px}.viewProduct{font-size:12px;background:transparent;color:#bce0c8;border:0;border-top:1px solid var(--line);width:100%;padding:7px}.metric{border-bottom:1px solid var(--line);padding:16px 0}.metric>span{font-size:13px;color:var(--muted)}.metric>strong{display:block;font-size:26px;font-weight:500;letter-spacing:-.7px;margin:6px 0;color:#f3faf6}.metric small{font-size:12px;color:var(--muted);line-height:1.4;display:block}.impactHero{background:#30594c;border:1px solid #80ddb14d;border-radius:14px;padding:18px;margin:0 0 10px}.impactHero>span{font-size:13px;color:#c5dfcf}.impactHero>strong{font-size:32px;letter-spacing:-1px;color:var(--green);display:block;margin:9px 0}.impactHero>small{font-size:12px;color:#bad3c4;line-height:1.5;display:block}.breakdown{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;padding:10px 0;border-bottom:1px solid var(--line)}.breakdown strong{white-space:nowrap}.rules{margin-top:20px}.rules .check{font-size:13px}.panelImage{width:100%;border-radius:10px;margin:10px 0}#sceneError{position:absolute;inset:100px 30px auto;background:#1e2b2d;padding:20px;border-radius:12px;color:#ffcda9}dialog{background:#1e2b2d;color:#f7faf8;border:1px solid #ffffff28;border-radius:20px;padding:28px;width:min(900px,94vw);max-height:90dvh;overflow:auto}dialog::backdrop{background:#071b21bd;backdrop-filter:blur(8px)}.dialoghead{display:flex;justify-content:space-between;gap:20px}.close{font-size:25px;background:transparent;border:0;color:var(--muted);padding:0 8px;align-self:start}dialog .fields{margin:18px 0}.calc{background:#274743;padding:20px;border-radius:12px;font-size:13px;line-height:1.75;margin-top:20px}.calc a{color:#a3e7c6}.bookingRow{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:13px 0;font-size:14px;gap:15px}#toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:#dff5e8;color:#1e2b2d;padding:14px 22px;border-radius:12px;z-index:50;font-size:14px;display:none;max-width:90vw}#deviceDialog{width:min(1100px,95vw);padding:0;overflow:hidden}.devicehead{padding:22px 28px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.devicehead h2{margin:8px 0 0}.deviceLayout{display:grid;grid-template-columns:1fr 310px}#deviceStage{position:relative;min-height:500px;height:65vh;max-height:650px;overflow:hidden;background:#e6ebed}#deviceStage canvas{position:absolute;inset:0}.stageHint{position:absolute;bottom:20px;left:20px;z-index:1;font-size:12px;color:#586c74;pointer-events:none}#rotateDevice{position:absolute;top:20px;left:20px;z-index:1;background:#fff9;color:#1e2b2d;border:1px solid #bccdcc;border-radius:30px;padding:10px 14px;font-size:12px}.deviceDetail{padding:22px;overflow:auto;max-height:65vh}.deviceDetail img{width:100%;height:160px;object-fit:contain;background:#fff;border-radius:10px;margin:15px 0}.deviceDetail p{font-size:13px;line-height:1.6}.deviceDetail a{display:block;font-size:12px;color:#a7d4bd;margin-top:15px}.statusOptions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.statusOptions button{font-size:12px;border:1px solid var(--line);border-radius:8px;background:transparent;padding:10px 5px}.statusOptions .selected{background:var(--green);color:var(--bg)}#edgeChoice{display:flex;gap:8px;margin:16px 0}.deviceDetail .wide{margin-top:16px}
@media(max-width:1200px){#headerSteps{display:none}.labGrid{grid-template-columns:290px minmax(280px,1fr) 260px}.labTop{padding:15px}.labActions{flex-wrap:wrap;justify-content:end}.labActions button{font-size:12px}.setupLayout{grid-template-columns:1.1fr .8fr;gap:24px}.welcome{gap:4vw}.brand img{width:140px}}
@media(max-width:950px){.labGrid{grid-template-columns:285px minmax(320px,1fr)}#rightPanel{grid-column:1/-1;overflow:visible;display:grid;grid-template-columns:1fr 1fr;gap:14px;border-top:1px solid var(--line)}#rightPanel .rules{margin:0}#labView{overflow:auto;display:block}#world{height:560px}#leftPanel{max-height:560px}.labGrid{min-height:560px}.eventBar{position:sticky;bottom:0}.setupLayout{grid-template-columns:1fr}.visualPanel{display:none}.welcome{grid-template-columns:1fr 1fr}.reviewGrid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){body{grid-template-rows:70px 3px minmax(0,1fr) 75px}header{padding:0 18px;gap:12px}.brand img{width:130px}.studio-label{display:none}.page{padding:25px 20px}.welcome{display:block;min-height:0}.welcome h1{font-size:2.7rem}.welcomeImage{display:none}.welcome .form-panel{margin-top:24px}.fields{gap:12px}.field{font-size:13px}.form-panel,.card{padding:20px}footer{padding:10px 18px;gap:10px}#footerNote{max-width:40%;font-size:11px}.primary,.secondary{padding:11px 16px;font-size:13px}.reviewGrid{grid-template-columns:1fr}.summaryTiles{grid-template-columns:1fr;gap:10px}.labTop{display:block}.labActions{justify-content:start;margin-top:14px}.labGrid{display:flex;flex-direction:column}#leftPanel{order:1;max-height:none;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:7px}#leftPanel>.eyebrow,#leftPanel>.note,#leftPanel>h3{grid-column:1/-1}.productRow{margin:0}#world{order:0;height:500px;min-height:500px}#rightPanel{order:2;display:block;padding:20px}.worldCaption{bottom:92px;font-size:11px}.spaceBar{padding:12px}.eventBar{position:static}.deviceLayout{display:block;max-height:75vh;overflow:auto}#deviceStage{height:350px;min-height:350px}.deviceDetail{max-height:none}.devicehead{padding:18px}.devicehead h2{font-size:23px}dialog{padding:22px}.form-panel .fields{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.timeControl{pointer-events:auto;display:flex;gap:8px;align-items:center;background:#1e2b2dde;border:1px solid var(--line);border-radius:22px;padding:0 10px;font-size:12px}.worldToolbar .timeControl button{border:0;padding:5px;background:transparent}.timeControl input{width:85px;accent-color:var(--green)}.spaceBar>div{min-width:0}.spaceBar small{max-width:290px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

#incompatibleDialog{width:min(580px,92vw)}.productSpecs{font-size:13px}.productSpecs>div{padding:9px 0;border-bottom:1px solid #ffffff20}.productSpecs dt{color:#a9beb5}.productSpecs dd{margin:4px 0 0}.deviceDetail ul{padding-left:20px;line-height:1.65}.deviceDetail h3{margin-top:24px}#deviceProductInfo{margin-top:20px}

.equipmentToggle{display:flex;align-items:center;gap:10px;border:1px solid #80ddb1;background:#29433d;color:#e8fff2;font-weight:700;padding:11px 16px;border-radius:12px}.equipmentToggle.equipped{background:#80ddb1;color:#1e2b2d}.switchTrack{display:inline-flex;align-items:center;width:34px;height:20px;background:#142823;border-radius:20px;padding:3px}.switchTrack i{width:14px;height:14px;border-radius:50%;background:#e9f5ef;transition:transform .2s}.equipped .switchTrack i{transform:translateX(14px);background:#80ddb1}.quoteCard{padding:18px;border:1px solid #80ddb16a;border-radius:14px;background:#26443b;margin:16px 0;display:flex;flex-direction:column;gap:8px}.quoteCard>strong{font-size:26px;color:#80ddb1}.quoteCard small{line-height:1.5;color:#c1d7ca}.labTop{flex-shrink:0}.labTop>div:last-child{flex-wrap:wrap}.floorNav{max-height:170px;overflow:auto}

.fiveYearSummary{border-top:1px solid #80ddb150;padding-top:14px;margin-top:8px}.fiveYearSummary .statRow{gap:14px;font-size:12px}.positive{color:#80ddb1}.negative{color:#ffc09a}.projectionChart{padding:16px 0}.projectionYear{display:grid;grid-template-columns:48px 1fr 180px;align-items:center;gap:14px;margin:16px 0}.projectionYear small{text-align:right;font-size:11px}.costBar,.benefitBar{height:9px;border-radius:4px;min-width:1px}.costBar{background:#8caaa0;margin-bottom:4px}.benefitBar{background:#80ddb1}@media(max-width:600px){.projectionYear{grid-template-columns:40px 1fr}.projectionYear small{grid-column:2}}

.hardwareScope{border-bottom:1px solid #80ddb140;padding-bottom:12px}.hardwareScope summary{cursor:pointer;font-size:12px;color:#80ddb1}.hardwareScope .statRow{font-size:12px}.equipmentToggle{font-size:12px;padding:9px 12px}.labActions{flex-wrap:wrap}

.benefitHelp{font-size:12px;line-height:1.6;margin:12px 0}.benefitHelp summary{cursor:pointer;color:#80ddb1}.zeroSavings{padding:12px;background:#29433d;border-radius:9px;font-size:12px;line-height:1.5;color:#d6e7de}
.welcome{align-items:center;gap:clamp(32px,5vw,84px);max-width:1220px;margin:auto;padding-top:clamp(24px,4vh,64px);padding-bottom:32px}.welcome h1{font-size:clamp(36px,3.8vw,60px);line-height:1.16;letter-spacing:-.04em;margin:20px 0}.welcome .intro{max-width:580px;font-size:16px;line-height:1.6}.welcomeImage{max-height:260px;object-fit:cover;border-radius:20px}.welcome .form-panel{align-self:center;padding:36px;min-width:0}.welcome .form-panel h2{font-size:28px}.discoveryGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.discoveryCard{padding:0;overflow:hidden;text-align:left;border:1px solid #6e8b7d;background:#263d36;color:#ecf4ef;border-radius:18px}.discoveryCard.selected{border:2px solid #80ddb1;background:#315647}.discoveryCard img{width:100%;height:200px;object-fit:cover}.discoveryCard>div{padding:22px}.discoveryCard h3{font-size:22px;line-height:1.3}.discoveryCard p{font-size:16px;line-height:1.55}.discoveryCard small{font-size:14px;color:#b7d4c6}.painChips{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.customRow{display:grid;grid-template-columns:1fr 210px;gap:20px;padding:18px 0;border-bottom:1px solid #68857755}.floorPicker summary{cursor:pointer;font-size:14px}.floorPicker>label{margin:10px 0}.floorPicker{max-height:240px;overflow:auto}.conciseInvestment{margin-top:0;padding:18px;gap:8px}.conciseInvestment .impactHero{margin:-18px -18px 12px;border-radius:14px 14px 0 0}.conciseInvestment .impactHero .text-button{padding:0;color:#c7f1d9;font-size:13px}.investmentTotal{border-top:2px solid #80ddb1;margin-top:8px;padding-top:18px;font-size:16px}.balanceHighlight{padding:16px;background:#1b3028;border-radius:12px;display:grid;gap:10px}.balanceHighlight strong{font-size:26px}.operatingDetails>summary{padding:16px 0;cursor:pointer}.deviceDetail #devicePhoto{max-height:210px;object-fit:contain}.deviceDetail #deviceProductInfo{margin-top:26px}.deviceDetail #deviceProductInfo li,.deviceDetail #deviceProductInfo p,.deviceDetail .productSpecs{font-size:14px;line-height:1.6}#downloadDatasheet{margin-top:10px;margin-bottom:16px}.deviceDetail #deviceStateTitle{margin-top:12px}.floorNav{max-height:180px;overflow:auto}@media(max-width:800px){.discoveryGrid{grid-template-columns:1fr}.customRow{grid-template-columns:1fr}.welcome{gap:24px}.welcomeImage{max-height:220px}.welcome .form-panel{padding:24px}}
/* Studio diagnosis: separate challenge and environment selection, same card rhythm. */
.studioDiscovery{max-width:1700px;padding:38px 5vw 30px}.studioDiscovery .intro{max-width:570px}.studioGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:30px}.studioDiscovery .choice{position:relative;text-align:left;background:#243936;border:1px solid #ffffff25;border-radius:16px;overflow:hidden;padding:24px;min-height:180px;color:inherit;transition:.2s}.studioDiscovery .choice:hover{border-color:#86af95;transform:translateY(-2px)}.studioDiscovery .choice.selected{border-color:#80ddb1;background:#31564e}.studioDiscovery .number{font-size:12px;letter-spacing:.15em;color:#8da99c;margin-bottom:28px;display:block}.studioDiscovery .tick{position:absolute;right:20px;top:20px;border:1px solid #76958a;border-radius:50%;width:24px;height:24px;text-align:center;line-height:22px;font-size:13px;background:#243936}.studioDiscovery .selected .tick{background:#80ddb1;border-color:#80ddb1;color:#1e2b2d}.studioDiscovery .choice h3{font-size:1.1rem;font-weight:650;margin-bottom:8px}.studioDiscovery .choice p{font-size:14px;color:#adc3bc;margin:12px 0 0;line-height:1.65}.studioDiscovery .choice-image{width:calc(100% + 48px);height:125px;object-fit:cover;margin:-24px -24px 15px}.studioDiscovery .category{min-height:225px}.studioDiscovery .category .number{margin-bottom:13px}.studioDiscovery .badge{color:#80ddb1;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.studioDiscovery .counter{font-size:13px;color:#adc3bc}.studioDiscovery .topline,.reviewEquipment .topline{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:18px 0}.reviewEquipment{margin:24px 0;padding:24px;border:1px solid #ffffff25;border-radius:18px;background:#243936}.deviceSummary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.deviceSummaryItem{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;background:#1e2b2d;font-size:14px}.deviceSummaryItem img{height:48px;width:48px;object-fit:contain;border-radius:6px;background:white}.deviceSummaryItem strong{margin-left:auto;color:#80ddb1;font-size:20px}.reviewSpaceDevices{margin-top:20px;display:grid;gap:8px}.reviewSpaceDevices details{padding:14px;background:#243936;border-radius:10px;border:1px solid #ffffff25}.reviewSpaceDevices summary{cursor:pointer;font-size:14px}.reviewSpaceDevices summary small{float:right;color:#80ddb1}.reviewSpaceDevices details>div{display:flex;flex-wrap:wrap;gap:18px;padding-top:18px}.deviceDetail #deviceProductInfo>h3:nth-of-type(-n+3){font-size:14px;margin:18px 0 8px}.deviceDetail #deviceProductInfo>p,.deviceDetail #deviceProductInfo>ul li{font-size:13px;line-height:1.55}.deviceDetail #deviceProductInfo>ul{margin:8px 0 16px;padding-left:18px}@media(max-width:1000px){.studioGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.deviceSummary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.studioGrid,.deviceSummary{grid-template-columns:1fr}.reviewEquipment .topline{align-items:flex-start;flex-direction:column}.studioDiscovery{padding:26px 20px}}
.welcome{align-items:stretch;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.welcome>section{min-width:0;min-height:510px}.welcome>section:first-child{display:flex;flex-direction:column;gap:14px}.welcome .eyebrow{margin:0}.welcome h1{font-size:clamp(32px,3.2vw,48px);line-height:1.12;margin:0}.welcome .intro{margin:0;font-size:15px;line-height:1.55}.welcomeImage{display:block;flex:1;min-height:0;height:210px;width:100%;max-height:none;object-fit:contain;object-position:center bottom;border-radius:0;margin:0}.welcome .form-panel{align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-height:510px}.welcome .form-panel h2{margin-top:16px}@media(max-width:800px){.welcome{grid-template-columns:1fr}.welcome>section,.welcome .form-panel{min-height:0}.welcomeImage{flex:auto;height:220px;object-position:center}.welcome>section:first-child{gap:18px}}

@media(max-width:480px){.form-panel .representativeFields{grid-template-columns:1fr}}

.productCopy{flex:1;min-width:0}.productCopy strong{overflow-wrap:anywhere}.product{cursor:default;gap:12px;padding:15px 12px}.floorDeviceCount{display:block;font-size:12px;color:var(--green);margin-top:9px;line-height:1.4}.deviceToggle{flex:0 0 44px;width:44px;height:44px;border-radius:50%;border:1px solid var(--green);background:#80ddb11a;color:var(--green);font-size:26px;line-height:1;display:grid;place-items:center;padding:0;cursor:pointer}.deviceToggle:hover{background:var(--green);color:var(--bg)}.deviceToggle:focus-visible{outline:3px solid white;outline-offset:3px}#deviceConfirmDialog{width:min(510px,94vw)}#deviceConfirmDialog h2{font-size:24px}#deviceConfirmText{font-size:16px;line-height:1.6}.confirmActions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}@media(max-width:700px){#leftPanel{grid-template-columns:1fr}}

/* Login composition: intrinsic content height, centered independently of viewport height. */
#flowView.loginView{display:flex;min-height:100%;padding:32px;align-items:center;justify-content:center}
.loginView .welcome.page{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);width:1120px;max-width:100%;min-height:0;height:auto;margin:auto;padding:0;gap:64px;align-items:stretch;flex:0 1 1120px}
.loginView .welcome>section{min-height:0;min-width:0}
.loginView .welcome>section:first-child{display:flex;flex-direction:column;gap:16px}
.loginView .welcome h1{font-size:40px;line-height:1.14;letter-spacing:-.04em;margin:0}
.loginView .welcome .intro{font-size:16px;line-height:1.55;margin:0;max-width:none}
.loginView .welcomeImage{display:block;flex:none;width:100%;height:auto;aspect-ratio:3/2;max-height:none;min-height:0;object-fit:contain;object-position:center;margin:0;border-radius:0}
.loginView .welcome .form-panel{min-height:0;height:auto;align-self:stretch;padding:36px;display:flex;flex-direction:column;justify-content:center}
.loginView .welcome .form-panel h2{font-size:28px}
@media(max-width:767px){
 #flowView.loginView{padding:28px 20px;align-items:flex-start}
 .loginView .welcome.page{display:grid;grid-template-columns:minmax(0,1fr);width:100%;gap:28px;flex-basis:auto}
 .loginView .welcome h1{font-size:32px}
 .loginView .welcome .intro{font-size:15px}
 .loginView .welcome .form-panel{padding:28px;margin:0}
 .loginView .welcome .form-panel h2{font-size:26px}
}
.userChip{width:38px;height:38px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--panel);border:1px solid #ffffff35;color:var(--green);font-weight:700;font-size:13px;text-decoration:none}.userChip img{width:100%;height:100%;object-fit:cover}
