:root { --ink:#09110f; --paper:#eef0e8; --lime:#c8ff3d; --muted:#8d9690; --line:rgba(238,240,232,.14); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--paper); background:var(--ink); font-family:"DM Sans","Noto Sans SC",sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
.shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.nav { height:92px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:11px; font-weight:600; letter-spacing:-.03em; }
.brand-mark { width:26px; height:26px; border:1px solid var(--lime); border-radius:50%; display:grid; place-items:center; }
.brand-mark i { width:10px; height:6px; border-left:2px solid var(--lime); border-right:2px solid var(--lime); transform:skew(-18deg); }
nav { display:flex; gap:34px; font-size:14px; color:#bcc3bd; }
nav a,.footer a { transition:color .2s ease; }
nav a:hover,.footer a:hover { color:var(--lime); }
.hero { min-height:690px; display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:7vw; padding-block:74px 100px; }
.eyebrow { margin:0 0 24px; color:#9da69f; font-size:11px; letter-spacing:.16em; font-weight:600; }
.eyebrow span { display:inline-block; width:22px; height:1px; margin:0 10px 3px 0; background:var(--lime); }
h1,h2 { margin:0; letter-spacing:-.06em; line-height:.98; font-weight:500; }
h1 { font-size:clamp(58px,7vw,96px); }
h1 em { color:var(--lime); font-style:normal; }
.lead { max-width:470px; margin:30px 0 36px; color:#a6aea8; line-height:1.8; font-size:16px; }
.button { display:inline-flex; gap:40px; align-items:center; padding:14px 16px 14px 20px; color:var(--ink); background:var(--lime); font-size:13px; font-weight:600; border-radius:2px; transition:transform .2s,box-shadow .2s; }
.button:hover { transform:translateY(-2px); box-shadow:0 10px 30px rgba(200,255,61,.17); }
.button span { font-size:18px; }
.dashboard { position:relative; min-height:455px; padding:20px; background:#101a17; border:1px solid #26312d; border-radius:16px; box-shadow:0 35px 90px rgba(0,0,0,.35); transform:perspective(1200px) rotateY(-4deg); animation:arrive .8s cubic-bezier(.2,.8,.2,1) both; }
.dashboard:before { content:""; position:absolute; inset:35% 10% -15%; background:var(--lime); filter:blur(110px); opacity:.08; pointer-events:none; }
.dash-top { height:48px; display:flex; justify-content:space-between; color:#6f7d76; font-size:9px; letter-spacing:.18em; }
.dash-top b { color:#9ba59f; font-weight:500; }.dash-top b i{ display:inline-block;width:6px;height:6px;background:var(--lime);border-radius:50%;margin-left:8px;box-shadow:0 0 12px var(--lime);}
.route-card { display:grid; grid-template-columns:1.5fr .7fr; min-height:260px; overflow:hidden; border:1px solid #2a3531; background:#0c1512; }
.road { position:relative; overflow:hidden; background:linear-gradient(145deg,#17231f,#0a1210); }
.road:before,.road:after { content:"";position:absolute;border:1px solid #314039;border-radius:50%;width:360px;height:230px;left:-85px;top:35px;transform:rotate(-18deg); }
.road:after { width:270px;height:160px;left:-36px;top:63px;border-color:#55685f; }
.road-line { position:absolute;width:330px;height:1px;background:#26352f;transform:rotate(-27deg);left:35px; }.road-line.one{top:85px}.road-line.two{top:145px}.road-line.three{top:205px}
.pin { position:absolute; left:48%; top:43%; color:var(--lime); font-size:18px; text-shadow:0 0 18px var(--lime); }
.route-info { padding:32px 22px;border-left:1px solid #2a3531;display:flex;flex-direction:column; }
.route-info small,.metrics small { color:#718078;font-size:10px;letter-spacing:.08em; }
.route-info strong { font-size:50px;margin-top:28px;font-weight:500;letter-spacing:-.06em; }.route-info sup{font-size:12px;color:#718078;letter-spacing:0}.route-info span{margin-top:auto;color:var(--lime);font-size:11px}
.metrics { display:grid;grid-template-columns:1fr 1fr 1.5fr;margin-top:12px;border:1px solid #2a3531; }
.metrics>div { padding:17px 19px;border-right:1px solid #2a3531;display:grid;grid-template-columns:auto 1fr;gap:4px 8px; }.metrics>div:last-child{border:0}
.metrics small { grid-column:1/-1; }.metrics strong{font-size:25px;font-weight:500}.metrics span{font-size:9px;color:#66736c;align-self:end;margin-bottom:4px}.metrics .status strong{font-size:14px;color:var(--lime);align-self:center}.metrics .status span{grid-column:1/-1}
.feature-wrap { background:var(--paper); color:var(--ink); padding:110px 0 120px; }
.features { display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw; }
.feature-wrap .eyebrow { color:#68706c; }.feature-wrap h2{font-size:clamp(42px,5vw,66px)}
.feature-list article { display:grid;grid-template-columns:44px 1fr 50px;gap:18px;align-items:start;padding:28px 0;border-top:1px solid #c8ccc4; }
.feature-list article:last-child{border-bottom:1px solid #c8ccc4}.number{font-size:11px;color:#8a918c;margin-top:6px}.feature-list h3{font-size:20px;margin:0 0 8px;font-weight:600}.feature-list p{margin:0;color:#68706c;line-height:1.7;font-size:14px;max-width:440px}.icon{font-size:28px;text-align:right;color:#66706a}
.footer { min-height:160px; display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;color:#7d8881;font-size:11px; }.footer p{text-align:center}.footer>div{text-align:right}.footer>div a{margin-left:24px}.footer .brand{color:var(--paper);font-size:14px}
@keyframes arrive { from{opacity:0;transform:perspective(1200px) rotateY(-4deg) translateY(28px)} to{opacity:1;transform:perspective(1200px) rotateY(-4deg) translateY(0)} }

.legal-body { background:#f4f5ef;color:#17201d; }
.legal-body .nav { border-color:#d7dad3; }.legal-body nav{color:#66706a}.legal-body .brand-mark{border-color:#17201d}.legal-body .brand-mark i{border-color:#17201d}
.legal { display:grid;grid-template-columns:250px minmax(0,700px);gap:90px;padding-block:85px 120px;justify-content:center; }
.legal-aside { position:sticky;top:50px;align-self:start }.legal-aside .eyebrow{color:#737c77}.legal-aside h1{font-size:40px;letter-spacing:-.045em}.updated{font-size:12px;color:#828b86;margin-top:20px}.back{display:inline-block;margin-top:35px;font-size:13px;border-bottom:1px solid #aeb4af;padding-bottom:4px}
.legal-content section{padding:0 0 28px;margin:0 0 28px;border-bottom:1px solid #d7dad3}.legal-content h2{font-size:20px;letter-spacing:-.02em;margin-bottom:14px}.legal-content p,.legal-content li{font-size:14px;line-height:1.9;color:#56605b}.legal-content p{margin:0 0 12px}.legal-content ul{padding-left:20px;margin:10px 0}.legal-content strong{color:#17201d}.legal-note{padding:18px!important;background:#e7eadf;border:0!important;margin-bottom:34px!important}.legal-note p{margin:0;color:#46504a}
@media(max-width:800px){.shell{width:min(100% - 32px,680px)}.nav{height:76px}.nav nav a:first-child{display:none}.nav nav{gap:18px;font-size:12px}.hero{grid-template-columns:1fr;padding-block:70px;gap:65px}.dashboard{transform:none;min-height:400px}.features{grid-template-columns:1fr;gap:65px}.footer{grid-template-columns:1fr;text-align:center;padding:42px 0;gap:22px}.footer p,.footer>div{text-align:center;margin:0}.legal{grid-template-columns:1fr;gap:55px;padding-top:55px}.legal-aside{position:static}.legal-aside h1{font-size:42px}}
@media(max-width:520px){h1{font-size:54px}.lead{font-size:14px}.dashboard{padding:12px;min-height:auto}.route-card{grid-template-columns:1fr;min-height:330px}.road{min-height:220px}.route-info{border-left:0;border-top:1px solid #2a3531;padding:17px;display:grid;grid-template-columns:1fr auto;align-items:center}.route-info strong{margin:0;font-size:34px}.route-info span{grid-column:1/-1}.metrics{grid-template-columns:1fr 1fr}.metrics .status{display:none}.feature-wrap{padding:80px 0}.feature-list article{grid-template-columns:30px 1fr}.feature-list .icon{display:none}.nav .brand>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
