:root{--navy:#07182e;--navy2:#0d2945;--teal:#39aaa6;--mint:#6bd4cf;--gold:#d7a84d;--paper:#f4f3ee;--ink:#122132;--muted:#63707b;--line:#d7dedc;font-family:"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;line-height:1.01;letter-spacing:-.045em}h1{font-size:clamp(3.1rem,6vw,6.4rem)}h2{font-size:clamp(2.2rem,4.2vw,4.6rem)}header{height:76px;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,76px);background:#07182ef7;color:white;border-bottom:1px solid #6bd4cf33}.brand{display:flex;align-items:center;gap:12px}.brand>b{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;font-family:Georgia;color:var(--gold)}.brand strong,.brand small{display:block;line-height:1.05}.brand small{font-size:1rem;color:var(--mint);text-transform:uppercase;letter-spacing:.18em}nav{display:flex;gap:clamp(18px,3vw,42px);font-size:1rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}nav a{opacity:.8}.lab-link,nav a:hover{color:var(--mint);opacity:1}.menu{display:none;background:none;border:1px solid #ffffff55;color:white;padding:8px 12px}main[hidden]{display:none}.hero{min-height:calc(100vh - 76px);display:grid;grid-template-columns:1.05fr .95fr;background:var(--navy);color:white}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(28px,6vw,100px)}.eyebrow{margin-bottom:14px;color:var(--teal);font-size:1rem;font-weight:900;text-transform:uppercase;letter-spacing:.14em}.hero h1 em{font-style:normal;color:var(--gold)}.lead{max-width:680px;color:#d0dde5;font-size:clamp(1.05rem,1.5vw,1.3rem)}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:25px}.btn,.action{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 22px;border:0;background:var(--mint);color:var(--navy);font-size:1rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.btn:hover,.action:hover{background:#91e9e5}.ghost{background:transparent;color:white;border:1px solid #ffffff55}.checks{display:flex;flex-wrap:wrap;gap:22px;margin-top:40px;color:#b9c8d1;font-size:1rem;text-transform:uppercase}.checks span:before{content:"";display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--gold)}.hero-board{align-self:center;margin:45px clamp(28px,5vw,75px) 45px 0;padding:24px;background:linear-gradient(145deg,#0e2d4b,#091f36);border:1px solid #ffffff22;box-shadow:0 35px 90px #0008}.board-title{display:flex;justify-content:space-between;font-size:1rem;text-transform:uppercase;letter-spacing:.1em}.board-title b{color:var(--mint)}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:20px}.metrics article{padding:18px;background:#061a2d;border:1px solid #ffffff12}.metrics small,.metrics span{display:block;color:#8ea7b8}.metrics strong{display:block;color:white;font:700 2rem Georgia}.network{height:170px;position:relative;background:linear-gradient(25deg,transparent 49.6%,#6bd4cf33 50%,transparent 50.4%),linear-gradient(150deg,transparent 49.6%,#d7a84d44 50%,transparent 50.4%)}.network i{position:absolute;width:14px;height:14px;border:4px solid #173c57;border-radius:50%;background:var(--mint)}.network i:nth-child(1){left:12%;top:55%}.network i:nth-child(2){left:31%;top:20%}.network i:nth-child(3){left:49%;top:61%;background:var(--gold)}.network i:nth-child(4){left:68%;top:17%}.network i:nth-child(5){left:84%;top:55%}.hero-board>p{margin:0;color:#b6c8d3;font-size:1rem}.promise{display:flex;justify-content:center;gap:10px;padding:21px 5vw;background:var(--gold)}.section{padding:clamp(70px,9vw,125px) clamp(24px,7vw,112px)}.intro{display:grid;grid-template-columns:1.2fr .8fr;gap:9vw;align-items:end}.intro>p{color:var(--muted);font-size:1.08rem}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:50px}.cards article{min-height:290px;padding:28px;background:white;border:1px solid var(--line)}.cards .dark{background:var(--navy);color:white}.cards article>b{color:var(--teal)}.cards h3{margin-top:65px}.cards p{color:var(--muted)}.cards .dark p{color:#bdcad3}.approach{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;background:#e5edeb}.steps article{display:flex;gap:22px;padding:24px 0;border-top:1px solid #b9c9c6}.steps article>b{color:var(--teal)}.steps p{margin:0;color:var(--muted)}.cta{display:flex;align-items:center;justify-content:space-between;gap:45px;padding:70px clamp(24px,7vw,112px);background:var(--navy2);color:white}.cta>div{max-width:760px}.cta h2{margin-bottom:12px}.cta p{color:#c5d2da}.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}.contact form{display:grid;grid-template-columns:1fr 1fr;gap:17px}.contact label{font-size:1rem;font-weight:800;text-transform:uppercase}.contact input,.contact textarea{width:100%;margin-top:7px;padding:13px;border:1px solid #cad4d2}.wide,.form-note{grid-column:1/-1}.form-note{color:var(--teal);font-weight:700}footer{display:flex;align-items:center;justify-content:space-between;padding:35px clamp(24px,5vw,76px);background:#04111f;color:white}footer p{margin:0;color:var(--gold);font:700 1.15rem Georgia}footer>span{font-size:1rem;color:#8ba0af;text-transform:uppercase}.lab-hero{display:grid;grid-template-columns:1fr 270px;gap:55px;padding:70px clamp(24px,7vw,112px);background:var(--navy);color:white}.lab-hero h1{margin:20px 0}.lab-hero>div>p:last-child{max-width:780px;color:#bdccd5}.back{color:var(--mint);font-size:1rem;font-weight:900;text-transform:uppercase}.lab-hero aside{align-self:end;padding:22px;border-left:2px solid var(--gold);background:#ffffff0b}.lab-hero aside span{display:block;margin-top:8px;color:#b9c7d0;font-size:1rem}.lab-layout{display:grid;grid-template-columns:250px 1fr;min-height:700px;background:#e6ecea}.demo-nav{padding:25px 0;background:#0a2139}.demo-tab{width:100%;padding:18px 22px;border:0;border-left:3px solid transparent;background:none;color:#afc2cd;text-align:left;font-size:1rem}.demo-tab.active{background:#ffffff0d;color:white;border-left-color:var(--gold)}.stage{padding:28px}.panel{display:none;max-width:1300px;margin:auto;padding:30px;background:#fafaf7;border:1px solid var(--line);box-shadow:0 25px 70px #07182e22}.panel.active{display:block}.panel-head{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:25px}.panel-head p{margin:0;color:var(--teal);font-size:1rem;font-weight:900;text-transform:uppercase}.panel-head h2{font-size:clamp(2rem,3.4vw,3.5rem)}.panel-head>span{height:fit-content;padding:7px 10px;background:#dcecea;color:#176966;font-size:1rem;font-weight:900;text-transform:uppercase}.controls{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:18px;background:#e8efed}.controls label,.side-card label,.request label,.risk label{display:flex;flex-direction:column;gap:8px;font-size:1rem;font-weight:800;text-transform:uppercase}.controls output{color:var(--teal)}input[type=range]{width:100%;accent-color:var(--teal)}select,input[type=number]{padding:10px;border:1px solid #cad5d2;background:white}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:17px 0}.kpis article,.chart-wrap,.side-card,.score,.brief,.risk,.request,.route-card,.schema,.quality{padding:20px;background:white;border:1px solid var(--line)}.kpis small,.kpis span{display:block;color:var(--muted)}.kpis strong{display:block;font:700 2rem Georgia}.bars{height:210px;display:flex;align-items:end;gap:12px;padding-top:20px;border-bottom:1px solid #a8b8b4;background:repeating-linear-gradient(to top,transparent 0 51px,#e9eeec 52px)}.bar{flex:1;height:100%;display:flex;align-items:end;justify-content:center;gap:4px;position:relative}.bar i{width:28%;background:#b2c3c0}.bar i:last-of-type{background:var(--teal)}.bar span{position:absolute;bottom:-23px;font-size:1rem}.patrol-grid{display:grid;grid-template-columns:1.6fr .7fr;gap:15px}.map{padding:20px;background:white;border:1px solid var(--line)}.map svg{width:100%;background:#e6edeb}.road{fill:none;stroke:white;stroke-width:18}.bounds{fill:none;stroke:#adc0bc;stroke-width:2;stroke-dasharray:7}.call{fill:#d7a84d99;stroke:var(--gold);stroke-width:3}.hot{fill:#d5665788;stroke:#c95241}.unit{fill:var(--teal);stroke:white;stroke-width:4;transition:.5s}.map text{font-size:13px;fill:#607873;font-weight:800}.side-card{display:flex;flex-direction:column;gap:18px}.side-card>strong{font:700 3rem Georgia;color:var(--teal)}.side-card ol{padding-left:18px;color:#51616b}.side-card .action{margin-top:auto}.command-grid,.data-grid{display:grid;grid-template-columns:.75fr 1fr 1.1fr;gap:14px}.score>strong{display:block;font:700 5rem Georgia}.score>div{height:10px;background:#e1e8e6}.score i{display:block;width:84%;height:100%;background:var(--teal)}.signals{display:flex;flex-direction:column;gap:8px}.signals button,.source{padding:15px;border:1px solid var(--line);background:white;text-align:left}.signals b,.signals span{display:block}.signals span{color:var(--muted);font-size:1rem}.brief{background:var(--navy);color:white}.brief small{color:var(--gold);text-transform:uppercase}.brief h3{margin-top:45px;font:700 1.7rem Georgia}.brief p{color:#c1ced6}.detention-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.pods{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:24px;background:#e0e9e7}.pods button{min-height:145px;border:1px solid #adbfbb;background:white;font:700 2rem Georgia}.pods span{display:block;font:600 .8rem Arial;color:var(--muted)}.risk>strong{display:block;margin:30px 0;font:700 2.7rem Georgia;color:var(--teal)}.workflow{display:grid;grid-template-columns:.8fr 1.2fr;gap:14px}.request{display:flex;flex-direction:column;gap:17px}.route-card{display:flex;flex-direction:column;justify-content:space-between}.route-nodes{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.route-nodes span{padding:11px;background:#e1efed;color:#176966;font-size:1rem;font-weight:800}.time{margin-top:45px;padding:18px;background:var(--navy);color:white}.time strong,.time span{display:block}.time strong{font:700 2.4rem Georgia;color:var(--gold)}.time span{font-size:1rem;color:#bdcad3}.sources{display:flex;flex-direction:column;gap:7px}.source{display:flex;justify-content:space-between}.source b{color:var(--teal)}.source.active{background:var(--navy);color:white}.schema>div{padding:17px;text-align:center;background:var(--teal);color:white}.schema p{display:flex;justify-content:space-between;margin:0;padding:11px;border-bottom:1px solid #e1e6e4;font-family:monospace}.schema em{color:var(--muted);font-style:normal}.quality>strong{display:block;margin:24px 0;font:700 1.7rem Georgia}.quality p{color:var(--muted)}.quality>div{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid var(--line)}.quality b{color:var(--teal)}
@media(max-width:1000px){.hero{grid-template-columns:1fr}.hero-board{margin:0 28px 55px}.cards{grid-template-columns:1fr 1fr}.approach,.contact{grid-template-columns:1fr}.lab-layout{grid-template-columns:1fr}.demo-nav{display:flex;overflow:auto;padding:0}.demo-tab{min-width:180px;border-left:0;border-bottom:3px solid transparent}.demo-tab.active{border-bottom-color:var(--gold)}.command-grid,.data-grid,.patrol-grid{grid-template-columns:1fr}.lab-hero{grid-template-columns:1fr}.lab-hero aside{display:none}}
@media(max-width:720px){header{height:auto;min-height:70px;flex-wrap:wrap;padding:13px 20px}.menu{display:block}header nav{display:none;flex-basis:100%;flex-direction:column;padding:15px 0}header nav.open{display:flex}.hero-copy{padding:60px 24px}.hero h1{font-size:3.25rem}.checks{flex-direction:column;gap:8px}.metrics,.cards,.intro,.controls,.kpis,.detention-grid,.workflow{grid-template-columns:1fr}.promise{display:block}.promise strong{display:block}.section{padding:65px 24px}.cta,footer{align-items:flex-start;flex-direction:column}.contact form{grid-template-columns:1fr}.contact label{grid-column:1}.lab-hero{padding:50px 24px}.stage{padding:0}.panel{padding:20px 15px;border:0}.panel-head>span{display:none}.pods{grid-template-columns:1fr 1fr}}
