/* Telox Gulf — shared styles
   Palette: asphalt, road-white, concrete, signal orange (brand), detection blue */
:root{
  --asphalt:#20272C;
  --asphalt-2:#2C353B;
  --road:#F6F7F4;
  --concrete:#DCE0DA;
  --ink:#1B2226;
  --muted:#5A666D;
  --signal:#E89222;
  --signal-deep:#B96A0C;
  --detect:#3C8FB8;
  --max:1180px;
  --r-sm:4px;
  --r-lg:14px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:"Archivo",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  font-variation-settings:"wdth" 100;
  color:var(--ink);background:var(--road);
  font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--signal);outline-offset:3px;border-radius:2px}

.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}

/* Display type: expanded Archivo, signage feel */
.display{
  font-variation-settings:"wdth" 118;
  font-weight:800;letter-spacing:-0.01em;line-height:1.02;
}
h1.display{font-size:clamp(2.4rem,5.6vw,4.4rem)}
h2.display{font-size:clamp(1.8rem,3.6vw,2.7rem)}
h3{font-size:1.15rem;font-weight:700;line-height:1.3}
.lede{font-size:1.15rem;color:var(--muted);max-width:60ch}
p{max-width:68ch}

/* Header */
.site-head{
  position:sticky;top:0;z-index:20;
  background:rgba(246,247,244,.92);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--concrete);
}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;height:68px;gap:20px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-variation-settings:"wdth" 118;font-size:1.25rem}
.brand img{height:40px;width:auto}
.site-foot img{height:29px;width:auto}
.nav{display:flex;gap:28px;align-items:center}
.nav a{text-decoration:none;font-weight:600;font-size:.95rem;color:var(--muted)}
.nav a:hover,.nav a[aria-current="page"]{color:var(--ink)}
.btn{
  display:inline-block;text-decoration:none;font-weight:700;font-size:.95rem;
  padding:12px 22px;border-radius:var(--r-sm);border:2px solid var(--signal);
  background:var(--signal);color:var(--asphalt);
}
.btn:hover{background:var(--signal-deep);border-color:var(--signal-deep);color:#fff}
.btn-ghost{background:transparent;color:inherit;border-color:currentColor}
.btn-ghost:hover{background:transparent;color:var(--signal);border-color:var(--signal)}
.nav-toggle{display:none;background:none;border:0;font:inherit;font-weight:700;cursor:pointer}

/* Sections */
section{padding:96px 0}
.section-dark{background:var(--asphalt);color:#E8ECEA}
.section-dark .lede,.section-dark p{color:#AEB8BC}
.section-head{margin-bottom:48px}
.section-head p{margin-top:16px}

/* Hero */
.hero{padding:72px 0 88px}
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
.hero h1{margin-bottom:22px}
.hero .actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.dashcam{
  background:var(--asphalt);border-radius:var(--r-lg);padding:14px;
  box-shadow:0 30px 60px -30px rgba(32,39,44,.55);
}
.dashcam svg{border-radius:8px;width:100%;height:auto}
.dashcam figcaption{color:#9AA6AC;font-size:.82rem;padding:10px 4px 2px}

/* Fact strip (real figures only) */
.facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--concrete);margin-top:72px}
.facts div{padding:22px 0 0}
.facts strong{display:block;font-size:1.9rem;font-variation-settings:"wdth" 118;font-weight:800}
.facts span{color:var(--muted);font-size:.95rem}

/* Two-column feature rows (no card kit) */
.rows{display:grid;gap:0;border-top:1px solid var(--concrete)}
.row{display:grid;grid-template-columns:280px 1fr;gap:40px;padding:30px 0;border-bottom:1px solid var(--concrete)}
.row h3{font-size:1.3rem}
.row p{color:var(--muted)}
.section-dark .rows,.section-dark .row{border-color:#3A444A}
.section-dark .row p{color:#AEB8BC}

/* Pipeline — a real sequence, numbered */
.pipeline{display:grid;grid-template-columns:repeat(5,1fr);gap:0;counter-reset:step;margin-top:8px}
.pipeline li{list-style:none;position:relative;padding:22px 18px 0 0;border-top:3px solid #4A555B}
.pipeline li.gpu{border-top-color:var(--signal)}
.pipeline li::before{
  counter-increment:step;content:counter(step);
  display:block;font-weight:800;font-variation-settings:"wdth" 118;color:var(--signal);font-size:1.1rem;margin-bottom:6px;
}
.pipeline strong{display:block;color:#fff;margin-bottom:4px}
.pipeline span{color:#AEB8BC;font-size:.92rem}

/* Industries */
.industries{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.industries h3{margin-bottom:8px;padding-top:16px;border-top:3px solid var(--signal)}
.industries p{color:var(--muted)}

/* Stack list */
.stack{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 48px}
.stack div{padding-left:18px;border-left:3px solid var(--detect)}
.stack h3{margin-bottom:4px}
.stack p{color:var(--muted);font-size:.97rem}
.section-dark .stack p{color:#AEB8BC}

.note{font-size:.95rem;color:var(--muted);margin-top:36px;max-width:72ch}
.section-dark .note{color:#8E9AA0}

/* Team */
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.team h3{font-size:1.25rem}
.team .role{color:var(--signal-deep);font-weight:700;font-size:.95rem;margin:2px 0 8px}
.team p{color:var(--muted);font-size:.97rem}

/* CTA band */
.cta-band{background:var(--signal);color:var(--asphalt);padding:72px 0}
.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.cta-band p{color:var(--asphalt);opacity:.85;margin-top:8px}
.cta-band .btn{background:var(--asphalt);border-color:var(--asphalt);color:#fff}
.cta-band .btn:hover{background:#000;border-color:#000}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.contact-list{list-style:none;display:grid;gap:18px}
.contact-list span{display:block;color:var(--muted);font-size:.9rem}
.contact-list a{font-weight:700;font-size:1.2rem;text-decoration:none}
.contact-list a:hover{color:var(--signal-deep)}

/* Footer */
.site-foot{background:var(--asphalt);color:#9AA6AC;padding:40px 0;font-size:.9rem}
.site-foot .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.site-foot a{text-decoration:none}
.site-foot a:hover{color:#fff}

/* Hero load: one orchestrated moment — detection boxes draw in */
.det{stroke-dasharray:600;stroke-dashoffset:600;animation:draw 1.1s ease-out forwards}
.det.d2{animation-delay:.35s}
.det.d3{animation-delay:.7s}
.det-label{opacity:0;animation:fade .4s ease-out forwards}
.det-label.d1{animation-delay:.9s}
.det-label.d2{animation-delay:1.2s}
.det-label.d3{animation-delay:1.5s}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes fade{to{opacity:1}}
@media (prefers-reduced-motion:reduce){
  .det,.det-label{animation:none;stroke-dashoffset:0;opacity:1}
  html{scroll-behavior:auto}
}

/* Responsive */
@media (max-width:960px){
  .hero-grid,.contact-grid{grid-template-columns:1fr}
  .row{grid-template-columns:1fr;gap:8px}
  .pipeline{grid-template-columns:1fr 1fr;row-gap:28px}
  .industries,.team{grid-template-columns:1fr}
  .stack{grid-template-columns:1fr}
}
@media (max-width:720px){
  section{padding:72px 0}
  .nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--road);flex-direction:column;align-items:flex-start;padding:20px 24px;border-bottom:1px solid var(--concrete);gap:18px}
  .nav.open{display:flex}
  .nav-toggle{display:block}
  .facts{grid-template-columns:1fr;gap:4px}
  .pipeline{grid-template-columns:1fr}
}
