@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--bg:oklch(16% .008 240);--bg-elev:oklch(19% .008 240);--bg-elev-2:oklch(22% .008 240);--border:oklch(28% .008 240);--border-strong:oklch(38% .01 240);--fg:oklch(98% .003 240);--muted:oklch(72% .008 240);--muted-2:oklch(55% .008 240);--dim:oklch(42% .008 240);--accent-cyan:oklch(78% .14 200);--accent-cyan-soft:oklch(78% .14 200/.12);--accent-violet:oklch(72% .17 290);--accent-violet-soft:oklch(72% .17 290/.14);--accent-lime:oklch(85% .18 130);--accent-lime-soft:oklch(85% .18 130/.14);--accent-amber:oklch(82% .15 75);--accent-amber-soft:oklch(82% .15 75/.14);--accent:var(--accent-cyan);--accent-soft:var(--accent-cyan-soft);--radius:6px;--radius-lg:10px;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--sans:"Inter", ui-sans-serif, system-ui, -apple-system, sans-serif}[data-accent=violet]{--accent:var(--accent-violet);--accent-soft:var(--accent-violet-soft)}[data-accent=lime]{--accent:var(--accent-lime);--accent-soft:var(--accent-lime-soft)}[data-accent=amber]{--accent:var(--accent-amber);--accent-soft:var(--accent-amber-soft)}*{box-sizing:border-box}html,body{scroll-behavior:smooth;margin:0;padding:0}body{background:var(--bg);color:var(--fg);font-family:var(--sans);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:15px;line-height:1.55;overflow-x:hidden}body[data-grid=on]:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(90deg,oklch(28% .008 240/.35) 1px,#0000 1px),linear-gradient(oklch(28% .008 240/.35) 1px,#0000 1px);background-size:80px 80px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(#000 0%,#0000 90%);mask-image:radial-gradient(#000 0%,#0000 90%)}#root{z-index:1;position:relative}.mono{font-family:var(--mono)}a{color:inherit;text-decoration:none}.container{z-index:1;max-width:1200px;margin:0 auto;padding:0 32px;position:relative}nav.top{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);background:oklch(16% .008 240/.7);position:sticky;top:0}nav.top .inner{justify-content:space-between;align-items:center;height:64px;display:flex}nav.top .brand{font-family:var(--mono);letter-spacing:.02em;align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}nav.top .brand .mark{width:132px;display:block}nav.top .brand .mark svg,nav.top .brand .mark img{width:100%;height:auto;display:block}nav.top ul{font-family:var(--mono);color:var(--muted);gap:28px;margin:0;padding:0;font-size:12.5px;list-style:none;display:flex}nav.top ul a:hover{color:var(--fg)}nav.top .cta{font-family:var(--mono);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--fg);background:var(--bg-elev);white-space:nowrap;padding:8px 14px;font-size:12.5px;transition:all .15s}nav.top .cta:hover{border-color:var(--accent);color:var(--accent)}section{z-index:1;position:relative}.section-pad{padding:120px 0}.section-case{padding-top:40px}.section-label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);align-items:center;gap:10px;margin-bottom:28px;font-size:11px;display:flex}.section-label:before{content:"";background:var(--accent);width:24px;height:1px}.section-label .index{color:var(--accent);font-weight:500}h1,h2,h3,h4{letter-spacing:-.02em;margin:0;font-weight:500;line-height:1.05}h1{font-size:clamp(48px,7vw,92px);font-weight:400}h2{font-size:clamp(32px,4vw,52px);font-weight:400}h3{letter-spacing:-.01em;font-size:20px;font-weight:500}p{color:var(--muted);margin:0}.eyebrow{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);font-size:11px}.btn{border-radius:var(--radius);font-family:var(--mono);cursor:pointer;color:inherit;white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:13px 20px;font-size:13px;font-weight:500;text-decoration:none;transition:all .18s;display:inline-flex}.btn-primary{background:var(--fg);color:var(--bg)}.btn-primary:hover{background:var(--accent);color:var(--bg)}.btn-secondary{border-color:var(--border-strong);background:var(--bg-elev);color:var(--fg)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.btn .arrow{transition:transform .18s}.btn:hover .arrow{transform:translate(3px)}.hero-a{align-items:center;min-height:92vh;padding:80px 0 140px;display:flex;position:relative;overflow:hidden}.hero-a .coord-top,.hero-a .coord-bot{font-family:var(--mono);letter-spacing:.1em;color:var(--muted-2);justify-content:space-between;font-size:10.5px;display:flex;position:absolute;left:32px;right:32px}.hero-a .coord-top{top:24px}.hero-a .coord-bot{bottom:24px}.hero-a .coord-bot .blink:after{content:"_";color:var(--accent);animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.hero-a .grid{grid-template-columns:1fr 440px;align-items:end;gap:72px;width:100%;display:grid}.hero-a .hero-term{width:100%;font-size:12px}.hero-a .hero-term .body{padding:18px 20px;line-height:1.8}.hero-a h1{letter-spacing:-.035em;line-height:.95}.hero-a h1 em{color:var(--accent);font-style:normal;font-family:var(--mono);letter-spacing:0;vertical-align:.1em;padding:0 .15em;font-size:.7em;font-weight:400}.hero-a .lead{max-width:540px;color:var(--muted);margin-top:32px;font-size:17px;line-height:1.55}.hero-a .cta-row{flex-wrap:wrap;gap:12px;margin-top:40px;display:flex}.hero-b{align-items:center;min-height:92vh;padding:80px 0 120px;display:flex}.hero-b .grid{grid-template-columns:1fr 1fr;align-items:center;gap:64px;width:100%;display:grid}.hero-b h1{letter-spacing:-.03em;font-size:clamp(40px,5vw,68px);line-height:1.02}.hero-b h1 .hl{color:var(--accent)}.hero-b .lead{max-width:480px;margin-top:28px;font-size:16px;line-height:1.6}.hero-b .cta-row{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.term{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elev);font-family:var(--mono);font-size:12.5px;overflow:hidden;box-shadow:0 30px 80px -40px oklch(0% 0 0/.7)}.term .head{border-bottom:1px solid var(--border);color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:10px 14px;font-size:11px;display:flex}.term .dots{gap:6px;display:flex}.term .dots i{background:var(--border-strong);border-radius:50%;width:10px;height:10px;display:inline-block}.term .body{color:var(--muted);padding:20px;line-height:1.85}.term .body .prompt{color:var(--accent)}.term .body .c1{color:var(--muted-2)}.term .body .c2{color:var(--fg)}.term .body .ok{color:var(--accent)}.services-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(2,1fr);gap:0;margin-top:32px;display:grid}.service{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:40px 32px;transition:background .2s;position:relative}.service:hover{background:var(--bg-elev)}.service .num{font-family:var(--mono);color:var(--muted-2);letter-spacing:.14em;font-size:11px}.service h3{margin-top:20px;font-size:22px;font-weight:500}.service p{max-width:400px;margin-top:12px;font-size:14px;line-height:1.6}.service .tags{flex-wrap:wrap;gap:6px;margin-top:24px;display:flex}.service .tags span{font-family:var(--mono);letter-spacing:.06em;background:var(--bg-elev-2);color:var(--muted);border:1px solid var(--border);border-radius:3px;padding:3px 8px;font-size:10.5px}.case{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--bg-elev) 0%, var(--bg) 100%);overflow:hidden}.case .top{grid-template-columns:1fr 1fr;gap:0;display:grid}.case .text{flex-direction:column;gap:24px;padding:48px;display:flex}.case .text .meta{font-family:var(--mono);letter-spacing:.08em;color:var(--muted-2);text-transform:uppercase;gap:24px;font-size:11px;display:flex}.case .text .meta .accent{color:var(--accent)}.case .text h2{letter-spacing:-.02em;font-size:40px}.case .text p{font-size:15px;line-height:1.6}.case .text p .strong{color:var(--fg);font-weight:500}.case .text .link{font-family:var(--mono);color:var(--accent);border-bottom:1px solid var(--accent);align-items:center;gap:8px;width:fit-content;padding-bottom:2px;font-size:12.5px;transition:gap .2s;display:inline-flex}.case .text .link:hover{gap:14px}.panel{border-left:1px solid var(--border);background:linear-gradient(135deg, transparent 0%, var(--accent-soft) 100%), var(--bg-elev);flex-direction:column;gap:20px;min-height:460px;padding:48px;display:flex;position:relative}.panel:before{content:"";pointer-events:none;opacity:.6;background-image:linear-gradient(90deg,oklch(28% .008 240/.4) 1px,#0000 1px),linear-gradient(oklch(28% .008 240/.4) 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0}.panel>*{z-index:1;position:relative}.panel .label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.panel .device-id{font-family:var(--mono);color:var(--fg);font-size:13px}.panel .device-id .status{background:var(--accent);width:8px;height:8px;box-shadow:0 0 12px var(--accent);vertical-align:middle;border-radius:50%;margin-right:8px;animation:2s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}.readings{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.readings .cell{background:var(--bg);padding:16px}.readings .cell .k{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);font-size:10px}.readings .cell .v{font-family:var(--mono);color:var(--fg);letter-spacing:-.02em;margin-top:6px;font-size:24px;font-weight:500}.readings .cell .v .unit{color:var(--muted-2);margin-left:4px;font-size:14px;font-weight:400}.readings .cell .v.mode-fan{font-size:18px}.protocols{flex-wrap:wrap;gap:6px;display:flex}.protocols span{font-family:var(--mono);letter-spacing:.06em;border:1px solid var(--border-strong);color:var(--fg);background:var(--bg);border-radius:3px;padding:4px 10px;font-size:10.5px}.case .bottom{border-top:1px solid var(--border);grid-template-columns:repeat(4,1fr);gap:32px;padding:32px 48px;display:grid}.case .bottom .stat .k{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.case .bottom .stat .v{font-size:22px;font-family:var(--mono);letter-spacing:-.02em;margin-top:8px;font-weight:500}.contact-grid{grid-template-columns:1fr 1.1fr;align-items:start;gap:64px;display:grid}.contact-info h2{letter-spacing:-.025em;font-size:44px}.contact-info p.lead{max-width:380px;margin-top:20px;font-size:15px;line-height:1.6}.contact-info dl{flex-direction:column;gap:0;margin:40px 0 0;padding:0;display:flex}.contact-info dl>div{border-top:1px solid var(--border);grid-template-columns:140px 1fr;align-items:start;gap:16px;padding:20px 0;display:grid}.contact-info dl>div:last-child{border-bottom:1px solid var(--border)}.contact-info dt{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);padding-top:2px;font-size:10.5px}.contact-info dd{font-family:var(--mono);color:var(--fg);margin:0;font-size:13px;line-height:1.55}.contact-info dd a:hover{color:var(--accent)}form.project-form{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elev);padding:36px}form.project-form .form-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:20px;display:flex}form.project-form .form-head .title{font-family:var(--mono);letter-spacing:.06em;color:var(--fg);font-size:12.5px}form.project-form .form-head .id{font-family:var(--mono);color:var(--muted-2);font-size:11px}form.project-form .field{margin-bottom:18px}form.project-form label{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);margin-bottom:8px;font-size:10.5px;display:block}form.project-form label .req{color:var(--accent)}form.project-form input,form.project-form select,form.project-form textarea{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--fg);font-family:var(--sans);font-feature-settings:inherit;padding:12px 14px;font-size:14px;transition:border-color .15s}form.project-form input:focus,form.project-form select:focus,form.project-form textarea:focus{border-color:var(--accent);outline:none}form.project-form textarea{resize:vertical;min-height:110px;font-family:var(--sans)}form.project-form .chips{flex-wrap:wrap;gap:6px;display:flex}form.project-form .chip{font-family:var(--mono);border:1px solid var(--border);background:var(--bg);color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;appearance:none;border-radius:3px;padding:7px 12px;font-size:11.5px;transition:all .15s}form.project-form .chip:hover{border-color:var(--border-strong);color:var(--fg)}form.project-form .chip.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}form.project-form .row-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}form.project-form .submit-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding-top:20px;display:flex}form.project-form .submit-row .hint{font-family:var(--mono);color:var(--muted-2);font-size:11px}footer{border-top:1px solid var(--border);z-index:1;margin-top:120px;padding:64px 0 40px;position:relative}footer .top{border-bottom:1px solid var(--border);grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px;display:grid}footer .brand-block .brand-link{align-items:center;gap:10px;display:inline-flex}footer .brand-block .brand-mark-footer{width:160px;color:var(--fg);display:inline-block}footer .brand-block .brand-mark-footer svg,footer .brand-block .brand-mark-footer img{width:100%;height:auto;display:block}footer .brand-block p{max-width:320px;font-size:13px;line-height:1.55}footer .col h4{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:18px;font-size:10.5px;font-weight:500}footer .col ul{flex-direction:column;gap:10px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}footer .col ul a{color:var(--muted)}footer .col ul a:hover{color:var(--fg)}footer .bottom{font-family:var(--mono);color:var(--muted-2);letter-spacing:.06em;justify-content:space-between;align-items:center;padding-top:28px;font-size:11px;display:flex}#tweaks-panel{background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius-lg);z-index:100;width:280px;font-family:var(--mono);padding:16px;font-size:12px;display:none;position:fixed;bottom:20px;right:20px;box-shadow:0 20px 60px -20px #000c}#tweaks-panel.visible{display:block}#tweaks-panel .tweaks-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:12px;display:flex}#tweaks-panel .tweaks-head .name{letter-spacing:.14em;text-transform:uppercase;color:var(--fg);font-size:11px}#tweaks-panel .tweaks-head .live-label{color:var(--muted-2);font-size:10.5px}#tweaks-panel .tweak{margin-bottom:14px}#tweaks-panel .tweak label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);margin-bottom:8px;font-size:10.5px;display:block}#tweaks-panel .swatches{gap:6px;display:flex}#tweaks-panel .swatches button{border:1px solid var(--border-strong);cursor:pointer;border-radius:4px;width:24px;height:24px;padding:0}#tweaks-panel .swatches button.active{outline:2px solid var(--fg);outline-offset:2px}#tweaks-panel .seg{border:1px solid var(--border);border-radius:4px;display:flex;overflow:hidden}#tweaks-panel .seg button{color:var(--muted);font-family:var(--mono);cursor:pointer;background:0 0;border:0;flex:1;padding:7px 10px;font-size:11px}#tweaks-panel .seg button.active{background:var(--accent);color:var(--bg)}@media (width<=960px){nav.top ul{display:none}.hero-a .grid,.hero-b .grid{grid-template-columns:1fr;gap:40px}.services-grid,.case .top{grid-template-columns:1fr}.panel{border-left:0;border-top:1px solid var(--border);min-height:auto}.case .bottom{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr}footer .top{grid-template-columns:1fr 1fr}.section-pad{padding:80px 0}.hero-a .coord-top,.hero-a .coord-bot{display:none}}@media (width<=560px){.container{padding:0 20px}form.project-form .row-2,.case .bottom,footer .top{grid-template-columns:1fr}form.project-form{padding:24px}}[data-hero=A] .hero-b,[data-hero=B] .hero-a{display:none}
