body{font-family:var(--f);color:var(--ink);background:var(--bg);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.sol-wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--space-8)}
a{text-decoration:none;color:inherit}
.sol-page section{padding:var(--space-20) 0}
svg{display:block}
/* .eyebrow uses the global white-pill badge in eazyride.css. */
.lead{font-size:var(--fs-body-lg);color:var(--muted);max-width:620px;line-height:var(--line-height-body)}
.sol-btn{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:700;font-size:var(--fs-body);padding:var(--space-4) var(--space-6);border-radius:var(--radius-box-ms);cursor:pointer;transition:.2s;border:1.5px solid transparent;font-family:var(--f)}
.sol-btn-primary{background:var(--primary-color);color:var(--white);box-shadow:var(--btn-primary-shadow)}
.sol-btn-primary:hover{box-shadow:var(--btn-primary-shadow-hover)}
.sol-btn-ghost{background:var(--white);color:var(--navy-2);border-color:var(--line)}
.sol-btn-light{background:rgba(255,255,255,.12);color:var(--white);border-color:rgba(255,255,255,.3)}
.sol-btn-light:hover{background:rgba(255,255,255,.2)}
.shead{max-width:680px;margin:0 auto var(--space-12);text-align:center}
.shead h2{margin-bottom:var(--space-4)}
.shead .lead{margin:0 auto}
.fade-up{opacity:0;transform:translateY(18px);animation:fu .7s cubic-bezier(.2,.7,.3,1) forwards}
@keyframes fu{to{opacity:1;transform:none}}

/* HERO */
.shero{background:radial-gradient(900px 600px at 80% -10%,var(--bg-blue),var(--white) 70%);padding:var(--space-20) 0 var(--space-24);overflow:hidden}
.shero .sol-wrap{display:grid;grid-template-columns:1.02fr 1fr;gap:var(--space-12);align-items:center}
.shero h1{margin-bottom:var(--space-5)}
.shero h1 .g{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.shero .lead{margin-bottom:var(--space-8)}
.shero-cta{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-5)}
.shero .small{font-size:var(--fs-small);color:var(--muted-2);font-weight:600}
.config{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-box-lg);box-shadow:var(--shadow);overflow:hidden}
.ctop{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line-soft);display:flex;align-items:center;gap:var(--space-3);background:#fbfcfe}
.ctop .cic{width:38px;height:38px;border-radius:var(--radius-box-icon);display:flex;align-items:center;justify-content:center;background:var(--bg-blue);transition:.3s}
.ctop .cic svg{width:22px;height:22px;fill:none;transition:.3s}
.ctop b{font-size:var(--fs-body);color:var(--navy-2);transition:.2s}
.ctop .clive{margin-left:auto;font-size:var(--fs-caption);font-weight:700;color:var(--green);display:flex;align-items:center;gap:var(--space-2)}
.ctop .clive i{width:7px;height:7px;border-radius:50%;background:var(--green);animation:pl 1.6s infinite}
@keyframes pl{0%,100%{opacity:1}50%{opacity:.3}}
.cmap{position:relative;height:236px;background:#eef3fb}
.cmap svg{width:100%;height:100%}
.cmark{transition:transform .4s cubic-bezier(.2,.8,.3,1.5),opacity .35s}
.cmark.pop{transform:scale(.3);opacity:.15}
.cfoot{padding:var(--space-3) var(--space-4);display:flex;gap:var(--space-2);flex-wrap:wrap;min-height:50px}
.cfoot span{font-size:var(--fs-caption);font-weight:600;color:var(--navy-2);background:var(--bg-blue);padding:var(--space-2) var(--space-3);border-radius:var(--radius-box-icon);animation:fu .4s ease both}
.cchips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-5)}
.cchip{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-small);font-weight:700;color:var(--ink);background:var(--white);border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-4);cursor:pointer;transition:.18s}
.cchip svg{width:16px;height:16px;stroke:var(--muted);fill:none;transition:.18s}
.cchip:hover{border-color:var(--blue)}
.cchip.on{background:var(--grad);color:var(--white);border-color:transparent}
.cchip.on svg{stroke:var(--white)}
.clabel{font-size:var(--fs-caption);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);margin:var(--space-6) 0 var(--space-3)}

