@charset "UTF-8";
:root{font-family:"Segoe UI","Microsoft JhengHei",sans-serif;color:#263e34;background:#f8f7f3;font-synthesis:none;--forest:#285749;--ink:#263e34;--muted:#69776b;--line:#e1e5dc;--gold:#b89451;--paper:#fff;scroll-behavior:smooth;scroll-padding-top:24px}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,select,summary{cursor:pointer}a{color:var(--forest)}button{border:0;border-radius:9px;padding:11px 16px;font-weight:600;transition:background .18s,transform .18s}button:hover,.button-link:hover{filter:brightness(.95)}button:active{transform:translateY(1px)}button:disabled{opacity:.48;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b68a3f;outline-offset:4px}input,select,textarea{width:100%;min-width:0;color:#304537;background:#fff;border:1px solid #dce2d7;border-radius:8px;padding:11px 12px}input:focus,select:focus,textarea:focus{border-color:#809878}input[type=checkbox]{width:16px;height:16px;accent-color:var(--forest);flex:0 0 auto}textarea{resize:vertical;line-height:1.8}label{display:block;font-size:12px;color:#667362;line-height:1.8}label input,label select{margin-top:5px}h1,h2,h3,p,figure{margin:0}h2{font-size:20px;font-weight:650;letter-spacing:.5px}h3{font-size:15px}.primary{background:var(--forest);color:#fff;box-shadow:0 4px 12px #2347340d}.secondary{background:#f0f3ec;color:#365a43;border:1px solid #dce4d5}.wide{width:100%;margin-top:11px}.text-button{background:transparent;color:#54734c}.button-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:25px;border-radius:9px;padding:16px 24px;font-size:14px;font-weight:600}.skip-link{position:fixed;top:-70px;left:20px;z-index:20;background:#fff;padding:12px;border:2px solid var(--forest)}.skip-link:focus{top:12px}
/* A quiet editorial cover. */
.topbar{max-width:1460px;height:94px;margin:auto;padding:0 46px;display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:36px;height:36px}.brand strong{font-size:25px;font-weight:650;letter-spacing:4px;line-height:1.2}.brand span{font-size:9px;font-weight:500;letter-spacing:1.4px;display:block;margin-top:6px;text-transform:uppercase}.desktop-nav{display:flex;gap:31px;margin-left:auto}.desktop-nav a{color:#788170;text-decoration:none;font-size:12px;letter-spacing:.5px}.desktop-nav a:hover{color:var(--forest)}.topright{display:flex;align-items:center;gap:22px}.topright select{width:auto;background:#fffdf8;font-size:12px;border-radius:30px;padding:9px 12px}.local-dot{font-size:10px;color:#879080}.local-dot:before{content:"";display:inline-block;width:5px;height:5px;background:#789474;border-radius:50%;margin-right:7px}main{max-width:1440px;margin:0 auto;padding:0 46px}.hero{display:grid;grid-template-columns:1fr 1.04fr;align-items:center;gap:58px;padding:48px 0 62px}.eyebrow{font-size:9px;letter-spacing:2.1px;color:#8c8e75;font-weight:600;margin-bottom:13px}.hero-copy .eyebrow{color:#997d46;display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:1.7px;margin-bottom:23px}.hero-copy .eyebrow>span{width:23px;height:1px;background:#b49a61}h1{font-family:Georgia,"Noto Serif TC","PMingLiU",serif;font-size:clamp(36px,3.4vw,52px);line-height:1.5;font-weight:550;letter-spacing:2px}.serif-accent{color:#4e6952}.intro{font-size:13px;color:#7c8475;line-height:2.2;margin-top:20px;letter-spacing:.3px}.hero-actions{display:flex;gap:17px;align-items:center;margin-top:30px}.hero-demo{background:none;padding:12px 3px;color:#718368;font-size:12px;font-weight:500}.hero-demo span{margin-left:12px}.hero-promise{display:flex;align-items:center;gap:10px;margin-top:24px;font-size:9px;color:#969b8c}.hero-promise i{width:3px;height:3px;background:#b8bdad;border-radius:50%}.hero-visual{height:385px;position:relative;margin:0 0 15px}.hero-visual>img{width:100%;height:100%;object-fit:cover;border-radius:72px 13px 13px 13px;display:block;box-shadow:0 17px 35px #35462c10}.hero-image-label{position:absolute;top:21px;right:19px;color:#fff;font-size:8px;letter-spacing:1.7px;text-shadow:0 1px 8px #0007;text-align:right}.hero-image-label span{display:block;font-size:9px;letter-spacing:1px;margin-top:8px}.postcard{position:absolute;bottom:24px;left:-27px;background:#fffdf5f5;padding:16px 21px 16px 12px;display:flex;gap:11px;align-items:center;box-shadow:0 10px 30px #23301e12;border:1px solid #fff;border-radius:10px;transform:rotate(-3deg)}.postcard svg{width:65px;height:48px;fill:none;stroke:#76936c;stroke-width:1.5;flex:0 0 auto}.postcard svg path{stroke-dasharray:3 3}.postcard svg circle{fill:#d6b76e;stroke:#fcf7ea}.postcard strong{display:block;font-size:12px;color:#4d6649;font-weight:600;letter-spacing:.8px}.postcard span{font-size:9px;color:#949780;display:block;margin-top:7px;letter-spacing:.4px}.hero-visual figcaption{position:absolute;bottom:-22px;right:0;font-size:8px;letter-spacing:.5px;color:#959b8e}
/* The guide stays short so the planner remains close to the cover. */
.how-it-works{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;gap:0}.how-it-works>div{display:flex;align-items:center;gap:17px;padding:3px 24px;border-right:1px solid var(--line)}.how-it-works>div:first-child{padding-left:9px}.how-it-works>div:last-child{border:0}.how-number{font-family:Georgia,serif;font-style:italic;color:#baa679;font-size:25px}.how-it-works strong{display:block;font-size:13px;font-weight:550;letter-spacing:.5px}.how-it-works p>span{display:block;color:#919785;font-size:10px;margin-top:7px}.how-icon{margin-left:auto;font-size:25px;color:#a5b19a;font-weight:300}.planner-heading{display:flex;justify-content:space-between;align-items:end;padding:46px 0 20px}.planner-heading h2{font-family:Georgia,"PMingLiU",serif;font-size:27px;font-weight:500;letter-spacing:1px}.planner-heading>.eyebrow{margin-bottom:10px}.planner-heading>p{font-size:11px;color:#94998b;margin-bottom:4px}.privacy-note{background:#eff1e8;border-radius:8px;display:flex;align-items:center;gap:11px;padding:12px 16px;font-size:10px;color:#738068;line-height:1.8;margin-bottom:24px}.privacy-note svg{flex:0 0 auto}.privacy-note>span{margin-left:auto;white-space:nowrap;letter-spacing:1.5px;font-size:8px;color:#97a089}.notice{border:1px solid #d1ddc6;background:#eef5e8;color:#456140;padding:13px 18px;border-radius:9px;margin-bottom:20px;font-size:12px;line-height:1.8}.notice.error{background:#fbf0e7;color:#8a4b31;border-color:#e6c5b0}.mobile-jumps{display:none}.workspace{display:grid;grid-template-columns:330px minmax(0,1fr);gap:25px;align-items:start}.collection,.planning{display:grid;gap:22px;min-width:0}.panel{background:var(--paper);border:1px solid #e2e6db;border-radius:13px;padding:24px;box-shadow:0 3px 12px #33472302}.section-title{display:flex;align-items:center;gap:11px;margin-bottom:23px}.section-title h2{font-size:17px;letter-spacing:.6px}.section-title p{font-size:10px;color:#949b88;margin-top:6px}.step{font-family:Georgia,serif;font-size:12px;width:27px;height:27px;display:flex;align-items:center;justify-content:center;background:#eff2e7;color:#8a9a70;border-radius:50%;flex:0 0 auto}.badge{margin-left:auto;font-size:9px;white-space:nowrap;background:#f8f0da;color:#967638;padding:5px 8px;border-radius:5px}.count{font-size:10px;letter-spacing:0;font-weight:500;padding:3px 7px;background:#f0f2eb;color:#74836b;border-radius:4px;vertical-align:middle;display:inline-block}
/* Inspiration collection. */
.dropzone{border:1px dashed #c2ceb7;background:#f9faf6;border-radius:10px;padding:18px 12px;text-align:center;cursor:pointer;margin-bottom:20px;position:relative}.dropzone strong{display:block;font-size:12px;color:#687e57;font-weight:500}.dropzone small{font-size:9px;color:#939d87;display:block;margin-top:9px;line-height:1.8}.dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer;height:100%;margin:0}.dropzone:focus-within{outline:3px solid #b68a3f;outline-offset:3px}.dropzone.drag{background:#e7efde}.upload-symbol{display:block;margin:0 auto 7px;width:53px;height:50px}.upload-symbol svg{width:100%;height:100%;fill:#f9fcf3;stroke:#9db085;stroke-width:1.4}.upload-action{display:inline-block;border:1px solid #d4deca;background:#fff;font-size:10px;color:#70825f;border-radius:6px;padding:3px 12px;margin-top:10px}.upload-action b{padding-left:16px;font-size:14px;font-weight:400}.label{margin-bottom:6px}.manual{border-top:1px solid var(--line);margin-top:19px;padding-top:15px;font-size:11px}.manual summary{color:#75816a}.manual p{margin:12px 0}.manual label{margin-top:8px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sources-panel{padding-bottom:14px}.empty{padding:30px 12px;text-align:center;color:#89957e;font-size:12px;line-height:2}.empty-symbol{display:block;font-family:Georgia,serif;font-size:35px;color:#b9c4a9;margin-bottom:10px}.empty button{font-size:11px;margin-top:13px}.source{border-top:1px solid var(--line);padding:17px 0}.source-head{display:flex;gap:10px;align-items:center;margin-bottom:11px}.source-thumb{width:48px;height:48px;border-radius:7px;object-fit:cover;background:#eff1e7;flex:0 0 auto}.source-head strong{display:block;font-size:11px;overflow-wrap:anywhere;font-weight:600}.source-head small{font-size:9px;color:#909a83}.source-head>div{min-width:0;flex:1}.icon-button{background:none;color:#93a087;padding:6px 9px;font-size:17px}.source textarea{font-size:11px;line-height:1.8}.source-actions{display:flex;gap:6px;margin:8px 0;flex-wrap:wrap}.source-actions button{font-size:10px;padding:7px 8px}.query{background:#f7f8f2;padding:10px;border-radius:8px;margin-top:10px}.query-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;font-weight:600}.query-title button{padding:5px 7px;font-size:9px}.candidate{background:#fff;border:1px solid var(--line);border-radius:7px;margin-top:8px;padding:11px;font-size:11px}.candidate small{display:block;font-size:9px;color:#7b8970;line-height:1.8;margin-top:4px}.candidate button{font-size:10px;padding:6px 8px;margin-top:9px}.candidate a,.query>a{display:inline-block;font-size:10px;margin-top:9px;color:#66815a;text-underline-offset:3px}.candidate a{margin-left:9px}.source-message{font-size:10px;color:#8a7d57;line-height:1.8;margin-top:8px;white-space:pre-line}.service-box{padding:0 12px;font-size:10px;color:#8b937f;line-height:1.9}.service-box summary{color:#738268;font-size:11px;font-weight:500}.service-box p{margin:8px 0}.consent{display:flex;align-items:flex-start;gap:8px;font-size:10px;line-height:1.9;margin:12px 0}
/* Date, route overview and Google handoff. */
.settings-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:13px}.settings-grid input,.settings-grid select{font-size:12px}.endpoints{display:grid;grid-template-columns:1fr 18px 1fr;gap:8px;align-items:end;margin-top:16px}.endpoints select{font-size:12px}.endpoints>span{padding-bottom:10px;color:#9ba78e}.endpoints button{grid-column:1/-1;justify-self:start;padding:5px 0;font-size:10px}.subtle{font-size:10px;color:#8c957f;line-height:1.8;margin-top:12px}.map-panel{border-radius:13px;background:#edf1e7;overflow:hidden;position:relative;border:1px solid #dfe5d7;padding:25px 25px 18px}.map-title{display:flex;align-items:start;justify-content:space-between;gap:12px}.map-title .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:9px}.map-title h3{font-family:Georgia,"PMingLiU",serif;font-size:22px;font-weight:500;letter-spacing:1px}.map-label{font-size:9px;color:#859174;padding:5px 8px;border:1px solid #d1dcc7;border-radius:20px;background:#f8faf2;white-space:nowrap}#route-map{height:237px;position:relative;background:radial-gradient(ellipse at 30% 50%,#d8e5d15c,transparent 55%)}#route-map svg{width:100%;height:100%}.route-line{fill:none;stroke:#7b9671;stroke-width:2;stroke-dasharray:5 6}.map-node{fill:#365f4c;stroke:#f5f8ef;stroke-width:4}.map-text{font-family:inherit;font-size:11px;fill:#5a7353}.map-number{fill:#fff;font-size:11px;font-weight:600}.map-land{fill:#e0e9d8}.map-river{stroke:#d1ded8;stroke-width:30;fill:none;opacity:.8}.map-footer{display:flex;justify-content:space-between;font-size:9px;color:#829176;gap:10px}.google-routes{border-top:1px solid #d7e0ce;margin-top:17px;padding-top:16px}.google-header{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:10px}.google-header strong{font-size:12px;font-weight:550}.google-header>span{font-size:9px;color:#87977a}.google-note{font-size:10px;line-height:1.8;color:#77886b}.google-links{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.google-link{display:flex;justify-content:space-between;align-items:center;text-decoration:none;border:1px solid #cbd8c0;background:#fffdf6;color:#436640;border-radius:8px;padding:11px 13px;gap:15px;font-size:11px;flex:1 1 190px}.google-link small{display:block;font-size:9px;color:#839373;margin-top:5px;line-height:1.6}.google-link:hover{background:#f5f9ef}.google-mark{display:inline-flex;align-items:center;justify-content:center;border:1px solid #ccd8c0;border-radius:6px;background:#fffdf7;color:#608453;width:24px;height:24px;font-size:15px;margin-right:7px}.google-demo{display:flex;align-items:center;justify-content:space-between;gap:20px}.google-demo>span{font-size:11px;white-space:nowrap;color:#8b997d;border:1px solid #d0dcc4;border-radius:7px;padding:9px 11px;opacity:.85}
/* A travel timeline, with controls kept next to each stop. */
.itinerary-heading{display:flex;justify-content:space-between;align-items:center;gap:17px;margin-bottom:22px}.itinerary-heading .eyebrow{font-size:8px;margin-bottom:9px}.itinerary-heading h2{font-size:21px}.itinerary-subtitle{font-size:10px;color:#939b86;margin-top:8px}.actions{display:flex;gap:8px}.actions button{font-size:11px;white-space:nowrap;padding:10px 13px}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:#f4f6ee;border-radius:9px;padding:16px 0;margin-bottom:12px}.stat{padding:0 19px;border-right:1px solid #e2e7d9}.stat:last-child{border:0}.stat span{display:block;font-size:9px;color:#819072;margin-bottom:7px}.stat strong{font-family:Georgia,serif;font-size:25px;font-weight:500;line-height:1}.stat small{font:10px "Segoe UI","Microsoft JhengHei",sans-serif;color:#8b957c}.issues-list{background:#fcf5e8;border:1px solid #edddbf;color:#937043;border-radius:8px;padding:12px 14px;font-size:11px;line-height:1.9;margin:15px 0}.issues-list ul{padding-left:18px;margin:0}.stop{position:relative;padding:23px 0 20px;border-bottom:1px solid #e8ece1}.stop:before{content:"";position:absolute;left:13px;top:57px;bottom:0;border-left:1px dashed #d7dfca}.stop-top{display:flex;align-items:center;gap:12px}.stop-number{background:#365f49;color:#fff;border-radius:50%;width:27px;height:27px;display:flex;align-items:center;justify-content:center;font-size:10px;flex:0 0 auto;box-shadow:0 0 0 4px #f0f3e9}.stop-name{flex:1;min-width:0}.stop-name h3{font-size:15px;letter-spacing:.3px;overflow-wrap:anywhere;font-weight:600}.stop-name p{font-size:9px;color:#90997e;margin-top:6px}.stop-controls{display:flex;align-items:center;gap:1px}.stop-controls button{font-size:14px;padding:6px;background:none;color:#869779}.lock{display:flex;gap:3px;align-items:center;font-size:9px;margin-left:4px;white-space:nowrap}.stop-times{margin:16px 0 12px 40px;display:flex;gap:17px;flex-wrap:wrap;font-size:10px;color:#97a083}.stop-times strong{color:#647c51;font-size:12px;font-weight:600;margin-left:3px}.stop-edit{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:10px;margin-left:40px}.stop-edit label{font-size:9px;color:#8e997e}.stop-edit input{padding:8px 9px;font-size:12px;background:#fbfcf8}.stop details{font-size:10px;color:#899577;margin:13px 0 0 40px}.stop details .pair{margin-top:10px}.stop-links{display:flex;align-items:center;flex-wrap:wrap;gap:17px;margin:13px 0 0 40px}.stop-links a{font-size:10px;text-underline-offset:4px;color:#638451}.stop-links small{font-size:9px;color:#9da38f;width:100%}.end-line{font-size:11px;background:#f2f5eb;padding:13px 15px;margin-top:18px;border-radius:8px;color:#748866}.fine-print{font-size:9px;line-height:1.9;color:#939d87;margin-top:18px}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:34px 0 38px;margin-top:49px;border-top:1px solid var(--line);font-size:9px;color:#9ba18f}.footer-brand{font-size:20px;letter-spacing:3px;text-decoration:none;color:#7e8f70}.footer-brand span{font:8px "Segoe UI",sans-serif;display:block;letter-spacing:1.5px;margin-top:6px}footer p{font-family:Georgia,"PMingLiU",serif;letter-spacing:2px;font-size:13px;color:#869578}[hidden]{display:none!important}
@media(min-width:1450px){.hero{grid-template-columns:1fr 1.15fr;gap:70px}.hero-visual{height:420px}.workspace{grid-template-columns:365px minmax(0,1fr)}.panel{padding:27px}.map-panel{padding:27px}}
@media(max-width:1120px){.local-dot{display:none}.topbar{padding:0 30px;gap:25px}.desktop-nav{gap:25px}main{padding:0 30px}.hero{gap:34px;padding-top:35px}.hero-visual{height:340px}.hero-copy .eyebrow{font-size:8px;letter-spacing:1px}h1{font-size:37px}.intro{font-size:11px}.button-link{font-size:12px;padding:14px 18px;gap:18px}.hero-demo{font-size:11px}.hero-promise{font-size:8px;gap:7px}.postcard{left:-14px;padding:12px}.postcard strong{font-size:10px}.postcard span{font-size:8px}.workspace{grid-template-columns:300px minmax(0,1fr);gap:19px}.panel{padding:20px}.settings-grid{gap:9px}.settings-grid input,.settings-grid select{font-size:11px;padding:9px 8px}.how-it-works>div{padding:2px 17px;gap:12px}.how-it-works strong{font-size:12px}.how-icon{display:none}.itinerary-heading{align-items:start;flex-direction:column}.actions{width:100%}.actions button{flex:1}.stop-controls{flex-wrap:wrap;max-width:130px}.stop-edit{margin-left:38px}.stat{padding:0 12px}.map-title h3{font-size:19px}.privacy-note>span{display:none}.stop-times{gap:10px}}
@media(max-width:850px){.desktop-nav{display:none}.hero{gap:25px}.hero-visual{height:300px}.hero-promise{flex-wrap:wrap}.hero h1{font-size:32px}.postcard svg{width:43px;height:38px}.postcard{bottom:18px}.hero-actions{gap:12px}.hero-demo{font-size:10px}.workspace{grid-template-columns:270px minmax(0,1fr);gap:16px}.panel{padding:17px}.section-title h2{font-size:15px}.settings-grid{grid-template-columns:1fr 1fr}.planner-heading>p{display:none}.map-title{flex-direction:column;gap:10px}.map-label{font-size:8px}.stop-edit{margin-left:0}.stop-times{margin-left:0}.stop:before{display:none}.stop-controls{max-width:104px}.lock{font-size:8px}.stat{padding:0 8px}.stat strong{font-size:22px}.google-demo{align-items:start;flex-direction:column;gap:10px}.google-header strong{font-size:11px}.how-it-works p>span{font-size:9px}}
@media(max-width:680px){:root{scroll-padding-top:63px}.topbar{height:76px;padding:0 22px;gap:15px}.brand strong{font-size:22px}.brand img{width:32px;height:32px}.brand span{font-size:8px}.topright select{max-width:112px;font-size:11px;padding:8px 10px}main{padding:0 22px}.hero{display:flex;flex-direction:column;align-items:stretch;gap:33px;padding:31px 0 38px}.hero-copy .eyebrow{font-size:8px;margin-bottom:17px;letter-spacing:1.3px}.hero h1{font-size:36px;line-height:1.55;letter-spacing:1px}.intro{font-size:12px;line-height:2.1;margin-top:16px}.hero-actions{margin-top:23px;gap:20px}.button-link{padding:14px 19px;font-size:12px;gap:18px}.hero-demo{font-size:11px}.hero-promise{font-size:8px;margin-top:19px}.hero-visual{height:245px;margin:0 0 8px 12px}.hero-visual>img{border-radius:48px 10px 10px 10px}.postcard{left:-12px;bottom:19px;padding:12px 17px 12px 9px}.postcard svg{width:47px;height:35px}.postcard strong{font-size:10px}.postcard span{font-size:8px}.hero-image-label{font-size:7px;top:15px;right:13px}.hero-image-label span{font-size:8px}.hero-visual figcaption{font-size:8px}.how-it-works{padding:15px 0;gap:15px}.how-it-works>div{padding:0!important;display:block;border:0}.how-number{font-size:20px;display:block;margin-bottom:8px}.how-it-works strong{font-size:10px;letter-spacing:0;line-height:1.6}.how-it-works p>span{font-size:9px;line-height:1.7;margin-top:5px}.planner-heading{padding:33px 0 17px}.planner-heading h2{font-size:25px}.planner-heading .eyebrow{font-size:8px}.privacy-note{font-size:9px;padding:11px 12px;margin-bottom:15px}.workspace{grid-template-columns:1fr;gap:18px}.collection,.planning{gap:17px}.panel{padding:21px}.section-title{margin-bottom:21px}.section-title h2{font-size:17px}.section-title p{font-size:11px}.dropzone{padding:20px 12px}.dropzone strong{font-size:13px}.dropzone small{font-size:10px}.label,label{font-size:12px}.source-head strong{font-size:12px}.source-head small{font-size:10px}.source textarea{font-size:12px}.source-message{font-size:11px}.source-actions button{font-size:11px}.candidate{font-size:12px}.candidate small,.candidate a{font-size:10px}.settings-grid{grid-template-columns:1fr 1fr;gap:13px}.settings-grid input,.settings-grid select{padding:11px 10px;font-size:12px}.endpoints label{font-size:11px}.endpoints select{font-size:11px}.endpoints{grid-template-columns:1fr 14px 1fr}.map-panel{padding:22px 18px 18px}.map-title{gap:9px}.map-title h3{font-size:21px}#route-map{height:205px}.map-label{font-size:9px}.map-footer{font-size:8px}.google-demo{gap:13px}.google-header>span{font-size:8px}.google-note{font-size:10px}.itinerary-heading h2{font-size:21px}.itinerary-subtitle{font-size:11px}.summary{padding:15px 0}.stat{padding:0 8px}.stat span{font-size:8px}.stat strong{font-size:23px}.stat small{font-size:8px}.stop{padding:23px 0}.stop-name h3{font-size:14px}.stop-name p{font-size:9px}.stop-controls{max-width:120px}.stop-controls button{font-size:14px}.lock{font-size:9px}.stop-top{gap:10px}.stop-times{font-size:10px;gap:10px;margin-top:16px}.stop-times strong{font-size:11px}.stop-edit{gap:8px}.stop-edit label{font-size:10px}.stop-edit input{padding:9px 8px;font-size:12px}.stop details{margin-left:0;font-size:11px}.stop-links{margin-left:0}.stop-links a{font-size:11px}.fine-print{font-size:10px}.service-box{font-size:11px}.consent{font-size:11px}.mobile-jumps{position:sticky;top:0;z-index:5;display:flex;border:1px solid #dae1d2;background:#fcfcf7f5;backdrop-filter:blur(12px);border-radius:9px;padding:5px;margin:0 0 18px;box-shadow:0 6px 16px #31492308}.mobile-jumps a{flex:1;text-align:center;text-decoration:none;color:#748669;font-size:11px;padding:10px 5px;border-right:1px solid #e3e8dc}.mobile-jumps a:last-child{border:0}.notice{font-size:11px}footer{margin-top:33px;padding:28px 0;flex-wrap:wrap;gap:20px}.footer-brand{font-size:20px}footer p{font-size:11px;letter-spacing:1px}footer>span{font-size:9px;width:100%}}
@media(max-width:370px){main{padding:0 16px}.hero h1{font-size:32px}.panel{padding:17px}.hero-promise{gap:6px;font-size:7px}.google-header{align-items:start;flex-direction:column;gap:5px}.stat strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
/* Readable annotations and comfortable touch controls. */
.source-message,.google-note,.consent,.service-box,.fine-print,.subtle,.section-title p,.itinerary-subtitle,.stop-name p,.stop-edit label,.privacy-note,.candidate small,.map-label,.source-head small,.hero-promise,.how-it-works p>span,.dropzone small,.stop-links small,.map-footer,.google-link small{font-size:12px;color:#586a50}
.hero-visual figcaption{font-size:11px;color:#59664f}.hero-promise{flex-wrap:wrap}.intro{color:#586a50;font-size:14px}.desktop-nav a,.hero-demo{font-size:13px;color:#586a50}.source textarea,.candidate,.manual,.service-box summary{font-size:13px}.candidate a,.query>a,.stop-links a,.source-actions button,.candidate button,.query-title button,.endpoints button{font-size:12px}.stat span{font-size:11px;color:#586a50}.stat small{font-size:11px;color:#586a50}.stop-times,.lock,.stop details{font-size:12px;color:#586a50}.stop-controls{gap:3px}.stop-controls button{min-width:32px;min-height:36px;color:#586a50}.candidate button,.source-actions button{min-height:38px}.map-footer{flex-wrap:wrap}.google-header>span{color:#586a50;font-size:11px}.google-link{font-size:13px}.google-demo>span{color:#586a50}.how-it-works strong{font-size:13px}
@media(max-width:680px){.stop-top{flex-wrap:wrap}.stop-controls{margin-left:37px;max-width:none;width:calc(100% - 37px);gap:5px}.stop-controls button{min-width:44px;min-height:44px}.lock{margin-left:auto;min-height:44px;font-size:12px}.candidate button,.source-actions button,.query-title button{min-height:44px}.mobile-jumps a{min-height:44px;font-size:13px;color:#4e6446}.stop-edit{grid-template-columns:1fr 1fr}.stop-edit label:last-child{grid-column:1/-1}.stop-edit input,.settings-grid input,.settings-grid select,.endpoints select,.source textarea,input,textarea,select{font-size:16px}.settings-grid{grid-template-columns:1fr 1fr}.endpoints{grid-template-columns:1fr}.endpoints>span{display:none}.hero-promise{font-size:11px}.how-it-works p>span{font-size:11px}.how-it-works strong{font-size:12px}.hero-visual figcaption{bottom:-24px;font-size:10px}.hero-visual{margin-bottom:16px}.map-footer{font-size:11px}}

/* Immersive landscape: a distant camera plane, light and foreground atmosphere. */
:root{--scene-x:0;--scene-y:0;--scene-depth:0;background:#17372f;scroll-padding-top:30px}
body{isolation:isolate;background:transparent}.landscape{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;perspective:1400px;background:#17372f}.landscape-camera{position:absolute;inset:-9%;transform:translate3d(calc(var(--scene-x) * -18px),calc(var(--scene-y) * -12px + var(--scene-depth) * -42px),0) scale(1.08) rotateX(calc(var(--scene-y) * .7deg)) rotateY(calc(var(--scene-x) * -1.1deg));transform-origin:50% 55%}.landscape-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 58%;filter:saturate(.88)}.landscape-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,30,28,.8),rgba(8,30,28,.4) 47%,rgba(8,30,28,.04) 80%),linear-gradient(0deg,rgba(7,29,27,.76),transparent 53%,rgba(5,23,23,.36));opacity:calc(.88 + var(--scene-depth) * .12)}.landscape-light{position:absolute;inset:-10%;background:radial-gradient(ellipse at 74% 8%,rgba(255,225,168,.24),transparent 48%);transform:translate3d(calc(var(--scene-x) * 24px),calc(var(--scene-y) * 18px),0);mix-blend-mode:screen}.landscape-mist{position:absolute;inset:-12%;background:radial-gradient(ellipse at 5% 95%,rgba(125,173,158,.19),transparent 47%),radial-gradient(ellipse at 95% 90%,rgba(11,44,31,.5),transparent 46%);transform:translate3d(calc(var(--scene-x) * 34px),calc(var(--scene-y) * 22px + var(--scene-depth) * 35px),0)}
[data-scene-motion=on] .landscape-camera,[data-scene-motion=on] .landscape-mist{will-change:transform}.topbar{max-width:1440px;height:100px;padding:0 46px;color:#fff;border:0}.brand{color:#fff}.brand img{box-shadow:0 0 0 1px #fff3;border-radius:10px}.brand span{color:#d0dfd8;letter-spacing:2px}.desktop-nav{gap:35px}.desktop-nav a{color:#eef5ef;font-size:13px}.desktop-nav a:hover{color:#e9d7b2}.topright{gap:18px}.topright select{background:#fcfbf319;color:#fff;border-color:#fff4;font-size:12px;backdrop-filter:blur(12px);padding:10px 14px}.topright select option{color:#263e34;background:#fff}.motion-toggle{display:flex;align-items:center;gap:7px;padding:9px 0;background:transparent;color:#e2ece5;font-size:11px;font-weight:400;white-space:nowrap}.motion-toggle>span:first-child{font-size:15px}.skip-link{color:#285749}main{max-width:1440px;padding:0 46px}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.8fr);min-height:calc(100svh - 100px);gap:30px;padding:70px 0 130px;align-items:center;color:#fff}.hero-copy{position:relative;z-index:1;padding-bottom:30px}.hero-copy .eyebrow{font-size:12px;letter-spacing:4px;color:#e0d0ad;margin-bottom:27px}.hero-copy .eyebrow>span{width:30px;background:#d7c49e}.hero h1{font-size:clamp(42px,5.1vw,76px);font-weight:500;line-height:1.55;letter-spacing:2px;text-shadow:0 3px 30px #061d2859}.serif-accent{color:#f2e5c9}.hero .intro{color:#edf2eb;font-size:15px;line-height:2.1;letter-spacing:1px;margin-top:25px;text-shadow:0 2px 10px #092f29}.hero-actions{gap:28px;margin-top:38px}.hero-actions .button-link{background:#f2ead9;color:#294e40;border-radius:7px;padding:18px 25px;font-size:14px;gap:38px;box-shadow:0 8px 24px #08291b2b}.hero-demo{color:#f2f5ef;font-size:13px;font-weight:400}.hero-demo span{margin-left:12px}.journey-peek{position:relative;justify-self:end;align-self:end;width:100%;max-width:330px;margin:0 12px 50px 0;padding:24px;border:1px solid #ffffff7d;border-radius:18px;background:linear-gradient(135deg,#fffdf331,#d8e8e014);backdrop-filter:blur(18px);box-shadow:0 28px 60px #041c2b38,inset 0 1px #ffffff50;color:#fff;text-decoration:none;transform:perspective(900px) translate3d(calc(var(--scene-x) * 7px),calc(var(--scene-y) * 5px + var(--scene-depth) * 22px),0) rotateY(-8deg) rotateZ(-3deg);transform-origin:center}.journey-peek:before{content:"";position:absolute;inset:8px -7px -9px 8px;z-index:-1;border:1px solid #ffffff30;border-radius:18px;transform:rotate(4deg);pointer-events:none}.peek-heading{display:flex;justify-content:space-between;align-items:center;font-size:13px;letter-spacing:2px}.peek-arrow{display:grid;place-items:center;border:1px solid #fff6;width:30px;height:30px;border-radius:50%;font-size:17px}.journey-peek svg{width:100%;height:90px;margin:24px 0 17px;overflow:visible}.peek-track{stroke:#e8e7d4;stroke-width:1.4;stroke-dasharray:4 6;stroke-dashoffset:calc(var(--scene-depth) * -70)}.journey-peek circle{fill:#f3e1b9;stroke:#fff9;stroke-width:5}.peek-footer{display:flex;justify-content:space-between;align-items:end;gap:15px}.peek-footer p{max-width:215px;font-size:11px;line-height:1.9;color:#f2f3e9}.peek-footer strong{font:38px Georgia,serif;white-space:nowrap}.peek-footer strong span{font:11px "Microsoft JhengHei",sans-serif;margin-left:7px;color:#dce8e0}.scroll-cue{position:absolute;bottom:50px;left:0;display:flex;align-items:center;gap:13px;text-decoration:none;color:#e8ede2;font-size:11px;letter-spacing:2px}.scroll-cue>span{display:grid;place-items:center;width:26px;height:39px;border:1px solid #fff5;border-radius:15px;font-size:16px;letter-spacing:0}
.how-it-works{padding:27px 20px;border:1px solid #ffffff4a;border-radius:14px;background:#173e3747;backdrop-filter:blur(16px);box-shadow:0 18px 45px #051c1a1a;color:#fff}.how-it-works>div{border-color:#fff3}.how-number{color:#e2c998}.how-it-works p>span{color:#e0e8dc}.how-it-works strong{font-size:14px}.how-icon{color:#d9e6d6}.planner-heading{padding-top:80px;color:#fff}.planner-heading h2{font-size:34px}.planner-heading .eyebrow{color:#d2c49f;font-size:11px;letter-spacing:3px}.planner-heading>p{color:#dbe7df;font-size:12px}.privacy-note{background:#f5f5edeb;box-shadow:0 8px 28px #071d2212;margin-bottom:25px}.workspace{gap:24px}.panel{background:#fbfcf7f5;border:1px solid #fff;border-radius:17px;box-shadow:0 14px 45px #071d2420}.map-panel{background:#eaf0e5f5;border:1px solid #ffffffd6;border-radius:17px;box-shadow:0 14px 45px #071d2420}.service-box{background:#fbfcf7ee;padding:15px 20px;border:1px solid #fff9;border-radius:12px}.planning-help{font-size:12px;color:#526548;margin-top:15px;line-height:1.9}.planning-help summary{font-weight:600}.planning-help p{margin-top:10px}.notice{background:#f4f8eefa}.notice.error{background:#fff1eafa}footer{color:#e1e8da;border-color:#fff3}footer p{color:#e1e8da}.footer-brand{color:#fff}.footer-brand span{color:#d1dfd4}.section-title p,.fine-print{color:#586a50}
@media(min-width:1450px){.hero{grid-template-columns:1.6fr .8fr;gap:60px}.hero h1{font-size:74px}.journey-peek{margin-bottom:70px}.workspace{grid-template-columns:360px minmax(0,1fr)}}
@media(max-width:1120px){.topbar{padding:0 30px}.desktop-nav{gap:23px}.topright{gap:14px}main{padding:0 30px}.hero{grid-template-columns:minmax(0,1.5fr) minmax(215px,.75fr);gap:25px}.hero h1{font-size:clamp(40px,5.1vw,56px);letter-spacing:1px}.journey-peek{padding:20px;margin-right:0}.hero-actions{gap:19px}.hero-actions .button-link{gap:24px}.motion-label{display:none}.workspace{grid-template-columns:300px minmax(0,1fr);gap:19px}.how-it-works strong{font-size:13px}}
@media(max-width:850px){.hero{grid-template-columns:minmax(0,1fr) 230px;gap:15px}.hero h1{font-size:37px}.hero-actions{flex-wrap:wrap;gap:14px}.hero .intro{font-size:14px}.journey-peek{padding:18px;margin-bottom:35px}.peek-footer p{font-size:10px}.workspace{grid-template-columns:270px minmax(0,1fr);gap:16px}.how-it-works{padding:22px 15px}}
@media(max-width:680px){:root{scroll-padding-top:69px}.topbar{height:78px;padding:0 23px}.brand strong{font-size:23px}.topright select{padding:9px 12px;max-width:116px}.motion-toggle{display:none}main{padding:0 22px}.hero{display:flex;flex-direction:column;align-items:stretch;justify-content:center;min-height:calc(100svh - 78px);padding:50px 0 90px;gap:35px}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:10px;letter-spacing:3px;margin-bottom:22px}.hero h1{font-size:clamp(33px,9.7vw,48px);line-height:1.6;letter-spacing:.5px}.hero .intro{font-size:13px;line-height:2;margin-top:22px;letter-spacing:.5px}.hero-actions{margin-top:28px;gap:20px;flex-wrap:nowrap}.hero-actions .button-link{font-size:12px;padding:16px 19px;gap:20px;white-space:nowrap}.hero-demo{font-size:11px;padding:10px 0;white-space:nowrap}.hero-demo span{margin-left:6px}.journey-peek{align-self:flex-end;width:235px;margin:0 5px 0 0;padding:16px 19px;transform:rotate(-3deg)}.peek-heading{font-size:11px;letter-spacing:1px}.peek-arrow{width:24px;height:24px;font-size:15px}.journey-peek svg{height:47px;margin:13px 0 11px}.peek-footer p{font-size:10px;max-width:148px}.peek-footer strong{font-size:30px}.scroll-cue{bottom:27px;font-size:10px;letter-spacing:1px;gap:10px}.scroll-cue>span{width:22px;height:32px}.landscape-camera{inset:-5%;transform:scale(1.08)}.landscape-photo{object-position:63% center}.landscape-shade{background:linear-gradient(90deg,#092e2dc4,#163c3652),linear-gradient(0deg,#062e2acd,transparent 45%,#12353470);opacity:1}.landscape-light{opacity:.6}.how-it-works{padding:21px 16px;gap:15px;border-radius:12px}.how-it-works strong{font-size:12px}.how-it-works p>span{font-size:11px;line-height:1.9;color:#e0e8dc}.planner-heading{padding:50px 0 20px}.planner-heading h2{font-size:27px}.planner-heading .eyebrow{font-size:10px}.privacy-note{font-size:12px;margin-bottom:20px}.workspace{grid-template-columns:1fr;gap:18px}.panel{padding:22px}.mobile-jumps{background:#f7f9f0f5;box-shadow:0 10px 30px #09272026}.service-box{padding:15px 19px}footer{margin-top:40px}}
@media(max-width:370px){main{padding:0 18px}.topbar{padding:0 18px}.hero h1{font-size:32px}.hero-actions{gap:14px}.hero-actions .button-link{gap:14px;padding:15px 16px}.hero-demo{font-size:10px}.journey-peek{width:221px}.panel{padding:18px}}
@media(prefers-reduced-motion:reduce){.landscape-camera,.landscape-light,.landscape-mist{transform:none!important;will-change:auto!important}.journey-peek{transform:none}.landscape-camera{inset:-5%}}

#inspiration{scroll-margin-top:100px}
@media(max-width:680px){#inspiration{scroll-margin-top:78px}}

.peek-footer p{min-width:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.peek-footer strong{flex:0 0 auto}

.collection,.planning{grid-template-columns:minmax(0,1fr)}.panel,.map-panel{min-width:0;overflow-wrap:anywhere}.query-title>span{min-width:0;overflow-wrap:anywhere}.query-title button{flex-shrink:0}.endpoints label{min-width:0}.google-link{min-width:0;overflow-wrap:anywhere}

.page-top{position:absolute;top:0;left:0;width:1px;height:1px;pointer-events:none}
:root { color-scheme: light; }
[hidden] { display: none !important; }
.stat strong.maps-stat { font-size: 15px; line-height: 2; white-space: nowrap; }
.account-link { color: inherit; font-size: 13px; max-width: 130px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.member-gate { max-width: 900px; margin: 24px auto 55px; padding: 52px 32px 36px; text-align: center; border: 1px solid #fff9; background: #f9faf4ee; border-radius: 28px; box-shadow: 0 25px 80px #173c3e24; }
.member-gate h2 { font-size: clamp(25px, 4vw, 36px); letter-spacing: -.04em; margin: 16px 0; }
.member-gate > p:not(.eyebrow) { line-height: 1.9; color: #53665d; }
.member-emblem { margin: auto; width: 64px; height: 64px; border-radius: 50%; display: grid; place-items: center; font-size: 42px; color: #36634e; background: #e8eee2; }
.google-login { display: inline-flex; gap: 18px; align-items: center; padding: 15px 28px; background: #fff; border: 1px solid #d4ded5; box-shadow: 0 4px 12px #2546380c; color: #253e31; margin: 14px auto 8px; }
.google-login span { font-family: Arial,sans-serif; color: #4285f4; font-size: 22px; font-weight: 700; }
.member-benefits { display: flex; gap: 28px; flex-wrap: wrap; justify-content: center; font-size: 12px; color: #596e60; margin-top: 28px; padding-top: 24px; border-top: 1px solid #dce3d6; }
#member-gate { max-width: none; padding: 28px 30px; margin-bottom: 24px; text-align: left; }
.guest-invitation { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 30px; }
.guest-invitation h2 { font-size: 27px; margin: 8px 0 10px; }
.guest-invitation p { font-size: 12px; line-height: 1.9; color: #61705a; }
.guest-invitation .member-benefits { justify-content: start; padding-top: 12px; margin-top: 12px; gap: 14px; }
.member-library { margin: 20px 0; }
.member-top,.drive-connection { display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.member-top h2 { margin: 7px 0; }
.drive-connection { background: #edf2e9; border-radius: 14px; padding: 20px; margin: 18px 0; }
.drive-connection p { max-width: 710px; font-size: 12px; line-height: 1.8; color: #51634f; margin: 6px 0 0; }
.drive-connection button { flex-shrink: 0; }
.save-controls { display: flex; align-items: end; gap: 12px; }
.save-controls label { flex: 1; font-size: 12px; color: #566350; }
.save-controls input { margin-top: 7px; }
.library-actions { display: flex; gap: 8px; flex-wrap: wrap; margin: 16px 0; }
.trip-library { border-top: 1px solid #dce3d6; padding-top: 15px; margin-top: 18px; }
.trip-library summary { cursor: pointer; padding: 8px 0; }
.import-backup { display: flex; gap: 8px; align-items: center; border: 1px solid #d8ded5; padding: 8px; border-radius: 8px; font-size: 12px; flex-wrap: wrap; }
.import-backup input { width: 190px; max-width: 100%; font-size: 11px; padding: 0; border: 0; }
.saved-trip { display: flex; flex-direction: column; align-items: start; width: 100%; padding: 16px; margin: 8px 0; gap: 7px; text-align: left; overflow-wrap: anywhere; }
.saved-trip span { font-size: 12px; color: #65725e; }
.saved-trip small { font-size: 11px; color: #60705e; font-weight: 400; }
.recent-library { margin-top: 26px; padding-top: 22px; border-top: 1px solid #dce3d6; }
.library-heading { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; }
.library-heading span { font-size: 11px; color: #6c7a62; }
.recent-trips { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
.recent-trips .saved-trip { background: #f0f4e8; border-radius: 14px; min-height: 128px; justify-content: center; }
.trip-search { display: flex; align-items: end; gap: 10px; margin: 18px 0; }
.trip-search label { flex: 1; }
.error-text { color: #963e30 !important; }
.member-confirm { border: 1px solid #dbe3d7; border-radius: 22px; background: #fafcf5; color: #2b4a37; padding: 28px; max-width: min(460px, calc(100vw - 32px)); box-shadow: 0 20px 90px #17332766; }
.member-confirm::backdrop { background: #122b2a8c; backdrop-filter: blur(4px); }
.member-confirm p { line-height: 1.9; margin: 18px 0 24px; font-size: 14px; }
.member-confirm .actions { display: flex; flex-wrap: wrap; gap: 10px; }
.member-confirm button { min-height: 44px; }
@media (max-width: 680px) {
  .guest-invitation { grid-template-columns: 1fr; gap: 8px; }
  #member-gate { padding: 24px 20px; }
  .guest-invitation .google-login { width: 100%; padding: 14px 12px; }
  .recent-trips { grid-template-columns: 1fr; gap: 0; }
  .recent-trips .saved-trip { min-height: 108px; }
  .trip-search { flex-wrap: wrap; }
  .trip-search label { flex-basis: 100%; }
  .member-gate { padding: 32px 20px; border-radius: 20px; }
  .member-benefits { gap: 12px; }
  .drive-connection,.save-controls { align-items: stretch; flex-direction: column; gap: 12px; }
  .save-controls button,.drive-connection button { min-height: 44px; }
  .account-link { max-width: 72px; }
  .member-top { align-items: start; }
  .member-top h2 { font-size: 21px; }
  #member-email { overflow-wrap: anywhere; }
}
@media print {
  .recent-library { display: none !important; }
  .landscape,.topbar,.hero,.how-it-works,.planner-heading,.privacy-note,.mobile-jumps,.collection,.map-panel,.member-gate,.member-top,.drive-connection,.save-controls button,.trip-library,#member-status,#notice,footer,.stop-controls,.actions,.planning-help,.stop-links { display: none !important; }
  body,main,.panel { color: #111 !important; background: #fff !important; box-shadow: none !important; }
  main { max-width: none !important; margin: 0 !important; padding: 0 !important; }
  .workspace { display: block !important; }
  .member-library { padding: 0 !important; margin: 0 0 16px !important; border: none !important; }
  .stop { break-inside: avoid; }
  input,select { color: #111 !important; border-color: #ddd !important; }
}

.legal-page{background:#eef1e7;color:#244b40}.legal{max-width:820px;margin:48px auto;padding:42px;line-height:1.9}.legal h1{font-size:clamp(28px,5vw,42px);margin:14px 0 28px}.legal h2{font-size:21px;margin-top:32px}.legal p{margin:16px 0}.legal a{color:inherit}.legal .primary{color:white}.footer-policies{font-size:12px}.footer-policies a{color:inherit}@media(max-width:700px){.legal{margin:16px;padding:24px}footer{flex-wrap:wrap}}
