/* Fleet AI Link identity: one public system, no legacy theme cascade. */
:root{--ink:#172225;--muted:#59696c;--paper:#fff;--canvas:#f1f4f3;--line:#dce3e1;--blue:#155ce8;--blue-dark:#1049bb;--good:#237357;--bad:#b33333;--font:"Source Sans 3",Arial,sans-serif;--display:"Archivo",Arial,sans-serif;--mono:"IBM Plex Mono",monospace;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box;letter-spacing:0}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;color:var(--ink);background:var(--paper);font:18px/1.6 var(--font);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}
:focus-visible{outline:2px solid var(--blue);outline-offset:5px}
h1,h2,h3,p{margin:0 0 20px}h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.12;overflow-wrap:break-word}
h1{font-size:64px}h2{font-size:42px}h3{font-size:24px}p{color:var(--muted)}
img,video{display:block;max-width:100%;height:auto}svg{flex-shrink:0}
.publicContainer{width:min(1280px,calc(100% - 96px));margin-inline:auto}
.skipLink{position:fixed;left:20px;top:-80px;z-index:100;background:var(--ink);color:white;padding:12px 20px}.skipLink:focus{top:12px}
.publicHeader{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);color:var(--ink)}
.publicHeader__row{min-height:88px;display:flex;align-items:center;gap:36px}
.publicBrand{display:inline-flex;align-items:center;gap:12px;white-space:nowrap;font:650 23px var(--display)}
.publicBrand img{width:32px;height:32px;object-fit:contain}
.publicNav{display:flex;align-items:center;gap:28px;margin-left:auto}
.publicNav a,.publicActions a{font-size:16px;font-weight:600;white-space:nowrap}
.publicNav a{color:var(--muted);position:relative}.publicNav a:hover,.publicNav a[aria-current=page]{color:var(--ink)}
.publicNav a[aria-current=page]::after{content:"";position:absolute;height:4px;width:4px;background:var(--ink);bottom:-9px;left:50%}
.publicActions{display:flex;align-items:center;gap:22px}
.publicButton{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:12px 24px;background:var(--ink);color:var(--paper);border:0;border-radius:2px;font-size:16px;font-weight:600;text-align:center;transition:background .2s,transform .2s}
.publicButton:hover{background:#2c4146;transform:translateY(-2px)}
.publicButton.secondary{background:var(--canvas);color:var(--ink)}.publicButton.secondary:hover{background:var(--line)}
.publicButton.white{background:var(--paper);color:var(--ink)}.publicButton.blue{background:var(--blue)}
.publicLink{display:inline-flex;align-items:center;gap:12px;font-weight:600;text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--line)}
.publicLink:hover{text-decoration-color:currentColor}
.publicMenu{display:none;width:44px;height:44px;background:transparent;border:0;color:var(--ink);padding:10px}
.publicMenu span,.publicMenu::before,.publicMenu::after{content:"";display:block;height:2px;margin:5px 0;background:currentColor}
.publicEyebrow{font:600 14px var(--font);color:var(--muted);margin-bottom:24px}
.publicHero{position:relative;isolation:isolate;min-height:540px;display:flex;align-items:center;padding:84px 0;background:var(--canvas);overflow:hidden}
.publicHero>.publicContainer{position:relative;z-index:1}
.publicHero h1{max-width:780px}.publicHero p{max-width:660px;font-size:21px}.publicHero .publicEyebrow{font-size:14px}
.publicHero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(241,244,243,.98),rgba(241,244,243,.91) 42%,rgba(241,244,243,.25)),url('/assets/images/fleetai-highway-hero-poster.webp') center/cover;z-index:-1}
.publicHero::after{content:"";position:absolute;width:400px;height:400px;right:8%;top:16%;background:url('/assets/brand/fleet-ai-mark.svg?v=link1') center/contain no-repeat;opacity:.035;z-index:-1}
.publicActionsRow{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}
.publicBand{padding:104px 0}.publicBand.soft{background:var(--canvas)}
.publicSplit{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:96px;align-items:start}
.publicSplit>*,.publicColumns>*{min-width:0}
.publicColumns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:48px}
.publicColumns article{padding:0}.publicColumns h3{font-size:23px}
.publicRows{margin:0}.publicRows>div{padding:24px 0;border-bottom:1px solid var(--line)}.publicRows>div:first-child{padding-top:0}.publicRows>div:last-child{border:0}
.publicRows dt{font:600 21px var(--display);margin-bottom:12px}.publicRows dd{margin:0;color:var(--muted)}
.publicFigure{margin:48px auto 0}.publicFigure img{width:100%;max-height:580px;object-fit:cover}
.publicFigure figcaption{padding-top:12px;font-size:14px;color:var(--muted)}
.publicCta{padding:80px 0;background:var(--canvas);position:relative;overflow:hidden}
.publicCta .publicContainer{position:relative;display:flex;align-items:center;justify-content:space-between;gap:48px}
.publicCta h2{max-width:760px;margin-bottom:16px}.publicCta p{margin:0}.publicCta .publicButton{flex-shrink:0}
.publicFooter{padding:72px 0 30px;background:var(--ink);color:var(--paper)}
.publicFooter .publicBrand img{filter:brightness(0) invert(1)}
.publicFooter__row{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
.publicFooter p{color:#adb9bb;max-width:280px;font-size:16px;margin-top:24px}
.publicFooter strong{display:block;font-size:15px;margin-bottom:20px;font-weight:600}
.publicFooter nav a{display:block;color:#bbc5c7;font-size:15px;padding:5px 0}.publicFooter nav a:hover{color:white}
.publicFooter small{display:block;color:#adb9bb;font-size:13px;margin-top:56px}
.publicForm{padding:0;max-width:720px}.publicFormGrid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.publicForm label{display:block;font-size:16px;font-weight:600;margin-bottom:9px}
.publicForm input,.publicForm select,.publicForm textarea{width:100%;min-width:0;min-height:50px;border:0;border-radius:2px;padding:12px 14px;color:var(--ink);background:var(--canvas)}
.publicForm textarea{min-height:150px;resize:vertical}.publicForm>.publicField{margin:28px 0}
.formNote,.publicHint{font-size:15px;color:var(--muted);margin-top:22px}
.formSuccess{display:none;color:var(--good);margin-top:20px}.publicError{display:none;color:var(--bad);margin-top:20px}
.publicPrice{font:600 88px/1 var(--display);margin-bottom:18px}
.publicPrice small{display:block;font:18px/1.6 var(--font);color:var(--muted);margin-top:18px}
.publicPricePanel{padding:48px;background:var(--paper);box-shadow:0 12px 44px rgba(23,34,37,.05)}
.publicFaq{margin-top:32px}.publicFaq details{padding:26px 0;border-bottom:1px solid var(--line)}
.publicFaq summary{font:600 21px/1.4 var(--display);cursor:pointer}.publicFaq p{margin:16px 0 0;max-width:760px}
.publicCode{padding:26px;background:var(--canvas);overflow:auto;font:13px/1.8 var(--mono)}
.publicTableWrap{overflow:auto}.publicTable{width:100%;border-collapse:collapse;text-align:left;font-size:16px}
.publicTable th{color:var(--muted);font-weight:600}.publicTable td,.publicTable th{padding:18px 14px;border-bottom:1px solid var(--line);vertical-align:top}.publicTable code{font-size:13px;overflow-wrap:anywhere}
.publicNarrow{max-width:900px}
.page-pricing .publicHero::before,.page-security .publicHero::before,.page-signup .publicHero::before,.page-developers .publicHero::before,.page-request-demo .publicHero::before{background:var(--canvas)}
.page-pricing .publicHero::after,.page-security .publicHero::after,.page-developers .publicHero::after{opacity:.13}
.page-security .publicHero{background:var(--ink);color:var(--paper)}
.page-security .publicHero::before{background:var(--ink)}
.page-security .publicHero::after{filter:invert(1);opacity:.18}
.page-security .publicHero p{color:#c0cdce}
.page-signup .publicHero,.page-request-demo .publicHero{min-height:400px}
.legal-page .section{padding:68px 0}.legal-container{width:min(920px,calc(100% - 64px));margin:auto}
.legal-header h1{font-size:48px}.legal-meta{color:var(--muted);font-size:14px;display:flex;flex-wrap:wrap;gap:24px}
.legal-toc{padding:32px;background:var(--canvas);margin:36px 0 48px}.legal-toc h2{font-size:23px}
.legal-toc ol{padding-left:24px}.legal-toc li{padding:5px 0}.legal-content section{margin:44px 0}
.legal-content h2{font-size:29px}.legal-content h3{font-size:22px}
.legal-content a{color:var(--blue);text-decoration:underline}.legal-content table{width:100%;border-collapse:collapse}
.legal-content td,.legal-content th{text-align:left;padding:12px;overflow-wrap:anywhere;border-bottom:1px solid var(--line)}
.legal-kicker{color:var(--muted);font-weight:600}
[data-reveal]{transition:opacity .65s var(--ease),transform .65s var(--ease)}
.reveal-ready{opacity:0;transform:translateY(22px)}.reveal-ready.is-visible{opacity:1;transform:none}
@media(min-width:1700px){.publicContainer{width:min(1480px,calc(100% - 128px))}.publicHero h1{max-width:880px}}
@media(max-width:1120px){.publicHeader__row{gap:22px}.publicNav{gap:20px}.publicActions{gap:16px}.publicSplit{gap:54px}.publicHero::after{right:3%}}
@media(max-width:960px){.publicContainer{width:calc(100% - 64px)}.publicMenu{display:block}.publicActions{margin-left:auto}.publicNav{display:none;position:absolute;top:88px;left:0;right:0;padding:20px 32px;background:var(--paper);box-shadow:0 18px 28px rgba(23,34,37,.1)}
.publicNav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.publicNav a{padding:12px 0}.publicNav a[aria-current=page]::after{display:none}
.publicHero{min-height:500px}.publicHero h1{font-size:52px;max-width:650px}.publicHero::after{opacity:.035!important}
.publicColumns{gap:28px}.publicFooter__row{grid-template-columns:1fr 1fr}.publicBand{padding:72px 0}}
@media(max-width:680px){.publicContainer,.legal-container{width:calc(100% - 40px)}
.publicHeader__row{min-height:72px;gap:12px}.publicBrand{font-size:21px;gap:10px}.publicBrand img{width:28px;height:28px}.publicActions{gap:10px}.publicActions>.publicButton{display:none}.publicActions a{font-size:15px}.publicNav{top:72px;padding:16px 20px}
h1,.publicHero h1,.legal-header h1{font-size:40px}h2{font-size:32px}h3{font-size:23px}
.publicHero{min-height:440px;padding:56px 0}.publicHero p{font-size:19px}.publicHero::before{background:linear-gradient(90deg,rgba(241,244,243,.97),rgba(241,244,243,.78)),url('/assets/images/fleetai-highway-hero-poster.webp') center/cover}
.publicSplit,.publicColumns,.publicFormGrid{grid-template-columns:1fr;gap:36px}.publicBand{padding:56px 0}.publicCta{padding:56px 0}
.publicCta .publicContainer{align-items:flex-start;flex-direction:column;gap:24px}.publicFooter{padding-top:48px}.publicFooter__row{gap:28px}.publicFooter__row>div{grid-column:1/-1}
.publicPricePanel{padding:28px}.publicPrice{font-size:72px}.publicFormGrid{gap:22px}.publicHero::after{width:240px;height:240px;right:-50px;top:30%}
.page-signup .publicHero,.page-request-demo .publicHero{min-height:360px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}[data-reveal]{opacity:1!important;transform:none!important}}
