@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(../fonts/inter-v12-latin-regular.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:500;font-display:swap;src:url(../fonts/inter-v12-latin-500.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:700;font-display:swap;src:url(../fonts/inter-v12-latin-700.woff2) format("woff2")}
:root{--brand-blue:#2d54b3;--brand-sky:#3db8ff;--brand-white:#fff;--brand-black:#000}
html{scroll-behavior:smooth;scroll-padding-top:5rem}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;margin:0;background:#000;color:#fff}
a{color:inherit}
:focus-visible{outline:2px solid var(--brand-sky);outline-offset:3px}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:.6rem 1rem;z-index:100}
.skip:focus{left:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 1.5rem}
/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;background:#000;border-bottom:1px solid #212529}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:4.25rem}
.brand{display:flex;align-items:center;gap:.7rem;font-weight:700;font-size:1.15rem;text-decoration:none}
.brand img{width:32px;height:32px}
.menu{display:flex;gap:2rem;list-style:none;margin:0;padding:0}
.menu a{text-decoration:none;color:#adb5bd;font-size:1rem}
.menu a:hover,.menu a[aria-current]{color:#fff}
.burger{display:none;background:none;border:1px solid #495057;color:#fff;border-radius:.5rem;padding:.45rem .8rem;font:inherit}
@media(max-width:767px){
 .burger{display:block}
 .menu{display:none;position:absolute;top:4.25rem;left:0;right:0;background:#000;flex-direction:column;gap:0;border-bottom:1px solid #212529}
 .menu.open{display:flex}
 .menu a{display:block;padding:1rem 1.5rem;border-top:1px solid #212529}
}
/* type */
h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.025em}
h1{font-size:clamp(2.4rem,6.2vw,4.9rem);line-height:1.04}
h2{font-size:clamp(1.9rem,3.6vw,3rem);line-height:1.1}
h3{font-size:1.25rem;letter-spacing:-.01em}
p{margin:0}
.muted{color:#adb5bd}
.lead{font-size:1.25rem;line-height:1.55}
.narrow{max-width:38rem}
/* layout */
section{padding:6rem 0}
.band{background:#212529}
.hero{padding:9rem 0 5rem}
.hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:4rem;align-items:center}
.hero h1{animation:rise .7s ease-out both}
.hero p,.hero .cta{animation:rise .7s .12s ease-out both}
@keyframes rise{from{opacity:0;transform:translateY(14px)}}
@media(prefers-reduced-motion:reduce){.hero h1,.hero p,.hero .cta{animation:none}html{scroll-behavior:auto}}
.hero img.logo{width:100%;height:auto;border-radius:3rem;display:block}
.hero .lead{margin:1.75rem 0 2.25rem}
.cta{display:flex;gap:1rem;flex-wrap:wrap}
.btn-line{background:none;border:1px solid #fff;color:#fff;text-decoration:none}
.btn-line:hover{background:#fff;color:#000}
@media(max-width:900px){.hero .wrap{grid-template-columns:1fr;gap:3rem}.hero img.logo{max-width:26rem}}
.split{display:grid;grid-template-columns:5fr 7fr;gap:4rem}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:2rem}section{padding:4.5rem 0}}
.rows{list-style:none;margin:0;padding:0}
.rows>li{display:grid;grid-template-columns:1fr 1.4fr;gap:1.5rem;padding:1.75rem 0;border-top:1px solid #495057}
.rows>li:last-child{border-bottom:1px solid #495057}
.rows p{color:#adb5bd}
.rows .sub{display:block;margin-top:.5rem;font-size:.95rem;color:#6c757d}
@media(max-width:640px){.rows>li{grid-template-columns:1fr;gap:.5rem}}
.panel{background:#212529;border-radius:3rem;padding:4rem;display:grid;grid-template-columns:1.3fr 1fr;gap:3rem;align-items:end}
.panel p{margin:1.25rem 0 1.75rem}
@media(max-width:800px){.panel{padding:2.25rem;border-radius:2rem;grid-template-columns:1fr}}
.about{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2.5rem}
.about h3{margin-bottom:.6rem}
@media(max-width:700px){.about{grid-template-columns:1fr}}
/* contact + forms */
.contact{display:grid;grid-template-columns:1fr 1.15fr;gap:4rem}
@media(max-width:900px){.contact{grid-template-columns:1fr;gap:2.5rem}}
.details{list-style:none;margin:2rem 0 0;padding:0}
.details li{padding:1rem 0;border-top:1px solid #495057}
.details span{display:block;font-size:.9rem;color:#6c757d;margin-bottom:.15rem}
form{background:#212529;border-radius:2rem;padding:2.25rem;display:grid;gap:1.1rem}
.two{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
@media(max-width:560px){.two{grid-template-columns:1fr}form{padding:1.5rem}}
label{display:grid;gap:.4rem;font-size:.95rem;color:#adb5bd}
input,select,textarea{font:inherit;color:#fff;background:#000;border:1px solid #495057;border-radius:.75rem;padding:.8rem 1rem;width:100%;box-sizing:border-box;color-scheme:dark}
textarea{min-height:8rem;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:#fff;outline:none}
.note{font-size:.9rem;color:#6c757d}
/* tracking page */
.tags{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;margin:2rem 0 0;padding:0}
.tags li{border:1px solid #495057;border-radius:2rem;padding:.5rem 1.1rem;color:#dee2e6}
footer{border-top:1px solid #212529;padding:3.5rem 0;color:#adb5bd}
footer .wrap{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}
footer ul{list-style:none;margin:0;padding:0;display:flex;gap:1.75rem;flex-wrap:wrap}
footer a{text-decoration:none}footer a:hover{color:#fff}
.hero .wrap.one{display:block}
.nav{display:block;padding:0}
.nav .wrap{width:100%;box-sizing:border-box}
h2+p,h1+p{margin-top:1.25rem}
.rows>li>h3:only-child{grid-column:1/-1}
footer a{color:#adb5bd}
/* v2 tightening + layout */
section{padding:3.75rem 0}.hero{padding:6.5rem 0 2.5rem}.hero .lead{margin:1.25rem 0 1.75rem}
@media(max-width:900px){section{padding:2.75rem 0}.hero{padding:5.5rem 0 2rem}}
.nav .wrap{gap:1.5rem}.brand{order:1;margin-right:auto;font-size:1.05rem;white-space:nowrap}.menu{order:2}.burger{order:3}
@media(max-width:400px){.brand{font-size:.92rem;gap:.5rem}}
.i{width:1.3rem;height:1.3rem;fill:currentColor;flex:none;color:var(--brand-sky)}
.rows>li{padding:1.25rem 0;grid-template-columns:.9fr 1.4fr}.rows .t{display:flex;gap:.8rem;align-items:flex-start}.rows .t .i{margin-top:.15rem}
.side{position:sticky;top:6rem;align-self:start}
.pair{display:grid;grid-template-columns:1.5fr 1fr;gap:.8rem;margin-top:1.75rem}.pair img{width:100%;height:100%;object-fit:cover;border-radius:1.25rem;display:block}
@media(max-width:900px){.side{position:static}}
.photo{width:100%;height:auto;border-radius:2rem;display:block;max-height:34rem;object-fit:cover}.photo.wide{max-height:none}
.hero .wrap{grid-template-columns:1.2fr .8fr;gap:3rem}.hero .tags{margin-top:1.75rem}
@media(max-width:900px){.hero .wrap{grid-template-columns:1fr}.photo{max-height:24rem}}
.logo{width:100%;max-width:22rem;border-radius:2.5rem;justify-self:center;display:block}
#about .split{grid-template-columns:7fr 5fr;align-items:center}@media(max-width:900px){#about .split{grid-template-columns:1fr}}
.facts{list-style:none;margin:1.75rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0 2rem}
.facts li{display:flex;gap:.8rem;align-items:center;padding:1.1rem 0;border-top:1px solid #495057}
@media(max-width:800px){.facts{grid-template-columns:1fr}}
.details{margin-top:1.5rem}.details li{display:flex;gap:1rem;align-items:flex-start;padding:.9rem 0}.details li .i{margin-top:.25rem}
.panel{padding:3rem}.about{margin-top:1.75rem}
.tags{margin-top:1.5rem}.wrap>h2+.tags{margin-top:1.5rem}
.contact>*,.split>*,.hero .wrap>*{min-width:0}
.details div{min-width:0}.details a{overflow-wrap:anywhere}

/* Vehicle tracking feature image */
.tracking-panel{grid-template-columns:1fr 1fr;align-items:center}
.tracking-visual{margin:0}
.tracking-visual img{display:block;width:100%;height:auto;border-radius:1.5rem;object-fit:cover}
.tracking-copy .tags{margin-top:1.5rem}
@media(max-width:800px){.tracking-panel{grid-template-columns:1fr}.tracking-visual{order:-1}}

/* v5 interaction + device polish: native cursors, restrained effects, touch-safe */
/* Static content uses the normal arrow. Only real controls show a hand; form typing uses the text cursor. */
body{cursor:default}
a[href],button:not(:disabled),select:not(:disabled),summary,[role="button"],[role="link"],input[type="button"]:not(:disabled),input[type="submit"]:not(:disabled),input[type="reset"]:not(:disabled),input[type="checkbox"]:not(:disabled),input[type="radio"]:not(:disabled),input[type="range"]:not(:disabled),input[type="file"]:not(:disabled){cursor:pointer}
input:not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),textarea,[contenteditable="true"]{cursor:text}
button:disabled,input:disabled,select:disabled,textarea:disabled,[aria-disabled="true"]{cursor:not-allowed}

/* Avoid layout shifts while keeping the small interaction effects requested. */
a,.btn,.burger,.brand,.brand img,.menu a,.link-fancy,.footer-i{
  transition:transform .2s ease,color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,filter .2s ease,opacity .2s ease;
}

.brand{position:relative;color:#fff!important}
.brand::after{content:"";position:absolute;left:2.15rem;bottom:-.55rem;width:2.7rem;height:.45rem;opacity:0;transform:translateY(-2px) scale(.85);pointer-events:none;background:radial-gradient(circle at 10% 55%,#fff 0 1.2px,transparent 1.6px),radial-gradient(circle at 44% 20%,var(--brand-sky) 0 1.35px,transparent 1.8px),radial-gradient(circle at 74% 70%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 96% 28%,var(--brand-sky) 0 1.1px,transparent 1.6px);transition:opacity .2s ease,transform .2s ease}

.menu a{position:relative;transition:color .2s ease}
.menu a::after{content:"";position:absolute;left:0;right:0;bottom:-.38rem;height:1px;background:var(--brand-sky);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.menu a[aria-current]::after,.menu a:focus-visible::after{transform:scaleX(1)}

.brand:focus-visible{color:#fff!important;transform:translateY(-1px) scale(1.015);filter:drop-shadow(0 4px 12px rgba(255,255,255,.08))}
.brand:focus-visible::after{opacity:.85;transform:translateY(0) scale(1)}
.btn:focus-visible{transform:translateY(-2px);box-shadow:0 .55rem 1.25rem rgba(0,0,0,.2)}
.link-fancy:focus-visible{transform:translateY(-1px)}

/* Hover effects only exist on devices that actually have a precise hover pointer. */
@media(hover:hover) and (pointer:fine){
  .brand:hover{color:#fff!important;transform:translateY(-1px) scale(1.015);filter:drop-shadow(0 4px 12px rgba(255,255,255,.08))}
  .brand:hover::after{opacity:.85;transform:translateY(0) scale(1)}
  .menu a:hover::after{transform:scaleX(1)}
  .btn:hover{transform:translateY(-2px);box-shadow:0 .55rem 1.25rem rgba(0,0,0,.2)}
  .link-fancy:hover{transform:translateY(-1px)}
  footer a:hover .footer-i{color:var(--brand-sky);transform:translateY(-1px)}
}
.btn:active{transform:translateY(0);box-shadow:none}

/* Mission and vision stay visually separated without extra decoration. */
.about{border-top:1px solid #495057;border-bottom:1px solid #495057;padding:1.35rem 0}

/* Form states */
input,select,textarea{transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
input:focus,select:focus,textarea:focus{border-color:var(--brand-sky);box-shadow:0 0 0 3px rgba(61,184,255,.12)}

/* Tracking layout without modern selector dependencies. */
.hero .wrap.tracking-hero{grid-template-columns:1fr 1.15fr}
@media(max-width:900px){.hero .wrap.tracking-hero{grid-template-columns:1fr}}

/* Mobile navigation remains out of the focus/click path while closed. */
@media(max-width:767px){
  .menu{display:flex;visibility:hidden;opacity:0;transform:translateY(-.35rem);max-height:0;overflow:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,max-height .22s ease,visibility 0s linear .22s}
  .menu.open{visibility:visible;opacity:1;transform:none;max-height:calc(100vh - 4.25rem);max-height:calc(100dvh - 4.25rem);overflow:auto;overscroll-behavior:contain;pointer-events:auto;transition-delay:0s}
  .menu a::after{left:1.5rem;right:1.5rem;bottom:.55rem}
}

/* Narrow and mid-size screens */
@media(min-width:768px) and (max-width:900px){
  .menu{gap:1.15rem}
  .menu a{font-size:.92rem}
  .brand{font-size:.96rem}
  .nav .wrap{gap:1rem}
}
@media(max-width:480px){
  .wrap{padding-left:1rem;padding-right:1rem}
  .panel{padding:1.5rem;border-radius:1.5rem}
  form{padding:1.25rem;border-radius:1.5rem}
  .cta{gap:.75rem}
  .cta .btn{width:100%;justify-content:center}
  h1{font-size:clamp(2.1rem,11vw,2.55rem)}
  .pair{gap:.6rem}
  footer{padding:2.75rem 0}
  footer .wrap{gap:1.25rem}
  footer ul{gap:.5rem 1.1rem}
}

/* Touch ergonomics: no sticky hover motion, comfortable targets and no iOS form zoom. */
button,.btn,.menu a,footer a,.link-fancy{touch-action:manipulation}
.burger,.btn{min-height:44px}
@media(pointer:coarse){
  .burger,.btn,.menu a,footer a{min-height:44px}
  input,select,textarea{font-size:16px}
  .brand:hover,.btn:hover,.link-fancy:hover{transform:none;filter:none;box-shadow:none}
  .brand:hover::after{opacity:0;transform:translateY(-2px) scale(.85)}
  .btn-line:hover{background:none;color:#fff}
}

/* Prevent accidental horizontal overflow from long text or media. */
body{overflow-x:hidden;overflow-x:clip}
img{max-width:100%}
.wrap,main,section,footer{min-width:0}
footer p,footer a,.note{overflow-wrap:anywhere}

footer a{display:inline-flex;align-items:center;gap:.42rem}
.footer-i{width:1rem;height:1rem;color:#adb5bd;transition:transform .2s ease,color .2s ease}
footer a:focus-visible .footer-i{color:var(--brand-sky);transform:translateY(-1px)}

.brand-short{display:none}
@media(max-width:400px){
  .nav .wrap{padding-left:1rem;padding-right:1rem;gap:.8rem}
  .brand-full{display:none}
  .brand-short{display:inline}
  .brand{font-size:.95rem}
  .burger{padding:.4rem .65rem}
}
@media(max-width:340px){.brand img{width:28px;height:28px}.brand{gap:.4rem}.burger{font-size:.92rem}}

/* Contrast for small secondary text on dark panels. */
.rows .sub,.details span,.note{color:#949ca3}
.link-fancy-light:hover,.link-fancy-light:focus-visible{color:#adb5bd}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .brand:hover,.brand:focus-visible,.btn:hover,.btn:focus-visible,.link-fancy:hover,.link-fancy:focus-visible{transform:none;filter:none;box-shadow:none}
  .brand:hover::after,.brand:focus-visible::after{opacity:0;transform:none}
}
