:root{--paper:#f8f9f5;--ink:#20231f;--lime:#d5f44a;--muted:#60655b;--line:#d5d9cf;--ease:cubic-bezier(.16,1,.3,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.6}::selection{background:var(--lime);color:var(--ink)}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #678100;outline-offset:6px}button,a{-webkit-tap-highlight-color:transparent}svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}header{height:102px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;line-height:.9;font-size:36px;font-weight:800;letter-spacing:-.04em}.brand svg{width:39px;height:44px;stroke-width:2.7}.brand small{font-size:12px;letter-spacing:.27em;display:block;margin-top:8px}.brand-dot{color:#738c17}nav{display:flex;gap:38px;font-size:13px;font-weight:600}.nav-cta{border:1px solid var(--ink);padding:10px 21px;font-size:13px;font-weight:700}.nav-cta span{margin-left:24px}.hero{padding:0 3%}.hero-top{padding:65px 2% 49px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}h1{font-size:clamp(50px,6.4vw,96px);line-height:1.09;letter-spacing:-.04em;font-weight:600;margin:0}.movement{display:inline-flex;align-items:center;gap:23px}.movement svg{width:61px;height:61px;stroke-width:4;background:var(--lime);padding:13px;border-radius:50%}.hero-aside{padding-bottom:5px;min-width:288px}.hero-aside p{font-size:14px;line-height:1.7;margin:0 0 22px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:16px 23px;font-size:13px;font-weight:700;transition:background .2s,transform .2s var(--ease)}.dark{background:var(--ink);color:var(--paper)}.button span{font-size:21px;line-height:1}.local{display:block;font-size:12px;color:var(--muted);margin-top:15px}.local i,.scene-top i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7a9519;margin-right:6px}.scene-wrap{height:670px}.scene{height:500px;position:sticky;top:20px;background:#111511;border-radius:9px;overflow:hidden;color:#fff}.scene-top,.scene-bottom{position:absolute;z-index:3;left:30px;right:30px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.12em}.scene-top{top:24px;color:#e0e6d9}.scene-top i{background:var(--lime)}.scene-word{position:absolute;top:70px;left:0;width:100%;text-align:center;font-size:clamp(50px,8.4vw,130px);font-weight:800;letter-spacing:-.04em;color:#363c33;line-height:1.1}.car-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;transform:translateX(-5%);z-index:1}.scene-word{z-index:2;opacity:.6;mix-blend-mode:screen;pointer-events:none}.scene-bottom{bottom:23px;color:#c1c8b9;align-items:center}.scroll-cue{color:#fff}.scroll-cue span{display:inline-block;margin-left:15px}.alarm{position:absolute;z-index:4;right:7%;top:54%;display:flex;align-items:center;gap:13px;background:var(--paper);padding:17px 21px;color:var(--ink);box-shadow:0 10px 35px #0003;transform:translateY(10px);border-radius:12px}.alarm strong{font-size:12px;display:block}.alarm small{font-size:12px;color:var(--muted);display:block;margin-top:2px}.alarm-icon{width:33px;height:33px;background:var(--lime);border-radius:50%;display:grid;place-items:center}.alarm-icon svg{width:21px;height:21px}.alarm-dot{width:6px;height:6px;background:#668019;border-radius:50%;margin-left:13px}.security-ring{position:absolute;z-index:2;border:1px solid var(--lime);border-radius:50%;width:65%;height:39%;left:17%;top:46%;transform:scale(.85);opacity:0;pointer-events:none}.hero-foot{display:flex;justify-content:space-between;padding:23px 2% 0;font-size:12px;margin-top:-140px;position:relative}.hero-foot a span{margin-left:30px}.section{padding:110px 5%}.section-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:58px}h2{font-size:clamp(32px,3.6vw,51px);line-height:1.2;letter-spacing:-.035em;font-weight:600;margin:0}h2 span{color:var(--muted)}.section-intro>p{max-width:310px;font-size:14px;color:var(--muted);margin-bottom:5px}.service{display:grid;grid-template-columns:55px 1fr 1fr 35px;gap:35px;align-items:center;padding:32px 0;border-top:1px solid var(--line);transition:background .2s}.service:last-child{border-bottom:1px solid var(--line)}.service>svg{height:36px;width:36px}.service h3{font-size:24px;letter-spacing:-.03em;font-weight:600;margin:0}.service div span{font-size:12px;font-weight:800}.service p{font-size:12px;max-width:320px;color:var(--muted);margin:5px 0 0}.service>b{font-size:26px;font-weight:400}.service-note{font-size:12px;color:var(--muted);max-width:620px;margin-top:23px}.about{padding-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-bottom:100px}.about-symbol{background:#e9eddf;min-height:390px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:4px}.about-symbol>svg{width:250px;stroke:#73834c;stroke-width:.7;transform:rotate(-12deg)}.about-symbol span{position:absolute;bottom:28px;left:30px;font-size:25px;line-height:1.2;font-weight:600;letter-spacing:-.03em}.about-copy{padding:25px 0}.about-copy h2{font-size:38px;margin-bottom:28px}.about-copy p{max-width:460px;font-size:14px;color:var(--muted)}.text-link{display:flex;justify-content:space-between;max-width:330px;border-bottom:1px solid var(--ink);padding:16px 0 10px;font-size:12px;font-weight:700;margin-top:27px}.contact{background:var(--lime);position:relative;display:grid;grid-template-columns:1fr 240px;padding-top:75px;padding-bottom:40px;overflow:hidden}.contact h2{font-size:clamp(38px,4.4vw,63px)}.contact h2 span{color:var(--ink)}.contact p{font-size:14px;margin:23px 0}.contact-arrow{width:190px;height:190px;stroke-width:5;align-self:center}.contact-details{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #a5bf37;margin-top:65px;padding-top:23px;font-size:12px}.contact-details a span{margin-left:25px}footer{display:flex;align-items:center;justify-content:space-between;padding:40px 5%;gap:20px;font-size:12px}.footer-brand{font-size:30px;font-weight:800;letter-spacing:-.04em}.footer-brand>span{color:#738c17}.footer-brand small{font-size:12px;letter-spacing:.1em;margin-left:5px}footer>span,footer>small{color:var(--muted)}.skip{position:fixed;z-index:20;left:12px;top:-70px;background:var(--lime);padding:14px}.skip:focus{top:12px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:#aab39b;border-radius:4px}::-webkit-scrollbar-track{background:var(--paper)}@media(hover:hover){.button:hover{background:#3e4830;transform:translateY(-2px)}nav a:hover,.hero-foot a:hover{color:#637a14}.service:hover{background:#edf1e5}.text-link:hover{color:#637a14}}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:850px){header{height:85px}nav{gap:20px}.hero-top{padding-top:45px;gap:30px}.hero-aside{min-width:235px}.hero-aside p{font-size:12px}h1{font-size:58px}.movement svg{width:42px;height:42px;padding:10px}.section-intro{gap:30px}.service{gap:20px;grid-template-columns:40px 1fr 1fr 24px}.service h3{font-size:20px}.about{gap:5%}.about-copy h2{font-size:31px}}@media(max-width:600px){header{height:79px;padding:0 6%}.brand{font-size:29px}.brand svg{width:30px}nav{display:none}.nav-cta{padding:8px 13px;font-size:12px}.nav-cta span{margin-left:12px}.hero{padding:0 4%}.hero-top{display:block;padding:38px 2% 28px}h1{font-size:clamp(40px,10.2vw,60px)}.movement{gap:12px}.movement svg{width:39px;height:39px}.hero-aside{margin-top:25px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:center}.hero-aside p{font-size:12px;margin:0}.hero-aside .button{padding:12px 14px;font-size:12px;gap:16px}.local{margin:0;width:100%}.scene-wrap{height:560px}.scene{height:410px;top:12px}.scene-top,.scene-bottom{left:17px;right:17px;font-size:12px;letter-spacing:.05em}.scene-top>span:last-child{display:none}.scene-word{font-size:10vw;top:74px}.car-image{width:165%;max-width:none;left:-34%;object-fit:cover}.alarm{top:66%;right:5%;padding:13px 15px;gap:10px}.alarm strong{font-size:12px}.alarm small{font-size:12px}.alarm-dot{margin-left:5px}.scene-bottom>span:first-child{display:none}.hero-foot{font-size:12px;gap:15px;margin-top:-140px;align-items:center}.hero-foot>span{max-width:130px}.hero-foot a{max-width:145px}.hero-foot a span{margin-left:8px}.section{padding:75px 6%}.section-intro{display:block;margin-bottom:35px}.section-intro>p{margin-top:25px;max-width:100%;font-size:13px}h2{font-size:34px}.service{grid-template-columns:34px 1fr 25px;gap:15px;padding:26px 0}.service h3{font-size:23px}.service>svg{width:27px}.service>div{grid-column:2;grid-row:2}.service>b{grid-column:3;grid-row:1}.service p{font-size:12px}.about{padding-top:0;display:flex;flex-direction:column;gap:22px}.about-symbol{min-height:300px}.about-copy h2{font-size:32px}.about-copy p{font-size:13px}.contact{display:block;padding-top:50px;padding-bottom:28px}.contact h2{font-size:37px}.contact-arrow{position:absolute;width:90px;height:90px;right:22px;top:210px;opacity:.25}.contact-details{display:flex;flex-direction:column;gap:15px;margin-top:45px}.contact-details a{display:flex;justify-content:space-between}footer{flex-wrap:wrap;padding:28px 6%;gap:18px}footer .footer-brand{width:54%}footer>span{display:none}footer>small{width:100%;border-top:1px solid var(--line);padding-top:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.car-image{transform:none!important}.security-ring{display:none}.scene-wrap{height:500px}.hero-foot{margin-top:20px}.scene{position:relative;top:0}}
.brand-logo{object-fit:contain;width:42px;height:42px;border-radius:3px}.brand-logo[hidden]{display:none}

.scene-word{color:#a8b29d;opacity:.7}.about-symbol{padding:24px}.brand small{font-size:9px}.footer-brand small{font-size:9px}@media(max-width:600px){.scene-bottom{flex-wrap:wrap;gap:12px}.scene-bottom>span{font-size:10px}.hero-aside{display:block}.hero-aside p{margin-bottom:16px}.local{margin-top:12px}.alarm{left:6%;right:6%}.alarm small{font-size:11px}.hero-foot{align-items:flex-start}.brand small{font-size:8px}}
.hero-foot{margin-top:0}@media(min-width:601px) and (max-width:1000px){.hero-top{display:block}.hero-aside{margin-top:30px;display:flex;align-items:center;flex-wrap:wrap;gap:20px}.hero-aside p{margin:0}.local{width:100%;margin:0}}@media(prefers-reduced-motion:reduce){.scene-wrap{height:auto}.hero-foot{margin-top:20px}}
/* Code-drawn vehicle: approach, stop, alarm. */
.drive-wrap{height:780px}.drive-scene{position:sticky;top:20px;height:600px;overflow:hidden;border-radius:9px;background:#111a14;color:#f8f9f5;isolation:isolate}.drive-heading{position:absolute;top:25px;left:32px;right:32px;display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.08em;color:#b7c3b2}.drive-heading i{display:inline-block;width:7px;height:7px;background:var(--lime);border-radius:50%;margin-right:8px}.drive-message{position:absolute;top:90px;left:6%;transition:opacity .3s var(--ease),transform .5s var(--ease)}.drive-message h2{font-size:38px;line-height:1.15}.drive-message h2 span{color:#a2b29a}.drive-message p{font-size:12px;color:#bac7b4;margin-top:15px}.alarm-notice{position:absolute;top:90px;left:6%;display:flex;align-items:center;gap:20px;padding:22px 28px;background:var(--lime);color:#202a16;border-radius:12px;opacity:0;transform:translateY(12px);transition:opacity .3s var(--ease),transform .5s var(--ease);box-shadow:0 12px 36px #0003}.alarm-notice>svg{width:54px;height:54px;stroke-width:2.5;flex:none}.alarm-notice strong{display:block;font-size:32px;letter-spacing:-.03em;line-height:1.2}.alarm-notice span{display:block;font-size:12px;margin-top:7px}.vehicle-position{position:absolute;bottom:90px;left:19%;width:65%;max-width:900px;transform:translateX(-38%)}.vehicle{display:block;width:100%;height:auto;overflow:visible;position:relative;z-index:2}.vehicle path{stroke-linejoin:round}.drive-road{position:absolute;left:0;right:0;bottom:100px;height:80px;background:#18231a;transform:skewY(-1deg)}.road-line{position:absolute;top:20px;left:0;right:0;border-top:1px solid #3d4b36}.road-markings{position:absolute;bottom:15px;width:100%;height:2px;background:repeating-linear-gradient(90deg,#738064 0 65px,transparent 65px 140px);opacity:.5}.car-signal{opacity:0;transition:opacity .25s}.signal-wave{position:absolute;left:5%;top:13%;width:90%;height:87%;border:2px solid var(--lime);border-radius:50%;opacity:0;z-index:1;pointer-events:none}.drive-controls{position:absolute;left:32px;right:32px;bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.drive-steps{display:flex;gap:26px;font-size:12px;color:#87977e}.drive-steps span{display:flex;align-items:center;gap:8px}.drive-steps span::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}.step-drive{color:var(--lime)}.replay-demo{display:flex;align-items:center;gap:9px;border:1px solid #627358;background:transparent;color:#eef5e8;border-radius:4px;padding:11px 15px;font:600 12px Manrope,Arial,sans-serif;cursor:pointer}.replay-demo svg{width:17px;height:17px}.replay-demo:focus-visible{outline:3px solid var(--lime);outline-offset:4px}.drive-scene[data-phase="alarm"] .drive-message{opacity:0;transform:translateY(-8px)}.drive-scene[data-phase="alarm"] .alarm-notice{opacity:1;transform:none}.drive-scene[data-phase="alarm"] .car-signal{opacity:1}.drive-scene[data-phase="alarm"] .step-protect{color:var(--lime)}.drive-scene[data-phase="alarm"] .signal-wave{animation:alarm-wave 1.2s var(--ease) 2}.drive-scene[data-phase="alarm"] .wave-two{animation-delay:.25s}.drive-scene[data-phase="alarm"] .siren-rays{animation:siren-signal .6s ease-in-out 4}@keyframes alarm-wave{0%{transform:scale(.8);opacity:0}20%{opacity:.65}100%{transform:scale(1.2);opacity:0}}@keyframes siren-signal{50%{opacity:.2}}@media(hover:hover){.replay-demo:hover{background:#2b3924;border-color:var(--lime)}}@media(max-width:850px){.drive-message h2{font-size:32px}.vehicle-position{width:85%;left:9%}.drive-scene{height:570px}.drive-wrap{height:750px}}@media(max-width:600px){.drive-wrap{height:650px}.drive-scene{height:500px;top:12px}.drive-heading{left:20px;right:20px;top:20px;font-size:10px;letter-spacing:0}.drive-heading>span:last-child{max-width:100px;text-align:right}.drive-message{top:83px;left:7%}.drive-message h2{font-size:29px}.drive-message p{max-width:220px}.vehicle-position{width:105%;left:-2.5%;bottom:110px}.alarm-notice{top:90px;left:6%;right:6%;gap:12px;padding:18px 15px}.alarm-notice>svg{width:40px;height:40px}.alarm-notice strong{font-size:25px}.alarm-notice span{font-size:11px;max-width:200px}.drive-road{bottom:118px;height:60px}.drive-controls{left:20px;right:20px;bottom:20px;gap:12px}.drive-steps{flex-direction:column;gap:5px;font-size:11px}.replay-demo{padding:12px;font-size:11px}}@media(prefers-reduced-motion:reduce){.drive-wrap{height:auto}.drive-scene{position:relative;top:0}.vehicle-position{transform:none!important}.wheel{transform:none!important}.signal-wave{display:none}.drive-message,.alarm-notice{transition:none}.drive-scene .car-signal{opacity:1}}

/* Longer scroll travel; arrival and alarm activation are synchronized. */
.drive-wrap{height:1080px}@media(max-width:850px){.drive-wrap{height:1050px}}@media(max-width:600px){.drive-wrap{height:920px}.drive-steps{gap:3px}}@media(prefers-reduced-motion:reduce){.drive-wrap{height:auto}}

.drive-scene[data-phase="alarm"] .step-drive{color:#87977e}
