.dir-d{--paper:#eef0e8;--concrete:#cdd5c8;--concrete-dark:#7b887d;--ink:#13261c;--ink-land:#24392d;--white:#fff;--sf:#3a7352;--accent:#1f7a4c;--accent-text:var(--accent);--on-accent:var(--white);--accent-dark:#74cf9b;--f-display:var(--font-display), sans-serif;--f-body:var(--font-body), Georgia, serif;background:var(--paper);color:var(--ink);font-family:var(--f-body);min-height:100vh;font-size:18px;line-height:1.55}body:has(.dir-d){background:#eef0e8}.dir-d{--gutter:16px}.dir-d main{max-width:none}.dir-d a{color:var(--ink)}.dir-d section{padding:56px var(--gutter)}.dir-d h2{font-family:var(--f-display);letter-spacing:-.01em;margin-bottom:16px;font-size:clamp(40px,11vw,88px);font-weight:800;font-stretch:75%;line-height:.9}.dir-d .intro{max-width:560px;margin-bottom:32px}.dir-d .placeholder{font-family:var(--f-display);color:var(--concrete-dark);font-size:12px}.dir-d .topbar{font-family:var(--f-display);justify-content:space-between;align-items:baseline;padding:14px 16px;font-size:15px;font-weight:700;display:flex}.dir-d .topbar a{color:var(--accent-text)}.dir-d .hero{padding:0}.dir-d .cities{grid-template-columns:1fr 1fr;display:grid}.dir-d .city{aspect-ratio:3/4;position:relative}.dir-d .photo{background:var(--concrete);height:100%;margin:0}.dir-d .photo img{object-fit:cover;width:100%;height:100%}.dir-d .photo figcaption{display:none}.dir-d .city-sf .photo{border-bottom:10px solid var(--sf)}.dir-d .city-sp .photo{border-bottom:10px solid var(--accent)}.dir-d .city-code{font-family:var(--f-display);font-size:32px;font-weight:800;font-stretch:75%;line-height:1;position:absolute;top:10px;left:12px}.dir-d .city-sf .city-code{color:var(--sf)}.dir-d .city-sp .city-code{color:var(--white)}.dir-d .hero-body{padding:28px 16px 56px}.dir-d .greet{font-size:20px;font-style:italic}.dir-d .count{font-family:var(--f-display);letter-spacing:-.02em;color:var(--accent-text);font-variant-numeric:tabular-nums;margin-top:4px;font-size:clamp(110px,38vw,260px);font-weight:900;font-stretch:62.5%;line-height:.85;display:block}.dir-d .count-label{font-family:var(--f-display);margin-top:8px;font-size:22px;font-weight:700}.dir-d .hero-body h1{font-family:var(--f-display);color:var(--sf);margin:32px 0 14px;font-size:clamp(36px,9vw,60px);font-weight:800;font-stretch:75%;line-height:.95}.dir-d .lede{max-width:540px;margin-bottom:24px}.dir-d .cta{background:var(--ink);color:var(--paper);font-family:var(--f-display);padding:16px 26px;font-size:18px;font-weight:700;text-decoration:none;display:inline-block}.dir-d .cta-note{margin-top:10px;font-size:15px;font-style:italic}.dir-d .today{background:var(--ink);color:var(--paper)}.dir-d .today-grid{gap:40px;margin-bottom:56px;display:grid}.dir-d .dm{margin:0}.dir-d .dm svg{width:100%;height:auto;display:block}.dir-d .dm-land{fill:var(--ink-land)}.dir-d .dm-route{fill:none;stroke:var(--sf);stroke-width:3px;stroke-dasharray:10 8;stroke-linejoin:round}.dir-d .dm-nonstop{fill:none;stroke:var(--accent);stroke-width:9px;stroke-dasharray:1 1}.dir-d .dm.is-waiting .dm-nonstop{stroke-dashoffset:1px}.dir-d .dm.is-drawing .dm-nonstop{stroke-dashoffset:0;transition:stroke-dashoffset 1.8s ease-in-out}.dir-d .dm circle{fill:var(--paper)}.dir-d .dm-end circle{fill:var(--accent)}.dir-d .dm text{paint-order:stroke;stroke:var(--ink-land);stroke-width:8px;stroke-linejoin:round;font-family:var(--f-display);fill:var(--paper);font-size:34px;font-weight:800;font-stretch:75%}.dir-d .dm-end text{font-size:44px}.dir-d .dm .dm-time{fill:var(--concrete);font-size:26px;font-weight:600;font-stretch:100%}.dir-d .dm .dm-nonstop-label{fill:var(--accent);font-size:36px}.dir-d .dm figcaption{color:var(--concrete);margin-top:10px;font-size:15px;font-style:italic}.dir-d .today-grid .pains{margin-top:0}.dir-d .legs{margin:0;padding:0;list-style:none}.dir-d .legs li{border-top:1px solid var(--concrete-dark);padding:18px 0}.dir-d .leg-line{font-family:var(--f-display);align-items:center;gap:10px;font-size:34px;font-weight:800;font-stretch:75%;line-height:1;display:flex}.dir-d .leg-line .end{flex:none}.dir-d .leg-line .stop{text-align:center;color:var(--sf);flex:1;position:relative}.dir-d .leg-line .stop:before,.dir-d .leg-line .stop:after{content:"";border-top:2px dashed var(--concrete-dark);width:calc(50% - 40px);position:absolute;top:50%}.dir-d .leg-line .stop:before{left:0}.dir-d .leg-line .stop:after{right:0}.dir-d .leg-nonstop .leg-line{color:var(--accent-text)}.dir-d .leg-nonstop .leg-line:after{content:"";border-top:4px solid var(--accent);flex:1;order:1}.dir-d .leg-nonstop .leg-line .end:last-child{order:2}.dir-d .leg-meta{color:var(--concrete);margin-top:8px;font-size:14px;display:block}.dir-d .pains{gap:22px;max-width:820px;margin-top:48px;display:grid}.dir-d .pains p{grid-template-columns:48px 1fr;font-size:20px;display:grid}.dir-d .pain-n{font-family:var(--f-display);color:var(--sf);font-size:40px;font-weight:900;line-height:1}.dir-d .pledge{background:var(--concrete)}.dir-d .pf{background:var(--paper);border-top:8px solid var(--accent);padding:20px 16px 24px}.dir-d .pf-fields{gap:22px;display:grid}.dir-d .pf-field,.dir-d .pf-field-inner,.dir-d .pf-grid-cell{gap:6px;display:grid}.dir-d .pf-hours{border-left:4px solid var(--sf);padding-left:12px;font-size:19px;font-style:italic;line-height:1.35}.dir-d .pf-hours:empty{display:none}.dir-d .pf-hours strong{font-family:var(--f-display);color:var(--accent-text);font-variant-numeric:tabular-nums;font-size:30px;font-style:normal;font-weight:900;font-stretch:75%;line-height:1}.dir-d .pf-label{font-family:var(--f-display);padding:0;font-size:16px;font-weight:600;line-height:1.3}.dir-d .pf-hint{color:var(--concrete-dark);font-size:14px;font-style:italic}.dir-d input:not([type=checkbox]):not([type=radio]),.dir-d textarea{border:0;border-bottom:2px solid var(--ink);background:0 0;border-radius:0;width:100%;padding:10px 0;font-size:20px}.dir-d input[type=number]{font-family:var(--f-display);font-size:28px;font-weight:700}.dir-d textarea{border:2px solid var(--ink);padding:10px;font-size:17px}.dir-d input:focus,.dir-d textarea:focus{border-color:var(--accent-text);outline:none}.dir-d fieldset{border:0;margin:0;padding:0}.dir-d .pf-choice-row{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.dir-d .pf-option input{opacity:0;position:absolute}.dir-d .pf-option span{border:2px solid var(--ink);font-family:var(--f-display);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:15px;display:inline-block}.dir-d .pf-option input:checked+span{background:var(--ink);color:var(--paper)}.dir-d .pf-option input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.dir-d .pf-grid{grid-template-columns:1fr 1fr;gap:14px 20px;display:grid}.dir-d .pf-grid legend{margin-bottom:10px}.dir-d .pf-grid-cell span{font-size:14px}.dir-d .pf-private{border-left:4px solid var(--sf);padding-left:14px;font-size:16px;font-style:italic}.dir-d .pf-add-company{border-top:2px solid var(--ink);margin-top:32px;padding-top:24px}.dir-d .pf-company{border-top:6px solid var(--sf);margin-top:28px;padding-top:20px}.dir-d .pf-subtitle{font-family:var(--f-display);margin-bottom:14px;font-size:36px;font-weight:800;font-stretch:75%;line-height:.95}.dir-d .pf-private{margin-bottom:22px}.dir-d .pf-consent{align-items:flex-start;gap:10px;margin:28px 0 20px;font-size:15px;display:flex}.dir-d .pf-consent input{accent-color:var(--accent-text);margin-top:5px}.dir-d .pf-submit{background:var(--accent);width:100%;color:var(--on-accent);font-family:var(--f-display);cursor:pointer;border:0;padding:18px;font-size:20px;font-weight:800}.dir-d .pf-note{margin-top:10px;font-size:14px;font-style:italic}.dir-d .pf-thanks{gap:10px;font-size:19px;display:grid}.dir-d .pf-thanks-title{font-family:var(--f-display);color:var(--accent-text);font-size:64px;font-weight:900;font-stretch:75%;line-height:1}.dir-d .pf-mock{font-family:var(--f-display);color:var(--concrete-dark);font-size:12px}.dir-d .mp{gap:28px;margin-top:14px;display:grid}.dir-d .mp-pass{background:linear-gradient(to right, var(--sf) 50%, var(--accent) 50%) bottom / 100% 10px no-repeat, var(--paper);padding-bottom:10px}.dir-d .mp-top{background:var(--ink);color:var(--paper);font-family:var(--f-display);justify-content:space-between;padding:12px 16px;font-size:14px;font-weight:700;display:flex}.dir-d .mp-top span:last-child{font-family:var(--f-body);font-style:italic;font-weight:400}.dir-d .mp-route{border-bottom:2px solid var(--ink);grid-template-columns:minmax(0,auto) 1fr auto;align-items:end;gap:12px;margin:0 16px;padding:20px 0 18px;display:grid}.dir-d .mp-from,.dir-d .mp-to{min-width:0;display:grid}.dir-d .mp-to{text-align:right}.dir-d .mp-k,.dir-d .mp-sub{font-size:15px;font-style:italic}.dir-d .mp-to .mp-k{display:none}.dir-d .mp-to .mp-sub{order:-1}.dir-d .mp-city,.dir-d .mp-code{font-family:var(--f-display);overflow-wrap:anywhere;font-size:clamp(40px,12vw,76px);font-weight:800;font-stretch:75%;line-height:.9}.dir-d .mp-city{color:var(--sf)}.dir-d .mp-code{color:var(--accent-text)}.dir-d .mp-line{background:var(--accent);min-width:20px;height:5px;margin-bottom:12px}.dir-d .mp-fields{grid-template-columns:1fr 1fr;gap:16px 20px;margin:0;padding:18px 16px 22px;display:grid}.dir-d .mp-field{flex-direction:column-reverse;justify-content:flex-end;display:flex}.dir-d .mp-field dt{font-family:var(--f-display);margin-top:6px;font-size:14px;font-weight:600;line-height:1.25}.dir-d .mp-field dd{margin:0}.dir-d .mp-trips dd,.dir-d .mp-hours dd{font-family:var(--f-display);font-variant-numeric:tabular-nums;font-size:84px;font-weight:900;font-stretch:62.5%;line-height:.85}.dir-d .mp-trips dd{color:var(--accent-text)}.dir-d .mp-hours dd{color:var(--sf)}.dir-d .mp-passenger{flex-direction:column;grid-column:1/-1}.dir-d .mp-passenger dt{font-family:var(--f-body);margin:0;font-style:italic;font-weight:400}.dir-d .mp-passenger dd{font-family:var(--f-display);font-size:14px;font-weight:600}.dir-d .mp-generic{font-family:var(--f-display);padding:18px 16px 22px;font-size:48px;font-weight:800;font-stretch:75%;line-height:.95}.dir-d .mp-share-title{font-family:var(--f-display);font-size:40px;font-weight:800;font-stretch:75%;line-height:.95}.dir-d .mp-share-intro{margin:8px 0 16px}.dir-d .mp-buttons{flex-wrap:wrap;gap:8px;display:flex}.dir-d .mp-btn{border:2px solid var(--ink);color:var(--ink);font-family:var(--f-display);padding:13px 18px;font-size:16px;font-weight:700;text-decoration:none;display:inline-block}.dir-d .mp-btn-main{background:var(--accent);border-color:var(--accent-text);color:var(--on-accent)}.dir-d .story-list{gap:32px;display:grid}.dir-d .stories blockquote{border-top:6px solid var(--sf);margin:0;padding-top:14px}.dir-d .stories blockquote:nth-child(2){border-top-color:var(--accent-text)}.dir-d .stories blockquote:nth-child(3){border-top-color:var(--ink)}.dir-d .stories blockquote p{font-size:24px;line-height:1.3}.dir-d .stories cite{font-style:normal;font-family:var(--f-display);margin-top:10px;font-size:14px;display:block}.dir-d .faq-wrap{border-top:2px solid var(--ink)}.dir-d .faq-item{border-bottom:1px solid var(--concrete-dark);max-width:760px}.dir-d .faq-item summary{font-family:var(--f-display);padding:18px 0;font-size:22px;font-weight:700}.dir-d .faq-item summary::marker{color:var(--accent-text)}.dir-d .faq-item p{padding:0 0 20px}.dir-d .footer{background:var(--ink);color:var(--concrete);gap:6px;padding:40px 16px 56px;font-size:15px;display:grid}.dir-d .footer a{color:var(--paper)}.dir-d .footer-name{font-family:var(--f-display);color:var(--paper);font-size:22px;font-weight:800}.dir-d .footer-links{flex-wrap:wrap;gap:16px;display:flex}.dir-d .footer-credit{font-size:13px}@media (min-width:860px){.dir-d{--gutter:max(40px, calc((100vw - 1120px) / 2))}.dir-d section{padding:96px var(--gutter)}.dir-d .topbar{padding:18px var(--gutter)}.dir-d .hero{grid-template-columns:1fr 1fr;padding:0;display:grid}.dir-d .cities{order:2}.dir-d .city{aspect-ratio:auto;min-height:640px}.dir-d .hero-body{padding:40px 40px 40px var(--gutter)}.dir-d .leg-line{font-size:56px}.dir-d .today-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:64px;margin-bottom:72px}.dir-d .leg-line .stop:before,.dir-d .leg-line .stop:after{width:calc(50% - 64px)}.dir-d .pledge{grid-template-columns:1fr 1.4fr;align-items:start;gap:48px;display:grid}.dir-d .pf{padding:32px 32px 36px}.dir-d .pf-grid{grid-template-columns:repeat(4,1fr)}.dir-d .story-list{grid-template-columns:1.4fr 1fr 1fr;gap:40px}.dir-d .stories blockquote:first-child p{font-size:32px}.dir-d .footer{padding:56px var(--gutter) 72px}}.dir-d .rp{z-index:20;background:var(--paper);border-bottom:1px solid var(--concrete);position:sticky;top:0}.dir-d .rp-row{padding:10px var(--gutter) 6px;justify-content:space-between;align-items:center;display:flex}.dir-d .rp .brand{font-family:var(--f-display);font-size:16px;font-weight:800}.dir-d .rp-cta{background:var(--accent);color:var(--on-accent);font-family:var(--f-display);padding:8px 12px;font-size:14px;font-weight:700;text-decoration:none}.dir-d .rp-route{padding:0 var(--gutter) 8px;align-items:center;gap:8px;display:flex}.dir-d .rp-code{font-family:var(--f-display);font-size:13px;font-weight:800;font-stretch:75%;line-height:1}.dir-d .rp-code:first-child{color:var(--sf)}.dir-d .rp-code:last-child{color:var(--accent-text)}.dir-d .rp-track{--p:0;background:repeating-linear-gradient(to right, var(--concrete-dark) 0 5px, transparent 5px 10px);flex:1;height:2px;position:relative}.dir-d .rp-fill{width:calc(var(--p) * 100%);background:var(--accent);position:absolute;inset:0 auto 0 0}.dir-d .rp-dot{top:50%;left:calc(var(--p) * 100%);background:var(--accent);border-radius:50%;width:9px;height:9px;position:absolute;transform:translate(-50%,-50%)}.dir-d section{scroll-margin-top:70px}.dir-d .city .photo{overflow:hidden}.dir-d .city img{animation:26s ease-in-out infinite alternate d-drift-sf}.dir-d .city-sp img{animation-name:d-drift-sp}@keyframes d-drift-sf{0%{transform:scale(1.04)translate(0)}to{transform:scale(1.14)translate(2%,-3%)}}@keyframes d-drift-sp{0%{transform:scale(1.14)translate(-2%,2%)}to{transform:scale(1.04)translate(0)}}@media (prefers-reduced-motion:reduce){.dir-d .city img{animation:none}}.dir-d .hero-body{padding-bottom:40px}.dir-d .hero-body h1{color:var(--ink);margin:10px 0 18px;font-size:clamp(50px,14vw,96px);line-height:.88}.dir-d .hero-body h1+.lede{font-size:19px}.dir-d .count-wrap{padding-top:0}.dir-d .pass{background:var(--white);border:2px solid var(--ink);max-width:880px}.dir-d .pass-top{background:var(--ink);color:var(--paper);font-family:var(--f-display);justify-content:space-between;padding:10px 16px;font-size:13px;font-weight:700;display:flex}.dir-d .pass-route{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:20px 16px;display:grid}.dir-d .pass-route .code{font-family:var(--f-display);color:var(--sf);font-size:clamp(60px,18vw,104px);font-weight:800;font-stretch:75%;line-height:.85;display:block}.dir-d .pass-route .to{text-align:right}.dir-d .pass-route .to .code{color:var(--accent-text)}.dir-d .pass-route .city{font-size:15px;font-style:italic}.dir-d .pass-line{background:var(--accent);height:4px;margin-bottom:20px}.dir-d .pass-stub{border-top:2px dashed var(--ink);gap:4px;padding:18px 16px 22px;display:grid;position:relative}.dir-d .pass-stub .k{font-family:var(--f-display);font-size:14px;font-weight:600}.dir-d .pass-stub .count{margin:0;font-size:clamp(84px,28vw,150px)}.dir-d .pass-stub .count-label{margin:0;font-size:17px}.dir-d .stamp{border:2px solid var(--accent);color:var(--accent-text);font-family:var(--f-display);padding:3px 8px;font-size:13px;font-weight:800;position:absolute;top:12px;right:14px;transform:rotate(-6deg)}.dir-d .pass-stub .k{margin-bottom:14px}.dir-d .proof{border-top:2px solid var(--ink)}.dir-d .proof-steps{margin:0;padding:0;list-style:none}.dir-d .proof-steps li{border-bottom:1px solid var(--concrete-dark);grid-template-columns:104px 1fr;align-items:baseline;gap:14px;padding:18px 0;display:grid}.dir-d .when{font-family:var(--f-display);color:var(--sf);font-size:44px;font-weight:800;font-stretch:75%;line-height:.9}.dir-d .proof-steps li:nth-child(2) .when{color:var(--accent-text)}.dir-d .proof-steps li:nth-child(3) .when{color:var(--ink)}.dir-d .routes{border-top:1px solid var(--concrete-dark);margin:0;padding:0;list-style:none}.dir-d .r{border-bottom:1px solid var(--concrete-dark);padding:14px 0}.dir-d .r-bar{width:calc(var(--w) * 100%);font-family:var(--f-display);align-items:center;gap:6px;font-size:20px;font-weight:800;font-stretch:75%;line-height:1;display:flex}.dir-d .r-bar .seg{border-top:2px dashed var(--concrete);flex:1}.dir-d .r-bar .stop{color:var(--sf)}.dir-d .r-meta{color:var(--concrete);justify-content:space-between;margin-top:6px;font-size:15px;display:flex}.dir-d .r-time{font-family:var(--f-display);color:var(--paper);font-weight:700}.dir-d .r-nonstop .r-bar,.dir-d .r-nonstop .r-time{color:var(--accent-text)}.dir-d .r-nonstop .r-bar .seg{border-top:4px solid var(--accent)}.dir-d ul.pains{margin-bottom:0;padding:0;list-style:none}.dir-d ul.pains li{border-left:4px solid var(--accent-dark);padding-left:14px;font-size:20px}.dir-d .calc{background:var(--accent);color:var(--on-accent)}.dir-d .hc{gap:22px;max-width:720px;display:grid}.dir-d .hc-trips{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.dir-d .hc-label{font-family:var(--f-display);font-size:19px;font-weight:700}.dir-d .hc-stepper{border:2px solid var(--on-accent);align-items:center;display:flex}.dir-d .hc-stepper button{width:56px;height:56px;color:var(--on-accent);font-family:var(--f-display);cursor:pointer;background:0 0;border:0;font-size:30px;font-weight:700;line-height:1}.dir-d .hc-stepper button:disabled{opacity:.35;cursor:default}.dir-d .hc-stepper output{text-align:center;min-width:72px;font-family:var(--f-display);font-variant-numeric:tabular-nums;font-size:40px;font-weight:800;font-stretch:75%}.dir-d .hc-result strong{font-family:var(--f-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(130px,44vw,280px);font-weight:900;font-stretch:62.5%;line-height:.82;animation:.3s ease-out d-bump;display:block}@keyframes d-bump{0%{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.dir-d .hc-result strong{animation:none}}.dir-d .hc-result span{font-family:var(--f-display);margin-top:8px;font-size:22px;font-weight:700;display:block}.dir-d .hc-note{font-size:15px;font-style:italic}.dir-d .how-steps{gap:26px;margin:0;padding:0;list-style:none;display:grid}.dir-d .how-steps li{grid-template-columns:52px 1fr;display:grid}.dir-d .how-n{font-family:var(--f-display);color:var(--accent-text);font-size:52px;font-weight:900;line-height:.85}.dir-d .how-title{font-family:var(--f-display);margin-bottom:6px;font-size:30px;font-weight:800;font-stretch:75%;line-height:1}.dir-d .pass-airline{font-weight:800}.dir-d .pass-route .k{font-family:var(--f-display);color:var(--concrete-dark);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.dir-d .pass-fields{border-top:1px solid var(--concrete);grid-template-columns:1fr 1fr;gap:12px 16px;margin:0 16px;padding:14px 0 18px;display:grid}.dir-d .pass-fields dt{font-family:var(--f-display);color:var(--concrete-dark);font-size:12px;font-weight:600}.dir-d .pass-fields dd{font-family:var(--f-display);margin:0;font-size:24px;font-weight:800;font-stretch:75%;line-height:1.1}.dir-d .pass-stub:before,.dir-d .pass-stub:after{content:"";border:2px solid var(--ink);background:var(--paper);border-radius:50%;width:26px;height:26px;position:absolute;top:-12px}.dir-d .pass-stub:before{clip-path:inset(0 0 0 50%);left:-14px}.dir-d .pass-stub:after{clip-path:inset(0 50% 0 0);right:-14px}.dir-d .barcode{background:repeating-linear-gradient(90deg, var(--ink) 0 2px, transparent 2px 4px, var(--ink) 4px 7px, transparent 7px 9px, var(--ink) 9px 10px, transparent 10px 13px, var(--ink) 13px 16px, transparent 16px 17px);height:40px;margin-top:16px;display:block}.dir-d .proof-steps li{grid-template-columns:1fr;gap:6px}.dir-d .pains-lead{font-family:var(--f-display);margin-top:48px;font-size:22px;font-weight:700}.dir-d ul.pains{margin-top:18px}.dir-d .hc-via{border:0;margin:0;padding:0}.dir-d .hc-via legend{margin-bottom:10px;padding:0}.dir-d .hc-chips{flex-wrap:wrap;gap:8px;display:flex}.dir-d .hc-chip input{opacity:0;position:absolute}.dir-d .hc-chip span{border:2px solid var(--on-accent);font-family:var(--f-display);cursor:pointer;padding:8px 12px;font-size:15px;font-weight:700;display:inline-block}.dir-d .hc-chip input:checked+span{background:var(--on-accent);color:var(--accent)}.dir-d .hc-chip input:focus-visible+span{outline:2px solid var(--on-accent);outline-offset:2px}@media (min-width:860px){.dir-d .hero-body{align-self:center}.dir-d .count-wrap{padding-top:72px;padding-bottom:72px}.dir-d .pass{grid-template-columns:1fr 320px;display:grid}.dir-d .pass-route{padding:32px 28px}.dir-d .pass-stub{border-top:0;border-left:2px dashed var(--ink);align-content:center;padding:24px}.dir-d .pass-stub .count{font-size:120px}.dir-d .proof-steps{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.dir-d .proof-steps li{border-bottom:0;border-top:4px solid var(--ink);grid-template-columns:1fr}.dir-d .when{font-size:72px}.dir-d .calc{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:28px 72px;display:grid}.dir-d .calc h2{grid-column:1;margin:0;font-size:clamp(56px,5.6vw,84px)}.dir-d .hc{display:contents}.dir-d .hc-via,.dir-d .hc-trips,.dir-d .hc-note{grid-column:1}.dir-d .hc-trips{justify-content:flex-start;gap:24px}.dir-d .hc-result{border-left:2px solid var(--on-accent);grid-area:1/2/span 4;align-self:center;padding-left:40px}.dir-d .hc-result strong{font-size:clamp(180px,17vw,280px)}.dir-d .how-steps{grid-template-columns:repeat(3,1fr);gap:40px}.dir-d .pass-fields{grid-template-columns:repeat(4,1fr);margin:0 28px}.dir-d .pass-stub:before,.dir-d .pass-stub:after{left:-12px;right:auto}.dir-d .pass-stub:before{clip-path:inset(50% 0 0);top:-14px}.dir-d .pass-stub:after{clip-path:inset(0 0 50%);top:auto;bottom:-14px}}.dir-d .pf-option-fly small{opacity:.75;font-size:12px;line-height:1.2;display:block}.dir-d .pf-choice>.pf-hint{margin-top:2px;display:block}.dir-d .pf-other{gap:6px;margin-top:14px;display:grid}.dir-d .city-sf .city-code,.dir-d .city-sp .city-code{color:var(--ink)}
.dir-d{--stage-h:calc(100vh - var(--hdr,72px))}@supports (height:100svh){.dir-d{--stage-h:calc(100svh - var(--hdr,72px))}}.dir-d .xh,.dir-d .ps,.dir-d .fr,.dir-d .pp,.dir-d .pr{padding:0;position:relative}.dir-d [class$=-stage]{top:var(--hdr,72px);height:var(--stage-h);position:sticky;overflow:hidden}.dir-d .fr{height:calc(var(--stage-h) + 190vh);background:var(--ink);color:var(--paper);border-top:1px solid var(--ink-land)}.dir-d .fr-stage{padding:20px var(--gutter) 18px;grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-areas:"title""map""list""foot";gap:12px;display:grid}.dir-d .fr-title{grid-area:title;margin:0;font-size:clamp(34px,9vw,72px)}.dir-d .fr-mapwrap{grid-area:map;min-height:0;position:relative}.dir-d .fr-clockbox{pointer-events:none;position:absolute;bottom:6%;left:0}.dir-d .fr-k{font-family:var(--f-display);color:var(--concrete);font-size:12px;font-weight:600}.dir-d .fr-clock{font-family:var(--f-display);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(44px,13vw,96px);font-weight:900;font-stretch:62.5%;line-height:.85}.dir-d .fr-list{grid-area:list}.dir-d .fr-foot{grid-area:foot}.dir-d .fr-row{border-top:1px solid var(--ink-land);justify-content:space-between;gap:12px;padding:5px 0;font-size:14px;display:flex}.dir-d .fr-name{font-family:var(--f-display);font-weight:800}.dir-d .fr-name em{color:var(--concrete);font-style:normal;font-weight:600}.dir-d .fr-row-n .fr-name{color:var(--accent-dark)}.dir-d .fr-stat{color:var(--concrete);text-align:right}.dir-d .is-landed .fr-stat{color:var(--paper);font-weight:700}.dir-d .fr-map{width:100%;height:100%;min-height:0;display:block;overflow:visible}.dir-d .fr-land{fill:var(--ink-land)}.dir-d .fr-base{fill:none;stroke:var(--concrete-dark);stroke-width:2px;stroke-dasharray:6 9}.dir-d .fr-trail{fill:none;stroke-dasharray:1;stroke-dashoffset:1px;stroke-linejoin:round}.dir-d .fr-trail-n{stroke:var(--accent-dark);stroke-width:6px}.dir-d .fr-trail-v{stroke:var(--paper);stroke-width:3px}.dir-d .fr-ap circle{fill:var(--paper)}.dir-d .fr-ap text{font-family:var(--f-display);fill:var(--paper);paint-order:stroke;stroke:var(--ink-land);stroke-width:8px;font-size:40px;font-weight:800;font-stretch:75%}.dir-d .fr-plane-n{fill:var(--accent-dark)}.dir-d .fr-plane-v{fill:var(--paper)}.dir-d .fr-foot .pains-lead{margin-top:24px}.dir-d .fr-note{color:var(--concrete);font-size:14px;font-style:italic}.dir-d .pp{--e:clamp(0, calc(var(--p,0) * 1.5), 1);--t:clamp(0, calc((var(--p,0) - .78) * 5), 1);height:calc(var(--stage-h) + 100vh)}.dir-d .pp-stage{padding:12px var(--gutter);flex-direction:column;justify-content:center;display:flex}.dir-d .pp h2{margin-bottom:12px;font-size:clamp(30px,8vw,72px)}.dir-d .pp-slot{z-index:2;background:var(--ink);border-radius:7px;max-width:892px;height:14px;margin:0 -6px;position:relative}.dir-d .pp-paper{max-width:880px;margin-top:-7px;padding:7px 0 40px;overflow:hidden}.dir-d .pp .pass{transform:translateY(calc((var(--e) - 1) * 100%));background:0 0;border:0}.dir-d .pp .pass-main{background:var(--white);border:2px solid var(--ink);border-bottom-style:dashed}.dir-d .pp .pass-route{padding:14px 16px}.dir-d .pp .pass-stub{background:var(--white);border:2px solid var(--ink);transform-origin:0 0;transform:rotate(calc(var(--t) * 3.5deg)) translate(calc(var(--t) * 8px), calc(var(--t) * 22px));border-top:0;padding-top:14px;padding-bottom:16px}.dir-d .pp .pass-route .code{font-size:clamp(52px,15vw,104px)}.dir-d .pp .pass-stub .count{font-size:clamp(64px,18vw,120px)}.dir-d .pp .pass-main{position:relative}.dir-d .pp .pass-main:before,.dir-d .pp .pass-main:after,.dir-d .pp .pass-stub:before,.dir-d .pp .pass-stub:after{content:"";border:2px solid var(--ink);background:var(--paper);border-radius:50%;width:26px;height:26px;position:absolute}.dir-d .pp .pass-main:before{clip-path:inset(0 0 50% 50%);inset:auto auto -14px -14px}.dir-d .pp .pass-main:after{clip-path:inset(0 50% 50% 0);inset:auto -14px -14px auto}.dir-d .pp .pass-stub:before{clip-path:inset(50% 0 0 50%);inset:-14px auto auto -14px}.dir-d .pp .pass-stub:after{clip-path:inset(50% 50% 0 0);inset:-14px -14px auto auto}.dir-d .pp .barcode{height:30px;margin-top:10px}.dir-d .fr.is-auto{height:auto}.dir-d .fr.is-auto .fr-stage{grid-template-rows:auto;height:auto;padding-top:56px;padding-bottom:56px;position:static;overflow:visible}.dir-d .fr.is-auto .fr-map{height:auto}.dir-d .pp.is-flow{--e:1;--t:clamp(0, calc((var(--p,0) - .4) * 7), 1);background:var(--concrete);height:auto}.dir-d .pp.is-flow .pass-main:before,.dir-d .pp.is-flow .pass-main:after,.dir-d .pp.is-flow .pass-stub:before,.dir-d .pp.is-flow .pass-stub:after{background:var(--concrete)}.dir-d .pp.is-flow .pp-stage{height:auto;padding:48px var(--gutter) 24px;position:static;overflow:visible}.dir-d .pp.is-flow .pp-slot{display:none}.dir-d .pp.is-flow .pp-paper{margin-top:0;padding-top:0;overflow:visible}@media (min-width:860px){.dir-d .fr-stage{padding:32px var(--gutter);grid-template:"title map""list map""foot map"1fr/minmax(300px,380px) 1fr;gap:14px 56px}.dir-d .fr.is-auto .fr-stage{grid-template-rows:auto 1fr auto;grid-template-areas:"title map""list map""foot foot";padding-top:48px;padding-bottom:40px}.dir-d .fr-title{font-size:56px}.dir-d .fr.is-auto .fr-mapwrap{justify-self:end;width:fit-content}.dir-d .fr.is-auto .fr-map{width:auto;max-width:100%;height:min(580px,100vh - 300px)}.dir-d .fr.is-auto .fr-foot{border-top:1px solid var(--ink-land);grid-template-columns:260px repeat(3,1fr);align-items:start;gap:10px 28px;padding-top:14px;display:grid}.dir-d .fr.is-auto .fr-note{grid-column:1/-1}.dir-d .fr.is-auto .fr-foot .pains-lead{margin:0;font-size:18px;line-height:1.25}.dir-d .fr.is-auto .fr-foot ul.pains{display:contents}.dir-d .fr.is-auto .fr-foot ul.pains li{font-size:16px;line-height:1.35}.dir-d .pp .pass-main{border-bottom-style:solid;border-right-style:dashed}.dir-d .pp .pass-stub{border-top:2px solid var(--ink);border-left:0}.dir-d .pp .pass-main:before{clip-path:inset(50% 50% 0 0);inset:-14px -14px auto auto}.dir-d .pp .pass-main:after{clip-path:inset(0 50% 50% 0);inset:auto -14px -14px auto}.dir-d .pp .pass-stub:before{clip-path:inset(50% 0 0 50%);inset:-14px auto auto -14px}.dir-d .pp .pass-stub:after{clip-path:inset(0 0 50% 50%);inset:auto auto -14px -14px}}.dir-d .pp.is-flow+.proof{border-top:0}
