@font-face{font-family:Manrope;src:url(../assets/manrope.ttf);font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f8fa;color:#172e38;font-family:Manrope,Arial,sans-serif;line-height:1.6;font-size:16px;--panel:#fff;--line:#dbe7eb;--text:#172e38;--muted:#566f79;--soft:#eff7f7}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}a{color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}[hidden]{display:none!important}:focus-visible{outline:3px solid #986aff;outline-offset:3px}.skip{position:absolute;top:-100px}.skip:focus{top:0;z-index:100;background:white;padding:15px}header{height:110px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:var(--panel);gap:25px}.product-brand{text-decoration:none;line-height:1.2;font-size:17px}.product-brand strong{display:block;font-size:25px;color:#078b90}.brand img{width:215px;height:105px;object-fit:contain;display:block}nav{display:flex;gap:24px;align-items:center;font-size:14px}nav a{text-decoration:none}button{border:1px solid var(--line);border-radius:10px;padding:9px 14px;color:var(--text);background:var(--panel)}nav button{border-radius:24px}.hero{height:315px;position:relative;overflow:hidden;background:#06484e;color:white}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 52%;animation:coast 28s ease-in-out infinite alternate}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#06343bed, #06343b99 40%,#06343b00 75%)}.hero>div{position:relative;z-index:1;padding:29px 7%}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:800;color:#087e80;margin:0 0 10px}.hero .eyebrow{color:#9bffde}.hero h1{font-size:clamp(33px,4.2vw,56px);line-height:1.06;letter-spacing:-.045em;margin:0 0 18px}.hero h1 em{color:#b2ffe7;font-style:normal}.hero p{margin:0;font-size:16px}.scene-note{position:absolute;z-index:1;bottom:15px;right:22px;font-size:12px;color:#fff;text-shadow:0 1px 5px #000}.planner{max-width:1360px;padding:28px 5% 32px;margin:auto}.section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.section-title h2{font-size:30px;line-height:1.2;margin:0;letter-spacing:-.035em}.saved-actions{display:flex;gap:10px}.saved-actions button{font-size:13px}.planning-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:25px}.inputs{min-width:0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:21px;padding:25px;margin-bottom:22px;box-shadow:0 10px 25px #07344405}.panel-title{display:flex;align-items:center;gap:12px;margin-bottom:22px}.step{width:33px;height:33px;border-radius:50%;background:#e0f7ef;color:#00705c;display:grid;place-items:center;font-weight:800;font-size:13px;flex-shrink:0}h3{margin:0;font-size:21px;line-height:1.3}.badge{font-size:11px;color:#58777b;margin-left:auto}.route-heading{display:flex;justify-content:space-between;align-items:center;margin:18px 0 10px;gap:8px}.route-heading button{color:#027c75;font-size:13px;background:#eafaf4;border:none}.place-picker{position:relative;min-width:0}.place-picker label,label{display:block;font-size:14px;font-weight:600}.place-picker input,input,select{width:100%;display:block;background:var(--panel);color:var(--text);padding:12px;border:1px solid #b9cfd6;border-radius:10px;margin-top:6px;min-height:46px}input::placeholder{color:#6a818b;font-size:14px}.suggestions{position:absolute;top:100%;left:0;right:0;z-index:15;max-height:275px;overflow:auto;background:var(--panel);border:1px solid var(--line);box-shadow:0 15px 40px #143b4526;border-radius:12px;padding:5px;list-style:none;margin:5px 0}.suggestions button{display:block;width:100%;text-align:left;border:none;background:none;border-radius:8px;font-size:14px}.suggestions button:hover,.suggestions button:focus{background:var(--soft)}.suggestions button small{display:block;color:var(--muted);font-size:12px}.search-status{font-size:12px;color:var(--muted);margin:5px 0}.manual-place{font-size:12px;padding:5px 8px;margin:5px 0}.stop{display:grid;grid-template-columns:28px minmax(0,1fr) 80px;gap:10px;padding:15px 0;border-top:1px solid var(--line)}.stop-number{margin-top:32px;border-radius:20px;background:#eee7ff;color:#693eb1;font-size:13px;height:27px;display:grid;place-items:center}.stop-tools{grid-column:2/4;display:flex;gap:6px;margin-top:-2px}.stop-tools button{font-size:12px;border:none;color:var(--muted);padding:3px 9px}.help,.attribution{color:var(--muted);font-size:13px;margin:12px 0 0}.attribution{font-size:11px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.check{display:flex;gap:12px;align-items:center;padding:8px 0}.check input{width:19px;height:19px;min-height:0;margin:0;accent-color:#008d80}.primary{background:linear-gradient(105deg,#08756b,#069d9f);color:white;border:none;font-weight:750;width:100%;padding:15px 20px;margin-top:16px;border-radius:12px}.primary:hover{filter:brightness(1.08)}details{border-top:1px solid var(--line);padding-top:16px}summary{cursor:pointer;font-size:14px;font-weight:700;margin-bottom:15px}.result-panel{position:sticky;top:20px}.result-panel h2{font-size:30px;line-height:1.15;letter-spacing:-.025em;margin:0 0 24px}.result-panel p{font-size:15px;color:var(--muted)}.empty-art{display:flex;flex-direction:column;justify-content:flex-end;height:150px;padding:20px;border-radius:12px;background:linear-gradient(90deg,#04433be0,#04433b10),url(../assets/travel-scene.webp) center/cover;color:white}.empty-art strong{font-size:27px}.benefits{list-style:none;padding:0;color:var(--muted);font-size:14px}.benefits li{padding:10px 0;border-bottom:1px solid var(--line)}.preview-note{font-size:13px;color:var(--muted);padding:0 10px}.trip-summary{background:var(--soft);padding:16px;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.trip-summary span{display:block;font-size:12px;color:var(--muted)}.trip-summary strong{font-size:17px}.itinerary{list-style:none;padding:0;margin:25px 0}.itinerary li{padding:0 0 22px 20px;border-left:2px solid #30b4a3;position:relative}.itinerary li:before{content:'';position:absolute;left:-6px;top:7px;width:10px;height:10px;border-radius:50%;background:#30b4a3}.itinerary h4{margin:0;font-size:17px}.itinerary p{margin:4px 0;font-size:13px}.leg{font-size:12px;color:var(--muted);padding:5px 0}.pending{padding:14px;background:#fff6df;border:1px solid #f0ddaf;color:#634d1a;border-radius:12px;font-size:14px}.result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:17px}.result-actions a,.result-actions button{text-decoration:none;padding:11px 14px;border:1px solid var(--line);border-radius:10px;font-size:14px}.result-actions a{background:#07756e;color:white}.checks{font-size:13px;color:var(--muted);padding-left:18px}#error{background:#fff0f0;color:#a32929;padding:15px;border-radius:10px}#save-status{font-size:14px;color:#0c766a}.assurance{max-width:1250px;margin:0 auto 40px;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:20px 5%}.assurance span{font-size:11px;letter-spacing:.08em;color:#078a8e}.assurance h3{margin:10px 0;font-size:21px}.assurance p{font-size:14px;color:var(--muted)}footer{display:flex;align-items:center;gap:30px;padding:25px 5%;border-top:1px solid var(--line);background:var(--panel);font-size:13px}footer p{margin-right:auto}.dark{background:#101f28;color:#e8f3f5;--panel:#192e3a;--text:#edf6f9;--muted:#b3c7d0;--line:#385461;--soft:#223d43}.dark .eyebrow{color:#71dcc6}.dark .pending{color:#ffdc8d;background:#403823;border-color:#6a5c37}.dark .step{background:#254c42;color:#8ee3bc}.dark input,.dark select{border-color:#56747f}@keyframes coast{to{transform:scale(1.065) translateX(-1%)}}@media(max-width:900px){.planning-grid{grid-template-columns:1fr}.result-panel{position:static}.results{min-width:0}.hero{height:300px}.assurance{gap:18px}.badge{display:none}}@media(max-width:600px){header{height:90px;padding:0 5%;gap:10px}.product-brand{font-size:12px}.product-brand strong{font-size:21px}.brand img{width:150px;height:83px}nav a{display:none}nav button{font-size:12px;padding:8px}.hero{height:300px}.hero>div{padding:28px 6%}.hero h1{font-size:36px}.hero>img{object-position:65% center}.hero:after{background:linear-gradient(90deg,#06343be8,#06343b77)}.hero .eyebrow{font-size:10px}.hero p{font-size:15px}.section-title{align-items:flex-start;flex-direction:column}.section-title h2{font-size:27px}.panel{padding:19px;border-radius:16px}.planner{padding:24px 4%}.stop{grid-template-columns:20px minmax(0,1fr) 68px;gap:8px}.field-grid{gap:12px}.assurance{grid-template-columns:1fr;padding:0 6%}.result-panel h2{font-size:27px}.route-heading button{font-size:12px;padding:8px}footer{flex-wrap:wrap;gap:15px}footer p{width:100%;order:4}.result-panel{margin-bottom:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
