/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--led-glow:#0f0}}}.sensor-hero{gap:clamp(var(--ts-space-200), 5vw, var(--ts-space-400));padding-block:clamp(var(--ts-space-200), 6vw, var(--ts-space-400));grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid}@media (max-width:860px){.sensor-hero{text-align:center;grid-template-columns:1fr}}.sensor-hero__model{place-items:center;min-height:520px;display:grid;position:relative}.sensor-hero__viewer{z-index:2;--poster-color:transparent;background:0 0;width:100%;max-width:520px;height:520px;position:relative}@media (max-width:860px){.sensor-hero__model{min-height:clamp(240px,58vw,340px)}.sensor-hero__viewer{height:clamp(240px,58vw,340px)}}.sensor-hero__model{isolation:isolate}.sensor-hero__model:before{content:"";z-index:0;background:radial-gradient(ellipse at center, var(--ts-ramp-green) 0%, var(--ts-ramp-teal) 40%, transparent 70%);width:92%;height:80%;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}@supports (color:color-mix(in lab, red, red)){.sensor-hero__model:before{background:radial-gradient(ellipse at center, color-mix(in srgb, var(--ts-ramp-green) 25%, transparent) 0%, color-mix(in srgb, var(--ts-ramp-teal) 10%, transparent) 40%, transparent 70%)}}.sensor-hero__model:before{filter:blur(36px);pointer-events:none}.sensor-hero__model:after{content:"";z-index:1;background:radial-gradient(ellipse at center, var(--ts-ramp-green) 0%, var(--ts-white-a05) 42%, transparent 74%);width:60%;height:14%;position:absolute;bottom:9%;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.sensor-hero__model:after{background:radial-gradient(ellipse at center, color-mix(in srgb, var(--ts-ramp-green) 40%, transparent) 0%, var(--ts-white-a05) 42%, transparent 74%)}}.sensor-hero__model:after{filter:blur(9px);pointer-events:none;border-radius:50%}.sensor-hero__reading{z-index:3;right:clamp(var(--ts-space-50), 4%, var(--ts-space-200));gap:var(--ts-space-20);min-width:118px;padding:var(--ts-space-60) var(--ts-space-80) var(--ts-space-90);border:1px solid var(--ts-on-media-border,#ffffff24);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c0f158c;border-radius:10px;flex-direction:column;display:flex;position:absolute;bottom:14%;overflow:hidden;box-shadow:0 10px 30px -10px #0009}.sensor-hero__reading-k{font:700 .66rem/1.1 var(--ts-font-mono);letter-spacing:.05em;text-transform:uppercase;color:#f3f6f399}.sensor-hero__reading-v{font:700 1.45rem/1.1 var(--ts-font-mono);font-variant-numeric:tabular-nums;color:#f3f6f3}.sensor-hero__reading-v small{color:#f3f6f38c;margin-left:.15em;font-size:.5em}.sensor-hero__reading-s{font:600 .66rem/1 var(--ts-font-sans);color:var(--ts-ramp-green)}.sensor-hero__reading:after{content:"";background:var(--ts-ramp-green);height:6px;position:absolute;bottom:0;left:0;right:0}@media (max-width:860px){.sensor-hero__reading{display:none}}.sensor-hero__poster{place-items:center;width:100%;height:100%;display:grid}.sensor-hero__poster img{object-fit:contain;max-width:80%;max-height:80%}.sensor-hero__ar-button{background:var(--ts-accent);color:#fff;border-radius:var(--ts-radius-pill);padding:var(--ts-space-60) var(--ts-space-100);font-family:var(--ts-font-sans);font-size:var(--ts-text-base);box-shadow:var(--ts-shadow-md);cursor:pointer;border:0;font-weight:500;position:absolute;bottom:12px;right:12px}@media (hover:hover) and (pointer:fine){.sensor-hero__ar-button:hover{filter:brightness(1.06)}}.sensor-hero__hint{margin-top:var(--ts-space-75);font-size:var(--ts-text-md);text-align:center}.sensor-hero__copy h1{letter-spacing:-.02em;margin-block:0 var(--ts-space-50);font-size:clamp(2rem,5vw,3rem);line-height:1.1}.sensor-hero__copy h1 sup{vertical-align:super;color:var(--ts-muted);margin-left:.15em;font-size:.4em}.sensor-hero__eyebrow{font-family:var(--ts-font-sans);font-size:var(--ts-text-md);letter-spacing:.12em;text-transform:uppercase;color:var(--ts-muted);margin:0 0 var(--ts-space-60) 0;font-weight:600}.sensor-hero__copy .lede{max-width:32rem;margin-block:0 var(--ts-space-130)}.sensor-hero__price{align-items:baseline;gap:var(--ts-space-90);margin:0 0 var(--ts-space-110);flex-wrap:wrap;display:flex}.sensor-hero__price-amount{font-family:var(--ts-font-sans);letter-spacing:-.02em;color:var(--ts-fg);align-items:flex-start;font-size:clamp(1.85rem,4vw,2.5rem);font-weight:700;line-height:1;display:inline-flex}.sensor-hero__price-currency{color:var(--ts-muted);margin-top:.12em;margin-right:.1em;font-size:.56em;font-weight:600;line-height:1}.sensor-hero__price-ship{font-family:var(--ts-font-sans);font-size:var(--ts-text-base);color:var(--ts-muted);padding:var(--ts-space-25) var(--ts-space-60);border:1px solid var(--ts-accent);font-weight:500}@supports (color:color-mix(in lab, red, red)){.sensor-hero__price-ship{border:1px solid color-mix(in srgb, var(--ts-accent) 30%, var(--ts-rule-soft))}}.sensor-hero__price-ship{border-radius:100px}.sensor-hero__price-ship:before{content:"";background:var(--ts-accent);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:.5em;display:inline-block}.sensor-hero.ts-dark-hero{padding-block:clamp(var(--ts-space-200), 6vw, var(--ts-space-400)) calc(clamp(var(--ts-space-200), 6vw, var(--ts-space-400)) + var(--ts-space-200))}.pcb-explore{padding-block:clamp(var(--ts-space-200), 6vw, var(--ts-space-400))}.pcb-explore__intro{text-align:center;max-width:48rem;margin-inline:auto;margin-bottom:clamp(var(--ts-space-150), 4vw, var(--ts-space-250))}.pcb-explore__intro h2{margin-block:0 var(--ts-space-50)}.pcb-explore__stage{max-width:960px;margin-inline:auto;position:relative}.pcb-explore__viewer{--poster-color:transparent;background:0 0;width:100%;height:640px;display:block}@media (max-width:860px){.pcb-explore__viewer{height:480px}}.pcb-explore__hint{text-align:center;font-size:var(--ts-text-md);margin-top:var(--ts-space-75)}.pcb-explore__hotspot{appearance:none;cursor:default;background:0 0;border:0;padding:0}.pcb-explore__dot{background:var(--ts-accent);width:10px;height:10px;box-shadow:0 0 0 3px var(--ts-accent-a30), 0 1px 3px var(--ts-black-a30);border-radius:50%;display:block;transform:translate(-50%,-50%)}.pcb-explore__overlay{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0}.pcb-explore__line{stroke:var(--ts-accent);stroke-width:1px;opacity:.6}.pcb-explore__labels{pointer-events:none;z-index:3;width:100%;height:100%;position:absolute;inset:0}.pcb-explore__label{gap:var(--ts-space-10);width:180px;padding:var(--ts-space-60) var(--ts-space-80);background:var(--ts-surface);flex-direction:column;display:flex;position:absolute;top:0;left:0;transform:translate(-9999px,-9999px)}@supports (color:color-mix(in lab, red, red)){.pcb-explore__label{background:color-mix(in srgb, var(--ts-surface) 80%, transparent)}}.pcb-explore__label{-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-sm,var(--ts-radius-md));box-shadow:0 10px 28px var(--ts-black-a10), 0 2px 6px #0000000f;pointer-events:auto;-webkit-user-select:text;user-select:text;text-align:left;will-change:transform}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.pcb-explore__label{background:var(--ts-surface)}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .pcb-explore__label{background:var(--ts-surface-raised)}@supports (color:color-mix(in lab, red, red)){:root:not([data-theme=light]) .pcb-explore__label{background:color-mix(in srgb, var(--ts-surface-raised) 70%, transparent)}}:root:not([data-theme=light]) .pcb-explore__label{border-color:var(--ts-white-a10);box-shadow:0 12px 32px var(--ts-black-a55), 0 2px 6px var(--ts-black-a35)}}:root[data-theme=dark] .pcb-explore__label{background:var(--ts-surface-raised)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=dark] .pcb-explore__label{background:color-mix(in srgb, var(--ts-surface-raised) 70%, transparent)}}:root[data-theme=dark] .pcb-explore__label{border-color:var(--ts-white-a10);box-shadow:0 12px 32px var(--ts-black-a55), 0 2px 6px var(--ts-black-a35)}.pcb-explore__title{font-family:var(--ts-font-sans);font-size:var(--ts-text-md);color:var(--ts-fg);letter-spacing:.01em;font-weight:600}.pcb-explore__body{font-family:var(--ts-font-sans);font-size:var(--ts-text-xs);color:var(--ts-muted);font-weight:400;line-height:1.35}@media (max-width:860px){.pcb-explore__label{width:150px;font-size:var(--ts-text-xs);padding:var(--ts-space-40) var(--ts-space-60)}}.parameters{padding-block:clamp(var(--ts-space-200), 6vw, var(--ts-space-400))}.parameters__intro{text-align:center;max-width:52rem;margin-inline:auto;margin-bottom:clamp(var(--ts-space-150), 4vw, var(--ts-space-250))}.parameters__intro h2{margin-block:0 var(--ts-space-50)}.parameters__array{aspect-ratio:1;width:clamp(300px,48vw,420px);margin:0 auto clamp(var(--ts-space-180), 4vw, var(--ts-space-250));position:relative}.parameters__array-chart{width:100%;height:100%}.parameters__array-center[data-band=green]{--now-color:var(--ts-band-green)}.parameters__array-center[data-band=yellow]{--now-color:var(--ts-band-yellow)}.parameters__array-center[data-band=orange]{--now-color:var(--ts-band-orange)}.parameters__array-center[data-band=red]{--now-color:var(--ts-band-red)}.parameters__array-center[data-band=purple]{--now-color:var(--ts-band-purple)}.parameters__array-center[data-band=maroon]{--now-color:var(--ts-band-maroon)}.parameters__array-center{justify-content:center;align-items:center;gap:var(--ts-space-25);text-align:center;pointer-events:none;flex-direction:column;padding:0 24%;display:flex;position:absolute;inset:0}.parameters__array-now-dot{background:var(--now-color,var(--ts-accent));width:10px;height:10px;box-shadow:0 0 9px var(--now-color,var(--ts-accent));border-radius:50%}@supports (color:color-mix(in lab, red, red)){.parameters__array-now-dot{box-shadow:0 0 9px color-mix(in srgb, var(--now-color,var(--ts-accent)) 60%, transparent)}}.parameters__array-now-dot{transition:background .4s,box-shadow .4s}.parameters__array-now-label{font-family:var(--ts-font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ts-muted);font-size:.66rem}.parameters__array-now-status{letter-spacing:-.01em;color:var(--now-color,var(--ts-fg));font-size:clamp(1.3rem,3.3vw,1.9rem);font-weight:700;line-height:1;transition:color .4s}.parameters__array-now-context{color:var(--ts-muted);max-width:17ch;font-size:.74rem;line-height:1.32}.parameters__grid{gap:var(--ts-space-100);grid-template-columns:repeat(4,minmax(0,1fr));max-width:1200px;margin-inline:auto;display:grid}@media (max-width:1100px){.parameters__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:820px){.parameters__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:500px){.parameters__grid{grid-template-columns:1fr}}.parameter{background:var(--ts-surface);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-lg);flex-direction:column;transition:box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.parameter:hover{box-shadow:var(--ts-shadow-md);transform:translateY(-2px)}}.parameter:after{content:"";background:var(--band-c,var(--ts-rule));pointer-events:none;z-index:2;height:5px;transition:background .35s;position:absolute;bottom:0;left:0;right:0}.parameter[data-current-band=green]{--band-c:var(--ts-band-green)}.parameter[data-current-band=yellow]{--band-c:var(--ts-band-yellow)}.parameter[data-current-band=orange]{--band-c:var(--ts-band-orange)}.parameter[data-current-band=red]{--band-c:var(--ts-band-red)}.parameter[data-current-band=purple]{--band-c:var(--ts-band-purple)}.parameter[data-current-band=maroon]{--band-c:var(--ts-band-maroon)}.parameter[data-parameter=pm1]:after,.parameter[data-parameter=pm4]:after,.parameter[data-parameter=pressure]:after,.parameter[data-parameter=lux]:after,.parameter[data-parameter=pm1] .parameter__rail,.parameter[data-parameter=pm4] .parameter__rail,.parameter[data-parameter=pressure] .parameter__rail,.parameter[data-parameter=lux] .parameter__rail,.parameter[data-parameter=pm1] .parameter__readout-dot,.parameter[data-parameter=pm4] .parameter__readout-dot,.parameter[data-parameter=pressure] .parameter__readout-dot,.parameter[data-parameter=lux] .parameter__readout-dot{display:none}.parameter__photo{aspect-ratio:5/4;background:var(--ts-surface-raised);position:relative;overflow:hidden}.parameter__photo img{object-fit:cover;width:100%;height:100%;display:block}.parameter__photo-placeholder{background:linear-gradient(135deg, var(--placeholder-tint,var(--ts-accent)), var(--placeholder-tint,var(--ts-accent)));position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.parameter__photo-placeholder{background:linear-gradient(135deg, color-mix(in srgb, var(--placeholder-tint,var(--ts-accent)) 18%, var(--ts-surface-raised)), color-mix(in srgb, var(--placeholder-tint,var(--ts-accent)) 4%, var(--ts-surface-raised)))}}.parameter[data-parameter=co2] .parameter__photo-placeholder{--placeholder-tint:#4caf50}.parameter[data-parameter=temp] .parameter__photo-placeholder{--placeholder-tint:#ff9800}.parameter[data-parameter=iaq] .parameter__photo-placeholder{--placeholder-tint:#03a9f4}.parameter[data-parameter=voc] .parameter__photo-placeholder{--placeholder-tint:#ffc107}.parameter[data-parameter=nox] .parameter__photo-placeholder{--placeholder-tint:#607d8b}.parameter[data-parameter=pm25] .parameter__photo-placeholder{--placeholder-tint:#795548}.parameter[data-parameter=pm10] .parameter__photo-placeholder{--placeholder-tint:#8d6e63}.parameter[data-parameter=pressure] .parameter__photo-placeholder{--placeholder-tint:#9e9e9e}.parameter__body{gap:var(--ts-space-50);padding:var(--ts-space-90) var(--ts-space-90) var(--ts-space-120);background:var(--ts-surface);border-radius:var(--ts-radius-lg) var(--ts-radius-lg) 0 0;box-shadow:var(--ts-shadow-top-soft);z-index:1;flex-direction:column;flex:1;margin-top:-14px;display:flex;position:relative}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .parameter__body{box-shadow:var(--ts-shadow-top)}}:root[data-theme=dark] .parameter__body{box-shadow:var(--ts-shadow-top)}.parameter__title{align-items:baseline;gap:var(--ts-space-50);margin:0;font-size:1rem;font-weight:600;line-height:1.2;display:flex}.parameter__formula{font-family:var(--ts-font-sans);color:var(--ts-muted);font-size:.78rem;font-weight:500}.parameter__title-text{flex:1;min-width:0}.parameter__desc{color:var(--ts-muted);margin:0;font-size:.78rem;line-height:1.45}.parameter__readout{align-items:baseline;gap:var(--ts-space-40);padding-top:var(--ts-space-50);font-family:var(--ts-font-mono);font-variant-numeric:tabular-nums;margin-top:auto;display:flex}.parameter__readout-dot{background:var(--readout-color,var(--ts-rule));width:9px;height:9px;box-shadow:0 0 6px var(--readout-color,var(--ts-rule));border-radius:50%}@supports (color:color-mix(in lab, red, red)){.parameter__readout-dot{box-shadow:0 0 6px color-mix(in srgb, var(--readout-color,var(--ts-rule)) 55%, transparent)}}.parameter__readout-dot{flex-shrink:0;align-self:center;transition:background .35s,box-shadow .35s}.parameter[data-current-band=red] .parameter__readout-dot{animation:2.4s ease-in-out infinite dot-pulse}.parameter[data-current-band=purple] .parameter__readout-dot{animation:1.5s ease-in-out infinite dot-pulse}.parameter[data-current-band=maroon] .parameter__readout-dot{animation:.9s ease-in-out infinite dot-pulse}@keyframes dot-pulse{0%,to{box-shadow:0 0 6px color-mix(in srgb, var(--readout-color) 55%, transparent);transform:scale(1)}50%{box-shadow:0 0 12px color-mix(in srgb, var(--readout-color) 75%, transparent), 0 0 18px color-mix(in srgb, var(--readout-color) 30%, transparent);transform:scale(1.18)}}@media (prefers-reduced-motion:reduce){.parameter[data-current-band=red] .parameter__readout-dot,.parameter[data-current-band=purple] .parameter__readout-dot,.parameter[data-current-band=maroon] .parameter__readout-dot{animation:none}}.parameter.is-pulsing{animation:.45s ease-out card-pulse}@keyframes card-pulse{0%,to{transform:scale(1)}40%{transform:scale(1.018)}}@media (prefers-reduced-motion:reduce){.parameter.is-pulsing{animation:none}}.parameter__readout-value{color:var(--ts-fg);letter-spacing:-.01em;font-size:1.55rem;font-weight:700;line-height:1}.parameter[data-current-band=green] .parameter__readout-value{color:var(--ts-band-green-ink)}.parameter[data-current-band=yellow] .parameter__readout-value{color:var(--ts-band-yellow-ink)}.parameter[data-current-band=orange] .parameter__readout-value{color:var(--ts-band-orange-ink)}.parameter[data-current-band=red] .parameter__readout-value{color:var(--ts-band-red-ink)}.parameter[data-current-band=purple] .parameter__readout-value{color:var(--ts-band-purple-ink)}.parameter[data-current-band=maroon] .parameter__readout-value{color:var(--ts-band-maroon-ink)}.parameter__rail{height:8px;margin-top:var(--ts-space-80);background:linear-gradient(to right, var(--ts-band-green) 0%, var(--ts-band-green) 16.66%, var(--ts-band-yellow) 16.66%, var(--ts-band-yellow) 33.33%, var(--ts-band-orange) 33.33%, var(--ts-band-orange) 50%, var(--ts-band-red) 50%, var(--ts-band-red) 66.66%, var(--ts-band-purple) 66.66%, var(--ts-band-purple) 83.33%, var(--ts-band-maroon) 83.33%, var(--ts-band-maroon) 100%);box-shadow:inset 0 1px 2px var(--ts-ink);border-radius:999px;position:relative}@supports (color:color-mix(in lab, red, red)){.parameter__rail{box-shadow:inset 0 1px 2px color-mix(in srgb, var(--ts-ink) 18%, transparent)}}.parameter__rail-marker{top:50%;left:var(--rail-x,8%);background:var(--ts-surface);width:14px;height:14px;box-shadow:0 1px 3px var(--ts-black-a40), inset 0 0 0 2.5px var(--band-c,var(--ts-accent));border-radius:50%;transition:left .6s cubic-bezier(.22,1,.36,1);position:absolute;transform:translate(-50%,-50%)}.parameters.is-scene-tweening .parameter__rail-marker{transition:none}@media (prefers-reduced-motion:reduce){.parameter__rail-marker{transition:none}}.parameter__readout-unit{color:var(--ts-muted);font-size:.75rem;font-family:var(--ts-font-sans)}.parameter__readout-caret{color:var(--readout-color,var(--ts-muted));align-self:center;margin-left:auto;font-size:.78rem;transition:transform .5s cubic-bezier(.4,0,.2,1),color .35s,opacity .25s}.parameter__readout-caret[data-direction=up]{opacity:1;animation:2.2s ease-in-out infinite caret-pulse-up}@keyframes caret-pulse-up{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(1.15)}}@media (prefers-reduced-motion:reduce){.parameter__readout-caret[data-direction=up]{animation:none}}.parameter__readout-caret[data-direction=down]{color:var(--ts-muted);opacity:.6;filter:none;transform:rotate(180deg)}.parameter__readout-caret[data-direction=steady]{opacity:.15;filter:none}.parameter__readout-status{font-family:var(--ts-font-sans);color:var(--readout-color-text,var(--ts-muted));font-size:.78rem;font-weight:600}.parameters__scenes{max-width:1200px;margin:clamp(var(--ts-space-150), 4vw, var(--ts-space-250)) auto 0;text-align:center}.parameters__scenes-prompt{margin:0 0 var(--ts-space-60);color:var(--ts-muted);font-size:.78rem;font-style:italic}.parameters__scenes-chips{justify-content:center;gap:var(--ts-space-50);flex-wrap:wrap;display:flex}.parameters__scene-chip{appearance:none;padding:var(--ts-space-40) var(--ts-space-90);border:1px solid var(--ts-rule);border-radius:var(--ts-radius-pill,999px);color:var(--ts-fg);font-family:var(--ts-font-sans);cursor:pointer;white-space:nowrap;background:0 0;font-size:.8rem;font-weight:500;line-height:1;transition:background .2s,border-color .2s,color .2s,transform .12s}@media (hover:hover) and (pointer:fine){.parameters__scene-chip:hover{border-color:var(--ts-accent);color:var(--ts-accent);background:var(--ts-accent)}@supports (color:color-mix(in lab, red, red)){.parameters__scene-chip:hover{background:color-mix(in srgb, var(--ts-accent) 8%, transparent)}}}.parameters__scene-chip:active{transform:scale(.97)}.parameters__scene-chip.is-active{background:var(--ts-accent);border-color:var(--ts-accent);color:#fff}.parameters__legend{max-width:1200px;margin:clamp(var(--ts-space-150), 4vw, var(--ts-space-250)) auto 0;padding:0 var(--ts-space-50)}.parameters__legend-key{justify-content:center;gap:var(--ts-space-50) var(--ts-space-120);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.parameters__legend-key>li{align-items:center;gap:var(--ts-space-40);text-align:left;display:inline-flex}.parameters__legend-key>li:before{content:"";background:var(--key-dot,var(--ts-rule));width:11px;height:11px;box-shadow:0 0 5px var(--key-dot,transparent);border-radius:50%;flex:none}@supports (color:color-mix(in lab, red, red)){.parameters__legend-key>li:before{box-shadow:0 0 5px color-mix(in srgb, var(--key-dot,transparent) 45%, transparent)}}.parameters__legend-key li[data-band=green]{--key-dot:var(--ts-band-green)}.parameters__legend-key li[data-band=yellow]{--key-dot:var(--ts-band-yellow)}.parameters__legend-key li[data-band=orange]{--key-dot:var(--ts-band-orange)}.parameters__legend-key li[data-band=red]{--key-dot:var(--ts-band-red)}.parameters__legend-key li[data-band=purple]{--key-dot:var(--ts-band-purple)}.parameters__legend-key li[data-band=maroon]{--key-dot:var(--ts-band-maroon)}.parameters__legend-key>li>span{font-family:var(--ts-font-sans);color:var(--ts-fg);font-size:.78rem;font-weight:500;line-height:1.25}.parameters__legend-note{text-align:center;margin:var(--ts-space-75) 0 0;color:var(--ts-muted);font-size:.78rem;font-style:italic}.parameters__legend-disclaimer{max-width:760px;margin:var(--ts-space-50) auto 0;padding:0 var(--ts-space-100);text-align:center;color:var(--ts-muted);font-size:.7rem;line-height:1.45}.parameters__legend-disclaimer a{color:var(--ts-accent);border-bottom:1px solid var(--ts-accent);text-decoration:none}@supports (color:color-mix(in lab, red, red)){.parameters__legend-disclaimer a{border-bottom:1px solid color-mix(in srgb, var(--ts-accent) 40%, transparent)}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media (max-width:640px){body[data-page=sensor] #parameters:not(:target) .parameter:nth-of-type(n+4){display:none}body[data-page=sensor] #parameters:not(:target):after{content:"";width:min(11rem,100%);height:.45rem;margin:var(--ts-space-90) auto 0;border:1px solid var(--ts-rule);border-radius:var(--ts-radius-pill);background:linear-gradient(90deg, var(--ts-accent-a25), transparent);display:block}}.pcb-led-ring{gap:clamp(var(--ts-space-150), 4vw, var(--ts-space-250));max-width:1100px;margin:clamp(var(--ts-space-200), 5vw, var(--ts-space-300)) auto 0;padding-block:clamp(var(--ts-space-200), 5vw, var(--ts-space-300));border-top:1px solid var(--ts-rule-soft);--led-glow:#0f0;transition:--led-glow 1.8s var(--ts-ease-led);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;display:grid}@media (max-width:820px){.pcb-led-ring{grid-template-columns:1fr}}.pcb-led-ring__media{padding:var(--ts-space-50);background:0 0;place-items:center;display:grid}.pcb-led-ring__media-inner{max-width:100%;display:inline-block;position:relative}.pcb-led-ring__media img{width:100%;max-width:560px;height:auto;display:block}.pcb-led-ring__blooms{pointer-events:none;position:absolute;inset:0}@property --led-glow{syntax:"<color>";inherits:true;initial-value:#0f0}.pcb-led-ring__bloom{aspect-ratio:1;background:var(--led-glow,#0f0);opacity:1;width:5.8%;height:auto;box-shadow:0 0 12px 4px var(--led-glow), 0 0 24px 8px var(--led-glow);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}@supports (color:color-mix(in lab, red, red)){.pcb-led-ring__bloom{box-shadow:0 0 12px 4px color-mix(in srgb, var(--led-glow) 70%, transparent), 0 0 24px 8px color-mix(in srgb, var(--led-glow) 35%, transparent)}}.pcb-led-ring__bloom{transition:background 1.8s var(--ts-ease-led), box-shadow 1.8s var(--ts-ease-led)}.pcb-led-ring__band{width:100%;max-width:760px;margin:clamp(var(--ts-space-150), 4vw, var(--ts-space-250)) auto 0;padding:0 var(--ts-space-50);grid-column:1/-1}.pcb-led-ring__band-prompt{margin:0 0 var(--ts-space-70);font-size:var(--ts-text-md);text-align:center;font-style:italic}.pcb-led-ring__band-bar{border-radius:var(--ts-radius-pill);background:linear-gradient(to right, var(--ts-band-green) 0%, var(--ts-band-green) 16.66%, var(--ts-band-yellow) 16.66%, var(--ts-band-yellow) 33.33%, var(--ts-band-orange) 33.33%, var(--ts-band-orange) 50%, var(--ts-band-red) 50%, var(--ts-band-red) 66.66%, var(--ts-band-purple) 66.66%, var(--ts-band-purple) 83.33%, var(--ts-band-maroon) 83.33%, var(--ts-band-maroon) 100%);cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none;outline:none;height:14px;position:relative}.pcb-led-ring__band-bar:focus-visible{box-shadow:0 0 0 3px var(--ts-accent-a35)}.pcb-led-ring__band-marker{top:50%;left:var(--band-x,8%);border:3px solid var(--led-glow,#0f0);width:22px;height:22px;box-shadow:0 2px 6px var(--ts-black-a35);pointer-events:none;transition:left 1.8s var(--ts-ease-led), border-color 1.8s var(--ts-ease-led);background:#fff;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.pcb-led-ring__band-words{margin:var(--ts-space-50) 0 0;grid-template-columns:repeat(6,1fr);padding:0;list-style:none;display:grid}.pcb-led-ring__band-words>li{text-align:center;cursor:pointer;transition:color var(--ts-duration-fast) ease}.pcb-led-ring__band-words>li>span{padding:var(--ts-space-30) var(--ts-space-20);font-family:var(--ts-font-sans);font-size:var(--ts-text-sm);color:var(--ts-muted);font-weight:500;line-height:1.3;display:block}.pcb-led-ring__band-words>li.is-active>span{color:var(--ts-fg);font-weight:600}@media (hover:hover) and (pointer:fine){.pcb-led-ring__band-words>li:hover>span{color:var(--ts-fg)}}@media (prefers-reduced-motion:reduce){.pcb-led-ring__band-marker,.pcb-led-ring__blooms,.pcb-led-ring__bloom{transition:none}}.sensor-intelligence{padding-block:clamp(var(--ts-space-200), 6vw, var(--ts-space-400))}.sensor-intelligence__intro{text-align:center;max-width:52rem;margin-inline:auto;margin-bottom:clamp(var(--ts-space-150), 4vw, var(--ts-space-250))}.sensor-intelligence__intro h2{margin-block:0 var(--ts-space-50)}.sensor-intelligence__pipeline{gap:var(--ts-space-130);grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;max-width:1100px;margin-inline:auto;display:grid}@media (max-width:900px){.sensor-intelligence__pipeline{gap:var(--ts-space-50);grid-template-columns:1fr}}.sensor-intelligence__stage{background:var(--ts-surface);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-lg);transition:box-shadow var(--ts-duration-med) ease, transform var(--ts-duration-med) ease;flex-direction:column;display:flex;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.sensor-intelligence__stage:hover{box-shadow:var(--ts-shadow-md);transform:translateY(-2px)}}.sensor-intelligence__photo-wrap{aspect-ratio:16/10;background:var(--ts-surface-raised);position:relative;overflow:hidden}.sensor-intelligence__photo{object-fit:cover;width:100%;height:100%;display:block}.sensor-intelligence__body{gap:var(--ts-space-60);padding:var(--ts-space-90) var(--ts-space-110) var(--ts-space-110);background:var(--ts-surface);border-radius:var(--ts-radius-lg) var(--ts-radius-lg) 0 0;box-shadow:var(--ts-shadow-card-top);z-index:1;flex-direction:column;flex:1;margin-top:-14px;display:flex;position:relative}.sensor-intelligence__stage h3{font-size:var(--ts-text-3xl);letter-spacing:-.005em;margin:0}.sensor-intelligence__stage p{font-size:var(--ts-text-lg);color:var(--ts-ink);margin:0;line-height:1.55}.sensor-intelligence__stage strong{color:var(--ts-fg);font-weight:600}.sensor-intelligence__arrow{color:var(--ts-muted);padding:0 var(--ts-space-25);place-items:center;display:grid}.sensor-intelligence__arrow svg{width:48px;height:16px}@media (max-width:900px){.sensor-intelligence__arrow svg{width:24px;height:32px;transform:rotate(90deg)}}.sensor-intelligence__cta{margin:clamp(var(--ts-space-150), 4vw, var(--ts-space-200)) 0 0;text-align:center}.pcb-led-ring__body h3{margin:0 0 var(--ts-space-60);letter-spacing:-.01em;font-size:clamp(1.2rem,2.5vw,1.5rem)}.pcb-led-ring__body .lede{margin:0 0 var(--ts-space-90);font-size:var(--ts-text-2xl);line-height:1.55}.pcb-led-ring__body p{margin:0 0 var(--ts-space-90);font-size:var(--ts-text-lg);color:var(--ts-ink);line-height:1.6}.pcb-led-ring__body p:last-child{margin-bottom:0}.pcb-led-ring__body code{font-family:var(--ts-font-mono);background:var(--ts-surface-raised);border-radius:var(--ts-radius-sm);padding:.1em .35em;font-size:.85em}.sensor-specs{padding-block:clamp(var(--ts-space-200), 6vw, var(--ts-space-400))}.sensor-specs__intro{text-align:center;max-width:52rem;margin-inline:auto;margin-bottom:clamp(var(--ts-space-150), 4vw, var(--ts-space-250))}.sensor-specs__intro h2{margin-block:0 var(--ts-space-50)}.sensor-specs__grid{gap:var(--ts-space-150);grid-template-columns:repeat(2,minmax(0,1fr));max-width:1100px;margin-inline:auto;display:grid}@media (max-width:820px){.sensor-specs__grid{grid-template-columns:1fr}}.sensor-specs__block{padding:var(--ts-space-130) var(--ts-space-140);background:var(--ts-surface);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-lg)}.sensor-specs__block h3{margin:0 0 var(--ts-space-100);padding:var(--ts-space-40) var(--ts-space-60);font-size:var(--ts-text-4xl);letter-spacing:-.005em;text-align:center;background:var(--ts-accent-a10);color:var(--ts-fg);border-radius:6px}.sensor-specs__table{border-collapse:collapse;width:100%;font-size:var(--ts-text-md);font-variant-numeric:tabular-nums}.sensor-specs__table thead th{text-align:left;color:var(--ts-muted);font-weight:600;font-size:var(--ts-text-xs);text-transform:uppercase;letter-spacing:.05em;padding:var(--ts-space-30) var(--ts-space-50);border-bottom:1px solid var(--ts-rule-soft)}.sensor-specs__table tbody td{padding:var(--ts-space-40) var(--ts-space-50);border-bottom:1px solid var(--ts-rule-soft);vertical-align:top}.sensor-specs__table tbody tr:last-child td{border-bottom:0}.sensor-specs__table td:first-child{color:var(--ts-fg);white-space:nowrap;font-weight:600}.sensor-specs__table tbody tr:nth-child(2n) td{background:var(--ts-rule-soft)}@supports (color:color-mix(in lab, red, red)){.sensor-specs__table tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--ts-rule-soft) 40%, transparent)}}.sensor-specs__dl{font-size:var(--ts-text-base);grid-template-columns:minmax(7em,max-content) 1fr;gap:0;margin:0;line-height:1.5;display:grid}.sensor-specs__dl dt{color:var(--ts-muted);font-weight:600;font-size:var(--ts-text-md);letter-spacing:.01em;padding:var(--ts-space-40) var(--ts-space-60)}.sensor-specs__dl dd{color:var(--ts-fg);padding:var(--ts-space-40) var(--ts-space-60);margin:0}.sensor-specs__dl dt:nth-of-type(2n),.sensor-specs__dl dd:nth-of-type(2n){background:var(--ts-rule-soft)}@supports (color:color-mix(in lab, red, red)){.sensor-specs__dl dt:nth-of-type(2n),.sensor-specs__dl dd:nth-of-type(2n){background:color-mix(in srgb, var(--ts-rule-soft) 40%, transparent)}}.sensor-specs__footnote{margin-top:var(--ts-space-90);font-size:var(--ts-text-xs);color:var(--ts-muted);font-style:italic}.sensor-specs__highlights{max-width:1100px;margin:0 auto clamp(var(--ts-space-120), 3vw, var(--ts-space-180));justify-content:center;gap:var(--ts-space-60) var(--ts-space-75);flex-wrap:wrap;padding:0;list-style:none;display:flex}.sensor-specs__highlights li{align-items:center;gap:var(--ts-space-50);padding:var(--ts-space-50) var(--ts-space-90);background:var(--ts-accent);display:inline-flex}@supports (color:color-mix(in lab, red, red)){.sensor-specs__highlights li{background:color-mix(in srgb, var(--ts-accent) 5%, var(--ts-surface))}}.sensor-specs__highlights li{border:1px solid var(--ts-accent)}@supports (color:color-mix(in lab, red, red)){.sensor-specs__highlights li{border:1px solid color-mix(in srgb, var(--ts-accent) 20%, var(--ts-rule-soft))}}.sensor-specs__highlights li{border-radius:var(--ts-radius-pill);font-size:var(--ts-text-base);color:var(--ts-fg)}.sensor-specs__highlights li:before{content:"✓";color:var(--ts-accent);font-weight:700}.sensor-specs__highlights li.is-deliverable{background:var(--ts-accent)}@supports (color:color-mix(in lab, red, red)){.sensor-specs__highlights li.is-deliverable{background:color-mix(in srgb, var(--ts-accent) 15%, var(--ts-surface))}}.sensor-specs__highlights li.is-deliverable{border-color:var(--ts-accent)}@supports (color:color-mix(in lab, red, red)){.sensor-specs__highlights li.is-deliverable{border-color:color-mix(in srgb, var(--ts-accent) 35%, var(--ts-rule-soft))}}.sensor-specs__highlights li.is-deliverable{font-weight:600}.sensor-specs__full{text-align:center;max-width:1100px;margin-inline:auto}.sensor-specs__full>summary{align-items:center;gap:var(--ts-space-50);cursor:pointer;padding:var(--ts-space-60) var(--ts-space-110);font-family:var(--ts-font-sans);font-size:var(--ts-text-lg);color:var(--ts-accent);border:1px solid var(--ts-accent);background:0 0;font-weight:600;list-style:none;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.sensor-specs__full>summary{border:1px solid color-mix(in srgb, var(--ts-accent) 35%, var(--ts-rule))}}.sensor-specs__full>summary{border-radius:var(--ts-radius-pill);transition:background var(--ts-duration-fast) ease, border-color var(--ts-duration-fast) ease}.sensor-specs__full>summary::-webkit-details-marker{display:none}.sensor-specs__full>summary:after{content:"▾";transition:transform var(--ts-duration-fast) ease;font-size:.8em}.sensor-specs__full[open]>summary:after{transform:rotate(180deg)}@media (hover:hover) and (pointer:fine){.sensor-specs__full>summary:hover{background:var(--ts-accent-a10);border-color:var(--ts-accent)}}.sensor-specs__full>.sensor-specs__grid{text-align:start;margin-top:var(--ts-space-150)}@media (prefers-reduced-motion:reduce){.sensor-specs__full>summary:after{transition:none}}.sensor-comparison{padding-block:clamp(var(--ts-space-200), 6vw, var(--ts-space-400))}.sensor-comparison__intro{text-align:center;max-width:52rem;margin-inline:auto;margin-bottom:clamp(var(--ts-space-150), 4vw, var(--ts-space-250))}.sensor-comparison__intro h2{margin-block:0 var(--ts-space-50)}.sensor-comparison__summary{max-width:1100px;margin:0 auto clamp(var(--ts-space-120), 3vw, var(--ts-space-180));gap:var(--ts-space-60);display:grid}.sensor-comparison__summary p{font-size:var(--ts-text-lg);color:var(--ts-ink);margin:0;line-height:1.55}.sensor-comparison__summary strong.is-win{color:var(--ts-accent)}.sensor-comparison__summary strong.is-trade{color:var(--ts-muted)}.sensor-comparison__wrap{background:var(--ts-surface);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-lg);max-width:1100px;margin-inline:auto;overflow-x:auto}.sensor-comparison__table{border-collapse:collapse;width:100%;min-width:700px;font-size:var(--ts-text-base)}.sensor-comparison__table thead th{padding:var(--ts-space-90) var(--ts-space-90);text-align:left;background:var(--ts-surface-raised);border-bottom:1px solid var(--ts-rule-soft);vertical-align:bottom;font-weight:600}.sensor-comparison__table thead th:first-child{border-bottom-color:var(--ts-rule-soft);background:0 0}.sensor-comparison__table tbody tr:nth-child(2n) td{background:var(--ts-rule-soft)}@supports (color:color-mix(in lab, red, red)){.sensor-comparison__table tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--ts-rule-soft) 45%, transparent)}}.sensor-comparison__table thead th:nth-child(2),.sensor-comparison__table tbody tr td:nth-child(2){background:var(--ts-accent-a10);color:var(--ts-fg);box-shadow:inset 1px 0 0 var(--ts-accent-a30), inset -1px 0 0 var(--ts-accent-a30);font-weight:600}.sensor-comparison__table tbody td{padding:var(--ts-space-60) var(--ts-space-90);border-bottom:1px solid var(--ts-rule-soft);vertical-align:top;color:var(--ts-ink)}.sensor-comparison__table tbody tr:last-child td{border-bottom:0}.sensor-comparison__table tbody td:first-child{color:var(--ts-fg);white-space:nowrap;font-weight:600}.sensor-comparison__table tbody tr.is-price-row td{background:var(--ts-accent-a05);border-top:2px solid var(--ts-accent)}@supports (color:color-mix(in lab, red, red)){.sensor-comparison__table tbody tr.is-price-row td{border-top:2px solid color-mix(in srgb, var(--ts-accent) 30%, var(--ts-rule))}}.sensor-comparison__table tbody tr.is-price-row td{font-size:var(--ts-text-xl)}.sensor-comparison__table tbody tr.is-price-row td:nth-child(2){background:var(--ts-accent-a20);font-weight:700}.sensor-comparison__footnote{max-width:1100px;margin:var(--ts-space-90) auto 0;padding:0 var(--ts-space-50);font-size:var(--ts-text-xs);color:var(--ts-muted);text-align:center;font-style:italic}@media (max-width:640px){body[data-page=sensor] #comparison:not(:target) .sensor-comparison__wrap{display:none}body[data-page=sensor] #comparison:not(:target) .sensor-comparison__wrap:after{content:"";pointer-events:none;background:linear-gradient(180deg, transparent, var(--ts-surface));height:5rem;position:absolute;inset:auto 0 0}}.sensor-regulatory{max-width:52rem;padding-block:clamp(var(--ts-space-200), 5vw, var(--ts-space-300));margin-inline:auto}.sensor-regulatory>p{font-size:var(--ts-text-lg);color:var(--ts-ink);line-height:1.65}.sensor-regulatory code{font-family:var(--ts-font-mono);letter-spacing:.01em;background:var(--ts-accent);padding:.12em .55em;font-size:.8em;display:inline-block}@supports (color:color-mix(in lab, red, red)){.sensor-regulatory code{background:color-mix(in srgb, var(--ts-accent) 10%, var(--ts-surface-raised))}}.sensor-regulatory code{border:1px solid var(--ts-accent)}@supports (color:color-mix(in lab, red, red)){.sensor-regulatory code{border:1px solid color-mix(in srgb, var(--ts-accent) 20%, var(--ts-rule-soft))}}.sensor-regulatory code{border-radius:var(--ts-radius-pill);color:var(--ts-fg)}.sensor-usecases__intro{text-align:center;max-width:52rem;margin-inline:auto;margin-bottom:clamp(var(--ts-space-150), 4vw, var(--ts-space-250))}.sensor-usecases__intro h2{margin-block:0 var(--ts-space-50)}.sensor-usecases__grid{gap:var(--ts-space-100);grid-template-columns:repeat(5,minmax(0,1fr));max-width:1200px;margin-inline:auto;display:grid}@media (max-width:1100px){.sensor-usecases__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:700px){.sensor-usecases__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:460px){.sensor-usecases__grid{grid-template-columns:1fr}}.sensor-usecases__card{background:var(--ts-surface);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-lg);transition:box-shadow var(--ts-duration-med) ease, transform var(--ts-duration-med) ease;flex-direction:column;display:flex;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.sensor-usecases__card:hover{box-shadow:var(--ts-shadow-md);transform:translateY(-2px)}}.sensor-usecases__photo{aspect-ratio:5/4;background:var(--ts-surface-raised);position:relative;overflow:hidden}.sensor-usecases__photo img{object-fit:cover;width:100%;height:100%;display:block}.sensor-usecases__body{gap:var(--ts-space-50);padding:var(--ts-space-90) var(--ts-space-90) var(--ts-space-110);background:var(--ts-surface);border-radius:var(--ts-radius-lg) var(--ts-radius-lg) 0 0;box-shadow:var(--ts-shadow-card-top);z-index:1;flex-direction:column;flex:1;margin-top:-14px;display:flex;position:relative}.sensor-usecases__body h3{font-size:var(--ts-text-2xl);letter-spacing:-.005em;color:var(--ts-fg);margin:0}.sensor-usecases__body p{font-size:var(--ts-text-md);color:var(--ts-muted);margin:0;line-height:1.5}.sensor-fits{padding-block:clamp(var(--ts-space-200), 5vw, var(--ts-space-300))}.sensor-fits__tabs{max-width:1100px;margin:0 auto clamp(var(--ts-space-120), 3vw, var(--ts-space-180));padding-inline:var(--ts-space-100);gap:var(--ts-space-40);scrollbar-width:thin;flex-wrap:nowrap;display:flex;overflow-x:auto}.sensor-fits__tab{min-width:110px;padding:var(--ts-space-75) var(--ts-space-130);background:var(--ts-surface);color:var(--ts-muted);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-md);font-family:var(--ts-font-sans);font-size:var(--ts-text-xl);letter-spacing:-.005em;cursor:pointer;transition:background var(--ts-duration-fast) ease, color var(--ts-duration-fast) ease, border-color var(--ts-duration-fast) ease, box-shadow var(--ts-duration-fast) ease;flex:1 0 auto;font-weight:600}@media (hover:hover) and (pointer:fine){.sensor-fits__tab:hover{color:var(--ts-fg);border-color:var(--ts-accent)}@supports (color:color-mix(in lab, red, red)){.sensor-fits__tab:hover{border-color:color-mix(in srgb, var(--ts-accent) 35%, var(--ts-rule-soft))}}}.sensor-fits__tab[aria-selected=true]{background:var(--ts-accent)}@supports (color:color-mix(in lab, red, red)){.sensor-fits__tab[aria-selected=true]{background:color-mix(in srgb, var(--ts-accent) 10%, var(--ts-surface))}}.sensor-fits__tab[aria-selected=true]{color:var(--ts-accent);border-color:var(--ts-accent);box-shadow:0 2px 8px -2px var(--ts-accent-a30)}.sensor-fits__tab:focus-visible{outline:2px solid var(--ts-accent);outline-offset:3px}.sensor-fits__panel{animation:sensor-fits-fade var(--ts-duration-med) ease-out}@keyframes sensor-fits-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.sensor-fits__panel{animation:none}}.sensor-fits__setting{max-width:1100px;padding-inline:var(--ts-space-100);gap:clamp(var(--ts-space-150), 4vw, var(--ts-space-250));grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;margin:0 auto;display:grid}@media (max-width:880px){.sensor-fits__setting{grid-template-columns:1fr}}.sensor-fits__setting-photo{aspect-ratio:5/4;border-radius:var(--ts-radius-lg);background:var(--ts-surface-raised);border:1px solid var(--ts-rule-soft);position:relative;overflow:hidden}.sensor-fits__setting-photo img{object-fit:cover;width:100%;height:100%;display:block}.sensor-fits__setting-body{gap:var(--ts-space-100);flex-direction:column;display:flex}.sensor-fits__setting-title{font-family:var(--ts-font-sans);letter-spacing:-.01em;color:var(--ts-fg);margin:0;font-size:clamp(1.4rem,2.5vw,1.7rem);font-weight:600}.sensor-fits__setting-lede{font-size:var(--ts-text-2xl);color:var(--ts-ink);margin:0;line-height:1.55}.sensor-fits__setting-lede sub{font-size:.78em}.sensor-fits__claims{gap:var(--ts-space-90);margin:var(--ts-space-30) 0 var(--ts-space-50);flex-direction:column;display:flex}.sensor-fits__claim{padding:var(--ts-space-90) var(--ts-space-110);background:var(--ts-surface);border:1px solid var(--ts-rule-soft);border-left:3px solid var(--ts-accent);border-radius:var(--ts-radius-md)}.sensor-fits__claim-title{margin:0 0 var(--ts-space-30);font-family:var(--ts-font-sans);font-size:var(--ts-text-xl);letter-spacing:-.005em;color:var(--ts-fg);font-weight:600}.sensor-fits__claim-body{font-size:var(--ts-text-lg);color:var(--ts-ink);margin:0;line-height:1.5}.sensor-fits__claim-body sub{font-size:.78em}.sensor-fits__evidence{margin:var(--ts-space-25) 0 0;font-size:var(--ts-text-base);color:var(--ts-ink)}.sensor-fits__evidence a{color:var(--ts-accent);border-bottom:1px solid var(--ts-accent-a40);font-weight:600;text-decoration:none}@media (hover:hover) and (pointer:fine){.sensor-fits__evidence a:hover{border-bottom-color:var(--ts-accent)}}.sensor-fits__evidence-note{color:var(--ts-muted)}.sensor-fits__footnote{margin:var(--ts-space-50) 0 0;padding-top:var(--ts-space-70);border-top:1px dashed var(--ts-rule-soft);font-size:var(--ts-text-sm);color:var(--ts-muted);font-style:italic;line-height:1.5}@keyframes multiroom-callout-in{to{opacity:1}}@media (max-width:640px){.sensor-multiroom__hotspot[data-side=right] .sensor-multiroom__callout,.sensor-multiroom__hotspot[data-side=left] .sensor-multiroom__callout{text-align:center;top:calc(100% + 8px);left:50%;right:auto;transform:translate(-50%)}.sensor-multiroom__hotspot[data-side=right] .sensor-multiroom__callout:before,.sensor-multiroom__hotspot[data-side=left] .sensor-multiroom__callout:before{width:1.5px;height:8px;top:-8px;left:50%;right:auto;transform:translate(-50%)}body[data-page=sensor] .sensor-fits .sensor-multiroom__stage,body[data-page=sensor] .sensor-fits .sensor-multiroom__row-label,body[data-page=sensor] .sensor-fits .sensor-multiroom__row{display:none}}@keyframes multiroom-pulse{0%{opacity:.8;transform:scale(.8)}70%{opacity:0;transform:scale(2.4)}to{opacity:0;transform:scale(2.4)}}.sensor-specs__links{margin:var(--ts-space-50) 0 var(--ts-space-90);padding-left:var(--ts-space-110);font-size:var(--ts-text-base);line-height:1.6}.sensor-specs__links li{margin-bottom:var(--ts-space-25)}.sensor-specs__links a{color:var(--ts-accent)}body[data-page=sensor]{overflow-x:clip}.sensor-flow{padding-block:clamp(var(--ts-space-250), 6vw, var(--ts-space-450));overflow:hidden}.sensor-flow__stage-grid{gap:clamp(var(--ts-space-100), 2.5vw, var(--ts-space-180));max-width:1200px;padding-inline:var(--ts-space-100);grid-template-columns:repeat(4,minmax(0,1fr));margin-inline:auto;display:grid;position:relative}@media (max-width:980px){.sensor-flow__stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:540px){.sensor-flow__stage-grid{grid-template-columns:1fr}}.sensor-flow__stage{z-index:2;background:var(--ts-surface);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-lg);padding:var(--ts-space-100) var(--ts-space-110) var(--ts-space-110);gap:var(--ts-space-70);opacity:0;transition:opacity var(--ts-duration-slower) var(--ts-ease-emphasis), transform var(--ts-duration-slower) var(--ts-ease-emphasis), box-shadow var(--ts-duration-med) ease;flex-direction:column;display:flex;position:relative;transform:translateY(20px)scale(.96)}.sensor-flow__stage.is-revealed{opacity:1;transform:translateY(0)scale(1)}@media (hover:hover) and (pointer:fine){.sensor-flow__stage:hover{box-shadow:var(--ts-shadow-md);border-color:var(--ts-accent)}@supports (color:color-mix(in lab, red, red)){.sensor-flow__stage:hover{border-color:color-mix(in srgb, var(--ts-accent) 30%, var(--ts-rule-soft))}}}.sensor-flow__stage.is-active{border-color:var(--ts-accent)}@supports (color:color-mix(in lab, red, red)){.sensor-flow__stage.is-active{border-color:color-mix(in srgb, var(--ts-accent) 50%, var(--ts-rule-soft))}}.sensor-flow__stage.is-active{box-shadow:0 0 0 4px var(--ts-accent-a10)}.sensor-flow__stage-head{align-items:flex-start;gap:var(--ts-space-70);border-bottom:1px solid var(--ts-rule-soft);padding-bottom:var(--ts-space-70);display:flex}.sensor-flow__stage-icon{background:var(--ts-accent-a10);border-radius:var(--ts-radius-md);width:38px;height:38px;color:var(--ts-accent);flex-shrink:0;place-items:center;display:grid}.sensor-flow__stage-icon svg{width:22px;height:22px}.sensor-flow__stage-meta{flex:1;min-width:0}.sensor-flow__stage-label{font-family:var(--ts-font-sans);font-size:var(--ts-text-xl);letter-spacing:-.005em;color:var(--ts-fg);margin:0;font-weight:600;line-height:1.25}.sensor-flow__stage-sub{margin:var(--ts-space-10) 0 0;font-size:var(--ts-text-xs);color:var(--ts-muted);letter-spacing:.01em}.sensor-flow__stage-num{font-family:var(--ts-font-mono);font-size:var(--ts-text-xs);color:var(--ts-muted);letter-spacing:.08em;padding:var(--ts-space-10) var(--ts-space-40);background:var(--ts-surface-raised);border-radius:var(--ts-radius-sm);align-self:flex-start;font-weight:600}.sensor-flow__stage-items{gap:var(--ts-space-30);font-size:var(--ts-text-base);flex-direction:column;margin:0;padding:0;line-height:1.45;list-style:none;display:flex}.sensor-flow__stage-items li{padding-left:var(--ts-space-100);color:var(--ts-ink);opacity:0;transition:opacity var(--ts-duration-slow) ease, transform var(--ts-duration-slow) ease;transition-delay:calc(var(--i,0) * 60ms + .4s);position:relative;transform:translate(-6px)}.sensor-flow__stage.is-revealed .sensor-flow__stage-items li{opacity:1;transform:translate(0)}.sensor-flow__stage-items li:before{content:"";background:var(--ts-accent-a60);border-radius:50%;width:5px;height:5px;position:absolute;top:.55em;left:0}.sensor-flow__stage-items li sub,.sensor-flow__stage-items li sup{font-size:.75em}.sensor-flow__connectors{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.sensor-flow__connector-line{fill:none;stroke:url(#flow-grad);stroke-width:2px;stroke-linecap:round;opacity:0;transition:opacity var(--ts-duration-slower) ease}.sensor-flow__connectors.is-revealed .sensor-flow__connector-line{opacity:.7}.sensor-flow__particle{fill:var(--ts-accent);opacity:0}.sensor-flow__connectors.is-revealed .sensor-flow__particle{opacity:1;animation:2.2s linear infinite flow-particle-travel}@keyframes flow-particle-travel{0%{offset-distance:0%;opacity:0}10%{opacity:1}90%{opacity:1}to{offset-distance:100%;opacity:0}}.sensor-flow__cta{margin:clamp(var(--ts-space-150), 4vw, var(--ts-space-200)) 0 0;text-align:center}@media (prefers-reduced-motion:reduce){.sensor-flow__stage,.sensor-flow__stage-items li{opacity:1;transition:none;transform:none}.sensor-flow__particle{animation:none}.sensor-flow__connectors .sensor-flow__connector-line{opacity:.5}}.sensor-fusion{padding-block:clamp(var(--ts-space-250), 6vw, var(--ts-space-450))}.sensor-insights{padding-block:clamp(var(--ts-space-200), 5vw, var(--ts-space-350))}.sensor-insights__grid{padding:0 var(--ts-space-100);gap:var(--ts-space-100);grid-template-columns:repeat(2,minmax(0,1fr));max-width:1200px;margin:0 auto;list-style:none;display:grid}@media (max-width:640px){.sensor-insights__grid{grid-template-columns:1fr}}.sensor-insights__card{padding:var(--ts-space-110) var(--ts-space-130) var(--ts-space-110);background:var(--ts-surface);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-lg);border-left:4px solid var(--insight-color,var(--ts-accent));gap:var(--ts-space-60);transition:box-shadow var(--ts-duration-med) ease, transform var(--ts-duration-med) ease;flex-direction:column;display:flex;position:relative}@media (hover:hover) and (pointer:fine){.sensor-insights__card:hover{box-shadow:var(--ts-shadow-md);transform:translateY(-2px)}}.sensor-insights__card[data-band=green]{--insight-color:var(--ts-band-green)}.sensor-insights__card[data-band=yellow]{--insight-color:var(--ts-band-yellow)}.sensor-insights__card[data-band=orange]{--insight-color:var(--ts-band-orange)}.sensor-insights__card[data-band=red]{--insight-color:var(--ts-band-red)}.sensor-insights__tag{font-family:var(--ts-font-sans);font-size:var(--ts-text-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--insight-color,var(--ts-accent));margin:0;font-weight:700}@supports (color:color-mix(in lab, red, red)){.sensor-insights__tag{color:color-mix(in srgb, var(--insight-color,var(--ts-accent)) 62%, var(--ts-ink))}}.sensor-insights__quote{font-size:var(--ts-text-xl);color:var(--ts-fg);margin:0;font-style:italic;line-height:1.5}.sensor-insights__quote sub{font-size:.78em;font-style:normal}.sensor-insights__footer{padding-top:var(--ts-space-60);border-top:1px dashed var(--ts-rule-soft);font-size:var(--ts-text-sm);color:var(--ts-muted);font-family:var(--ts-font-sans);margin:0}.sensor-insights__note{text-align:center;margin:var(--ts-space-150) auto 0;max-width:720px;padding-inline:var(--ts-space-100);font-size:var(--ts-text-sm);font-style:italic;line-height:1.5}.sensor-insights__note a{color:var(--ts-accent);border-bottom:1px solid var(--ts-accent-a40);text-decoration:none}.sensor-fusion__sources{margin:var(--ts-space-50) auto 0;max-width:56ch;font-size:var(--ts-text-sm);color:var(--ts-muted)}.sensor-fusion__sources a{color:var(--ts-accent)}.sensor-fusion__story{margin:0 auto clamp(var(--ts-space-150), 4vw, var(--ts-space-200));padding:0 var(--ts-space-100);gap:clamp(var(--ts-space-75), 2vw, var(--ts-space-120));grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;max-width:1200px;list-style:none;display:grid}@media (max-width:920px){.sensor-fusion__story{gap:var(--ts-space-50);grid-template-columns:1fr}}.sensor-fusion__story-item{margin:0}.sensor-fusion__story-item>figure{background:var(--ts-surface);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-lg);height:100%;transition:box-shadow var(--ts-duration-med) ease, transform var(--ts-duration-med) ease;flex-direction:column;margin:0;display:flex;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.sensor-fusion__story-item>figure:hover{box-shadow:var(--ts-shadow-md);transform:translateY(-2px)}}.sensor-fusion__story-img-wrap{aspect-ratio:5/4;background:var(--ts-surface-raised);position:relative;overflow:hidden}.sensor-fusion__story-img-wrap img{object-fit:cover;width:100%;height:100%;transition:transform 6s ease-out;display:block}@media (hover:hover) and (pointer:fine){.sensor-fusion__story-item:hover .sensor-fusion__story-img-wrap img{transform:scale(1.06)}}@media (prefers-reduced-motion:reduce){@media (hover:hover) and (pointer:fine){.sensor-fusion__story-img-wrap img,.sensor-fusion__story-item:hover .sensor-fusion__story-img-wrap img{transition:none;transform:none}}}.sensor-fusion__story-item figcaption{gap:var(--ts-space-50);padding:var(--ts-space-90) var(--ts-space-110) var(--ts-space-110);background:var(--ts-surface);border-radius:var(--ts-radius-lg) var(--ts-radius-lg) 0 0;box-shadow:var(--ts-shadow-card-top);z-index:1;flex-direction:column;flex:1;margin-top:-14px;display:flex;position:relative}.sensor-fusion__story-kicker{font-family:var(--ts-font-sans);font-size:var(--ts-text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--ts-accent);margin:0;font-weight:700}.sensor-fusion__story-item figcaption h3{font-size:var(--ts-text-3xl);letter-spacing:-.005em;color:var(--ts-fg);margin:0;font-weight:600}.sensor-fusion__story-item figcaption p{font-size:var(--ts-text-base);color:var(--ts-ink);margin:0;line-height:1.5}.sensor-fusion__story-arrow{color:var(--ts-muted);place-items:center;display:grid}.sensor-fusion__story-arrow svg{width:36px;height:12px}@media (max-width:920px){.sensor-fusion__story-arrow{padding:var(--ts-space-25) 0}.sensor-fusion__story-arrow svg{width:18px;height:36px;transform:rotate(90deg)}}.sensor-fusion__story-bridge{text-align:center;font-size:var(--ts-text-lg);color:var(--ts-muted);margin:0 auto clamp(var(--ts-space-100), 2vw, var(--ts-space-150));max-width:720px;padding-inline:var(--ts-space-100);font-style:italic}.sensor-fusion__controls{max-width:1200px;margin:0 auto clamp(var(--ts-space-100), 2vw, var(--ts-space-150));justify-content:space-between;align-items:center;gap:var(--ts-space-100);padding-inline:var(--ts-space-100);flex-wrap:wrap;display:flex}.sensor-fusion__viz-toggle{background:var(--ts-surface-raised);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-md);padding:2px;display:inline-flex}.sensor-fusion__viz-btn{padding:var(--ts-space-40) var(--ts-space-90);font-family:var(--ts-font-sans);font-size:var(--ts-text-md);color:var(--ts-muted);cursor:pointer;transition:background var(--ts-duration-fast) ease, color var(--ts-duration-fast) ease;background:0 0;border:0;border-radius:6px;font-weight:600;display:inline-block}@media (hover:hover) and (pointer:fine){.sensor-fusion__viz-btn:hover{color:var(--ts-fg)}}.sensor-fusion__viz-btn[aria-pressed=true]{background:var(--ts-surface);color:var(--ts-fg);box-shadow:0 1px 2px var(--ts-black-a10)}.sensor-fusion__viz-btn:focus-visible{outline:2px solid var(--ts-accent);outline-offset:2px}.sensor-fusion__legend{gap:var(--ts-space-50) var(--ts-space-130);font-size:var(--ts-text-md);color:var(--ts-muted);flex-wrap:wrap;display:flex}.sensor-fusion__legend>span{align-items:center;gap:var(--ts-space-40);display:inline-flex}.sensor-fusion__swatch{border-radius:3px;flex-shrink:0;width:12px;height:12px;display:inline-block}.sensor-fusion__swatch--indoor{background:#3b82f6}.sensor-fusion__swatch--outdoor{background:#f59e0b}.sensor-fusion__swatch--processor{background:#a855f7}.sensor-fusion__swatch--output{background:var(--ts-accent)}.sensor-fusion__chart-wrap{max-width:1200px;padding:var(--ts-space-100);background:var(--ts-surface);border:1px solid var(--ts-rule-soft);border-radius:var(--ts-radius-lg);margin-inline:auto;overflow:hidden}.sensor-fusion__chart{width:100%;height:760px}.sensor-fusion__chart[data-viz=radial]{aspect-ratio:1;max-width:1100px;height:min(960px,90vw);margin-inline:auto}@media (max-width:900px){.sensor-fusion__chart{height:820px}}@media (max-width:600px){.sensor-fusion__chart{height:920px}body[data-page=sensor] .sensor-fusion__chart-wrap,body[data-page=sensor] .sensor-fusion__story-item:nth-of-type(n+2),body[data-page=sensor] .sensor-fusion__story-arrow,body[data-page=sensor] .sensor-fusion__controls{display:none}}.sensor-fusion__caption{max-width:920px;margin:var(--ts-space-100) auto 0;padding-inline:var(--ts-space-100);font-size:var(--ts-text-base);color:var(--ts-muted);text-align:center;line-height:1.55}.sensor-fusion__cta{margin:clamp(var(--ts-space-150), 4vw, var(--ts-space-200)) 0 0;text-align:center}