:root { --brand:#5086c2; --brand-deep:#356ca6; --brand-glow:#98c8ed; --ink:#333842; --muted:#68707d; --background:#fbfcfd; --surface:#f5f7f9; --card:#fff; --line:#e4e8ed; --shadow-card:0 10px 40px -12px rgb(30 43 58 / 18%); --shadow-glow:0 30px 80px -20px rgb(80 134 194 / 45%); --brand-gradient:linear-gradient(135deg,#356ca6,#5086c2 50%,#98c8ed); --grid:linear-gradient(to right,rgb(51 56 66 / 6%) 1px,transparent 1px),linear-gradient(to bottom,rgb(51 56 66 / 6%) 1px,transparent 1px); }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; overflow-x:hidden; background:var(--background); color:var(--ink); font-family:Inter,Arial,sans-serif; -webkit-font-smoothing:antialiased; } button,a { font:inherit; } a { color:inherit; text-decoration:none; } button { cursor:pointer; } svg { display:block; }
.container { width:min(100% - 48px,1280px); margin-inline:auto; }.site-header { position:fixed; inset:0 0 auto; z-index:40; transition:background .3s,border-color .3s,box-shadow .3s; }.site-header.is-scrolled,.site-header.menu-open { background:rgb(251 252 253 / 84%); border-bottom:1px solid var(--line); box-shadow:0 5px 28px rgb(30 43 58 / 4%); backdrop-filter:blur(20px); }.nav-shell { display:flex; align-items:center; justify-content:space-between; height:64px; width:min(100% - 48px,1280px); margin-inline:auto; }.brand { display:inline-flex; align-items:center; gap:8px; font-family:"Space Grotesk",sans-serif; font-size:23px; font-weight:700; letter-spacing:-.065em; }.brand-mark { display:inline-flex; align-items:end; gap:2px; width:25px; height:20px; padding-bottom:2px; transform:skewX(-12deg); }.brand-mark i { display:block; width:6px; border-radius:5px; background:var(--brand); }.brand-mark i:nth-child(1) { height:9px; }.brand-mark i:nth-child(2) { height:16px; }.brand-mark i:nth-child(3) { height:12px; background:#83bde5; }.desktop-nav { display:flex; gap:32px; color:var(--muted); font-size:14px; font-weight:500; }.desktop-nav a,.login-link,.site-footer a { transition:color .2s; }.desktop-nav a:hover,.login-link:hover,.site-footer a:hover { color:var(--ink); }.nav-actions { display:flex; align-items:center; gap:16px; }.login-link { color:var(--muted); font-size:14px; font-weight:500; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:0 24px; border:1px solid transparent; border-radius:999px; font-size:14px; font-weight:700; transition:transform .22s ease,background .22s,box-shadow .22s,border-color .22s; }.button svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; transition:transform .22s; }.button:hover { transform:scale(1.03); }.button:hover svg { transform:translateX(2px); }.button-primary { color:#fafdff; background:var(--brand); box-shadow:var(--shadow-glow); }.button-primary:hover { background:var(--brand-deep); }.button-small { min-height:38px; padding:0 16px; font-size:13px; }.button-small svg { width:15px; height:15px; }.button-secondary { border-color:var(--line); background:var(--card); color:var(--ink); }.button-secondary:hover { background:var(--surface); }.menu-toggle { display:none; place-items:center; gap:5px; width:38px; height:38px; padding:0; border:1px solid var(--line); border-radius:50%; background:var(--card); }.menu-toggle span { display:block; width:15px; height:1.5px; background:var(--ink); transition:transform .2s; }.menu-toggle[aria-expanded="true"] span:first-child { transform:translateY(3.25px) rotate(45deg); }.menu-toggle[aria-expanded="true"] span:last-child { transform:translateY(-3.25px) rotate(-45deg); }.mobile-nav { width:100%; padding:12px 24px 20px; border-bottom:1px solid var(--line); background:rgb(251 252 253 / 98%); }.mobile-nav a { display:block; padding:12px 0; color:var(--muted); font-size:15px; font-weight:600; }.mobile-nav a:last-child { color:var(--brand-deep); }
.hero { position:relative; isolation:isolate; overflow:hidden; padding:152px 0 128px; }.hero-grid { position:absolute; z-index:-2; inset:0; opacity:.62; background:var(--grid); background-size:48px 48px; mask-image:radial-gradient(ellipse at top,#000 28%,transparent 76%); }.hero-glow { position:absolute; z-index:-3; top:-96px; left:50%; width:min(960px,100%); height:470px; transform:translateX(-50%); border-radius:50%; background:radial-gradient(ellipse,rgb(80 134 194 / 23%),transparent 62%); filter:blur(28px); }.hero-copy { max-width:900px; margin:0 auto; text-align:center; }.eyebrow { display:inline-flex; align-items:center; justify-content:center; min-height:29px; margin:0; padding:0 12px; border:1px solid var(--line); border-radius:999px; background:var(--card); color:var(--brand-deep); font-size:11px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; box-shadow:0 1px 3px rgb(30 43 58 / 4%); }.live-badge { gap:8px; color:var(--muted); font-size:12px; font-weight:500; letter-spacing:0; text-transform:none; }.live-badge b { font-size:13px; color:#a8afb8; }.signal { position:relative; width:8px; height:8px; border-radius:50%; background:var(--brand); }.signal i { position:absolute; inset:0; border-radius:inherit; background:var(--brand); animation:ping 1.4s ease-out infinite; }
h1,h2,h3,p { margin-top:0; } h1,h2,h3 { font-family:"Space Grotesk",sans-serif; letter-spacing:-.045em; }.hero h1 { max-width:850px; margin:22px auto 0; font-size:clamp(46px,6.1vw,78px); line-height:1.045; }.hero h1 em,.section-heading h2 em { font-style:normal; background:var(--brand-gradient); background-clip:text; -webkit-background-clip:text; color:transparent; }.hero-description { max-width:735px; margin:22px auto 0; color:var(--muted); font-size:clamp(16px,1.7vw,20px); line-height:1.55; }.hero-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:34px; }.hero-proof { display:flex; flex-wrap:wrap; justify-content:center; gap:24px; margin:23px 0 0; padding:0; color:var(--muted); list-style:none; font-size:12px; }.hero-proof li { display:flex; align-items:center; gap:6px; }.hero-proof svg,.checklist svg { width:16px; height:16px; fill:none; stroke:var(--brand); stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.dashboard-wrap { position:relative; max-width:1150px; margin:80px auto 0; }.dashboard-aura { position:absolute; z-index:-1; inset:-24px -48px; border-radius:40px; background:var(--brand-gradient); opacity:.46; filter:blur(28px); }.dashboard { padding:12px; border:1px solid var(--line); border-radius:25px; background:rgb(255 255 255 / 93%); box-shadow:var(--shadow-card); }.dashboard > div { overflow:hidden; border:1px solid var(--line); border-radius:17px; background:var(--surface); }.browser-bar { display:flex; align-items:center; justify-content:space-between; min-height:47px; padding:0 20px; border-bottom:1px solid var(--line); background:var(--card); }.window-dots { display:flex; gap:6px; }.window-dots i { width:10px; height:10px; border-radius:50%; background:rgb(217 96 82 / .72); }.window-dots i:nth-child(2) { background:rgb(80 134 194 / .4); }.window-dots i:nth-child(3) { background:rgb(80 134 194 / .72); }.browser-bar > span { margin-left:-25%; color:var(--muted); font-size:12px; font-weight:500; }.browser-bar p { display:flex; align-items:center; gap:4px; margin:0; padding:5px 10px; border-radius:999px; background:rgb(80 134 194 / .1); color:var(--brand-deep); font-size:10px; font-weight:700; }.browser-bar p svg { width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:2; }
.dashboard-content { display:grid; grid-template-columns:2fr 3fr; gap:12px; padding:16px; }.kpi-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }.kpi,.rides { border:1px solid var(--line); border-radius:12px; background:var(--card); }.kpi { padding:15px; }.kpi span { display:block; color:var(--muted); font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.kpi strong { display:block; margin-top:4px; font-family:"Space Grotesk",sans-serif; font-size:clamp(19px,2vw,26px); letter-spacing:-.04em; }.kpi b { display:block; margin-top:2px; color:var(--brand-deep); font-size:12px; }.kpi b.warn { color:#c74c3b; }.map-panel { position:relative; min-height:180px; overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#f4f6f9; }.map-panel svg { position:absolute; inset:0; width:100%; height:100%; }.route-line { stroke-dasharray:1000; animation:route-draw 4s cubic-bezier(.4,0,.2,1) infinite; }.destination-wave { transform-origin:center; animation:destination-wave 2s ease-out infinite; }.rides { grid-column:1 / -1; padding:15px; }.rides header,.financial-panel header { display:flex; align-items:center; justify-content:space-between; padding-bottom:12px; border-bottom:1px solid var(--line); }.rides h2,.financial-panel h2 { margin:0; font-size:14px; letter-spacing:-.02em; }.rides header span { color:var(--muted); font-size:12px; }.rides ul,.transactions { margin:0; padding:0; list-style:none; }.rides li { display:flex; align-items:center; justify-content:space-between; min-height:40px; border-bottom:1px solid var(--line); color:var(--muted); font-size:13px; }.rides li:last-child { border-bottom:0; }.rides li > div { display:flex; align-items:center; gap:12px; }.rides li code { font-size:11px; }.rides li span { color:var(--ink); }.rides li span b { color:var(--muted); font-weight:400; }.rides li em { font-style:normal; font-size:12px; font-weight:600; }.ride-dot { width:8px; height:8px; border-radius:50%; background:#718294; }.ride-dot.active { background:var(--brand); }.ride-dot.done { background:#30a876; }
.logo-strip { overflow:hidden; padding:38px 0; border-block:1px solid var(--line); background:rgb(245 247 249 / .65); }.logo-strip > p { margin:0 0 22px; color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.19em; text-align:center; text-transform:uppercase; }.marquee { overflow:hidden; mask-image:linear-gradient(to right,transparent,#000 14%,#000 86%,transparent); }.marquee > div { display:flex; width:max-content; gap:48px; padding-left:24px; animation:marquee 28s linear infinite; }.marquee span { color:rgb(104 112 125 / .65); font-family:"Space Grotesk",sans-serif; font-size:20px; font-weight:700; white-space:nowrap; }
.section { position:relative; padding:112px 0; }.section-heading { max-width:680px; }.section-heading.centered { margin-inline:auto; text-align:center; }.section-heading h2 { margin:14px 0 0; font-size:clamp(37px,4.2vw,57px); line-height:1.07; }.section-heading > p:last-child { margin:17px 0 0; color:var(--muted); font-size:17px; line-height:1.58; }.feature-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:64px; }.feature { position:relative; overflow:hidden; min-height:226px; padding:24px; border:1px solid var(--line); border-radius:17px; background:var(--card); transition:transform .28s,box-shadow .28s; }.feature::before { position:absolute; top:-50px; right:-50px; width:130px; height:130px; border-radius:50%; background:var(--brand-gradient); content:""; opacity:0; filter:blur(28px); transition:opacity .4s; }.feature:hover { transform:translateY(-5px); box-shadow:var(--shadow-card); }.feature:hover::before { opacity:.38; }.feature-icon { position:relative; display:grid; width:43px; height:43px; place-items:center; border-radius:12px; background:rgb(80 134 194 / .1); color:var(--brand-deep); font-size:23px; font-weight:700; transition:background .25s,color .25s; }.feature:hover .feature-icon { background:var(--brand); color:white; }.feature h3,.feature p { position:relative; }.feature h3 { margin:15px 0 0; font-size:16px; letter-spacing:-.025em; }.feature p { margin:7px 0 0; color:var(--muted); font-size:14px; line-height:1.5; }
.workflow { overflow:hidden; }.workflow-grid { position:absolute; z-index:-1; inset:0; opacity:.3; background:var(--grid); background-size:48px 48px; }.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:64px 0 0; padding:0; list-style:none; }.steps li { min-height:202px; padding:26px; border:1px solid var(--line); border-radius:17px; background:var(--card); }.steps li > span { font-family:"Space Grotesk",sans-serif; font-size:51px; font-weight:700; letter-spacing:-.07em; background:var(--brand-gradient); background-clip:text; -webkit-background-clip:text; color:transparent; }.steps li > i { margin-left:12px; color:var(--muted); font-style:normal; }.steps h3 { margin:10px 0 0; font-size:18px; }.steps p { margin:6px 0 0; color:var(--muted); font-size:14px; line-height:1.5; }
.split-layout { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(48px,9vw,150px); }.checklist { display:grid; gap:13px; margin:27px 0 0; padding:0; list-style:none; font-size:14px; }.checklist li { display:flex; align-items:flex-start; gap:12px; line-height:1.45; }.checklist svg { flex:none; margin-top:2px; }.phone-stage { position:relative; width:min(100%,365px); margin-inline:auto; }.phone-aura { position:absolute; z-index:-1; inset:-34px; border-radius:48px; background:var(--brand-gradient); opacity:.38; filter:blur(32px); }.phone { padding:7px; border:8px solid #292e38; border-radius:39px; background:#292e38; box-shadow:0 25px 45px rgb(34 41 51 / .26); }.phone-screen { overflow:hidden; border-radius:28px; background:var(--card); }.phone-screen header { padding:17px 20px; color:white; background:var(--brand); }.phone-screen header small { display:block; opacity:.8; font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.phone-screen header strong { display:block; margin-top:4px; font-family:"Space Grotesk",sans-serif; font-size:18px; letter-spacing:-.025em; }.phone-body { padding:21px; }.place { display:flex; align-items:center; gap:12px; }.place-icon { display:grid; flex:none; width:36px; height:36px; place-items:center; border-radius:50%; background:rgb(80 134 194 / .15); color:var(--brand-deep); font-size:18px; }.destination-icon { color:white; background:var(--brand); box-shadow:0 0 0 0 rgb(80 134 194 / .35); animation:phone-ping 2s infinite; }.place p { margin:0; }.place small { display:block; color:var(--muted); font-size:11px; }.place b { display:block; margin-top:2px; font-size:14px; }.place-line { height:23px; margin:4px 0 4px 17px; border-left:2px dashed var(--line); }.phone dl { margin:21px 0; padding:12px; border-radius:11px; background:var(--surface); font-size:12px; }.phone dl div { display:flex; justify-content:space-between; gap:12px; }.phone dl div + div { margin-top:5px; }.phone dt { color:var(--muted); }.phone dd { margin:0; font-weight:700; text-align:right; }.complete-button { width:100%; min-height:45px; border:0; border-radius:11px; color:white; background:var(--brand); font-size:14px; font-weight:700; box-shadow:var(--shadow-glow); }
.financial { padding-top:90px; }.financial-layout { gap:clamp(48px,9vw,145px); }.financial-panel { order:-1; padding:25px; border:1px solid var(--line); border-radius:24px; background:var(--card); box-shadow:var(--shadow-card); }.financial-panel header span { padding:5px 10px; border-radius:999px; background:rgb(80 134 194 / .1); color:var(--brand-deep); font-size:12px; font-weight:700; }.financial-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; padding:20px 0; }.financial-kpis div { padding:11px; border-radius:11px; background:var(--surface); }.financial-kpis small { display:block; color:var(--muted); font-size:10px; font-weight:700; text-transform:uppercase; }.financial-kpis strong { display:block; margin-top:4px; color:var(--brand-deep); font-family:"Space Grotesk",sans-serif; font-size:clamp(14px,1.6vw,19px); letter-spacing:-.04em; }.positive { color:#15845e !important; }.negative { color:#c84d40 !important; }.transactions li { display:flex; align-items:center; justify-content:space-between; padding:12px 0; border-bottom:1px solid var(--line); }.transactions li:last-child { border-bottom:0; }.transactions b,.transactions small { display:block; }.transactions b { font-size:14px; }.transactions small { margin-top:3px; color:var(--muted); font-size:12px; }.transactions > li > strong { color:var(--muted); font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:13px; }.financial-copy { order:1; }
.cta-section { padding:25px 24px 96px; }.cta-panel { position:relative; isolation:isolate; overflow:hidden; width:min(100%,1024px); margin-inline:auto; padding:78px 24px; border-radius:39px; color:white; text-align:center; background:var(--brand-gradient); }.cta-grid { position:absolute; z-index:-1; inset:0; opacity:.18; background:var(--grid); background-size:48px 48px; }.cta-orb { position:absolute; z-index:-1; width:288px; height:288px; border-radius:50%; background:rgb(255 255 255 / .14); filter:blur(38px); }.orb-one { top:-80px; right:-80px; }.orb-two { bottom:-90px; left:-90px; }.cta-panel h2 { max-width:700px; margin:0 auto; font-size:clamp(37px,4.4vw,57px); line-height:1.08; }.cta-panel p { max-width:560px; margin:17px auto 0; color:rgb(255 255 255 / .87); font-size:16px; line-height:1.55; }.cta-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:31px; }.button-white { color:var(--ink); background:white; }.button-outline-light { border-color:rgb(255 255 255 / .35); color:white; }.button-outline-light:hover { background:rgb(255 255 255 / .12); }.site-footer { border-top:1px solid var(--line); background:rgb(245 247 249 / .65); }.footer-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:104px; }.footer-brand { display:flex; align-items:center; gap:13px; margin:0; color:var(--muted); font-size:12px; }.footer-brand .brand { font-size:20px; color:var(--ink); }.footer-brand .brand-mark { width:22px; transform:scale(.85) skewX(-12deg); transform-origin:left center; }.site-footer nav { display:flex; gap:24px; color:var(--muted); font-size:12px; }
.js [data-reveal] { opacity:0; transform:translateY(24px); }.js [data-reveal].is-revealed { animation:fade-up .8s cubic-bezier(.16,1,.3,1) forwards; animation-delay:calc(var(--delay,0) * 1ms); }.js [data-delay="70"]{--delay:70}.js [data-delay="80"]{--delay:80}.js [data-delay="140"]{--delay:140}.js [data-delay="160"]{--delay:160}.js [data-delay="200"]{--delay:200}.js [data-delay="210"]{--delay:210}.js [data-delay="240"]{--delay:240}.js [data-delay="280"]{--delay:280}.js [data-delay="320"]{--delay:320}.js [data-delay="350"]{--delay:350}.js [data-delay="400"]{--delay:400}.js [data-delay="420"]{--delay:420}.js [data-delay="490"]{--delay:490}
@keyframes fade-up{to{opacity:1;transform:translateY(0)}}@keyframes ping{70%,100%{opacity:0;transform:scale(2.2)}}@keyframes route-draw{0%{stroke-dashoffset:1000}60%,100%{stroke-dashoffset:0}}@keyframes destination-wave{0%{opacity:.32;transform:scale(1)}80%,100%{opacity:0;transform:scale(1.65)}}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes phone-ping{50%{box-shadow:0 0 0 10px rgb(80 134 194 / 0)}}
@media(max-width:980px){.feature-grid{grid-template-columns:repeat(2,1fr)}.split-layout{gap:60px}.dashboard-content{grid-template-columns:1fr}.map-panel{min-height:235px}.kpi-grid{order:1}.map-panel{order:0}.rides{order:2}.financial-layout{grid-template-columns:1fr 1fr;gap:50px}.financial-panel{padding:20px}}@media(max-width:760px){.container,.nav-shell{width:min(100% - 32px,1280px)}.desktop-nav,.login-link{display:none}.menu-toggle{display:grid}.nav-actions{gap:9px}.button-small{padding:0 13px}.hero{padding-top:123px;padding-bottom:76px}.hero h1{margin-top:19px;font-size:clamp(42px,12vw,57px)}.hero-description{font-size:16px}.hero-proof{gap:10px 15px;font-size:11px}.dashboard-wrap{margin-top:53px}.dashboard-aura{inset:-12px -19px}.dashboard{padding:7px;border-radius:18px}.browser-bar{min-height:40px;padding:0 12px}.window-dots i{width:8px;height:8px}.browser-bar>span{margin-left:0;font-size:9px}.browser-bar p{display:none}.dashboard-content{gap:8px;padding:8px}.kpi-grid{gap:8px}.kpi{padding:10px}.kpi span{font-size:8px}.kpi strong{font-size:18px}.kpi b{font-size:10px}.map-panel{min-height:172px}.rides{padding:10px}.rides header{padding-bottom:8px}.rides li{min-height:34px;font-size:10px}.rides li>div{gap:6px}.rides li span{display:none}.rides li em{font-size:10px}.section{padding:78px 0}.section-heading h2{font-size:clamp(36px,10vw,48px)}.section-heading>p:last-child{font-size:16px}.feature-grid,.steps{grid-template-columns:1fr;margin-top:42px}.feature,.steps li{min-height:0}.split-layout,.financial-layout{grid-template-columns:1fr;gap:50px}.public-links .section-heading{order:0}.phone-stage{order:1}.financial-panel{order:1}.financial-copy{order:0}.cta-section{padding:10px 16px 70px}.cta-panel{padding:63px 21px;border-radius:28px}.footer-inner,.footer-brand{flex-direction:column;justify-content:center;text-align:center}.footer-inner{padding:23px 0}.footer-brand{gap:9px}.site-footer nav{gap:18px}}@media(max-width:430px){.nav-actions .button-small{font-size:12px}.button-small svg{display:none}.hero-actions .button{width:100%}.hero-proof{justify-content:flex-start}.financial-kpis{gap:7px}.financial-kpis div{padding:8px}.financial-kpis strong{font-size:13px}.phone-stage{width:100%}.footer-brand>span{max-width:270px}.site-footer nav{gap:15px}}@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 { gap: 0; letter-spacing: 0; }
.brand-logo { display: block; width: 126px; height: auto; }
.footer-brand .brand-logo { width: 103px; }

.menu-toggle {
  position: relative;
  gap: 0;
}
.menu-toggle span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 2px;
  border-radius: 999px;
  transform-origin: center;
  transition: transform .2s ease, opacity .16s ease;
}
.menu-toggle span:first-child { transform: translate(-50%, calc(-50% - 6px)); }
.menu-toggle span:nth-child(2) { transform: translate(-50%, -50%); }
.menu-toggle span:last-child { transform: translate(-50%, calc(-50% + 6px)); }
.menu-toggle[aria-expanded="true"] span:first-child { transform: translate(-50%, -50%) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; transform: scaleX(.5); }
.menu-toggle[aria-expanded="true"] span:last-child { transform: translate(-50%, -50%) rotate(-45deg); }

html { overflow-x: clip; }

@media (max-width: 320px) {
  .nav-shell { width: calc(100% - 24px); }

  .brand {
    flex: 0 1 64px;
    min-width: 0;
  }

  .brand-logo { width: 64px; }

  .nav-actions {
    flex: 0 0 auto;
    gap: 6px;
  }

  .button-small {
    padding-inline: 10px;
    font-size: 11px;
  }

  .menu-toggle {
    width: 36px;
    height: 36px;
  }
}
