@font-face{font-family:Bricolage;src:url('assets/cbc7a3def7521486.ttf')}@font-face{font-family:Bricolage;src:url('assets/d0e849ae1b02eb42.ttf');font-weight:800}@font-face{font-family:Bricolage;src:url('assets/bf676996bf706e10.ttf');font-weight:600}
:root{--ink:#111;--paper:#fff;--yellow:#ffe500;--muted:#646464;--line:#d9d9d3;--wash:#f4f4ee}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Bricolage,Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font-family:inherit}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #b7a000;outline-offset:5px}button{cursor:pointer}img{max-width:100%;height:auto}.shell{max-width:1300px;margin:0 auto;padding-left:5vw;padding-right:5vw}.skip{position:absolute;z-index:20;left:20px;top:-80px;background:var(--yellow);padding:15px}.skip:focus{top:10px}.masthead{display:flex;justify-content:space-between;align-items:center;padding:21px 5vw;border-bottom:1px solid var(--ink)}.masthead img{display:block;width:163px}.preview-label,.micro,.eyebrow,.article-meta,.visual-top,figcaption,.motion-tools,footer{font:12px/1.5 'Courier New',monospace}.micro,.eyebrow{letter-spacing:.085em;text-transform:uppercase}.preview-label{border:1px solid var(--ink);padding:6px 10px;text-transform:uppercase;font-size:10px;letter-spacing:.08em}.reading-progress{position:fixed;top:0;left:0;right:0;height:4px;z-index:20;pointer-events:none}.reading-progress i{display:block;width:0;height:100%;background:var(--yellow)}.headline{padding-top:55px;padding-bottom:34px}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 20px;font-weight:bold}.dot{width:9px;height:9px;background:var(--ink);display:inline-block}.headline h1{font-size:clamp(39px,5.1vw,74px);font-weight:800;line-height:1.1;letter-spacing:-.045em;margin:0 0 26px;max-width:1180px}.headline h1 span{background:linear-gradient(transparent 58%,var(--yellow) 58%)}.dek{max-width:930px;font-size:clamp(20px,2.1vw,28px);line-height:1.4;margin:0}.article-meta{display:flex;gap:24px;margin-top:29px;padding-top:18px;border-top:1px solid var(--line);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.hero{margin-top:0;margin-bottom:50px}.hero img{display:block;width:100%;aspect-ratio:1672/941;object-fit:contain;background:#111}.hero figcaption{color:#444;margin:12px 0 0;line-height:1.55;font-size:12px;max-width:900px}.news-context{background:#111;color:white;padding:60px 0}.context-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:9vw}.temperature{display:flex;flex-direction:column;align-items:flex-start}.temperature>.micro{color:#c5c5c5}.temperature strong{font-size:clamp(115px,15vw,220px);line-height:1.03;letter-spacing:-.08em;color:var(--yellow);font-weight:800;white-space:nowrap}.temperature strong span{font-size:.6em;letter-spacing:-.04em}.thermo-line{width:100%;height:8px;background:#444;margin-top:18px}.thermo-line i{display:block;width:100%;height:100%;background:var(--yellow);transform-origin:left}.news-context.in-view .thermo-line i{animation:fill .95s ease-out both}.yellow{color:var(--yellow)}.context-copy h2{font-size:clamp(35px,3.9vw,56px);letter-spacing:-.04em;line-height:1.08;margin:15px 0 23px}.context-copy>p:last-child{font-size:19px;line-height:1.5;max-width:500px;color:#e0e0e0}.context-copy b{color:white}.article-opening{display:grid;grid-template-columns:1fr 2fr;gap:7vw;padding-top:75px;padding-bottom:75px}.section-side{padding-top:9px}.side-rule{display:block;width:50px;height:5px;background:var(--yellow);margin-top:16px}.prose{font-size:21px;line-height:1.65}.prose p{margin:0 0 1.4em}.prose p:last-child{margin-bottom:0}.device-index{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-top:32px;padding-bottom:55px;border-top:1px solid var(--ink)}.device-index h2{font-size:clamp(40px,4.7vw,65px);line-height:1.04;letter-spacing:-.05em;margin:0}.index-links{padding-top:4px}.index-links a{display:flex;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid var(--ink);font-size:19px;text-decoration:none}.index-links a:hover,.index-links a:focus-visible{background:var(--yellow)}.index-links a:first-child{border-top:1px solid var(--ink)}.index-links span{font:12px monospace;color:var(--muted)}.index-links b{margin-left:auto;font-weight:normal;font-size:23px}.motion-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:18px;padding-bottom:18px;background:var(--wash);border-top:1px solid var(--line);font-size:11px}.motion-tools button{background:none;border:1px solid var(--ink);padding:8px 11px;white-space:nowrap;color:var(--ink);font:11px monospace}.motion-tools button span{margin-left:10px}.motion-tools button:hover{background:var(--yellow)}.device-section{padding-top:65px;padding-bottom:80px;scroll-margin-top:15px}.device-heading{display:flex;gap:25px;align-items:flex-start;margin-bottom:35px}.chapter-number{font-size:72px;font-weight:800;line-height:.95;letter-spacing:-.08em;color:#c7c7c0}.device-heading .micro{margin:0 0 10px;font-size:11px}.device-heading h2{font-size:clamp(40px,4.4vw,62px);line-height:1.02;letter-spacing:-.045em;margin:0}.device-layout{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:start}.device-copy{font-size:19px;line-height:1.65}.case-note{border-left:5px solid var(--yellow);padding:4px 0 4px 20px;margin-top:33px}.case-note .micro{display:block;font-size:10px;color:#555;margin-bottom:12px}.case-note strong{font-size:25px;line-height:1.18;letter-spacing:-.02em;font-weight:600;display:block;max-width:400px}.device-band{background:var(--wash)}.interactive{margin:0;background:#fff;border:1px solid var(--ink);overflow:hidden}.visual-top{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px;border-bottom:1px solid var(--ink);font-size:10px;text-transform:uppercase;letter-spacing:.025em}.visual-top span:last-child{white-space:nowrap;color:#555}.diagram{position:relative;height:auto;aspect-ratio:480/300;margin:10px 12px;color:#111}.diagram svg{width:100%;height:100%;overflow:visible}.diagram svg text{font:12px 'Courier New',monospace;fill:#555}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:0;margin:0 18px;list-style:none;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.steps li{min-width:0}.steps button{color:#111;padding:11px 6px;width:100%;height:100%;border:0;background:#fff;display:flex;align-items:center;flex-direction:column;gap:5px;font-size:11px;line-height:1.2}.steps button span{display:block;font:11px monospace}.steps button[aria-pressed=true]{background:var(--yellow);font-weight:600}.steps button:hover{background:#fff8ac}.steps button:focus-visible{outline-offset:-3px}.steps.four{grid-template-columns:repeat(4,1fr)}.steps.four button{font-size:10px;padding-left:2px;padding-right:2px}.stage-description{min-height:140px;padding:22px 20px 14px}.stage-description strong{font-size:23px;line-height:1.12;letter-spacing:-.025em;display:block;font-weight:600}.stage-description p{font-size:14px;line-height:1.5;margin:10px 0 0;color:#555}.interactive figcaption{font-size:12px;padding:15px 20px 18px;border-top:1px solid var(--line);color:#444;line-height:1.55;min-height:76px}.fridge-scene .account{opacity:.22}.fridge-scene .calendar-symbol,.fridge-scene .data-connection,.fridge-scene .risk-mark{opacity:0}.fridge-scene .phone,.fridge-scene .temperature-connection{opacity:1}.fridge-scene [class$=symbol],.fridge-scene .account,.fridge-scene .connection,.fridge-scene .risk-mark,.fridge-scene .phone{transition:opacity .6s}.fridge-scene[data-stage="1"] .temperature-symbol,.fridge-scene[data-stage="2"] .temperature-symbol{opacity:0}.fridge-scene[data-stage="1"] .calendar-symbol,.fridge-scene[data-stage="2"] .calendar-symbol,.fridge-scene[data-stage="1"] .account,.fridge-scene[data-stage="2"] .account,.fridge-scene[data-stage="1"] .data-connection,.fridge-scene[data-stage="2"] .data-connection{opacity:1}.fridge-scene[data-stage="1"] .phone,.fridge-scene[data-stage="1"] .temperature-connection,.fridge-scene[data-stage="2"] .phone,.fridge-scene[data-stage="2"] .temperature-connection{opacity:.18}.fridge-scene[data-stage="2"] .risk-mark{opacity:1}.fridge-scene[data-stage="2"] .account rect{fill:var(--yellow)}.fridge-scene.playing .connection{animation:dash 2s linear}.fridge-scene[data-stage="2"] .data-connection{stroke:#9a8900}.floor-walls{stroke-dasharray:1450;stroke-dashoffset:0}.vacuum-scene.playing[data-stage="0"] .floor-walls{animation:map 2.2s ease-out both}.vacuum-scene.playing[data-stage="0"] .vacuum-route{animation:route 2.4s linear both}.vacuum-scene.playing[data-stage="0"] .robot-marker{animation:travel 2.4s linear both}.sensors{opacity:.13;transition:opacity .5s}.vacuum-scene[data-stage="1"] .sensors{opacity:1}.vacuum-total{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#111;color:#fff;opacity:0;pointer-events:none;transition:opacity .6s}.vacuum-total strong{color:var(--yellow);font-size:clamp(48px,6vw,76px);letter-spacing:-.06em;line-height:1.05}.vacuum-total span{font:12px/1.6 monospace;max-width:220px;text-align:center;margin-top:13px}.vacuum-total b{font:10px monospace;text-transform:uppercase;background:var(--yellow);color:#111;padding:8px;margin-top:20px}.vacuum-scene[data-stage="2"] .vacuum-total{opacity:1}.lock-diagram{display:flex;align-items:center;justify-content:center;gap:0;padding:20px 10px}.visitor-card{width:42%;border:1px solid #111;padding:15px 10px;display:flex;flex-direction:column;align-items:center;gap:12px;background:#fff}.visitor-card>.micro{font-size:9px;letter-spacing:0;white-space:nowrap}.visitor-card svg{width:40px;height:48px}.permission-state{font:12px monospace;background:var(--yellow);padding:8px 10px;transition:background .5s}.access-link{display:flex;align-items:center;width:15%;position:relative}.access-link span{display:block;width:100%;height:1px;border-top:2px dashed #111}.access-link b{font-size:28px;font-weight:400;margin-left:-9px}.door-frame{height:90%;width:27%;border:3px solid #111;background:#111;perspective:500px}.door{background:#f2f2eb;border:1px solid #111;width:100%;height:100%;transform-origin:right;position:relative;transition:transform 1s}.door-handle{display:block;position:absolute;left:12%;top:40%;width:18%;height:25%;background:#111}.door-handle:before{content:'';width:5px;height:5px;background:var(--yellow);border-radius:50%;position:absolute;top:12%;left:50%;transform:translateX(-50%)}.door-handle i{display:block;position:absolute;top:60%;left:-65%;width:150%;height:5px;background:#555}.door-outcome{position:absolute;bottom:1%;font:10px monospace;background:var(--yellow);padding:6px 10px;opacity:0;transition:opacity .5s}.lock-scene[data-stage="1"] .permission-state,.lock-scene[data-stage="2"] .permission-state{background:#111;color:white}.lock-scene[data-stage="1"] .access-link{opacity:.2}.lock-scene[data-stage="2"] .access-link{color:#998800}.lock-scene[data-stage="2"] .access-link span{border-color:#998800}.lock-scene[data-stage="2"] .door{transform:rotateY(-45deg)}.lock-scene[data-stage="2"] .door-outcome{opacity:1}.tv-diagram{padding:30px 24px 25px}.tv-set{position:relative;background:#111;height:88%;border:3px solid #111;padding:9px 9px 14px;border-radius:5px}.tv-screen{height:100%;background:#1b1b1b;position:relative;overflow:hidden;color:var(--yellow)}.tv-screen>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transition:opacity .5s,transform .5s;transform:translateY(7px)}.tv-screen b{font:12px monospace;text-transform:uppercase;margin-top:13px;color:#fff}.tv-app>span{font:32px Arial;border:1px solid var(--yellow);border-radius:10px;width:64px;height:64px;display:flex;align-items:center;justify-content:center;padding-left:4px}.tv-lock svg{width:54px;height:60px}.tv-ransom>span{font:11px monospace;text-transform:uppercase}.tv-ransom strong{font-size:clamp(42px,5.6vw,72px);letter-spacing:-.05em;margin-top:5px}.tv-ransom small{font-size:.4em;letter-spacing:0}.tv-restore>span{font:74px Arial;line-height:.8}.tv-led{position:absolute;bottom:4px;left:50%;width:4px;height:4px;border-radius:50%;background:var(--yellow)}.tv-feet{width:65%;height:12px;margin:auto;border-left:3px solid #111;border-right:3px solid #111;transform:perspective(60px) rotateX(20deg)}.tv-scene[data-stage="0"] .tv-app,.tv-scene[data-stage="1"] .tv-lock,.tv-scene[data-stage="2"] .tv-ransom,.tv-scene[data-stage="3"] .tv-restore{opacity:1;transform:none}.service{padding:75px 0 70px;background:var(--yellow)}.service h2{font-size:clamp(43px,6.2vw,84px);line-height:1.02;letter-spacing:-.05em;margin:0 0 45px}.tips{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;border-top:2px solid #111;padding-top:22px}.tips span{font:13px monospace}.tips h3{font-size:23px;line-height:1.2;font-weight:600;letter-spacing:-.025em;margin:18px 0 0}.closing{max-width:760px;font-size:18px;margin:50px 0 40px;line-height:1.6}.final-caveat{font-size:29px;line-height:1.15;letter-spacing:-.02em;padding-top:22px;border-top:1px solid #111;margin-bottom:0}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:35px;padding-bottom:35px;text-transform:uppercase;font-size:10px}footer img{width:140px}footer a{text-underline-offset:4px}body.motion-paused *,body.motion-paused *:before{animation-play-state:paused!important}.no-js-note{font:12px monospace;padding:10px}@keyframes fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes dash{to{stroke-dashoffset:-40}}@keyframes map{from{stroke-dashoffset:1450}to{stroke-dashoffset:0}}@keyframes route{from{stroke-dashoffset:700}to{stroke-dashoffset:0}}@keyframes travel{0%{transform:translate(0,0)}25%{transform:translate(97px,0)}45%{transform:translate(97px,-71px)}55%{transform:translate(120px,-71px)}100%{transform:translate(120px,105px)}}
@media(min-width:1500px){.shell{padding-left:65px;padding-right:65px}}@media(max-width:1050px){.device-layout{gap:4vw}.device-copy{font-size:18px}.diagram{margin-left:7px;margin-right:7px}.stage-description strong{font-size:21px}.steps{margin-left:12px;margin-right:12px}.steps button{font-size:10px}.visitor-card>.micro{font-size:8px}.tips{gap:20px}.tips h3{font-size:20px}.prose{font-size:19px}}@media(max-width:760px){.masthead{padding-top:17px;padding-bottom:17px}.masthead img{width:136px}.preview-label{font-size:9px;padding:5px 7px}.headline{padding-top:34px;padding-bottom:25px}.eyebrow{font-size:10px;margin-bottom:16px}.headline h1{font-size:clamp(36px,8.6vw,58px);line-height:1.12;margin-bottom:21px}.dek{font-size:20px;line-height:1.4}.article-meta{gap:18px;font-size:9px;margin-top:24px}.hero{margin-bottom:30px}.hero figcaption{font-size:12px;margin-top:10px}.news-context{padding:35px 0}.context-inner{grid-template-columns:1fr;gap:28px}.temperature strong{font-size:144px;line-height:1}.temperature{border-bottom:1px solid #555;padding-bottom:28px}.thermo-line{width:100%;height:6px;margin-top:15px}.context-copy h2{font-size:39px;line-height:1.05;margin-top:12px}.context-copy>p:last-child{font-size:18px;margin-bottom:0}.article-opening{grid-template-columns:1fr;gap:22px;padding-top:40px;padding-bottom:45px}.section-side{display:flex;align-items:center;gap:15px}.side-rule{margin:0;width:35px;height:4px}.prose{font-size:19px;line-height:1.62}.device-index{grid-template-columns:1fr;gap:27px;padding-top:30px;padding-bottom:35px}.device-index h2{font-size:44px}.index-links a{font-size:18px;padding:15px 0}.motion-tools{display:block;padding-top:17px;padding-bottom:17px}.motion-tools>span{display:block;line-height:1.6;max-width:340px}.motion-tools button{margin-top:13px}.device-section{padding-top:40px;padding-bottom:45px}.device-heading{gap:18px;margin-bottom:27px}.chapter-number{font-size:58px}.device-heading h2{font-size:43px}.device-heading .micro{font-size:9px;margin-bottom:8px}.device-layout{grid-template-columns:1fr;gap:30px}.device-copy{font-size:18px}.case-note{margin-top:26px;padding-left:17px}.case-note strong{font-size:24px;max-width:360px}.interactive{max-width:580px;width:100%;justify-self:center}.visual-top{font-size:9px;padding:13px 15px}.diagram{margin:10px 12px}.steps{margin:0 15px}.steps button{font-size:11px;padding:11px 2px}.steps.four button{font-size:10px}.stage-description{min-height:135px;padding:20px 18px 16px}.stage-description strong{font-size:24px}.stage-description p{font-size:14px}.interactive figcaption{font-size:12px;min-height:0;padding:15px 18px 18px}.visitor-card>.micro{font-size:9px}.vacuum-total strong{font-size:70px}.tv-ransom strong{font-size:62px}.service{padding:45px 0}.service h2{font-size:43px;line-height:1.04;margin-bottom:34px}.tips{grid-template-columns:1fr 1fr;gap:25px 22px}.tips h3{font-size:21px;margin-top:12px}.closing{font-size:17px;margin-top:35px}.final-caveat{font-size:25px}footer{display:grid;grid-template-columns:1fr 1fr;gap:20px}footer img{width:120px}footer>span{text-align:right}footer>a{grid-column:1/-1;justify-self:start}.tv-diagram{padding:25px 19px}.tv-set{padding:7px 7px 13px}}@media(max-width:360px){.headline h1{font-size:33px}.steps.four button{font-size:9px}.visitor-card>.micro{font-size:8px}.permission-state{font-size:10px}.tips h3{font-size:19px}.vacuum-total strong{font-size:57px}.vacuum-total b{margin-top:12px}.tv-ransom strong{font-size:52px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reading-progress{display:none}}
