@font-face{font-family:Outfit;src:url(/assets/fonts/outfit-latin.woff2) format("woff2");font-weight:300 800;font-display:swap}:root{color-scheme:light dark;--bg: light-dark(#f6f8fb, #0d1518);--surface: light-dark(#ffffff, #121a24);--surface-2: light-dark(#edf1f6, #1a2430);--ink: light-dark(#081441, #e8eef6);--ink-2: light-dark(#48515e, #aeb9c6);--line: light-dark(#dee4ec, #26313d);--control-line: light-dark(#7d8999, #6b7788);--brand: #0b65dd;--brand-ink: light-dark(#0a55ba, #7db3ff);--brand-hover: light-dark(#0958c2, #2a7ae6);--brand-tint: light-dark(#e4edf7, #16263a);--on-brand: #ffffff;--route: #19c57f;--destination: #c0392b;--net: light-dark(#b3c0cf, #2c3a4a);--panel: light-dark(#081441, #0f1b3d);--on-panel: #e8eef6;--on-panel-2: rgb(232 238 246 / .72);--shadow: light-dark(rgb(8 20 65 / .4), rgb(0 0 0 / .55));--ease: cubic-bezier(.16, 1, .3, 1);--r-label: 8px;--r-control: 12px;--r-panel: 24px;--r-device: 44px;--tap: 44px;--gutter: clamp(16px, 4vw, 40px);interpolate-size:allow-keywords}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--bg);color:var(--ink);font-family:Outfit,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.08;letter-spacing:-.025em;font-weight:700;text-wrap:balance}p{text-wrap:pretty}a{color:inherit}ul,ol{margin:0;padding:0;list-style:none}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--brand);outline-offset:3px;border-radius:var(--r-label)}.sprite{position:absolute;width:0;height:0;overflow:hidden}.ic{width:1.1em;height:1.1em;fill:currentColor;flex:none}.wrap{max-width:1240px;margin-inline:auto;padding-inline:var(--gutter)}.skip{position:absolute;left:16px;top:-64px;z-index:30;display:inline-flex;align-items:center;min-height:var(--tap);padding:10px 16px;border-radius:999px;background:var(--brand);color:var(--on-brand);text-decoration:none}.skip:focus{top:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--tap);padding:12px 24px;border-radius:999px;font:inherit;font-weight:600;line-height:1.2;white-space:nowrap;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .25s var(--ease),background-color .2s,border-color .2s}.btn .ic{transition:transform .3s var(--ease)}.btn:hover .ic{transform:translate(3px)}.btn:active{transform:scale(.97)}.btn-primary{background:var(--brand);color:var(--on-brand)}.btn-primary:hover{background:var(--brand-hover)}.btn-ghost{color:var(--ink);border-color:var(--control-line);background:var(--surface)}.btn-ghost:hover{border-color:var(--ink)}.btn-sm{padding-inline:18px;font-size:.95rem}.btn-lg{min-height:56px;padding-inline:30px;font-size:1.125rem}.icon-btn{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);flex:none;border-radius:999px;border:1px solid var(--control-line);background:var(--surface);color:var(--ink);cursor:pointer;transition:border-color .2s,transform .25s var(--ease)}.icon-btn:hover{border-color:var(--ink)}.icon-btn:active{transform:scale(.94)}.icon-btn .ic{width:20px;height:20px}.site-header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid transparent}.nav{display:flex;align-items:center;gap:32px;height:72px}.brand{display:inline-flex;align-items:center;min-height:var(--tap)}.brand img{height:44px;width:auto}.nav-links{display:flex;gap:8px;margin-left:auto}.nav-links a{display:inline-flex;align-items:center;min-height:var(--tap);padding-inline:12px;text-decoration:none;color:var(--ink-2);font-weight:500;transition:color .2s}.nav-links a:hover{color:var(--ink)}.nav-actions{display:flex;align-items:center;gap:12px}@media(max-width:767px){.nav{gap:12px;height:64px}.nav-links{display:none}.nav-actions{margin-left:auto}.brand img{height:38px}}.theme-toggle .ic-sun{display:none}:root[data-rendered-theme=dark] .theme-toggle .ic-sun{display:block}:root[data-rendered-theme=dark] .theme-toggle .ic-moon{display:none}.hero{padding-block:clamp(24px,5vw,64px) clamp(48px,7vw,96px);overflow:clip}.hero-grid{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:clamp(24px,4vw,64px);min-height:min(calc(100dvh - 168px),680px)}.eyebrow{font-size:1rem;font-weight:500;color:var(--ink-2);margin-bottom:16px}.hero-title{font-size:clamp(3.25rem,8.2vw,6.5rem);line-height:1;letter-spacing:-.045em;font-weight:750}.hero-title .line{display:block;overflow:clip;padding-bottom:.08em}.hero-title .line>span{display:block}.hero-title em{font-style:normal;color:light-dark(var(--brand),var(--brand-ink))}.hero-sub{margin-top:24px;max-width:34ch;font-size:clamp(1.125rem,1.6vw,1.3rem);color:var(--ink-2)}.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}.hero-stage{position:relative;display:grid;align-items:center;justify-items:start;min-height:600px}.net{position:absolute;top:50%;left:22%;width:100%;height:auto;translate:0 -50%;overflow:hidden}.net path,.trip-map path{fill:none;stroke-linecap:round;stroke-linejoin:round}.net-base path{stroke:var(--net);stroke-width:2.2}.net-hero{stroke:var(--route);stroke-width:6}.pin{stroke:var(--bg);stroke-width:4;transform-box:fill-box;transform-origin:center}.pin-a{fill:var(--brand)}.pin-b{fill:var(--destination)}.phone{margin:0;position:relative;border-radius:var(--r-device);padding:10px;background:#0d1420;box-shadow:0 0 0 1px #ffffff0f inset,0 40px 80px -30px var(--shadow)}.phone img{border-radius:34px;width:100%}.hero-phone{width:clamp(230px,20vw,290px)}@media(max-width:899px){.hero-grid{grid-template-columns:1fr;min-height:0}.hero-stage{min-height:0;padding-block:24px}.net{left:30%;width:90%}.hero-phone{width:min(240px,58vw)}}.places{padding-block:20px 24px;border-block:1px solid var(--line);background:var(--surface)}.places-head{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:16px}.places-title{font-size:1rem;font-weight:500;letter-spacing:0;color:var(--ink-2)}.marquee{display:flex;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.marquee-track{display:flex;flex:none;gap:12px;padding-right:12px}.marquee-track li{padding:10px 18px;border-radius:var(--r-label);white-space:nowrap;background:var(--surface-2);font-weight:500}.marquee-toggle .ic-play{display:none}.places[data-paused] .marquee-toggle .ic-play{display:block}.places[data-paused] .marquee-toggle .ic-pause{display:none}@media(max-width:599px){.places-head{justify-content:space-between;text-align:left}}.section{padding-block:clamp(72px,10vw,144px)}.section-title{font-size:clamp(2.25rem,5vw,4rem);letter-spacing:-.035em;max-width:18ch}.steps-section{padding-bottom:clamp(24px,4vw,48px)}.steps{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px);margin-top:48px}.steps-phone-col{position:relative}.steps-phone{position:sticky;top:max(96px,calc(50dvh - 340px));width:min(300px,100%,calc((100dvh - 120px)*.45));margin-inline:auto}.steps-phone .shot{display:block}.steps-phone .shot+.shot{position:absolute;inset:10px}.steps-phone .shot img{transition:opacity .6s var(--ease),transform .6s var(--ease)}.steps-phone .shot:not(:first-child) img{opacity:0;transform:scale(.98)}.steps-phone[data-active="2"] .shot:first-child img,.steps-phone[data-active="3"] .shot:first-child img{opacity:0}.steps-phone[data-active="2"] [data-shot="2"] img,.steps-phone[data-active="3"] [data-shot="3"] img{opacity:1;transform:none}.steps-list{display:grid}.step{min-height:72dvh;display:flex;flex-direction:column;justify-content:center;gap:16px;transition:opacity .5s var(--ease)}.steps[data-enhanced] .step:not(.is-active){opacity:.32}.step h3{font-size:clamp(1.75rem,3vw,2.5rem)}.step p{color:var(--ink-2);max-width:36ch;font-size:1.15rem}.step-inline{display:none}.marker{display:block;width:28px;height:28px;flex:none;border-radius:999px}.marker-origin{border:5px solid var(--route)}.marker-destination{background:var(--destination);box-shadow:0 0 0 5px color-mix(in srgb,var(--destination) 22%,transparent)}.marker-route{width:56px;height:8px;border-radius:999px;background:var(--route);margin-block:10px}@media(max-width:899px){.steps{grid-template-columns:1fr;margin-top:24px}.steps-phone-col{display:none}.step{min-height:0;padding-block:40px}.steps[data-enhanced] .step:not(.is-active){opacity:1}.step-inline{display:block;width:min(260px,72vw);margin-top:16px}}.features-top{display:grid;grid-template-columns:7fr 5fr;gap:16px;margin-top:48px}.panel{position:relative;overflow:hidden;border-radius:var(--r-panel);padding:clamp(24px,3vw,40px);display:flex;flex-direction:column;gap:12px}.panel h3,.routine-copy h3,.feature h3{font-size:clamp(1.4rem,2.2vw,1.85rem)}.feature-ic{width:28px;height:28px;fill:currentColor;margin-bottom:8px}.panel-routes{background:var(--panel);color:var(--on-panel)}.panel-routes p{color:var(--on-panel-2);max-width:42ch}.panel-routes .feature-ic{fill:var(--route)}.panel-routes .big{display:block;font-size:clamp(4.5rem,10vw,8rem);line-height:.9;letter-spacing:-.05em;color:var(--route)}.codes{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:24px}.codes li{padding:6px 12px;border-radius:var(--r-label);font-weight:600;font-size:.95rem;font-variant-numeric:tabular-nums;background:#ffffff14;border:1px solid rgb(255 255 255 / .12)}.panel-fare{background:var(--brand-tint)}.fare{display:flex;overflow:clip;margin-block:auto 8px;padding-top:24px;font-size:clamp(4rem,8vw,6.5rem);font-weight:700;line-height:1;letter-spacing:-.05em;color:var(--ink);font-variant-numeric:tabular-nums}.fare-sign{font-size:.5em;margin-top:.15em;margin-right:.08em;color:var(--brand-ink)}.fare [data-fare-value]{display:inline-block}.segmented{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:var(--r-control);background:var(--surface);align-self:flex-start}.segmented button{min-height:var(--tap);padding-inline:16px;border-radius:var(--r-label);border:0;background:transparent;font:inherit;font-weight:500;font-size:.95rem;color:var(--ink-2);cursor:pointer;transition:background-color .25s var(--ease),color .25s}.segmented button[aria-pressed=true]{background:var(--brand);color:var(--on-brand)}.segmented button:active{transform:scale(.97)}.fine{font-size:.9rem;color:var(--ink-2)}.routine{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:24px clamp(32px,6vw,96px);margin-top:clamp(56px,7vw,96px);padding-bottom:clamp(40px,5vw,64px);border-bottom:1px solid var(--line)}.routine-copy{display:flex;flex-direction:column;gap:12px}.routine-copy p,.feature p{color:var(--ink-2);max-width:42ch}.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;max-width:440px}.week span{text-align:center;padding:8px 0;border-radius:var(--r-label);font-size:.95rem;font-weight:500;color:var(--ink-2);border:1px solid var(--line)}.week .on{background:var(--brand-tint);color:var(--brand-ink);border-color:transparent}.calc{display:grid;gap:4px;margin-top:20px}.calc-label{font-size:.95rem;color:var(--ink-2)}.calc-total{font-size:clamp(2rem,4vw,2.75rem);font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.features-list{display:grid;grid-template-columns:1fr 1fr;gap:32px clamp(32px,6vw,96px);padding-top:clamp(40px,5vw,64px)}.feature{display:flex;flex-direction:column;gap:10px}@media(max-width:899px){.features-top,.routine,.features-list{grid-template-columns:1fr}}.manifesto{text-align:center}.manifesto-text{font-size:clamp(1.9rem,4.6vw,3.75rem);font-weight:600;line-height:1.15;letter-spacing:-.03em;max-width:24ch;margin-inline:auto}.manifesto-text span:first-child{color:var(--brand-ink)}.faq-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(24px,6vw,96px);align-items:start}.faq-title{position:sticky;top:112px}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:24px;cursor:pointer;list-style:none;font-size:clamp(1.15rem,1.8vw,1.35rem);font-weight:600;letter-spacing:-.01em}.faq summary::-webkit-details-marker{display:none}.faq summary .ic{width:36px;height:36px;padding:9px;border-radius:999px;background:var(--surface-2);transition:transform .4s var(--ease),background-color .2s}.faq summary:hover .ic{background:var(--line)}.faq details[open] summary .ic{transform:rotate(45deg);background:var(--ink);fill:var(--bg)}.faq details p{padding-bottom:24px;color:var(--ink-2);max-width:60ch}@media(max-width:899px){.faq-grid{grid-template-columns:1fr}.faq-title{position:static}}.closing{padding-top:0}.closing-card{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:32px clamp(32px,6vw,80px);border-radius:var(--r-panel);padding:clamp(28px,6vw,80px);background:var(--panel);color:var(--on-panel)}.closing-card h2{font-size:clamp(2.5rem,6vw,5rem);letter-spacing:-.045em}.closing-card p{margin:16px 0 36px;color:var(--on-panel-2);font-size:1.2rem}.trip-map{margin:0}.trip-map svg{display:block;width:100%;aspect-ratio:4 / 3;border-radius:var(--r-control);background:#ffffff0a;border:1px solid rgb(255 255 255 / .1)}.trip-context path{stroke:#e8eef633;stroke-width:1.6}.trip-line{stroke:var(--route);stroke-width:6}.trip-pin circle{stroke:var(--on-panel);stroke-width:3}.trip-pin-a circle{fill:var(--brand)}.trip-pin-b circle{fill:var(--destination)}.trip-pin text{fill:#fff;font-size:14px;font-weight:700;text-anchor:middle;dominant-baseline:central}.trip-map figcaption{margin-top:12px;font-size:.95rem;color:var(--on-panel-2)}@media(max-width:767px){.closing-card{grid-template-columns:1fr}}.site-footer{padding-block:48px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:16px 48px}.footer-logo{height:48px;width:auto}.footer-links{display:flex;flex-wrap:wrap;gap:8px 24px;justify-self:end}.footer-links a{display:inline-flex;align-items:center;gap:6px;min-height:var(--tap);text-decoration:none;font-weight:500;color:var(--ink-2)}.footer-links a:hover{color:var(--ink)}.footer-note{grid-column:1 / -1;color:var(--ink-2);font-size:.95rem}.footer-note a{color:var(--brand-ink)}@media(max-width:599px){.footer-grid{grid-template-columns:1fr}.footer-links{justify-self:start}}.social{display:flex;gap:8px}.footer-links .social a{justify-content:center;gap:0;color:var(--ink)}@keyframes rise{0%{opacity:0;transform:translateY(105%)}}@keyframes fade-up{0%{opacity:0;translate:0 24px}}@keyframes draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes pop{0%{transform:scale(0)}70%{transform:scale(1.25)}}@keyframes phone-in{0%{opacity:0;translate:0 64px;rotate:4deg}}@keyframes marquee{to{transform:translate(-100%)}}@keyframes solidify{to{border-bottom-color:var(--line)}}@keyframes brighten{0%{opacity:.25}}@media(prefers-reduced-motion:no-preference){.hero-title .line>span{animation:rise 1s var(--ease) both}.hero-title .line:nth-child(2)>span{animation-delay:.08s}.eyebrow,.hero-sub,.hero-cta{animation:fade-up .9s var(--ease) both}.hero-sub{animation-delay:.2s}.hero-cta{animation-delay:.3s}.net path,.trip-line{stroke-dasharray:1}.net-base path{animation:draw 2.4s var(--ease) both}.net-base path:nth-child(4n+2){animation-delay:.15s}.net-base path:nth-child(4n+3){animation-delay:.3s}.net-base path:nth-child(4n+4){animation-delay:.45s}.net-hero{animation:draw 1.8s cubic-bezier(.65,0,.35,1) 1s both}.net .pin{animation:pop .6s var(--ease) both}.net .pin-a{animation-delay:.9s}.net .pin-b{animation-delay:2.7s}.hero-phone{animation:phone-in 1.2s var(--ease) .35s both}.marquee-track{animation:marquee 60s linear infinite}.marquee:hover .marquee-track,.places[data-paused] .marquee-track{animation-play-state:paused}.faq details::details-content{block-size:0;overflow:clip;transition:block-size .45s var(--ease),content-visibility .45s allow-discrete}.faq details[open]::details-content{block-size:auto}@supports (animation-timeline: view()){.site-header{animation:solidify linear both;animation-timeline:scroll();animation-range:0 120px}.manifesto-text span{animation:brighten linear both;animation-timeline:view()}.manifesto-text span:nth-child(1){animation-range:entry 0% entry 70%}.manifesto-text span:nth-child(2){animation-range:entry 15% entry 85%}.manifesto-text span:nth-child(3){animation-range:entry 30% entry 100%}.trip-line{animation:draw linear both;animation-timeline:view();animation-range:entry 20% cover 45%}}}@media not (prefers-reduced-motion:no-preference){.marquee{mask-image:none}.marquee-track{flex-wrap:wrap;justify-content:center;flex:1;padding-inline:var(--gutter)}.marquee-track[aria-hidden],.marquee-toggle{display:none}}@supports not (animation-timeline: scroll()){.site-header{border-bottom-color:var(--line)}}
