@import "https://fonts.googleapis.com/css2?family=Saira+Condensed:wght@600;700;800;900&family=Space+Grotesk:wght@400;500;600;700;800&family=Inter:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--bg-base:#080d1a;--bg-panel:#0d1526;--bg-elevated:#111d35;--bg-card:#162240;--accent-cyan:#00d4ff;--accent-cyan-dim:#00d4ff26;--accent-cyan-glow:#00d4ff66;--accent-green:#0f8;--accent-green-dim:#00ff881f;--accent-red:#ff3b30;--accent-red-dim:#ff3b3026;--accent-red-glow:#ff3b3080;--accent-amber:#ff8c00;--accent-amber-dim:#ff8c0026;--text-primary:#e8edf5;--text-secondary:#6b7fa3;--text-muted:#3a4a6b;--text-mono:#7fb3c8;--border-subtle:#ffffff0d;--border-panel:#00d4ff1f;--border-alert:#ff3b304d;--shadow-cyan:0 0 40px #00d4ff26, 0 0 80px #00d4ff0d;--shadow-red:0 0 40px #ff3b3040, 0 0 80px #ff3b301a;--brand-cyan:#00b4d8;--brand-orange:#e85d04;--brand-dark:#03071e;--font-brand:"Saira Condensed", "Arial Narrow", sans-serif;--font-display:"Space Grotesk", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Courier New", monospace;--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--ease-smooth:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--max-width:1400px;--section-padding:clamp(5rem, 10vw, 10rem)}[data-state=fault]{--ambient-hue:#ff3b300a}[data-state=repair]{--ambient-hue:#00ff8808}[data-state=normal]{--ambient-hue:#00d4ff05}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;overflow-x:hidden}body{font-family:var(--font-body);background:var(--bg-base);color:var(--text-primary);cursor:none;width:100%;line-height:1.6;position:relative;overflow-x:hidden}.cursor-dot{background:var(--accent-cyan);pointer-events:none;z-index:9999;mix-blend-mode:screen;border-radius:50%;width:8px;height:8px;transition:transform .1s,background .2s,width .2s,height .2s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-ring{pointer-events:none;z-index:9998;width:36px;height:36px;transition:transform .15s var(--ease-smooth), width .3s, height .3s, border-color .3s;border:1px solid #00d4ff80;border-radius:50%;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}:is(body:has(a:hover) .cursor-ring,body:has(button:hover) .cursor-ring){border-color:var(--accent-cyan);width:56px;height:56px}@media (hover:none){.cursor-dot,.cursor-ring{display:none}body{cursor:auto}}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.1}.text-display{letter-spacing:-.01em;font-size:clamp(3rem,8vw,7rem);font-weight:900;line-height:1;font-family:var(--font-brand);text-transform:uppercase}.text-headline{letter-spacing:-.01em;font-size:clamp(2rem,4vw,3.5rem);font-weight:800;font-family:var(--font-brand);text-transform:uppercase}.text-title{letter-spacing:0;font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:700;font-family:var(--font-display)}.text-brand{font-family:var(--font-brand);text-transform:uppercase;letter-spacing:.02em;color:var(--brand-cyan);font-weight:900}.text-brand-title{font-family:var(--font-brand);text-transform:uppercase;letter-spacing:.05em;font-weight:800}.text-mono{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-mono);font-size:.75rem}.text-label{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--text-secondary);font-size:.65rem}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 clamp(1.5rem,5vw,5rem)}.section{flex-direction:column;justify-content:center;min-height:100svh;display:flex;position:relative}.grid-bg{pointer-events:none;background-image:linear-gradient(#00d4ff08 1px,#0000 1px),linear-gradient(90deg,#00d4ff08 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.panel{background:var(--bg-panel);border:1px solid var(--border-panel);border-radius:12px;padding:1.5rem;position:relative;overflow:hidden}.panel:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-cyan), transparent);opacity:.4;height:1px;position:absolute;top:0;left:0;right:0}.panel-alert{border-color:var(--border-alert);background:#ff3b300d}.panel-alert:before{background:linear-gradient(90deg, transparent, var(--accent-red), transparent)}.btn-tech{border:1px solid var(--accent-cyan);color:var(--accent-cyan);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:.75rem;padding:.875rem 2rem;font-size:.75rem;text-decoration:none;transition:color .3s,box-shadow .3s;display:inline-flex;position:relative;overflow:hidden}.btn-tech:before{content:"";background:var(--accent-cyan);transition:transform .3s var(--ease-smooth);z-index:0;position:absolute;inset:0;transform:translate(-100%)}.btn-tech:hover:before{transform:translate(0)}.btn-tech:hover{color:var(--bg-base);box-shadow:var(--shadow-cyan)}.btn-tech>*{z-index:1;position:relative}.btn-tech-urgent{border-color:var(--accent-red);color:var(--accent-red)}.btn-tech-urgent:before{background:var(--accent-red)}.btn-tech-urgent:hover{color:#fff;box-shadow:var(--shadow-red)}.btn-tech-solid{background:var(--accent-cyan);color:var(--bg-base);font-weight:600}.btn-tech-solid:before{background:#fff}.btn-tech-solid:hover{color:var(--bg-base)}.status-dot{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.65rem;display:inline-flex}.status-dot:before{content:"";background:var(--accent-green);width:6px;height:6px;box-shadow:0 0 8px var(--accent-green);border-radius:50%;animation:2s ease-in-out infinite pulse-dot}.status-dot.alert:before{background:var(--accent-red);box-shadow:0 0 8px var(--accent-red);animation:.6s ease-in-out infinite pulse-dot-fast}.status-dot.warning:before{background:var(--accent-amber);box-shadow:0 0 8px var(--accent-amber);animation:1s ease-in-out infinite pulse-dot}.metric{flex-direction:column;gap:.25rem;display:flex}.metric-value{font-family:var(--font-mono);color:var(--accent-cyan);font-size:1.5rem;font-weight:500;line-height:1}.metric-label{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--text-secondary);font-size:.6rem}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--border-panel);border-radius:2px}::selection{background:var(--accent-cyan-dim);color:var(--accent-cyan)}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes pulse-dot-fast{0%,to{opacity:1}50%{opacity:.3}}@keyframes scan-line{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}@keyframes flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.3}94%{opacity:1}96%{opacity:.5}97%{opacity:1}}@keyframes glitch-h{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes rotate-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.glitch{animation:.3s step-end infinite glitch-h;position:relative}.glitch:before,.glitch:after{content:attr(data-text);width:100%;height:100%;position:absolute;top:0;left:0}.glitch:before{color:var(--accent-red);clip-path:polygon(0 0,100% 0,100% 35%,0 35%);animation:.2s step-end infinite reverse glitch-h;transform:translate(-3px)}.glitch:after{color:var(--accent-cyan);clip-path:polygon(0 65%,100% 65%,100% 100%,0 100%);animation:.25s step-end infinite glitch-h;transform:translate(3px)}.scan-line{background:linear-gradient(90deg, transparent, var(--accent-cyan), transparent);opacity:.03;pointer-events:none;z-index:100;height:2px;animation:8s linear infinite scan-line;position:fixed;top:0;left:0;right:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:768px){.text-display{font-size:clamp(2.5rem,12vw,4rem)}.text-headline{font-size:clamp(1.75rem,7vw,2.5rem)}.section{min-height:auto;padding:5rem 0}}
.intro-loader{background:var(--bg-base);z-index:9000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.intro-center{flex-direction:column;align-items:center;gap:2rem;width:min(480px,90vw);display:flex}.intro-logo{align-items:center;gap:1.5rem;margin-bottom:.5rem;display:flex}.intro-logo-text{flex-direction:column;gap:.1rem;display:flex}.intro-logo-name{font-family:var(--font-brand);color:var(--text-primary);letter-spacing:.12em;text-transform:uppercase;font-size:1.6rem;font-weight:900;line-height:1}.intro-logo-sub{font-family:var(--font-mono);letter-spacing:.2em;color:var(--brand-cyan);text-transform:uppercase;font-size:.55rem}.intro-boot-lines{background:var(--bg-panel);border:1px solid var(--border-panel);border-radius:8px;flex-direction:column;gap:.4rem;width:100%;padding:1rem 1.25rem;display:flex}.intro-boot-line{font-family:var(--font-mono);color:var(--text-mono);gap:.75rem;font-size:.7rem;display:flex}.intro-boot-prefix{color:var(--accent-cyan)}.intro-ok{color:var(--accent-green);margin-left:.5rem}.intro-progress-wrap{align-items:center;gap:1rem;width:100%;display:flex}.intro-progress-track{background:var(--border-subtle);border-radius:2px;flex:1;height:2px;overflow:hidden}.intro-progress-bar{background:linear-gradient(90deg, var(--accent-cyan), var(--accent-green));height:100%;box-shadow:0 0 10px var(--accent-cyan-glow);border-radius:2px;transition:width .1s linear}.intro-progress-pct{color:var(--accent-cyan);text-align:right;min-width:2.5rem}.intro-corner{width:20px;height:20px;position:absolute}.intro-corner:before,.intro-corner:after{content:"";background:var(--accent-cyan);opacity:.4;position:absolute}.intro-corner:before{width:100%;height:1px;top:0;left:0}.intro-corner:after{width:1px;height:100%;top:0;left:0}.intro-corner-tl{top:2rem;left:2rem}.intro-corner-tr{top:2rem;right:2rem;transform:scaleX(-1)}.intro-corner-bl{bottom:2rem;left:2rem;transform:scaleY(-1)}.intro-corner-br{bottom:2rem;right:2rem;transform:scale(-1)}.hero-image-wrap{z-index:0;position:absolute;inset:0;overflow:hidden}.hero-overlay{z-index:1;background:linear-gradient(#080d1a8c 0%,#080d1ab3 55%,#080d1aeb 100%),#0019324d;position:absolute;inset:0}.nominal-section .grid-bg{z-index:2;opacity:.06}.nominal-particles{z-index:2}.nominal-section{padding:var(--section-padding) 0;min-height:100svh}.nominal-particles{pointer-events:none;position:absolute;inset:0;overflow:hidden}.ambient-particle{background:var(--accent-cyan);opacity:.2;border-radius:50%;width:3px;height:3px;position:absolute}.nominal-header{z-index:3;margin-bottom:4rem;position:relative}.nominal-brand{border-bottom:1px solid var(--border-subtle);align-items:center;gap:1.25rem;margin-bottom:2rem;padding-bottom:2rem;display:flex}.nominal-brand-text{flex-direction:column;gap:.25rem;display:flex}.nominal-brand-name{font-family:var(--font-brand);letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);font-size:2rem;font-weight:900;line-height:1}.nominal-brand-tagline{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--brand-cyan);font-size:.62rem}.nominal-title{color:var(--text-primary);margin:1.5rem 0 1rem}.nominal-title-accent{color:var(--brand-cyan);font-style:italic}.nominal-sub{color:var(--text-secondary);max-width:480px;font-size:1rem;font-family:var(--font-body)}.systems-grid{z-index:3;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:3rem;display:grid;position:relative}.system-card{background:var(--bg-panel);border:1px solid var(--border-subtle);cursor:pointer;text-align:left;border-radius:12px;padding:1.5rem;transition:border-color .3s,background .3s;position:relative;overflow:hidden}.system-card:hover,.system-card:focus-visible,.system-card-active{border-color:var(--accent-cyan-dim);background:var(--bg-elevated)}.system-card:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:2px}.system-card-top{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.system-icon{font-size:1.75rem;line-height:1}.system-metric{margin-bottom:1rem}.system-card-bottom{flex-direction:column;gap:.5rem;display:flex}.system-label{color:var(--text-secondary)}.system-desc{color:var(--text-muted);font-size:.8rem}.system-card-border{background:linear-gradient(135deg, var(--accent-cyan-dim), transparent);opacity:0;pointer-events:none;border-radius:12px;transition:opacity .3s;position:absolute;inset:0}.system-card:hover .system-card-border,.system-card-active .system-card-border{opacity:1}.nominal-cta{z-index:3;flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex;position:relative}.scroll-hint{flex-direction:column;align-items:center;gap:.5rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.scroll-hint-line{background:linear-gradient(to bottom, var(--accent-cyan), transparent);width:1px;height:40px}.failure-section{padding:var(--section-padding) 0;background:var(--bg-base);position:relative}.failure-overlay{background:var(--accent-red);pointer-events:none;position:absolute;inset:0}.failure-content{flex-direction:column;gap:2rem;display:flex}.failure-title-wrap{position:relative}.failure-title{color:var(--text-primary)}.error-terminal{border:1px solid var(--border-alert);background:#080a0f;border-radius:8px;max-width:600px;overflow:hidden}.error-terminal-header{border-bottom:1px solid var(--border-alert);background:#ff3b300d;padding:.75rem 1rem}.error-terminal-body{flex-direction:column;gap:.4rem;max-height:200px;padding:1rem;display:flex;overflow-y:auto}.error-line{font-family:var(--font-mono);gap:1rem;font-size:.7rem;display:flex}.error-timestamp{color:var(--text-muted);white-space:nowrap}.error-text{color:var(--accent-red)}.error-cursor{color:var(--accent-red);font-family:var(--font-mono)}.failing-systems{flex-direction:column;gap:.5rem;max-width:400px;display:flex}.failing-system-item{border:1px solid var(--border-alert);background:#ff3b300d;border-radius:4px;align-items:center;gap:1rem;padding:.5rem .75rem;display:flex}.failing-sys-name{flex:0 0 120px}.failing-sys-status{letter-spacing:2px;font-family:var(--font-mono);flex:1;font-size:.7rem}.failure-cta{flex-direction:column;gap:1rem;display:flex}.module-overlay{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:2500;-webkit-overflow-scrolling:touch;background:#080d1af5;justify-content:center;align-items:flex-start;padding:clamp(.75rem,3vw,2rem) clamp(.5rem,2vw,1rem);display:flex;position:fixed;inset:0;overflow-y:auto}.module-container{background:var(--bg-panel);border:1px solid var(--border-panel);box-sizing:border-box;border-radius:16px;flex-direction:column;gap:1.25rem;width:min(640px,100%);margin:1rem auto 3rem;padding:clamp(1rem,4vw,2rem);display:flex;position:relative}.module-header{z-index:10;background:var(--bg-panel);border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:flex-start;padding-bottom:.5rem;display:flex;position:sticky;top:0}.module-quick-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-top:-.5rem;display:flex}.quick-form-btn{border:1px dashed var(--accent-cyan);color:var(--accent-cyan);font-family:var(--font-mono);cursor:pointer;background:#00d4ff1a;border-radius:6px;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.7rem;text-decoration:none;transition:all .2s;display:inline-flex}.quick-form-btn:hover,.quick-form-btn:active{background:var(--accent-cyan);color:var(--bg-base)}.module-close{border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;transition:border-color .2s,color .2s;display:flex}.module-close:hover{border-color:var(--accent-red);color:var(--accent-red)}.module-canvas-wrap{border:1px solid var(--border-subtle);background:var(--bg-base);border-radius:8px;height:220px;position:relative;overflow:hidden}.module-canvas{width:100%;height:100%;display:block}.module-controls{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;display:grid}.control-group{flex-direction:column;gap:.5rem;display:flex}.control-group-full{grid-column:1/-1}.module-service-info{margin-top:.5rem}.ac-unit-visual{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:12px;flex-direction:column;align-items:center;gap:.75rem;min-width:160px;padding:1rem 1.5rem;transition:border-color .5s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ac-unit-vents{align-items:center;gap:6px;height:32px;display:flex}.ac-vent-bar{border-radius:2px;width:3px;height:24px;transition:background .3s,transform .3s}.ac-unit-label{font-family:var(--font-mono);color:var(--text-mono);font-size:.75rem}.power-toggle{background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.1em;cursor:pointer;border-radius:6px;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.75rem;transition:all .3s;display:flex}.power-on{border-color:var(--toggle-color,var(--accent-cyan));color:var(--toggle-color,var(--accent-cyan));box-shadow:0 0 12px var(--accent-cyan-dim)}.power-icon{font-size:1rem}.mode-toggle{border:1px solid var(--border-subtle);border-radius:6px;display:flex;overflow:hidden}.mode-btn{border:none;border-right:1px solid var(--border-subtle);color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.08em;cursor:pointer;background:0 0;flex:1;padding:.5rem;font-size:.65rem;transition:all .2s}.mode-btn:last-child{border-right:none}.mode-btn:hover{background:var(--bg-elevated)}.tech-slider{appearance:none;background:var(--border-subtle);cursor:pointer;border-radius:4px;outline:none;width:100%;height:4px}.tech-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--slider-color,var(--accent-cyan));border:2px solid var(--bg-panel);width:16px;height:16px;box-shadow:0 0 8px var(--slider-color,var(--accent-cyan));cursor:grab;border-radius:50%}.tech-slider::-webkit-slider-thumb:active{cursor:grabbing}.temp-display{justify-content:space-between;align-items:baseline;display:flex}.temp-value{font-family:var(--font-display);font-size:1.75rem;font-weight:700}.slider-labels{justify-content:space-between;margin-top:.25rem;display:flex}.boiler-ambient{pointer-events:none;border-radius:16px;transition:background .8s;position:absolute;inset:0}.boiler-visual{flex-direction:column;align-items:center;gap:.5rem;padding:1rem 0;display:flex;position:relative}.heat-waves-wrap{pointer-events:none;width:200px;position:absolute;top:0;left:50%;transform:translate(-50%)}.heat-wave-svg{width:100%;position:absolute;top:0}.boiler-dial-svg{touch-action:none;-webkit-user-select:none;user-select:none}.boiler-readout{background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:8px;grid-template-columns:repeat(2,1fr);gap:.75rem;padding:1rem;display:grid}.readout-item{flex-direction:column;gap:.2rem;display:flex}.readout-value{font-family:var(--font-mono);font-size:.85rem;font-weight:500}.faucet-wrap{flex-direction:column;align-items:center;gap:1rem;padding:1rem;display:flex}.faucet-svg-wrap{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.faucet-hint{font-size:.8rem}.kitchen-scene{flex-direction:column;gap:1rem;display:flex}.kitchen-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.75rem;display:grid}.kitchen-item{background:var(--bg-elevated);border:1px solid var(--border-subtle);cursor:pointer;text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem .75rem;transition:border-color .3s;display:flex;position:relative;overflow:hidden}.kitchen-item:focus-visible{outline:2px solid var(--item-color);outline-offset:2px}.kitchen-item-active{background:var(--bg-card)}.kitchen-item-emoji{z-index:1;font-size:2rem;line-height:1;position:relative}.kitchen-item-label{z-index:1;position:relative}.kitchen-effect{pointer-events:none;z-index:0;position:absolute;inset:0}.cold-fog,.heat-shimmer,.bubble-container,.air-lines{position:absolute;inset:0;overflow:hidden}.fog-particle{filter:blur(4px);background:#00d4ff4d;border-radius:50%;width:20px;height:8px;position:absolute;bottom:20%;left:50%;transform:translate(-50%)}.heat-particle{filter:blur(2px);border-radius:50%;width:4px;height:8px;position:absolute;bottom:30%;left:50%;transform:translate(-50%)}.bubble{border:1px solid #00b4d899;border-radius:50%;width:6px;height:6px;position:absolute;bottom:20%;left:50%;transform:translate(-50%)}.air-line{background:linear-gradient(90deg, transparent, var(--accent-green), transparent);height:1px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.kitchen-item-glow{opacity:.1;border-radius:10px;position:absolute;inset:0}.kitchen-empty-state{text-align:center;border:1px dashed var(--border-subtle);border-radius:8px;padding:1.5rem}.diagnostic-section{padding:var(--section-padding) 0}.diagnostic-header{text-align:center;flex-direction:column;align-items:center;gap:1rem;margin-bottom:3rem;display:flex}.diagnostic-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-bottom:2.5rem;display:grid}.diagnostic-card{background:var(--bg-panel);border:1px solid var(--border-subtle);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;transition:border-color .3s,background .3s;display:flex;position:relative;overflow:hidden}.diagnostic-card:hover{border-color:var(--card-color);background:var(--bg-elevated)}.diagnostic-card:focus-visible{outline:2px solid var(--card-color);outline-offset:2px}.diagnosed{border-color:var(--card-color)!important;background:var(--bg-elevated)!important}.diag-card-top{justify-content:space-between;align-items:flex-start;display:flex}.diag-card-emoji{font-size:2rem}.diag-card-check{background:var(--accent-green);color:var(--bg-base);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;display:flex}.diag-card-info{flex-direction:column;flex:1;gap:.3rem;display:flex}.diag-card-desc{color:var(--text-primary);font-size:.95rem;font-weight:600}.diag-card-sub{color:var(--text-muted)}.diag-card-cta{font-family:var(--font-mono);color:var(--card-color);letter-spacing:.1em;font-size:.65rem}.diag-card-glow{pointer-events:none;border-radius:12px;position:absolute;inset:0}.diagnostic-progress{flex-direction:column;gap:.5rem;max-width:400px;margin-bottom:2rem;display:flex}.progress-track{background:var(--border-subtle);border-radius:3px;height:3px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent-cyan), var(--accent-green));height:100%;box-shadow:0 0 8px var(--accent-cyan-glow);border-radius:3px}.diagnostic-complete{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.result-section{padding:var(--section-padding) 0}.result-content{text-align:center;flex-direction:column;align-items:center;gap:2.5rem;display:flex}.analysis-wrap{flex-direction:column;align-items:center;gap:2rem;width:min(480px,100%);display:flex}.analysis-gear{color:var(--accent-cyan);filter:drop-shadow(0 0 12px var(--accent-cyan));font-size:4rem;display:block}.result-progress-wrap{align-items:center;gap:1rem;width:100%;display:flex}.result-progress-track{background:var(--border-subtle);border-radius:3px;flex:1;height:3px;overflow:hidden}.result-progress-bar{background:linear-gradient(90deg, var(--accent-cyan), var(--accent-green));height:100%;transition:width .1s linear}.analysis-step{color:var(--accent-cyan);min-height:1.2rem;font-size:.75rem}.result-revealed{flex-direction:column;align-items:center;gap:2rem;width:min(560px,100%);display:flex}.result-badge{background:var(--accent-red-dim);border:1px solid var(--border-alert);border-radius:100px;padding:.75rem 2rem}.result-badge-inner{font-family:var(--font-mono);letter-spacing:.15em;color:var(--accent-red);align-items:center;gap:.75rem;font-size:.75rem;display:flex}.result-badge-icon{font-size:1rem}.result-title{text-align:center}.result-findings{text-align:left;flex-direction:column;gap:.75rem;width:100%;display:flex}.result-finding-item{color:var(--text-secondary);align-items:center;gap:1rem;font-size:.9rem;display:flex}.finding-level{font-size:.65rem}.contact-section{padding:var(--section-padding) 0;position:relative}.contact-ambient{pointer-events:none;background:radial-gradient(at 50% 0,#00ff880a 0%,#0000 70%);position:absolute;inset:0}.contact-header{text-align:center;flex-direction:column;align-items:center;gap:1rem;margin-bottom:3rem;display:flex}.contact-grid{flex-direction:column;gap:1rem;max-width:640px;margin:0 auto 3rem;display:flex}.contact-card{border-radius:12px;text-decoration:none;transition:transform .2s,box-shadow .3s;display:block;position:relative;overflow:hidden}.contact-card:hover{transform:translateY(-2px)}.contact-card-urgent{box-shadow:0 0 0 1px #ff3b3033}.contact-urgent-ring{pointer-events:none;border:2px solid;border-radius:14px;position:absolute;inset:-2px}.contact-card-inner{background:var(--bg-panel);border:1px solid var(--border-subtle);z-index:1;border-radius:12px;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;transition:border-color .3s,background .3s;display:flex;position:relative}.contact-card:hover .contact-card-inner{border-color:var(--card-color);background:var(--bg-elevated)}.contact-icon{flex-shrink:0;font-size:1.75rem}.contact-info{flex-direction:column;flex:1;gap:.2rem;display:flex}.contact-value{font-family:var(--font-display);color:var(--text-primary);font-size:1.1rem;font-weight:600}.contact-desc{color:var(--text-muted)}.contact-arrow{font-size:1.25rem;font-weight:300;transition:transform .2s}.contact-info-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;max-width:640px;margin:0 auto;display:grid}.floating-nav{z-index:1000;width:min(700px,100vw - 2rem);position:fixed;top:1.25rem;left:50%;transform:translate(-50%)}.floating-nav-inner{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-panel);background:#0d1526d9;border-radius:100px;align-items:center;gap:1.5rem;padding:.625rem 1rem;display:flex}.fnav-logo{align-items:center;gap:.6rem;text-decoration:none;display:flex}.fnav-brand-name{font-family:var(--font-brand);letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);font-size:1.1rem;font-weight:900;line-height:1}.fnav-links{flex:1;gap:1.5rem;display:flex}.fnav-link{color:var(--text-secondary);text-decoration:none;transition:color .2s}.fnav-link:hover{color:var(--accent-cyan)}.fnav-cta{background:var(--accent-red);color:#fff;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:100px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.65rem;text-decoration:none;transition:background .2s;display:flex}.fnav-cta:hover{background:#e0332a}.tech-footer{border-top:1px solid var(--border-subtle);padding:3rem 0 1.5rem;position:relative}.footer-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;margin-bottom:2rem;display:grid}.footer-brand{flex-direction:column;gap:.75rem;display:flex}.footer-logo-wrap{align-items:center;gap:.75rem;display:flex}.footer-name{font-family:var(--font-brand);letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);font-size:1.2rem;font-weight:900}.footer-tagline{color:var(--text-muted);font-size:.8rem}.diagnostic-form-wrap{background:var(--bg-elevated);border:1px solid var(--border-panel);flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.diagnostic-form{flex-direction:column;gap:.875rem;display:flex}.form-group-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (max-width:600px){.form-group-row{grid-template-columns:1fr}}.form-field{flex-direction:column;gap:.35rem;display:flex}.tech-input{background:var(--bg-base);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);font-family:var(--font-body);border-radius:6px;outline:none;padding:.65rem .85rem;font-size:.85rem;transition:border-color .2s,box-shadow .2s}.tech-input:focus{border-color:var(--accent-cyan);box-shadow:0 0 8px var(--accent-cyan-dim)}.tech-textarea{resize:vertical;min-height:70px}.form-error-msg{font-family:var(--font-mono);color:var(--accent-red);font-size:.75rem}.diagnostic-form-success{text-align:center;background:#00ff880d;border:1px solid #0f83;border-radius:8px;padding:1.25rem}.success-text{color:var(--text-primary);font-size:.95rem;line-height:1.5}.footer-status{flex-direction:column;align-items:center;gap:.5rem;display:flex}.footer-meta{gap:.5rem;display:flex}.footer-links{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.footer-link{color:var(--text-secondary);font-size:.85rem;text-decoration:none;transition:color .2s}.footer-link:hover{color:var(--accent-cyan)}.footer-bottom{border-top:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.5rem;display:flex}.footer-legal{gap:1.5rem;display:flex}.footer-legal-link{color:var(--text-muted);text-decoration:none;transition:color .2s}.footer-legal-link:hover{color:var(--text-secondary)}@media (max-width:768px){.floating-nav{width:calc(100% - 1.25rem);max-width:100vw;top:.6rem;left:50%;transform:translate(-50%)}.floating-nav-inner{box-sizing:border-box;justify-content:space-between;gap:.5rem;width:100%;padding:.35rem .65rem}.fnav-logo{gap:.4rem}.fnav-brand-name{font-size:.95rem}.fnav-cta{flex-shrink:0;padding:.35rem .65rem;font-size:.62rem}.fnav-links{display:none}.systems-grid,.diagnostic-grid{grid-template-columns:1fr}.module-overlay{align-items:flex-start;padding:.5rem .5rem 3rem}.module-container{gap:1rem;width:100%;margin:.5rem auto 2.5rem;padding:1rem .85rem;max-height:none!important}.module-canvas-wrap{height:180px}.module-controls{grid-template-columns:1fr}.boiler-readout,.kitchen-grid{grid-template-columns:repeat(2,1fr)}.footer-inner{text-align:center;grid-template-columns:1fr}.footer-links{align-items:center}.footer-bottom{text-align:center;flex-direction:column}.contact-info-grid,.form-group-row{grid-template-columns:1fr}.tech-input,.tech-textarea{appearance:none;padding:.75rem .85rem;font-size:16px!important}.diagnostic-form-wrap{margin-top:1rem;padding:1rem .75rem}}@media (max-width:480px){.systems-grid,.diagnostic-grid{grid-template-columns:1fr}.kitchen-grid{grid-template-columns:repeat(2,1fr)}.nominal-title{font-size:2.75rem}.hero-overlay{background:linear-gradient(#080d1aa6 0%,#080d1ac7 50%,#080d1af2 100%)}}
