.trip-planner-page{--tp-ink:#102b2f;--tp-teal:#0b7d6f;--tp-teal-dark:#075e55;--tp-gold:#d9a84e;--tp-mist:#f1f8f6;--tp-line:#d7e6e2;--tp-muted:#5f7073;background:#fff;color:var(--tp-ink)}.trip-planner-page main{padding:0}.trip-planner-page h1,.trip-planner-page h2,.trip-planner-page h3{color:var(--tp-ink);line-height:1.25}.tp-hero{padding:168px 0 82px;background:radial-gradient(circle at 15% 20%,rgba(217,168,78,.15),transparent 25rem),linear-gradient(145deg,#eaf7f3,#fff 56%,#f9f2e6);text-align:center;border-bottom:1px solid var(--tp-line)}.tp-hero .container{max-width:920px}.tp-eyebrow,.tp-kicker,.tp-section-head>span{color:var(--tp-teal);font-size:.84rem;font-weight:800;letter-spacing:.02em}.tp-kicker span{display:inline-block;margin-left:7px;padding:4px 12px;border-radius:999px;background:var(--tp-teal);color:#fff}.tp-hero h1{max-width:760px;margin:22px auto 18px;font-size:clamp(2.2rem,6vw,4.8rem)}.tp-hero h1 em{color:var(--tp-teal);font-style:normal}.tp-hero>.container>p{max-width:700px;margin:0 auto;color:var(--tp-muted);font-size:clamp(1rem,2vw,1.2rem)}.tp-hero-points{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;margin-top:30px;color:#345054;font-weight:700}.tp-builder{padding:78px 0 90px}.tp-section-head{max-width:680px;margin:0 auto 34px;text-align:center}.tp-section-head h2{margin:8px 0 10px;font-size:clamp(1.8rem,4vw,2.7rem)}.tp-section-head p{color:var(--tp-muted)}.tp-workspace{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);grid-gap:24px;gap:24px;align-items:start;max-width:1180px;margin:0 auto}.tp-form,.tp-result{border:1px solid var(--tp-line);border-radius:24px;background:#fff;box-shadow:0 18px 50px rgba(16,43,47,.08)}.tp-form{padding:clamp(22px,4vw,38px)}.tp-grid{display:grid;grid-gap:16px;gap:16px;margin-bottom:18px}.tp-grid--two{grid-template-columns:repeat(2,1fr)}.tp-grid--four{grid-template-columns:repeat(4,1fr)}.tp-grid--budget{grid-template-columns:1.4fr .65fr .8fr}.tp-form label{display:grid;grid-gap:8px;gap:8px;color:#27464a;font-size:.9rem;font-weight:700}.tp-form label>span{color:#a14b3d}.tp-form input,.tp-form select,.tp-form textarea{width:100%;min-height:48px;padding:11px 13px;border:1px solid #c9dad6;border-radius:11px;background:#fcfefd;color:var(--tp-ink);font:inherit;font-weight:500;outline:none}.tp-form textarea{resize:vertical;line-height:1.65}.tp-form input[inputmode=numeric]{font-family:Arial,sans-serif;font-feature-settings:"lnum";font-variant-numeric:lining-nums}.tp-form input:focus,.tp-form select:focus,.tp-form textarea:focus{border-color:var(--tp-teal);box-shadow:0 0 0 3px rgba(11,125,111,.12)}.tp-form small{color:var(--tp-muted);font-weight:500}.tp-interests{margin:6px 0 20px;border:0}.tp-interests legend{margin-bottom:10px;color:#27464a;font-size:.9rem;font-weight:800}.tp-chips{display:flex;flex-wrap:wrap;gap:8px}.tp-chips button{padding:8px 14px;border:1px solid var(--tp-line);border-radius:999px;background:#fff;color:#35575a;font:inherit;cursor:pointer}.tp-chips button.is-active,.tp-chips button:hover{border-color:var(--tp-teal);background:var(--tp-mist);color:var(--tp-teal-dark)}.tp-chips button.is-active:before{content:"✓ ";font-weight:900}.tp-actions{display:flex;gap:10px;margin-top:22px}.tp-primary,.tp-result button,.tp-result-actions a,.tp-secondary{min-height:47px;padding:11px 18px;border-radius:11px;font:inherit;font-weight:800;cursor:pointer;text-align:center}.tp-primary{flex:1 1;border:1px solid var(--tp-teal);background:var(--tp-teal);color:#fff}.tp-primary:hover{background:var(--tp-teal-dark)}.tp-primary:disabled{cursor:wait;opacity:.65}.tp-secondary{border:1px solid var(--tp-line);background:#fff;color:var(--tp-teal-dark)}.tp-secondary:disabled{cursor:not-allowed;opacity:.5}.tp-privacy{margin-top:13px;color:var(--tp-muted);font-size:.79rem;text-align:center}.tp-result{position:-webkit-sticky;position:sticky;top:110px;min-height:570px;padding:28px;background:var(--tp-ink);color:#eaf5f3;overflow:hidden}.tp-empty{display:grid;min-height:500px;place-content:center;text-align:center}.tp-empty>span{color:var(--tp-gold);font-size:3rem}.tp-empty h2{margin:12px 0;color:#fff;font-size:1.55rem}.tp-empty p{max-width:380px;color:#a9c1c1}.tp-result-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:20px}.tp-result-head span{color:#82d5c6;font-size:.78rem;font-weight:800}.tp-result-head h2{margin-top:3px;color:#fff;font-size:1.55rem}.tp-result-head button{border:0;background:var(--tp-gold);color:#172a2c}.tp-result pre{max-height:390px;padding:20px;overflow:auto;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.055);color:#eef9f7;white-space:pre-wrap;word-break:break-word;font-family:Cairo,sans-serif;font-size:.84rem;line-height:1.8}.tp-result-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.tp-result-actions a,.tp-result-actions button{min-height:40px;padding:8px 12px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;font-size:.8rem;text-decoration:none}.tp-result-actions a:hover,.tp-result-actions button:hover{border-color:#82d5c6;color:#82d5c6}.tp-status{margin-top:14px;color:#b7d4d0;font-size:.82rem}.tp-how{padding:80px 0;background:var(--tp-mist)}.tp-steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;max-width:1050px;margin:0 auto}.tp-steps article{padding:28px;border:1px solid var(--tp-line);border-radius:18px;background:#fff}.tp-steps b{color:var(--tp-gold);font-size:1.5rem}.tp-steps h3{margin:13px 0 7px}.tp-steps p{color:var(--tp-muted)}.tp-api{padding:86px 0;background:#102b2f;color:#c8dcda}.tp-api-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:50px;gap:50px;align-items:center}.tp-api h2{margin:8px 0 12px;color:#fff;font-size:clamp(1.9rem,4vw,2.8rem)}.tp-api-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.tp-api-links a{padding:9px 14px;border:1px solid rgba(255,255,255,.2);border-radius:9px;color:#fff;font-weight:700;text-decoration:none}.tp-api-links a:hover{border-color:var(--tp-gold);color:var(--tp-gold)}.tp-api pre{padding:24px;overflow-x:auto;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#0a2023;color:#a7e7dc;text-align:left;font-size:.87rem;line-height:1.8}.tp-faq{padding:86px 0}.tp-faq-inner{max-width:820px}.tp-faq details{border-bottom:1px solid var(--tp-line)}.tp-faq summary{padding:20px 4px;color:var(--tp-ink);font-weight:800;cursor:pointer}.tp-faq details p{padding:0 4px 20px;color:var(--tp-muted)}@media (max-width:980px){.tp-workspace{grid-template-columns:1fr}.tp-result{position:static;min-height:390px}.tp-empty{min-height:330px}.tp-grid--four{grid-template-columns:repeat(2,1fr)}}@media (max-width:700px){.tp-hero{padding:130px 0 60px}.tp-api,.tp-builder,.tp-faq,.tp-how{padding:60px 0}.tp-api-grid,.tp-grid--budget,.tp-grid--two,.tp-steps{grid-template-columns:1fr}.tp-api-grid{gap:28px}.tp-actions{flex-direction:column}.tp-primary,.tp-secondary{width:100%}}@media (max-width:430px){.tp-grid--four{grid-template-columns:1fr}.tp-form,.tp-result{border-radius:16px;padding:20px}.tp-result-head{align-items:flex-start;flex-direction:column}}@media (prefers-reduced-motion:reduce){.trip-planner-page *{scroll-behavior:auto!important}}