/* Midnight transport: homepage design, intentionally scoped to this page. */
body[data-page="home"] {
  color-scheme: dark;
  --bg:#101d30; --surface:#192b42; --card:#192b42; --ink:#f4f7fc;
  --ink-2:#d2dcec; --muted:#adbed3; --line:#30445e; --sky:#233a54;
  --sky-2:#35516c; --blue:#8bbfff; --navy:#b8d7ff; --purple:#a6baff;
  --inverse:#08111e; --deep:#214267; --grad:#3978d4; --grad-dark:#11253d;
  background:var(--bg); font-size:16px; line-height:1.65;
}
:root[data-theme="dark"] body[data-page="home"] { --bg:#080f1b; --surface:#111e30; --card:#111e30; --line:#23334a; --sky:#192c43; --sky-2:#2c4563; }
body[data-page="home"] .wrap { width:min(1240px,calc(100% - 64px)); }
body[data-page="home"] .site-header { background:color-mix(in srgb,var(--bg) 94%,transparent); border-color:var(--line); }
body[data-page="home"] .nav { height:82px; }
body[data-page="home"] .brand-mark { box-shadow:none; background:#84b6f4; color:#081727; border-radius:12px; width:42px; height:42px; }
body[data-page="home"] .nav-links a { font-size:.86rem; }
body[data-page="home"] .lang { flex-shrink:0; }
body[data-page="home"] .lang button.on { background:#2e4e74; color:#f5f8ff; }
body[data-page="home"] .btn { border-radius:9px; transition:background-color .2s,transform .2s,border-color .2s; }
body[data-page="home"] .btn-primary { background:#83b5f4; color:#081628; box-shadow:none; }
body[data-page="home"] .btn-primary:hover { background:#b0d2ff; box-shadow:none; filter:none; }
body[data-page="home"] .btn-ghost { background:transparent; border-color:#3b526e; color:#eaf2ff; }
body[data-page="home"] .hero { background:var(--bg); border-bottom:1px solid var(--line); }
body[data-page="home"] .hero::before { background:radial-gradient(ellipse at 83% 40%,#23508055,transparent 57%); }
body[data-page="home"] .hero::after { inset:auto -20% -310px 32%; height:650px; border:1px solid #7193c22b; border-radius:50%; background:none; transform:rotate(-24deg); box-shadow:0 0 0 65px #7193c208,0 0 0 130px #7193c208; mask-image:none; }
body[data-page="home"] .hero .wrap { grid-template-columns:1.18fr .82fr; gap:80px; padding:104px 0 110px; }
body[data-page="home"] .hero h1 { font-size:clamp(2.8rem,5.2vw,4.8rem); line-height:1.04; letter-spacing:-.055em; font-weight:800; max-width:720px; margin-bottom:28px; }
body[data-page="home"] .hero h1 em { color:#8dbcf6; }
body[data-page="home"] .eyebrow { font-family:inherit; color:#96b8df; font-size:.7rem; letter-spacing:.2em; margin-bottom:20px; }
body[data-page="home"] .hero p.lead { font-size:1.08rem; line-height:1.8; color:var(--muted); max-width:490px; }
body[data-page="home"] .hero-badges { gap:12px 22px; font-size:.78rem; margin-top:30px; }
body[data-page="home"] .hero-call { font-size:.85rem; margin-top:18px; }
body[data-page="home"] .quick { position:relative; background:var(--surface); border:1px solid #3e5671; border-radius:20px; padding:32px; box-shadow:0 28px 80px #0004; }
body[data-page="home"] .quick::before { content:''; position:absolute; top:-1px; left:32px; right:32px; height:2px; background:linear-gradient(90deg,transparent,#97c8ff,transparent); }
body[data-page="home"] .quick h3 { font-size:1.4rem; margin-bottom:24px; letter-spacing:-.035em; }
body[data-page="home"] .quick .seg { padding:5px; margin-bottom:26px; background:var(--bg); border:1px solid var(--line); }
body[data-page="home"] .seg button.on { background:#29486b; color:#fff; }
body[data-page="home"] .quick input { background:var(--bg); min-height:54px; border-radius:9px; }
body[data-page="home"] .quick .btn { min-height:52px; margin-top:8px; }
body[data-page="home"] .q-foot { text-align:center; font-size:.75rem; color:var(--muted); margin-top:18px; }
body[data-page="home"] .trust { background:var(--bg); border-bottom:1px solid var(--line); padding:28px 0; }
body[data-page="home"] .trust .wrap { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
body[data-page="home"] .trust-item { gap:14px; }
body[data-page="home"] .trust-item .ti { background:var(--surface); border:1px solid var(--line); border-radius:12px; color:#92bff8; }
body[data-page="home"] .trust-item b { font-size:.87rem; color:var(--ink); }
body[data-page="home"] .trust-item span { font-size:.76rem; color:var(--muted); }
body[data-page="home"] section.block { padding:92px 0; }
body[data-page="home"] .section-head { max-width:700px; margin-bottom:44px; }
body[data-page="home"] h2 { font-size:clamp(2rem,3.4vw,3rem); letter-spacing:-.045em; line-height:1.12; }
body[data-page="home"] .section-head p { max-width:560px; font-size:1rem; }
body[data-page="home"] .svc-feature { grid-template-columns:1fr; gap:28px; counter-reset:service; }
body[data-page="home"] .svc-card { display:grid; grid-template-columns:1.15fr 1fr; border-radius:20px; background:var(--surface); box-shadow:none; counter-increment:service; }
body[data-page="home"] .svc-card:hover { transform:none; box-shadow:none; border-color:#506b8b; }
body[data-page="home"] .svc-card::before { display:none; }
body[data-page="home"] .svc-art { display:flex; align-items:center; aspect-ratio:auto; border:0; border-radius:0; min-width:0; background:#0c1729; }
body[data-page="home"] .svc-art svg { width:100%; height:auto; overflow:hidden; }
body[data-page="home"] .svc-card:nth-child(2) .svc-art { order:2; }
body[data-page="home"] .svc-body { padding:42px; }
body[data-page="home"] .svc-body::before { content:'0' counter(service); position:absolute; right:30px; top:20px; color:#7897be29; font-size:3.5rem; line-height:1; font-weight:800; letter-spacing:-.06em; }
body[data-page="home"] .svc-body .tag { border:0; padding:0; background:none; color:#97bce9; font-size:.68rem; letter-spacing:.18em; margin-bottom:14px; }
body[data-page="home"] .svc-body h3 { font-size:2rem; }
body[data-page="home"] .svc-body p { font-size:.94rem; }
body[data-page="home"] .checks { gap:9px; font-size:.85rem; }
body[data-page="home"] .svc-body .btns { padding-top:8px; }
body[data-page="home"] .alt-bg { background:var(--surface); border-block:1px solid var(--line); }
body[data-page="home"] .bento { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
body[data-page="home"] .bento .card { padding:28px 24px; border-radius:16px; }
body[data-page="home"] .card.lift:hover { transform:translateY(-3px); box-shadow:none; border-color:#55779d; }
body[data-page="home"] .icon-badge { background:#203b57; color:#9bc7ff; border:1px solid #35516c; }
body[data-page="home"] .bento h3 { font-size:1.05rem; }
body[data-page="home"] .bento p { font-size:.88rem; margin-bottom:0; }
body[data-page="home"] .faq { max-width:850px; margin-inline:auto; }
body[data-page="home"] .faq details { border:1px solid var(--line); border-radius:12px; background:var(--surface); margin-bottom:12px; padding:5px 20px; }
body[data-page="home"] .faq summary { padding:18px 0; font-size:.97rem; color:var(--ink); }
body[data-page="home"] .faq .a { color:var(--muted); }
body[data-page="home"] .cta-final { background:linear-gradient(115deg,#203f62,#12253d); border:1px solid #3c5979; border-radius:24px; padding:52px; }
body[data-page="home"] .site-footer { background:#070e18; border-top:1px solid var(--line); margin-top:0; }
body[data-page="home"] .chat-fab { background:#84b6f4; color:#0b1728; box-shadow:0 8px 28px #0005; }
body[data-page="home"] .chat-fab .pulse { animation:none; }
body[data-page="home"] .svc-art svg * { animation:none; }
body[data-page="home"] .svc-art::after { animation:none; }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
 body[data-page="home"] .svc-card:hover .il-veh { animation:svc-road-vibe .85s ease-in-out infinite; }
 body[data-page="home"] .svc-card:hover #txCity,
 body[data-page="home"] .svc-card:hover .il-par { animation:svc-city-pass 3.5s linear infinite; }
 body[data-page="home"] .svc-card:hover .il-par-fast { animation:svc-city-pass .8s linear infinite; }
}
@media(max-width:1050px) {
 body[data-page="home"] .hero .wrap { gap:36px; padding-block:72px; }
 body[data-page="home"] .bento { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body[data-page="home"] .svc-body { padding:28px; }
 body[data-page="home"] .nav-links { top:82px; }
}
@media(max-width:760px) {
 body[data-page="home"] .wrap { width:calc(100% - 36px); }
 body[data-page="home"] .hero .wrap { grid-template-columns:1fr; padding-block:54px; gap:40px; }
 body[data-page="home"] .hero h1 { font-size:clamp(2.7rem,9vw,4rem); }
 body[data-page="home"] .quick { padding:25px; }
 body[data-page="home"] .trust .wrap { grid-template-columns:1fr 1fr; gap:24px 12px; }
 body[data-page="home"] section.block { padding:62px 0; }
 body[data-page="home"] .svc-card { grid-template-columns:1fr; }
 body[data-page="home"] .svc-card:nth-child(2) .svc-art { order:0; }
 body[data-page="home"] .svc-art { aspect-ratio:16 / 7; }
 body[data-page="home"] .cta-final { padding:30px; }
}
@media(max-width:420px) {
 body[data-page="home"] .bento { grid-template-columns:1fr; }
 body[data-page="home"] .nav { gap:9px; }
 body[data-page="home"] .brand { font-size:.9rem; }
 body[data-page="home"] .brand small { font-size:.55rem; }
 body[data-page="home"] .nav-tools { gap:5px; }
 body[data-page="home"] .hero-cta .btn { flex:1; padding-inline:14px; }
}
@media(prefers-reduced-motion:reduce) {
 body[data-page="home"] *,body[data-page="home"] *::before,body[data-page="home"] *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
 body[data-page="home"] .reveal { opacity:1; transform:none; }
}

/* Remade fleet illustrations */
body[data-page="home"] .svc-art .transport-scene { width:100%; height:auto; aspect-ratio:640 / 340; }
body[data-page="home"] .svc-art:has(.transport-scene) { background:#101b29; }
body[data-page="home"] .svc-art:has(.transport-scene)::after { display:none; }
@keyframes fleet-city { to { transform:translateX(-640px); } }
@keyframes fleet-road { to { transform:translateX(-100px); } }
@keyframes fleet-wheel { to { transform:rotate(360deg); } }
@keyframes fleet-suspension { 50% { transform:translateY(-.65px); } }
@media (prefers-reduced-motion:no-preference) and (hover:hover) {
 body[data-page="home"] .transport-scene .drive-city { animation:fleet-city 18s linear infinite paused; }
 body[data-page="home"] .transport-scene .drive-road { animation:fleet-road .5s linear infinite paused; }
 body[data-page="home"] .transport-scene .drive-rim { transform-box:fill-box; transform-origin:center; animation:fleet-wheel .8s linear infinite paused; }
 body[data-page="home"] .transport-scene .drive-vehicle { animation:fleet-suspension .8s ease-in-out infinite paused; }
 body[data-page="home"] .svc-card:hover .transport-scene * { animation-play-state:running; }
}
@media(max-width:760px) { body[data-page="home"] .svc-art:has(.transport-scene) { aspect-ratio:640 / 340; } }
