:root {
  --ink: #0d1b2a;
  --ink-2: #15283d;
  --navy: #07131f;
  --paper: #f6f8f8;
  --surface: #ffffff;
  --surface-2: #eef3f2;
  --mint: #60e1c1;
  --mint-2: #bff7e7;
  --blue: #8fc7ff;
  --text: #142335;
  --muted: #5d6b78;
  --line: #d9e2e2;
  --success: #1d8f6d;
  --warning: #a86f10;
  --error: #b44343;
  --radius-sm: 10px;
  --radius: 18px;
  --radius-lg: 30px;
  --shadow-sm: 0 10px 30px rgba(10, 31, 43, .08);
  --shadow-lg: 0 28px 70px rgba(7, 19, 31, .17);
  --container: min(1180px, calc(100% - 40px));
  --section: clamp(76px, 8vw, 128px);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--text); background: var(--paper); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
.container { width: var(--container); margin-inline: auto; }
.section { padding: var(--section) 0; }
.section-sm { padding: 64px 0; }
.section-dark { background: var(--navy); color: #f7fbfb; }
.section-ink { background: var(--ink); color: white; }
.section-white { background: var(--surface); }
.eyebrow { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 18px; color: #35685f; font-size: .78rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.eyebrow::before { content: ""; width: 21px; height: 1px; background: currentColor; }
.section-dark .eyebrow, .section-ink .eyebrow { color: var(--mint); }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: inherit; letter-spacing: -.035em; }
h1 { font-size: clamp(3rem, 7.4vw, 7rem); line-height: .94; margin-bottom: 26px; font-weight: 750; }
h2 { font-size: clamp(2.2rem, 4.5vw, 4.4rem); line-height: 1; margin-bottom: 22px; font-weight: 720; }
h3 { font-size: 1.28rem; line-height: 1.2; margin-bottom: 10px; }
p { color: var(--muted); font-size: 1.02rem; line-height: 1.72; }
.section-dark p, .section-ink p { color: #aebdc8; }
.lead { font-size: clamp(1.08rem, 1.5vw, 1.3rem); line-height: 1.64; max-width: 720px; }
.kicker { color: var(--mint); font-size: .78rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 21px; border: 1px solid transparent; border-radius: 12px; font-weight: 760; font-size: .94rem; transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease; cursor: pointer; }
.button:hover { transform: translateY(-2px); }
.button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, button:focus-visible { outline: 3px solid rgba(96,225,193,.42); outline-offset: 3px; }
.button-primary { color: var(--navy); background: var(--mint); box-shadow: 0 10px 24px rgba(96,225,193,.18); }
.button-primary:hover { background: #77e8cd; }
.button-secondary { border-color: rgba(255,255,255,.18); color: white; background: rgba(255,255,255,.06); }
.button-light { color: var(--ink); background: white; }
.button-outline { border-color: var(--line); background: transparent; }
.button-sm { min-height: 42px; padding: 0 16px; font-size: .86rem; border-radius: 10px; }
.text-link { display: inline-flex; align-items: center; gap: 8px; font-weight: 760; color: inherit; }
.text-link span { transition: transform .2s ease; }
.text-link:hover span { transform: translateX(4px); }
.cta-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.section-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr); gap: 48px; align-items: end; margin-bottom: 52px; }
.section-head h2, .section-head p { margin-bottom: 0; }
.center-head { text-align: center; max-width: 780px; margin: 0 auto 52px; }
.center-head .eyebrow { justify-content: center; }
.center-head p { margin-inline: auto; }

/* Navigation */
.site-nav { position: sticky; top: 0; z-index: 80; backdrop-filter: blur(18px); background: rgba(246,248,248,.88); border-bottom: 1px solid rgba(217,226,226,.75); }
.nav-shell { height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 830; letter-spacing: -.03em; color: var(--ink); }
.brand-mark { position: relative; width: 29px; height: 29px; border-radius: 9px; background: var(--ink); overflow: hidden; }
.brand-mark::after { content: ""; position: absolute; width: 27px; height: 17px; border: 2px solid var(--mint); border-color: var(--mint) transparent transparent var(--mint); border-radius: 50%; transform: rotate(-24deg); left: 8px; top: 13px; }
.brand-mark span, .brand-mark i { position: absolute; width: 5px; height: 5px; border-radius: 50%; background: white; z-index: 2; }
.brand-mark span { left: 7px; bottom: 6px; }.brand-mark i { right: 6px; top: 7px; }
.brand-word { font-size: 1.05rem; }
.nav-menu { display: flex; align-items: center; gap: 28px; }
.nav-links { display: flex; align-items: center; gap: 25px; }
.nav-links a { color: #3b4b58; font-size: .9rem; font-weight: 670; position: relative; }
.nav-links a::after { content: ""; position: absolute; left: 0; right: 0; bottom: -8px; height: 2px; background: var(--ink); transform: scaleX(0); transform-origin: center; transition: transform .2s ease; }
.nav-links a:hover::after, .nav-links a[aria-current="page"]::after { transform: scaleX(1); }
.menu-toggle { display: none; width: 44px; height: 44px; border: 0; background: transparent; border-radius: 10px; cursor: pointer; }
.menu-toggle span { display: block; width: 22px; height: 2px; margin: 5px auto; background: var(--ink); }

/* Hero */
.hero { padding: clamp(54px, 6vw, 94px) 0 92px; overflow: hidden; position: relative; }
.hero::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(13,27,42,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(13,27,42,.035) 1px, transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(to bottom, black, transparent 88%); pointer-events: none; }
.hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, .82fr) minmax(520px, 1.2fr); align-items: center; gap: 54px; }
.hero-copy h1 { max-width: 760px; }
.hero-copy h1 em { font-style: normal; color: #33766a; }
.hero-copy .lead { max-width: 630px; margin-bottom: 30px; }
.hero-proof { display: flex; gap: 18px; align-items: center; margin-top: 30px; color: var(--muted); font-size: .84rem; font-weight: 670; }
.hero-proof span { display: inline-flex; align-items: center; gap: 7px; }
.hero-proof i { width: 6px; height: 6px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 5px rgba(96,225,193,.14); }
.hero-visual { position: relative; min-height: 590px; }
.route-line { position: absolute; inset: 8% -10% auto 10%; height: 78%; pointer-events: none; opacity: .58; }
.route-line svg { width: 100%; height: 100%; }
.route-dash { fill: none; stroke: rgba(67, 128, 117, .32); stroke-width: 2; stroke-dasharray: 5 8; }
.route-dot { fill: var(--mint); }
.browser-mock { background: #f9fbfb; border: 1px solid #cdd9d8; border-radius: 19px; overflow: hidden; box-shadow: var(--shadow-lg); }
.browser-top { height: 38px; display: flex; align-items: center; gap: 6px; padding: 0 14px; background: white; border-bottom: 1px solid #e7eded; }
.browser-top i { width: 7px; height: 7px; border-radius: 50%; background: #d5dddd; }
.dashboard-frame { position: absolute; right: 0; top: 35px; width: 90%; transform: rotate(-1.2deg); }
.dashboard-ui { display: grid; grid-template-columns: 148px 1fr; min-height: 446px; font-size: 10px; color: #25313a; }
.dash-sidebar { padding: 18px 12px; background: #0e1d2b; color: #dce9e7; }
.dash-logo { display: flex; align-items: center; gap: 7px; margin-bottom: 22px; font-weight: 800; }.dash-logo b { width: 19px; height: 19px; border-radius: 6px; background: var(--mint); display: block; }
.dash-nav-item { padding: 8px 9px; margin: 3px 0; border-radius: 7px; color: #9fb0bc; }.dash-nav-item.active { background: rgba(96,225,193,.13); color: #eafff9; }
.dash-main { padding: 16px; background: #f4f7f7; }
.dash-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 13px; }.dash-header strong { font-size: 13px; }.status-live { display: inline-flex; gap: 5px; align-items: center; color: #408a73; font-weight: 800; }.status-live::before { content:""; width:6px; height:6px; border-radius:50%; background:#52c79f; }
.stat-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-bottom: 9px; }.mini-stat { background: white; border: 1px solid #e1e9e8; border-radius: 9px; padding: 10px; }.mini-stat span { color:#70808d; font-size:8px; }.mini-stat strong { display:block; font-size:15px; margin-top:3px; }
.dash-grid { display: grid; grid-template-columns: 1.45fr .82fr; gap: 9px; }.map-card, .trips-card { background:white; border:1px solid #e0e8e7; border-radius:11px; overflow:hidden; }.map-card { position:relative; min-height:250px; background: #e8efed; }
.map-lines { position:absolute; inset:0; background-image: linear-gradient(26deg, transparent 46%, #d4dfdc 47%, #d4dfdc 49%, transparent 50%), linear-gradient(-18deg, transparent 46%, #dbe4e2 47%, #dbe4e2 49%, transparent 50%); background-size: 82px 60px, 100px 88px; opacity:.9; }
.map-road { position:absolute; height:4px; border-radius:999px; background:white; box-shadow:0 0 0 1px rgba(176,193,188,.5); transform-origin:left; }
.map-road.r1 { width:78%; left:7%; top:63%; transform:rotate(-18deg); }.map-road.r2 { width:70%; left:20%; top:26%; transform:rotate(25deg); }.map-road.r3 { width:45%; left:45%; top:8%; transform:rotate(70deg); }
.vehicle-pin { position:absolute; display:grid; place-items:center; width:22px; height:22px; border-radius:7px 7px 7px 2px; transform:rotate(45deg); background:var(--ink); color:white; box-shadow:0 5px 12px rgba(13,27,42,.2); }.vehicle-pin span { transform:rotate(-45deg); font-size:9px; }.p1{left:25%;top:38%}.p2{left:58%;top:60%}.p3{left:70%;top:30%}.p4{left:42%;top:72%}.p5{left:80%;top:72%}
.trip-route { position:absolute; left:18%; top:60%; width:60%; height:50px; border:2px dashed #4bb596; border-color:#4bb596 transparent transparent #4bb596; border-radius:50%; transform:rotate(-10deg); }
.trips-card { padding:12px; }.trip-title { display:flex; justify-content:space-between; font-weight:800; margin-bottom:8px; }.trip-item { padding:8px 0; border-top:1px solid #edf1f1; }.trip-item b { display:block; margin-bottom:3px; }.trip-meta { color:#758590; font-size:8px; display:flex; justify-content:space-between; }
.phone-mock { width: 206px; background: #0a1420; border-radius: 34px; padding: 8px; box-shadow: 0 20px 46px rgba(7,19,31,.25); border: 1px solid #1e3145; }
.phone-screen { position: relative; overflow: hidden; min-height: 418px; background: #f7f9f9; border-radius: 27px; color: #16242f; }.phone-notch { position:absolute; z-index:4; top:9px; left:50%; transform:translateX(-50%); width:62px; height:16px; border-radius:99px; background:#0a1420; }
.passenger-phone { position:absolute; left:1%; bottom:0; transform:rotate(-6deg); }.driver-phone { position:absolute; right:4%; bottom:-28px; transform:rotate(5deg) scale(.86); }
.mobile-map { height: 188px; position: relative; background: #e5ecea; overflow:hidden; }.mobile-map::before { content:""; position:absolute; inset:-20%; background-image: linear-gradient(26deg, transparent 46%, white 47%, white 49%, transparent 50%), linear-gradient(-18deg, transparent 46%, #d2deda 47%, #d2deda 49%, transparent 50%); background-size:70px 52px, 85px 70px; transform:rotate(5deg); opacity:.85; }
.mobile-route { position:absolute; z-index:2; width:108px; height:62px; border:3px solid #48ae91; border-color:#48ae91 transparent transparent #48ae91; border-radius:50%; left:40px; top:72px; transform:rotate(20deg); }.map-pin-dot { position:absolute; z-index:3; width:14px; height:14px; border-radius:50%; background:var(--ink); border:4px solid white; box-shadow:0 3px 10px rgba(0,0,0,.15); }
.mpd1{left:44px;top:118px}.mpd2{right:35px;top:55px;background:#48ae91}
.phone-content { padding:14px; }.phone-greeting { display:flex; justify-content:space-between; align-items:center; margin-top:10px; margin-bottom:10px; font-size:9px; color:#75818b; }.avatar { width:24px; height:24px; border-radius:50%; background:linear-gradient(135deg,#c3d9d4,#7aa99e); }.location-box { margin-top:-25px; position:relative; z-index:3; background:white; border-radius:14px; padding:10px; box-shadow:0 7px 22px rgba(8,27,31,.1); }.loc-row { display:flex; gap:8px; align-items:center; padding:5px 0; font-size:9px; }.loc-row i { width:7px;height:7px;border-radius:50%;background:#52c79f;box-shadow:0 0 0 3px #e0f5ed; }.loc-row:last-child i { background:var(--ink); box-shadow:0 0 0 3px #e3e8eb; }.vehicle-options { display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px; }.vehicle-option{padding:8px 5px;background:#f0f4f3;border-radius:9px;text-align:center;font-size:7px}.vehicle-option strong{display:block;font-size:8px;margin-top:4px}.vehicle-option.active{outline:1.5px solid #4dbd9c;background:#eaf8f3}.vehicle-icon{font-size:16px}.book-bar{margin-top:10px;background:var(--ink);color:white;border-radius:10px;padding:9px;text-align:center;font-size:9px;font-weight:800}
.driver-ui { background:#101d2a; color:white; min-height:418px; padding:30px 12px 14px; }.driver-status { display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:9px; }.online-toggle { color:var(--mint);font-weight:800; }.request-card{background:#172a3c;border:1px solid #284057;border-radius:16px;padding:13px}.request-card .kicker{font-size:7px}.request-card h4{margin:6px 0 10px;font-size:14px}.ride-line{display:flex;gap:8px;align-items:start;margin:9px 0;color:#b9c6cf;font-size:8px}.ride-line i{margin-top:2px;width:7px;height:7px;border-radius:50%;background:var(--mint)}.request-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:12px}.request-meta div{background:#0f2030;border-radius:8px;padding:8px}.request-meta span{display:block;color:#8295a4;font-size:7px}.request-meta strong{font-size:10px}.accept{margin-top:10px;background:var(--mint);color:var(--ink);padding:9px;border-radius:9px;text-align:center;font-weight:800;font-size:9px}.driver-bottom{margin-top:12px;display:flex;justify-content:space-around;color:#7890a3;font-size:7px}

/* Credibility & systems */
.credibility { border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(255,255,255,.45); }.credibility-row { display:grid;grid-template-columns:repeat(6,1fr); }.credibility-item{padding:23px 14px;text-align:center;border-right:1px solid var(--line);font-size:.82rem;font-weight:760;color:#41515e}.credibility-item:last-child{border-right:0}
.ecosystem { display:grid; grid-template-columns:1fr 100px 1fr 100px 1fr 100px 1fr; align-items:center; gap:0; margin-top:38px; }.eco-card{min-height:220px;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow-sm)}.eco-icon{width:50px;height:50px;border-radius:14px;background:var(--ink);color:var(--mint);display:grid;place-items:center;font-size:22px}.eco-connector{height:2px;background:linear-gradient(90deg,var(--line),#7bbcab,var(--line));position:relative}.eco-connector::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#76c6b0;left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 5px rgba(118,198,176,.12)}.eco-card p{font-size:.9rem;margin:0}

.problem-list { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; }.problem{background:var(--paper);padding:30px 32px;display:grid;grid-template-columns:42px 1fr;gap:14px}.problem-num{font-size:.72rem;font-weight:850;color:#4f7f76;padding-top:4px}.problem h3{margin-bottom:7px}.problem p{font-size:.92rem;margin:0}

.featured-dashboard { background:#0a1724;border-radius:var(--radius-lg);padding:clamp(22px,3vw,40px);overflow:hidden;box-shadow:var(--shadow-lg); }.featured-dashboard .browser-mock{max-width:1000px;margin:0 auto}.featured-dashboard .dashboard-ui{grid-template-columns:170px 1fr;min-height:520px}.featured-dashboard .map-card{min-height:310px}.feature-callouts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.callout{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.055);border-radius:14px;padding:18px}.callout b{display:block;color:white;margin-bottom:5px}.callout span{color:#a8bac6;font-size:.84rem;line-height:1.5}

.services-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.services-sticky{position:sticky;top:120px}.service-stack{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:64px 1fr 28px;gap:14px;padding:28px 0;border-bottom:1px solid var(--line);align-items:start}.service-row .index{font-size:.73rem;font-weight:800;color:#708078;padding-top:5px}.service-row p{font-size:.92rem;margin-bottom:0}.service-row .arrow{font-size:1.1rem;transition:transform .2s ease}.service-row:hover .arrow{transform:translate(4px,-4px)}
.industries-marquee{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.industry-chip{min-height:120px;border:1px solid rgba(255,255,255,.13);border-radius:16px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;background:rgba(255,255,255,.035)}.industry-chip span{font-size:1.6rem}.industry-chip b{font-size:.94rem}

.process-track{display:grid;grid-template-columns:repeat(6,1fr);position:relative}.process-track::before{content:"";position:absolute;top:21px;left:8%;right:8%;height:1px;background:var(--line)}.process-step{position:relative;padding-right:20px}.step-dot{width:43px;height:43px;border-radius:50%;background:var(--surface);border:1px solid var(--line);display:grid;place-items:center;font-size:.72rem;font-weight:850;margin-bottom:18px;position:relative;z-index:2}.process-step h3{font-size:1rem}.process-step p{font-size:.82rem;line-height:1.55}

.case-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.case-card{position:relative;overflow:hidden;border-radius:24px;min-height:460px;background:var(--ink);color:white;padding:28px;display:flex;flex-direction:column}.case-card.large{grid-row:span 2;min-height:720px}.case-card .case-meta{display:flex;justify-content:space-between;align-items:center;gap:20px;position:relative;z-index:3}.case-card .case-type{color:#b9c7cf;font-size:.8rem}.case-card h3{font-size:clamp(1.8rem,3vw,3rem);margin-top:auto;max-width:520px;position:relative;z-index:3}.case-card p{color:#b7c5ce;max-width:520px;position:relative;z-index:3}.case-visual{position:absolute;inset:90px -10% -30px 18%;background:#f1f5f4;border-radius:24px 24px 0 0;transform:rotate(-4deg);border:8px solid #1e3142;box-shadow:0 30px 50px rgba(0,0,0,.25)}.case-visual.air{inset:110px -15% -34px 14%;background:linear-gradient(145deg,#deeeeb,#b7d8d1)}.case-visual.fleet{inset:108px -20% -45px 22%;background:#edf1f4}.mini-case-ui{padding:20px;color:#152533}.mini-case-ui .mini-bar{height:10px;width:35%;border-radius:99px;background:#c6d5d3;margin-bottom:18px}.mini-case-ui .mini-map{height:210px;border-radius:18px;background:#dce7e5;position:relative;overflow:hidden}.mini-case-ui .mini-map::after{content:"";position:absolute;inset:0;background-image:linear-gradient(25deg,transparent 45%,#fff 46%,#fff 50%,transparent 51%);background-size:80px 66px}.case-card.large .case-visual{inset:150px -12% -50px 14%}.case-card.large .mini-case-ui .mini-map{height:360px}
.concept-label{display:inline-flex;padding:6px 9px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#d9e3e8;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}

.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.why-card{padding:24px;border-top:1px solid var(--line)}.why-card .num{font-size:.75rem;color:#63847c;font-weight:850}.why-card h3{margin-top:34px}.why-card p{font-size:.9rem}
.tech-band{display:flex;flex-wrap:wrap;gap:10px}.tech-pill{border:1px solid var(--line);border-radius:999px;padding:10px 14px;background:white;font-size:.84rem;font-weight:700;color:#465763}

.faq-list{max-width:900px;margin:0 auto;border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{width:100%;border:0;background:transparent;padding:22px 0;display:flex;justify-content:space-between;text-align:left;gap:20px;cursor:pointer;font-weight:760;font-size:1.02rem}.faq-icon{width:24px;height:24px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;flex:none;transition:transform .2s ease}.faq-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.faq-panel>div{overflow:hidden}.faq-panel p{padding:0 44px 20px 0;margin:0;font-size:.94rem}.faq-item.open .faq-panel{grid-template-rows:1fr}.faq-item.open .faq-icon{transform:rotate(45deg)}

.final-cta{position:relative;overflow:hidden;border-radius:30px;background:var(--ink);color:white;padding:clamp(34px,6vw,76px)}.final-cta h2{max-width:770px}.final-cta p{max-width:600px}.cta-route-art{position:absolute;right:-3%;top:-10%;width:42%;height:120%;opacity:.32}.cta-route-art svg{width:100%;height:100%}

/* Inner pages */
.page-hero{padding:88px 0 68px;background:var(--ink);color:white;position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;width:560px;height:560px;border:1px solid rgba(96,225,193,.14);border-radius:50%;right:-240px;top:-260px;box-shadow:0 0 0 80px rgba(96,225,193,.025),0 0 0 160px rgba(96,225,193,.018)}.page-hero .container{position:relative;z-index:2}.page-hero h1{font-size:clamp(3.2rem,7vw,6.4rem);max-width:1000px}.page-hero .lead{color:#b7c6ce}.page-hero .breadcrumb{display:flex;gap:8px;align-items:center;color:#7f949f;font-size:.8rem;margin-bottom:25px}.page-hero .breadcrumb a{color:#c6d3d9}
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.split.align-center{align-items:center}.feature-list{border-top:1px solid var(--line)}.feature-list-item{display:grid;grid-template-columns:28px 1fr;gap:15px;padding:18px 0;border-bottom:1px solid var(--line)}.feature-list-item i{width:20px;height:20px;border-radius:50%;background:#dff5ee;display:grid;place-items:center;font-style:normal;font-size:.7rem;color:#2f7b67}.feature-list-item b{display:block;margin-bottom:4px}.feature-list-item span{font-size:.9rem;color:var(--muted);line-height:1.5}
.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.solution-card{background:white;border:1px solid var(--line);border-radius:18px;padding:26px;min-height:280px;display:flex;flex-direction:column;transition:transform .2s ease, box-shadow .2s ease}.solution-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm)}.solution-icon{width:46px;height:46px;border-radius:13px;background:var(--ink);color:var(--mint);display:grid;place-items:center;margin-bottom:34px;font-size:1.2rem}.solution-card p{font-size:.9rem}.solution-card .text-link{margin-top:auto;font-size:.88rem}
.work-list{display:grid;gap:18px}.work-row{display:grid;grid-template-columns:.78fr 1.2fr;min-height:430px;border-radius:24px;overflow:hidden;background:var(--ink);color:white}.work-copy{padding:34px;display:flex;flex-direction:column}.work-copy h2{font-size:clamp(2rem,3.8vw,3.7rem);margin-top:auto}.work-copy p{color:#afbdc6}.work-visual{position:relative;background:#dfe9e6;overflow:hidden}.work-visual .browser-mock{position:absolute;width:105%;left:6%;top:55px;transform:rotate(-3deg);box-shadow:var(--shadow-lg)}

/* Case study */
.case-hero{padding:74px 0 0;background:#0b1926;color:white;overflow:hidden}.case-hero .case-top{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;padding-bottom:58px}.case-hero h1{font-size:clamp(3.6rem,7vw,6.8rem)}.case-hero p{color:#b7c3cc}.case-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);border-radius:16px;overflow:hidden;margin-top:34px}.case-fact{padding:16px;background:#0d1d2b}.case-fact span{display:block;color:#8196a5;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}.case-fact b{font-size:.9rem}.case-stage{max-width:1100px;margin:0 auto;background:#f3f7f6;border-radius:28px 28px 0 0;padding:24px 24px 0;min-height:520px}.case-stage .browser-mock{box-shadow:none}.case-stage .dashboard-ui{min-height:470px}
.journey{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden}.journey-step{background:white;padding:26px}.journey-step span{font-size:.72rem;font-weight:850;color:#4b7c72}.journey-step h3{margin-top:48px}.journey-step p{font-size:.86rem;margin:0}
.screen-showcase{display:grid;grid-template-columns:.7fr 1.3fr;gap:22px;align-items:center}.screen-phone-row{display:flex;gap:16px;align-items:flex-end;justify-content:center;padding:30px;background:#dfeae7;border-radius:24px;overflow:hidden}.screen-phone-row .phone-mock{transform:scale(.9);margin:-20px}.screen-phone-row .phone-mock:nth-child(2){transform:scale(.9) translateY(28px)}

/* About/process/contact */
.statement{font-size:clamp(2.2rem,5vw,5rem);line-height:1.04;letter-spacing:-.04em;max-width:1100px;color:var(--ink);font-weight:720}.principles{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden}.principle{background:white;padding:34px}.principle span{display:block;font-size:.75rem;color:#5d8178;font-weight:850;margin-bottom:42px}.principle p{margin-bottom:0;font-size:.92rem}
.process-detail{display:grid;grid-template-columns:100px 1fr .65fr;gap:30px;padding:34px 0;border-top:1px solid var(--line)}.process-detail:last-child{border-bottom:1px solid var(--line)}.process-detail .num{font-size:.8rem;font-weight:850;color:#5e7c75}.process-detail h2{font-size:clamp(1.7rem,3vw,3.2rem)}.process-detail p{font-size:.92rem}.deliverables{display:flex;flex-wrap:wrap;gap:8px}.deliverables span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:white;font-size:.76rem;color:#50606a}
.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:start}.contact-aside{position:sticky;top:116px}.contact-points{margin-top:35px;border-top:1px solid var(--line)}.contact-point{padding:18px 0;border-bottom:1px solid var(--line)}.contact-point span{display:block;font-size:.72rem;color:#688078;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:5px}.form-card{background:white;border:1px solid var(--line);border-radius:24px;padding:clamp(24px,4vw,42px);box-shadow:var(--shadow-sm)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.82rem;font-weight:760}.field input,.field select,.field textarea{width:100%;border:1px solid #cfd9d8;border-radius:11px;background:#fbfcfc;padding:13px 14px;color:var(--text);transition:border-color .2s ease,box-shadow .2s ease}.field textarea{min-height:145px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#5bb59d;box-shadow:0 0 0 4px rgba(91,181,157,.1);outline:0}.field [aria-invalid="true"]{border-color:var(--error)}.field-error{min-height:16px;font-size:.74rem;color:var(--error)}.form-note{font-size:.78rem;color:#7a8892;margin:16px 0 0}.form-status{margin-top:13px;font-size:.84rem;font-weight:650}.form-status.is-error{color:var(--error)}.form-status.is-success{color:var(--success)}.form-status.is-info{color:#526b77}
.legal{max-width:820px;margin:0 auto}.legal h2{font-size:1.6rem;margin-top:44px}.legal p,.legal li{font-size:.96rem;line-height:1.72;color:var(--muted)}

/* Footer */
.site-footer{background:#07131f;color:white;padding:70px 0 24px}.site-footer .brand{color:white}.footer-grid{display:grid;grid-template-columns:1.6fr .65fr .65fr 1.1fr;gap:50px}.footer-brand p{max-width:340px;color:#98aab5;margin:20px 0 10px}.footer-note{font-size:.74rem;color:#708794}.site-footer h2{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#89a0ad;margin-bottom:17px}.site-footer a:not(.brand):not(.button){display:block;color:#dce5e8;font-size:.88rem;margin:10px 0}.site-footer a:hover{color:var(--mint)}.footer-cta p{font-size:.88rem;color:#93a7b2}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.1);padding-top:22px;margin-top:50px;color:#718792;font-size:.76rem}

.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}.js [data-reveal].in-view,.reduced-motion [data-reveal]{opacity:1;transform:none}
@keyframes pulse { 0%,100%{box-shadow:0 0 0 0 rgba(96,225,193,.2)} 50%{box-shadow:0 0 0 8px rgba(96,225,193,0)} }
.hero .vehicle-pin.p3{animation:pulse 2.8s infinite}

@media (max-width: 1100px){
  .hero-grid{grid-template-columns:1fr;gap:48px}.hero-copy{max-width:850px}.hero-copy h1{max-width:850px}.hero-visual{max-width:850px;margin:auto;width:100%}.dashboard-frame{width:85%;right:3%}.passenger-phone{left:0}.driver-phone{right:0}.ecosystem{grid-template-columns:1fr 50px 1fr;gap:0}.eco-card:nth-of-type(3),.eco-card:nth-of-type(4){margin-top:20px}.ecosystem .eco-connector:nth-child(4){display:none}.services-layout{grid-template-columns:1fr;gap:30px}.services-sticky{position:static}.process-track{grid-template-columns:repeat(3,1fr);gap:28px}.process-track::before{display:none}.case-grid{grid-template-columns:1fr 1fr}.case-card.large{grid-column:1/-1;grid-row:auto;min-height:650px}.footer-grid{grid-template-columns:1.4fr .7fr .7fr}.footer-cta{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.1);padding-top:25px}.contact-grid{grid-template-columns:1fr;gap:34px}.contact-aside{position:static}.case-hero .case-top{grid-template-columns:1fr}.case-hero .case-top>div:last-child{max-width:760px}.screen-showcase{grid-template-columns:1fr}.split{gap:42px}
}
@media (max-width: 820px){
  :root{--container:min(100% - 28px,1180px);--section:80px}.nav-shell{height:68px}.menu-toggle{display:block}.nav-menu{position:fixed;inset:68px 0 auto 0;background:rgba(246,248,248,.98);border-bottom:1px solid var(--line);padding:22px 20px 28px;display:none;flex-direction:column;align-items:stretch;gap:22px}.nav-menu.is-open{display:flex}.nav-links{flex-direction:column;align-items:stretch;gap:2px}.nav-links a{font-size:1.06rem;padding:12px 4px}.nav-links a::after{display:none}.nav-menu .button{width:100%}.hero{padding-top:50px}.hero-grid{gap:28px}.hero-visual{min-height:530px}.dashboard-frame{width:94%;right:-8%;top:20px}.dashboard-ui{grid-template-columns:115px 1fr;min-height:390px}.dash-sidebar{padding:12px 8px}.dash-main{padding:10px}.dash-grid{grid-template-columns:1.4fr .8fr}.map-card{min-height:210px}.phone-mock{width:172px}.phone-screen{min-height:350px}.mobile-map{height:155px}.passenger-phone{bottom:-12px}.driver-phone{display:none}.section-head{grid-template-columns:1fr;gap:16px;margin-bottom:38px}.credibility-row{grid-template-columns:repeat(3,1fr)}.credibility-item:nth-child(3){border-right:0}.credibility-item:nth-child(-n+3){border-bottom:1px solid var(--line)}.ecosystem{grid-template-columns:1fr;gap:12px}.eco-connector{display:none}.eco-card:nth-of-type(3),.eco-card:nth-of-type(4){margin-top:0}.problem-list{grid-template-columns:1fr}.featured-dashboard{padding:14px}.featured-dashboard .dashboard-ui{grid-template-columns:120px 1fr;min-height:430px}.featured-dashboard .dash-grid{grid-template-columns:1fr}.featured-dashboard .trips-card{display:none}.featured-dashboard .map-card{min-height:270px}.feature-callouts{grid-template-columns:1fr}.industries-marquee{grid-template-columns:repeat(2,1fr)}.process-track{grid-template-columns:repeat(2,1fr)}.case-grid{grid-template-columns:1fr}.case-card,.case-card.large{min-height:540px}.case-card.large{grid-column:auto}.why-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column}.page-hero{padding:70px 0 52px}.split{grid-template-columns:1fr}.solution-grid{grid-template-columns:1fr 1fr}.work-row{grid-template-columns:1fr;min-height:760px}.work-visual{min-height:360px}.journey{grid-template-columns:1fr 1fr}.process-detail{grid-template-columns:60px 1fr}.process-detail>div:last-child{grid-column:2}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.principles{grid-template-columns:1fr}.case-facts{grid-template-columns:1fr}.case-stage{min-height:430px;padding:12px 12px 0}.case-stage .dashboard-ui{grid-template-columns:115px 1fr;min-height:420px}.case-stage .dash-grid{grid-template-columns:1fr}.case-stage .trips-card{display:none}
}
@media (max-width: 520px){
  :root{--container:calc(100% - 24px)}h1{font-size:clamp(2.8rem,14vw,4.4rem)}h2{font-size:clamp(2rem,10vw,3rem)}.hero{padding-bottom:64px}.hero-copy .lead{font-size:1rem}.cta-row{align-items:stretch}.cta-row .button{flex:1 1 100%}.hero-proof{flex-direction:column;align-items:flex-start;gap:10px}.hero-visual{min-height:445px;margin-top:8px}.dashboard-frame{width:104%;right:-27%;top:8px}.dashboard-ui{grid-template-columns:88px 1fr;min-height:335px}.dash-sidebar{padding:9px 5px}.dash-nav-item{font-size:7px;padding:6px}.dash-main{padding:7px}.dash-header strong{font-size:10px}.stat-row{gap:4px}.mini-stat{padding:6px}.mini-stat strong{font-size:11px}.map-card{min-height:175px}.trips-card{display:none}.passenger-phone{width:150px;left:-7px}.phone-screen{min-height:310px}.mobile-map{height:125px}.phone-content{padding:10px}.location-box{margin-top:-18px}.vehicle-options{gap:3px}.vehicle-option{padding:5px 3px}.driver-phone{display:none}.credibility-row{grid-template-columns:repeat(2,1fr)}.credibility-item{border-bottom:1px solid var(--line)}.credibility-item:nth-child(3){border-right:1px solid var(--line)}.credibility-item:nth-child(2n){border-right:0}.credibility-item:nth-last-child(-n+2){border-bottom:0}.problem{padding:24px 20px;grid-template-columns:32px 1fr}.featured-dashboard .dashboard-ui{grid-template-columns:86px 1fr;min-height:360px}.featured-dashboard .map-card{min-height:240px}.industries-marquee{grid-template-columns:1fr 1fr}.industry-chip{min-height:100px}.process-track{grid-template-columns:1fr}.process-step{display:grid;grid-template-columns:52px 1fr;column-gap:12px}.step-dot{grid-row:1/3}.case-card,.case-card.large{min-height:500px;padding:22px}.case-card .case-meta{align-items:flex-start}.case-card h3{font-size:2rem}.case-card.large .case-visual,.case-visual{inset:150px -40% -50px 10%}.why-grid{grid-template-columns:1fr}.solution-grid{grid-template-columns:1fr}.work-row{min-height:700px}.work-copy{padding:26px}.journey{grid-template-columns:1fr}.screen-phone-row{padding:10px}.screen-phone-row .phone-mock{width:158px;transform:scale(.82);margin:-30px}.screen-phone-row .phone-mock:nth-child(2){display:none}.process-detail{grid-template-columns:1fr;gap:4px}.process-detail>div:last-child{grid-column:auto}.process-detail .num{margin-bottom:10px}.form-card{border-radius:18px;padding:20px}.footer-grid{grid-template-columns:1fr}.footer-brand,.footer-cta{grid-column:auto}.footer-bottom{margin-top:34px}.page-hero h1{font-size:clamp(2.9rem,14vw,4.8rem)}
}
@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}[data-reveal]{opacity:1;transform:none}}
