@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.flex-col{flex-direction:column}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#10221f;--moss:#1d3932;--paper:#f2f0e9;--lime:#d8ff40;--muted:#83918c;--line:#c8cdc3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{cursor:pointer}.topbar{border-bottom:1px solid #10221f2e;justify-content:space-between;align-items:center;height:76px;padding:0 5vw;display:flex}.brand{color:var(--ink);letter-spacing:-1px;align-items:center;gap:9px;font-size:21px;font-weight:800;text-decoration:none;display:flex}.brand-mark{width:27px;height:27px;color:var(--ink);background:var(--lime);border-radius:50%;place-items:center;font-size:16px;font-style:italic;display:grid}nav{align-items:center;gap:30px;font-size:13px;display:flex}nav a{color:var(--ink);text-decoration:none}.avatar{width:33px;height:33px;color:var(--paper);background:var(--ink);border:0;border-radius:50%;font-size:10px}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:5vw;max-width:1440px;min-height:590px;margin:auto;padding:70px 5vw 84px;display:grid;overflow:hidden}.kicker,.section-label{letter-spacing:1.45px;font-size:10px;font-weight:800}.kicker{align-items:center;gap:8px;display:flex}.pulse{background:var(--lime);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #d8ff403d}.hero h1{letter-spacing:-.075em;margin:19px 0 20px;font-size:clamp(49px,5.7vw,88px);font-weight:750;line-height:.94}.hero em{color:#5c766b;font-style:normal}.lede{color:#496059;max-width:405px;font-size:16px;line-height:1.55}.hero-notes{color:#526860;flex-wrap:wrap;gap:20px;margin-top:32px;font-size:11px;display:flex}.hero-notes span:before{content:"✓";color:#31594d;margin-right:6px}.hero-map{min-height:410px;position:relative;transform:rotate(2deg)}.map{background:#cfd7cf;border:1px solid #10221f29;height:100%;min-height:410px;position:relative;overflow:hidden;box-shadow:10px 12px #bcc8b7}.map-grid{opacity:.58;background:linear-gradient(32deg,#0000 47%,#aeb8af 48% 49%,#0000 50%) 0 0/95px 75px,linear-gradient(118deg,#0000 46%,#aeb8af 47% 49%,#0000 50%) 0 0/120px 95px,linear-gradient(#0000 49%,#b6c0b8 50% 51%,#0000 52%) 0 0/100% 82px;position:absolute;inset:0}.road{opacity:.92;background:#e9ece4;height:11px;position:absolute;box-shadow:0 0 0 1px #bec7bd}.road-a{width:120%;top:24%;left:-10%;transform:rotate(29deg)}.road-b{width:120%;top:59%;left:-18%;transform:rotate(-35deg)}.road-c{width:105%;top:72%;left:6%;transform:rotate(13deg)}.road-d{width:88%;top:40%;left:-2%;transform:rotate(81deg)}.road-e{width:95%;top:24%;right:-40%;transform:rotate(92deg)}.road-f{width:80%;bottom:15%;left:15%;transform:rotate(-69deg)}.place{color:#809087;letter-spacing:1.2px;font-size:9px;font-weight:700;position:absolute}.place-one{top:69%;left:11%}.place-two{top:21%;right:8%}.route-svg{width:90%;height:90%;position:absolute;inset:4% 5%}.route-underlay{fill:none;stroke:#f7f6ee;stroke-width:16px;stroke-linejoin:round}.route-line{fill:none;stroke:var(--ink);stroke-width:9px;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset 1.5s cubic-bezier(.2,.8,.2,1)}.route-ready .route-line{stroke-dashoffset:0}.route-dot{fill:var(--lime);stroke:var(--ink);stroke-width:3px}.map-scale,.map-credit{color:#43554d;font-size:9px;position:absolute;bottom:12px}.map-scale{align-items:center;gap:5px;display:flex;left:13px}.map-scale span{border-top:2px solid var(--ink);width:34px}.map-credit{font-size:8px;right:13px}.route-label{background:var(--ink);min-width:160px;color:var(--paper);padding:13px 17px;position:absolute;bottom:26px;right:-18px;transform:rotate(-2deg)}.route-label strong,.route-label span{display:block}.route-label strong{font-size:13px}.route-label span{color:#afc0b7;margin-top:4px;font-size:10px}.studio{background:var(--ink);color:var(--paper);padding:92px 5vw}.studio-heading,.result-top{justify-content:space-between;align-items:end;gap:30px;max-width:1260px;margin:auto;display:flex}.studio-heading h2,.result h2,.steps h2{letter-spacing:-.06em;margin:15px 0 0;font-size:clamp(38px,4.4vw,62px);line-height:.98}.studio-heading>p,.result-top>p{color:#a8bbb1;max-width:300px;font-size:14px;line-height:1.55}.mode-tabs{border-bottom:1px solid #42574d;gap:25px;max-width:1260px;margin:53px auto 23px;display:flex}.mode-tabs button{color:#a8bbb1;background:0 0;border:0;padding:0 0 15px;font-size:14px}.mode-tabs .active{color:var(--paper);border-bottom:2px solid var(--lime)}.creator-grid{grid-template-columns:1.4fr .8fr;gap:18px;max-width:1260px;margin:auto;display:grid}.idea-panel,.settings-panel{border:1px solid #3d544a;padding:28px}.idea-panel>label,.setting-title label{font-size:12px;font-weight:700}.idea-field{border-bottom:1px solid #597065;align-items:center;height:69px;margin:10px 0 24px;display:flex}.idea-field input{color:var(--paper);letter-spacing:-1px;background:0 0;border:0;outline:0;width:100%;font-size:26px}.idea-field input::placeholder{color:#6f847a}.idea-field button{background:var(--lime);width:38px;height:38px;color:var(--ink);border:0;border-radius:50%;font-size:22px}.quick-picks{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:30px;display:flex}.quick-picks span{color:#9db0a6;margin-right:3px;font-size:11px}.quick-picks button{color:#c7d2cb;background:0 0;border:1px solid #4c6258;border-radius:20px;padding:8px 12px;font-size:11px}.quick-picks .picked{border-color:var(--lime);color:var(--lime)}.upload-zone{color:#d5ded8;border:1px dashed #5e7569;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:115px;font-size:12px;display:flex}.upload-zone input{display:none}.upload-zone b{color:var(--lime);font-size:20px;font-weight:400}.upload-zone small{color:#879c91;font-size:10px}.setting-title{justify-content:space-between;display:flex}.setting-title strong{color:var(--lime);font-size:22px}.distance{width:100%;accent-color:var(--lime);margin:30px 0 5px}.range-labels{color:#91a49a;justify-content:space-between;font-size:10px;display:flex}.location{align-items:center;gap:10px;margin:33px 0;display:flex}.location .pin{color:var(--lime);font-size:21px}.location small,.location strong{display:block}.location small{color:#90a49a;letter-spacing:1px;font-size:9px}.location strong{margin-top:3px;font-size:13px}.location button{color:var(--lime);background:0 0;border:0;margin-left:auto;font-size:11px;text-decoration:underline}.primary,.download{background:var(--lime);color:var(--ink);text-align:left;border:0;justify-content:space-between;align-items:center;width:100%;padding:15px 17px;font-weight:800;display:flex}.primary:active,.download:active{transform:translateY(1px)}.primary span,.download span{font-size:20px}.discovery-panel{border:1px solid #3d544a;grid-template-columns:.8fr 1.2fr;gap:50px;max-width:1260px;margin:auto;padding:35px;display:grid}.discovery-panel h3{letter-spacing:-1.5px;margin:14px 0;font-size:32px}.discovery-panel p:not(.section-label){color:#a8bbb1;max-width:350px;font-size:14px;line-height:1.55}.discovery-panel .primary{max-width:220px;margin-top:26px}.mini-routes{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.mini-routes button{color:var(--paper);text-align:left;background:#193029;border:1px solid #3f574d;padding:12px}.mini-routes svg{background:#bfcabf;width:100%;height:110px}.mini-routes path{fill:none;stroke:#10221f;stroke-width:12px;stroke-linejoin:round}.mini-routes strong,.mini-routes small{display:block}.mini-routes strong{margin-top:9px;font-size:13px}.mini-routes small{color:#a6bbb1;margin-top:4px;font-size:10px}.result{padding:96px 5vw}.result-top{color:var(--ink);align-items:end}.result-top>p{color:#587067}.route-result{background:#e2e3da;grid-template-columns:1.35fr .65fr;max-width:1260px;margin:42px auto 0;display:grid}.result-map .map{min-height:480px;box-shadow:none}.route-details{flex-direction:column;padding:34px 30px;display:flex}.status{letter-spacing:1.3px;color:#60756b;font-size:9px;font-weight:800}.status i{background:var(--lime);border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.route-details h3{letter-spacing:-1.5px;margin:19px 0 26px;font-size:33px}.metrics{border-top:1px solid #bcc5ba;border-bottom:1px solid #bcc5ba;grid-template-columns:repeat(3,1fr);gap:10px;padding:18px 0;display:grid}.metrics strong,.metrics span{display:block}.metrics strong{letter-spacing:-1px;font-size:20px}.metrics small{color:#61756b;font-size:10px}.metrics span{color:#61756b;margin-top:4px;font-size:9px}.route-tip{color:#526860;gap:11px;margin:25px 0;font-size:11px;line-height:1.5;display:flex}.route-tip b{color:#31594d;font-size:23px}.route-tip p{margin:0}.download{margin-top:auto}.download:disabled,.share:disabled{opacity:.38;cursor:not-allowed}.share{color:var(--ink);background:0 0;border:1px solid #aab7ad;margin-top:10px;padding:13px;font-size:12px;font-weight:700}.steps{background:#b9c6b9;grid-template-columns:.65fr 1.35fr;gap:7vw;padding:86px 5vw;display:grid}.steps h2{margin:0}.steps>div{grid-template-columns:.9fr 1.1fr;gap:7vw;display:grid}.steps ol{margin:0;padding:0;list-style:none}.steps li{border-bottom:1px solid #10221f2e;grid-template-columns:36px 1fr;gap:12px;margin-bottom:20px;padding:0 0 23px;display:grid}.steps li span{font-size:10px;font-weight:800}.steps li p{color:#3f5750;margin:0;font-size:13px;line-height:1.5}.steps li b{color:var(--ink);margin-bottom:5px;font-size:14px;display:block}footer{background:var(--ink);color:#a7bbb0;justify-content:space-between;align-items:center;padding:28px 5vw;font-size:11px;display:flex}footer .brand{color:var(--paper)}footer p{margin:0}footer .brand-mark{font-size:14px}@media (max-width:760px){.topbar{height:65px}.topbar nav a{display:none}.hero{grid-template-columns:1fr;gap:38px;padding-top:56px}.hero-map,.map{min-height:330px}.studio,.result{padding-top:64px;padding-bottom:64px}.studio-heading,.result-top{display:block}.studio-heading>p,.result-top>p{margin-top:21px}.creator-grid,.discovery-panel,.route-result,.steps,.steps>div{grid-template-columns:1fr}.settings-panel{padding-top:24px}.mini-routes{margin-top:5px}.route-result{gap:0}.result-map .map{min-height:370px}.route-details{min-height:420px}.steps,.steps>div{gap:36px}.steps h2{font-size:48px}footer p{display:none}.hero h1{font-size:53px}.hero-notes{gap:12px}.creator-grid{gap:0}.idea-panel,.settings-panel{border-color:#3d544a}.discovery-panel{gap:26px;padding:24px}}.location label{color:#90a49a;letter-spacing:1px;font-size:9px;display:block}.location select{color:var(--paper);background:0 0;border:0;border-bottom:1px solid #597065;margin-top:3px;padding:0 20px 3px 0;font-size:13px;display:block}.location option{color:var(--ink)}.primary:focus-visible,.download:focus-visible,.share:focus-visible,.mode-tabs button:focus-visible,.quick-picks button:focus-visible,.mini-routes button:focus-visible,.idea-field input:focus-visible,.location select:focus-visible{outline:2px solid var(--lime);outline-offset:3px}.primary:disabled{opacity:.7;cursor:wait}.form-error{color:#ffb5a7;margin:-13px 0 15px;font-size:12px}.action-message{color:#31594d;border-left:3px solid var(--lime);background:#e0edc9;max-width:1260px;margin:22px auto -20px;padding:10px 12px;font-size:12px}.error-page{background:var(--paper);max-width:640px;min-height:100vh;margin:auto;padding:18vh 5vw}.error-page h1{letter-spacing:-.06em;margin:18px 0;font-size:clamp(42px,7vw,72px);line-height:.95}.error-page p:not(.section-label){color:#496059;max-width:450px;line-height:1.55}.error-page .primary{max-width:230px;margin-top:30px;text-decoration:none}.error-page>a:not(.primary){color:var(--ink);margin-top:18px;font-size:13px;display:inline-block}.map-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.location input{color:var(--paper);background:0 0;border:0;border-bottom:1px solid #597065;min-width:220px;margin-top:3px;padding:0 20px 3px 0;font-size:13px;display:block}.location input::placeholder{color:#90a49a}.token-note{color:#a8bbb1;margin:12px 0 0;font-size:11px;line-height:1.45}.token-note code{color:var(--lime)}.map-canvas{position:absolute;inset:0}.map .mapboxgl-ctrl-attrib,.map .maplibregl-ctrl-attrib{font-size:9px}.map-credit{display:none}
