html{scroll-behavior:smooth;scroll-padding-top:5rem}.landing-glow{position:absolute;border-radius:9999px;filter:blur(72px);pointer-events:none;background:color-mix(in srgb,var(--primary) 22%,transparent)}.landing-grid{background-image:linear-gradient(to right,color-mix(in srgb,var(--outline-variant) 35%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--outline-variant) 35%,transparent) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%)}.phone{position:relative;width:300px;max-width:100%;aspect-ratio:300 / 620;border-radius:3rem;padding:10px;background:linear-gradient(145deg,#2a3138,#0c0f10);box-shadow:0 0 0 1px color-mix(in srgb,var(--outline) 40%,transparent),0 40px 80px -24px #0c0f1073,0 18px 36px -18px color-mix(in srgb,var(--primary) 45%,transparent)}.phone-screen{position:relative;height:100%;border-radius:2.4rem;overflow:hidden;background:var(--surface-container);display:flex;flex-direction:column}.phone-notch{position:absolute;top:8px;left:50%;transform:translate(-50%);width:88px;height:24px;border-radius:9999px;background:#0c0f10;z-index:5}.phone [data-route]{display:none}.phone[data-mode=shortest] [data-route=shortest],.phone[data-mode=coolest] [data-route=coolest],.phone[data-mode=accessible] [data-route=accessible]{display:inline}.mode-btn{background:var(--surface-container);color:var(--on-surface-variant)}.mode-btn:hover{background:var(--surface-container-high)}.mode-btn[aria-pressed=true]{background:var(--primary-container);color:var(--on-primary-container);box-shadow:inset 0 0 0 1.5px var(--primary)}.route-line{stroke-dasharray:10 7;animation:routeFlow 1.1s linear infinite}@keyframes routeFlow{to{stroke-dashoffset:-34}}.you-pulse{transform-box:fill-box;transform-origin:center;animation:youPulse 2.2s ease-out infinite}@keyframes youPulse{0%{transform:scale(.6);opacity:.7}to{transform:scale(2.2);opacity:0}}.float-card{animation:floatY 6s ease-in-out infinite}.float-card.delay{animation-delay:-3s}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}html.reveal-ready [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}html.reveal-ready [data-reveal].is-visible{opacity:1;transform:none}.faq summary{list-style:none;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq .faq-chevron{transition:transform .2s var(--ease)}.faq[open] .faq-chevron{transform:rotate(180deg)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.route-line,.you-pulse,.float-card{animation:none}}