/* MIXED FLEET */
.mixed{background:var(--bg-soft)}
.mixed-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:var(--space-16);align-items:center}
.mixed h2{margin-bottom:var(--space-4)}
.mixed p{font-size:var(--fs-body-lg);color:var(--muted);margin-bottom:var(--space-6);max-width:520px}
.mixed .pts{list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}
.mixed .pts li{display:flex;gap:var(--space-3);font-size:var(--fs-body);color:var(--ink);font-weight:500}
.mixed .pts li svg{flex:0 0 auto;margin-top:var(--space-1)}
.fleetvis{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-box-lg);box-shadow:var(--shadow);padding:var(--space-6);position:relative}
.fleetvis .vtop{display:flex;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}
.vchip{flex:1;background:var(--bg-blue);border-radius:var(--radius-box-ms);padding:var(--space-4) var(--space-2);text-align:center;transition:.25s}
.vchip:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm)}
.vchip svg{width:28px;height:28px;stroke:var(--blue);fill:none;margin:0 auto var(--space-2)}
.vchip b{font-size:var(--fs-caption);color:var(--navy-2);display:block}
.vchip span{font-size:var(--fs-caption);color:var(--green);font-weight:700}
.flow{height:36px;margin:var(--space-1) 0}
.flow svg{width:100%;height:100%;overflow:visible}
.flowline{stroke:#9cc0f3;stroke-width:1.6;fill:none;stroke-dasharray:4 5;animation:flowmove 1.1s linear infinite}
@keyframes flowmove{to{stroke-dashoffset:-18}}
.fdash{border:1px solid var(--line);border-radius:var(--radius-btn);overflow:hidden}
.fdash .fh{background:var(--navy-2);color:var(--white);padding:var(--space-3) var(--space-4);font-size:var(--fs-small);font-weight:700;display:flex;justify-content:space-between;align-items:center}
.fdash .fh .live{font-size:var(--fs-caption);color:var(--cyan);display:flex;align-items:center;gap:var(--space-2)}
.fdash .fh .live i{width:6px;height:6px;border-radius:50%;background:var(--cyan);display:inline-block;animation:pl 1.6s infinite}
.fdash .fb{padding:var(--space-4);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}
.fdash .kp{text-align:center}
.fdash .kp .n{font-size:var(--fs-body-lg);font-weight:800;color:var(--navy-2)}
.fdash .kp .l{font-size:var(--fs-caption);color:var(--muted)}

/* USE-CASE GRID */
.ucgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
.uc{position:relative;border:1px solid var(--line);border-radius:var(--radius-nav);padding:var(--space-6) var(--space-6);background:var(--white);transition:.22s;display:block;overflow:hidden}
.uc:before{content:"";position:absolute;top:-40px;right:-40px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(var(--secondary-rgb),.10),transparent 70%);opacity:0;transition:.3s}
.uc:hover{border-color:var(--blue);box-shadow:var(--shadow);transform:translateY(-4px)}
.uc:hover:before{opacity:1}
.uc .ui{width:54px;height:54px;border-radius:var(--radius-btn);background:radial-gradient(circle at 30% 25%,var(--surface-blue),#dceafd);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-4);transition:.3s}
.uc:hover .ui{background:var(--grad);transform:translateY(-2px) rotate(-5deg)}
.uc .ui svg{width:28px;height:28px;stroke:var(--blue);fill:none;transition:.3s}
.uc:hover .ui svg{stroke:var(--white)}
.uc b{display:block;font-size:var(--fs-body-lg);color:var(--navy-2);margin-bottom:var(--space-2);position:relative}
.uc p{font-size:var(--fs-small);color:var(--muted);line-height:var(--line-height-body);position:relative}
.uc .go{margin-top:var(--space-4);font-size:var(--fs-small);font-weight:700;color:var(--blue);opacity:0;transform:translateX(-6px);transition:.25s}
.uc:hover .go{opacity:1;transform:none}

/* WHAT ADAPTS */
.adapts{background:var(--bg-soft)}
.acols{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
.acol{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-nav);padding:var(--space-8) var(--space-6);transition:.2s}
.acol:hover{box-shadow:var(--shadow-sm);transform:translateY(-3px)}
.acol .ai{width:48px;height:48px;border-radius:var(--radius-box-ms);background:var(--bg-blue);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-5)}
.acol .ai svg{width:25px;height:25px;stroke:var(--blue);fill:none}
.acol h3{margin-bottom:var(--space-2)}
.acol .sub{font-size:var(--fs-small);color:var(--muted);margin-bottom:var(--space-4)}
.sol-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.sol-tags span{font-size:var(--fs-caption);font-weight:600;color:var(--navy-2);background:var(--bg-blue);padding:var(--space-2) var(--space-3);border-radius:var(--radius-box-icon);transition:.18s;cursor:default}
.sol-tags span:hover{background:var(--blue);color:var(--white)}

/* OPERATING MODELS */
.opm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
.opm{border:1px solid var(--line);border-radius:var(--radius-nav);padding:var(--space-6);background:var(--white);transition:.2s}
.opm:hover{box-shadow:var(--shadow-sm);transform:translateY(-3px)}
.opm .map{height:130px;border-radius:var(--radius-sm);background:#eef3fb;position:relative;overflow:hidden;margin-bottom:var(--space-5)}
.opm .map svg{width:100%;height:100%}
.opm h3{margin-bottom:var(--space-2)}
.opm p{font-size:var(--fs-small);color:var(--muted)}
.pdot{animation:pdot 2.4s ease-in-out infinite}
@keyframes pdot{0%,100%{opacity:1}50%{opacity:.35}}
.mover{animation:mover 6s linear infinite}
@keyframes mover{0%{transform:translateX(0)}50%{transform:translateX(150px)}100%{transform:translateX(0)}}

/* CTA SECTION */
.sol-cta{background:var(--navy);color:var(--white);text-align:center;position:relative;overflow:hidden}
.sol-cta:before{content:"";position:absolute;inset:0;background:radial-gradient(700px 380px at 50% 120%,rgba(var(--secondary-rgb),.22),transparent 60%)}
.sol-cta .sol-wrap{position:relative;z-index:1}
.sol-cta .pre{color:var(--muted-2);font-weight:600;font-size:var(--fs-body);margin-bottom:var(--space-5)}
.sol-cta h2{margin-bottom:var(--space-6);max-width:760px;margin-left:auto;margin-right:auto}
.cta-cta{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}

/* RESPONSIVE */
@media(max-width:920px){
  .shero .sol-wrap,.mixed-grid{grid-template-columns:1fr;gap:var(--space-10)}
  .ucgrid{grid-template-columns:1fr 1fr}
  .acols,.opm-grid{grid-template-columns:1fr;gap:var(--space-4)}
  /* .fgrid footer override removed 2026-07-18 — footer layout is global. */
}
@media(max-width:600px){
  .sol-page section{padding:var(--space-20) 0}
  .sol-wrap{padding:0 var(--space-5)}
  .sol-navlinks,.sol-navcta .sol-btn-ghost{display:none}
  .sol-burger{display:flex}
  .ucgrid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .fade-up{animation:none;opacity:1;transform:none}
  .flowline,.pdot,.mover,.ctop .clive i,.fdash .fh .live i{animation:none}
}