.route-track{--rider:72px;--route-bg:var(--apar-soft);position:relative;margin-top:120px;color:var(--apar-ink)}.route-line{top:26px;left:0;right:0;height:4px;background:repeating-linear-gradient(90deg,#c8cbd3 0 22px,transparent 22px 36px)}.route-line,.route-line span{position:absolute;border-radius:4px}.route-line span{inset:0 auto 0 0;width:calc(var(--p) * 100%);background:var(--apar-ink)}.route-rider{position:absolute;z-index:3;top:calc(28px - var(--rider));left:calc(var(--p) * (100% - var(--rider)));width:var(--rider);height:var(--rider)}.route-rider .apar-mascot{width:100%;height:100%}@media (prefers-reduced-motion:no-preference){.route-rider .apar-mascot-body{animation:apar-ride 1.4s ease-in-out infinite}}@keyframes apar-ride{0%,to{transform:rotate(-9deg)}50%{transform:translateY(-3px) rotate(-6deg)}}.route-steps{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.route-steps li{--reach:clamp(0,(var(--p) - var(--at)) * 10,1)}.route-stop{position:relative;z-index:2;display:grid;place-items:center;width:56px;height:56px;border-radius:999px;font-size:15px;font-weight:800;background:color-mix(in srgb,var(--apar-ink) calc(var(--reach) * 100%),#fff);color:color-mix(in srgb,#fff calc(var(--reach) * 100%),var(--apar-ink));box-shadow:0 0 0 6px var(--route-bg)}.route-card{margin-top:26px;padding:30px;border-radius:32px;background:#fff;opacity:calc(.55 + var(--reach) * .45);transform:translateY(calc((1 - var(--reach)) * 12px));transition:opacity .2s,transform .2s}.route-card>svg+h3{margin-top:22px}.route-card h3{font-size:22px;line-height:1.2;font-weight:700;letter-spacing:-.02em}.route-card p{margin-top:10px;font-size:16px;line-height:1.6;color:var(--apar-muted)}@media (max-width:860px){.route-track{margin-top:40px}.route-line{top:0;bottom:0;left:26px;right:auto;width:4px;height:auto;background:repeating-linear-gradient(180deg,#c8cbd3 0 18px,transparent 18px 30px)}.route-line span{inset:0 0 auto 0;width:auto;height:calc(var(--p) * 100%)}.route-rider{display:none}.route-steps{grid-template-columns:1fr;gap:14px}.route-steps li{display:grid;grid-template-columns:56px 1fr;gap:14px;align-items:start}.route-card{margin-top:0;padding:22px;border-radius:26px}.route-card>svg+h3{margin-top:14px}.route-card h3{font-size:19px}.route-card p{font-size:15px}}@media (prefers-reduced-motion:reduce){.route-card{transition:none}}