:root{--ink:#102b32;--muted:#516367;--teal:#087f78;--mint:#bbefd3;--paper:#f8f9f5;--line:#d8e0da}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:5px}[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:20px;padding:12px;background:white;z-index:10}.skip:focus{top:10px}.header{height:102px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper)}.brand{display:flex;align-items:center;gap:12px;font-size:21px;letter-spacing:1px}.brand b{font-weight:400}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:5px}.brand-mark{width:45px;height:45px;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:700;position:relative;line-height:1}.brand-mark span{position:absolute;font-size:23px;right:-8px;top:-10px;background:var(--paper)}nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}.nav-cta{padding:13px 18px;border:1px solid var(--ink);display:flex;gap:25px}.menu-toggle{display:none}.hero{padding:76px 5% 65px;display:grid;grid-template-columns:1.15fr 1fr;gap:5%;max-width:1600px;margin:auto}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;line-height:1.6}.dot{display:inline-block;background:var(--teal);width:7px;height:7px;border-radius:50%;margin-right:8px}h1{font-size:clamp(43px,4.8vw,76px);line-height:1.04;letter-spacing:-3px;margin:28px 0}h1 em,h2 em{font-style:normal;color:var(--teal)}.intro{font-size:17px;line-height:1.75;color:var(--muted);max-width:470px}.hero-actions{display:flex;align-items:center;gap:28px;margin:30px 0}.button{background:var(--ink);color:white;padding:19px 23px;font-size:13px;font-weight:600;display:inline-flex;justify-content:space-between;gap:35px;align-items:center;transition:background .2s,transform .2s}.button:hover{background:var(--teal);transform:translateY(-2px)}.text-link{font-size:13px;font-weight:600;display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:5px}.hero-note{font-size:11px;color:var(--muted)}.control-art{background:var(--ink);color:var(--mint);align-self:center;min-height:440px;border-radius:3px;box-shadow:12px 12px 0 #e4ebe3;overflow:hidden}.art-top,.art-bottom{display:flex;align-items:center;justify-content:space-between;padding:22px 25px;font-family:monospace;font-size:10px;letter-spacing:1px}.art-top{border-bottom:1px solid #2a454a}.art-tag{border:1px solid #57716b;padding:5px 8px;font-size:9px}.art-bottom{border-top:1px solid #2a454a;font-size:9px}.grid-art{height:315px;position:relative;background-image:linear-gradient(#24404766 1px,transparent 1px),linear-gradient(90deg,#24404766 1px,transparent 1px);background-size:22px 22px}.logic-module,.hmi-module,.software-module{position:absolute;background:#17363e;border:1px solid #648a83;box-shadow:0 10px 25px #05181c40}.logic-module{width:48%;top:34px;left:7%;padding:14px}.module-label{font-family:monospace;font-size:8px;letter-spacing:.7px;display:flex;justify-content:space-between;align-items:center}.module-label .dot{background:var(--mint);width:5px;height:5px;margin-right:4px}.ladder{height:24px;margin-top:12px;border-left:1px solid #a8c5b5;border-right:1px solid #a8c5b5;display:flex;align-items:center;justify-content:space-evenly;position:relative}.ladder:before{content:'';position:absolute;top:50%;width:100%;height:1px;background:#829f94}.ladder b{width:10px;height:12px;border-left:2px solid #b7dbbd;border-right:2px solid #b7dbbd;z-index:1;background:#17363e}.ladder em{border:1px solid #b7dbbd;width:14px;height:14px;border-radius:50%;z-index:1;background:#17363e}.module-foot{font:7px monospace;letter-spacing:1px;margin-top:17px;color:#a6bdb7}.hmi-module{width:40%;top:100px;right:6%;padding:14px}.hmi-body{display:flex;justify-content:space-between;align-items:center;margin:17px 0}.gauge{width:65px;height:65px;border:6px solid #325750;border-top-color:var(--mint);border-right-color:var(--mint);border-radius:50%;display:grid;place-items:center;font:10px monospace}.bars{display:flex;gap:5px;align-items:flex-end;height:48px}.bars i{width:8px;background:#639b87;height:30%}.bars i:nth-child(2){height:70%}.bars i:nth-child(3){height:48%}.bars i:nth-child(4){height:90%;background:var(--mint)}.hmi-tiles{display:flex;gap:6px}.hmi-tiles span{width:33%;height:12px;background:#3b625b}.software-module{left:11%;bottom:25px;width:57%;padding:12px;display:flex;gap:15px;align-items:center}.software-module div{font:9px monospace}.software-module div span{display:block;font-size:6px;margin-top:5px;letter-spacing:1px;color:#9fb7ae}.software-module .dot{margin-left:auto;background:var(--mint)}.code-icon{font:22px monospace}.wire{position:absolute;border:1px solid #7db798}.wire-one{width:28%;height:80px;top:60px;left:48%;border-left:0;border-bottom:0}.wire-two{width:25%;height:90px;bottom:35px;left:20%;border-top:0;border-right:0}.wire-three{width:17%;height:25px;bottom:47px;right:15%;border-left:0;border-top:0}.cross{position:absolute;color:#6d978e;font:18px monospace}.cross-one{right:20px;top:18px}.cross-two{left:17px;bottom:15px}.service-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:27px 5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:1.2px}.service-strip i{color:var(--teal);font-size:20px;font-style:normal;font-weight:400}.section{padding:85px 5%;max-width:1600px;margin:auto;scroll-margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px}h2{font-size:clamp(32px,3.4vw,51px);line-height:1.12;letter-spacing:-1.8px;font-weight:500;margin:19px 0}.section-heading>p{max-width:335px;font-size:15px;line-height:1.7;color:var(--muted)}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 24px;position:relative;display:flex;flex-direction:column;transition:background .2s}.service-card:hover{background:#edf2e9}.service-num{font:10px monospace;color:var(--muted)}.service-icon{font-size:43px;line-height:1;margin:35px 0 23px;color:var(--teal)}.service-icon.code{font-size:29px;height:43px;display:flex;align-items:center}h3{font-size:19px;font-weight:500;letter-spacing:-.4px;margin:0 0 13px}.service-card p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 30px}.card-footer{font-size:7px;letter-spacing:.7px;font-weight:700;display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);gap:8px}.card-footer span{font-size:18px;color:var(--teal)}.approach{background:#eaf0e8;display:grid;grid-template-columns:1fr 1fr;gap:12%}.approach-intro>p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--muted);max-width:335px}.approach-intro .text-link{margin-top:15px}.steps article{display:flex;gap:26px;border-bottom:1px solid #c9d6cc;padding:24px 0}.steps article:first-child{padding-top:15px}.steps article>span{font:11px monospace;color:var(--teal);padding-top:5px}.steps article p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}.remote{display:grid;grid-template-columns:.55fr 1.45fr 1fr;gap:5%;border-bottom:1px solid var(--line)}.remote-symbol{display:block;font-size:88px;color:var(--teal);line-height:1;margin-bottom:18px}.remote h2{margin-top:0;font-size:39px}.remote p:not(.eyebrow){font-size:14px;line-height:1.85;color:var(--muted)}.remote aside{border-left:1px solid var(--line);padding-left:30px;align-self:center}.remote h3{font-size:16px}.remote ul{padding:0;list-style:none;margin-bottom:0}.remote li{font-size:12px;color:var(--muted);margin:18px 0;display:flex;gap:10px}.remote li:before{content:'↗';color:var(--teal)}.faq{display:grid;grid-template-columns:1fr 1.25fr;gap:10%}.faq h2{font-size:36px}.questions details{border-bottom:1px solid var(--line);padding:22px 0}.questions details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;font-size:15px;line-height:1.6}.questions p{font-size:13px;line-height:1.8;color:var(--muted);max-width:480px}.contact{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:15%;padding-top:65px;padding-bottom:65px}.contact .eyebrow{color:var(--mint)}.contact h2{font-size:55px}.contact p{font-size:14px;line-height:1.8;color:#bfd0cc;max-width:370px}.contact-panel{align-self:center;padding-left:35px;border-left:1px solid #496064}.contact-panel h3{font-size:24px}.contact .button{background:var(--mint);color:var(--ink);margin:10px 0}.contact .button:hover{background:white}.contact p.contact-safety{font-size:11px;margin-top:25px;color:#a4bcb6}footer{padding:35px 5%;display:flex;align-items:center;gap:25px;flex-wrap:wrap;font-size:10px}footer p{color:var(--muted);margin-right:auto}.footer-brand{font-weight:700;font-size:13px;letter-spacing:1px}.footer-brand span{font-weight:400;font-size:9px}footer small{font-size:10px;color:var(--muted)}.legal{max-width:800px;min-height:70vh;margin:auto;padding:70px 6%}.legal h1{font-size:44px}.legal h2{font-size:24px}.legal p{line-height:1.8;color:var(--muted)}
@media(min-width:1600px){.header,.service-strip,footer{padding-left:calc((100vw - 1440px)/2);padding-right:calc((100vw - 1440px)/2)}}
@media(max-width:1000px){nav{gap:20px}.hero{gap:35px;padding-top:55px}h1{letter-spacing:-2px}.control-art{min-height:390px}.grid-art{height:275px}.logic-module{top:22px;padding:10px}.hmi-module{top:83px;padding:10px}.software-module{bottom:15px}.services-grid{grid-template-columns:repeat(2,1fr)}.remote{grid-template-columns:1.5fr 1fr}.remote-label{grid-column:1/-1;display:flex;gap:20px;align-items:center}.remote-symbol{font-size:40px;margin:0}.remote h2{font-size:34px}.service-strip{font-size:8px}.contact{gap:8%}.contact h2{font-size:45px}}
@media(max-width:700px){html{scroll-padding-top:20px}.header{height:80px;position:relative}.brand{font-size:16px}.brand-mark{width:35px;height:35px;font-size:27px}.brand small{font-size:7px;letter-spacing:1.2px}.menu-toggle{display:flex;border:1px solid var(--line);padding:10px;background:transparent;gap:12px;font-size:12px}nav{display:none;position:absolute;top:79px;left:0;right:0;background:var(--paper);padding:22px 5%;border-bottom:1px solid var(--line);z-index:5;align-items:stretch;gap:20px}nav.open{display:flex;flex-direction:column}.nav-cta{justify-content:space-between}.hero{grid-template-columns:1fr;padding-top:40px;gap:35px;padding-bottom:40px}h1{font-size:clamp(40px,10vw,64px);letter-spacing:-2px;margin:22px 0}.intro{font-size:15px}.hero-actions{gap:20px;flex-wrap:wrap}.control-art{width:100%;max-width:500px;justify-self:center;min-height:400px;box-shadow:6px 6px 0 #e4ebe3}.grid-art{height:285px}.service-strip{display:grid;grid-template-columns:1fr 1fr;gap:18px;font-size:8px;text-align:center}.service-strip i{display:none}.section{padding:50px 5%}.section-heading{display:block;margin-bottom:28px}.section-heading>p{max-width:100%}h2{font-size:36px}.services-grid{grid-template-columns:1fr 1fr}.service-card{padding:22px 17px}.service-card h3{font-size:17px}.service-card p{font-size:12px}.card-footer{font-size:6px;letter-spacing:0}.service-icon{margin-top:25px}.approach,.faq,.contact{grid-template-columns:1fr;gap:30px}.approach-intro>p:not(.eyebrow){max-width:100%}.remote{grid-template-columns:1fr;gap:23px}.remote-label{grid-column:auto}.remote aside{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.remote h2{font-size:35px}.contact-panel{border-left:0;border-top:1px solid #496064;padding:27px 0 0}.contact h2{font-size:44px}.contact p{max-width:100%}footer{gap:17px}footer p{width:100%;margin:0;order:1}footer small{width:100%;order:2}.legal h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.platforms{margin-top:30px;padding:22px 25px;background:#edf2e9}.platforms p:last-child{font-size:13px;line-height:2;color:var(--muted);margin-bottom:0}.contact .phone{font-size:12px}.contact a:not(.button):hover{text-decoration:underline}
