:root{--ink:#172d2b;--muted:#647874;--green:#164b40;--green2:#277667;--lime:#d7ed93;--paper:#f3f5f1;--white:#fff;--line:#d9e4de;--soft:#edf4ef;--shadow:0 16px 46px #193d3110;font-family:Arial,'Helvetica Neue',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(ellipse at 9% -20%,#e3eddf 0,transparent 43%),var(--paper)}a{color:inherit;text-decoration:none}.topbar{height:64px;display:flex;align-items:center;gap:32px;padding:0 max(24px,calc((100vw - 1240px)/2));border-bottom:1px solid #e1e8e2;background:#f8faf6dc;backdrop-filter:blur(12px);position:sticky;top:0;z-index:5}.brand{display:inline-flex;gap:9px;align-items:center;font-size:17px;font-weight:800;letter-spacing:-.6px;color:var(--green)}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--green);color:var(--lime);font-size:15px}.brand-light{font-weight:500;color:#788983}.topbar nav{display:flex;gap:24px;align-items:center;margin-left:auto;color:#657771;font-size:12px;font-weight:600}.topbar nav a:hover,.footer-brand:hover{color:var(--green2)}.language{border:1px solid var(--line);background:white;border-radius:9px;padding:7px 11px;color:var(--green);font-weight:600;font-size:11px;cursor:pointer}.workspace,.results,.next-step,.method{max-width:1240px;margin:0 auto}.workspace{padding:36px 25px 22px;display:grid;grid-template-columns:minmax(280px,.78fr) minmax(560px,1.22fr);gap:30px;align-items:center}.eyebrow,.step-label,.card-kicker,.next-kicker{font-size:9px;font-weight:700;letter-spacing:1.4px;color:var(--green2)}.eyebrow{display:flex;align-items:center;gap:8px;margin-bottom:13px}.pulse{height:7px;width:7px;background:#a8c964;border-radius:50%;box-shadow:0 0 0 4px #eaf0db}.intro h1{font-size:clamp(29px,3.1vw,42px);line-height:1.08;letter-spacing:-1.7px;max-width:440px;margin:0 0 11px}.intro-copy{font-size:13px;line-height:1.55;color:#687973;max-width:430px;margin:0 0 14px}.trust-note{display:flex;align-items:center;gap:8px;color:#6d7d76;font-size:10px;line-height:1.4}.mini-icon{width:16px;height:16px;border-radius:50%;display:grid;place-items:center;background:#e6ece3;color:#3a6e5d;font-weight:700;font-size:10px}.planner-card{background:#fff;border:1px solid #e2e9e3;border-radius:17px;padding:19px 21px 16px;box-shadow:var(--shadow)}.form-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.step-label{font-size:9px;letter-spacing:1.45px;color:#668076}.form-head h2{font-size:18px;letter-spacing:-.4px;margin:4px 0 0}.private-badge{display:flex;align-items:center;gap:6px;padding:7px 9px;border-radius:20px;background:#f3f7eb;color:#60734e;font-size:9px;font-weight:600}.lock-dot{display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:#dfecc0;color:#48612e;font-size:9px}.form-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:10px 12px}.field{display:flex;flex-direction:column;gap:6px;min-width:0;color:#586d66;font-size:10px;font-weight:700}.field select,.input-wrap{width:100%;height:39px;border:1px solid #d8e1da;border-radius:9px;background:#fcfdfb;color:var(--ink);font-size:12px}.field select{padding:0 28px 0 10px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236d7d76' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.input-wrap{display:flex;align-items:center;padding:0 10px;gap:7px}.currency{font-size:14px;color:#698078}.input-wrap input{border:0;outline:0;width:100%;min-width:0;background:transparent;color:var(--ink);font-size:16px;font-weight:700}.per-month{white-space:nowrap;color:#87948e;font-size:9px;font-weight:500}.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px}.form-helper{font-size:9px;color:#84918c;margin:0}.compare-button{height:40px;min-width:185px;border:0;border-radius:9px;background:var(--green);color:#f8f9ee;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:14px;cursor:pointer}.compare-button:hover{background:#236553}.results{padding:12px 25px 0}.results-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.results-head h2{font-size:18px;letter-spacing:-.4px;margin:0}.membership-callout{display:flex;align-items:center;gap:14px;padding:9px 11px;border-radius:11px;background:#173e37;color:#f7f7eb}.membership-callout>div{display:grid;gap:3px}.membership-callout span{font-size:9px;color:#d6e1d4}.membership-callout strong{font-size:13px;color:#e0f2ae}.membership-callout>a{white-space:nowrap;border:1px solid #95ac96;border-radius:7px;padding:7px 9px;color:#f4f7e7;font-size:9px;font-weight:700}.membership-callout>a:hover{background:#28564c}.demo-chip{display:flex;align-items:center;gap:7px;font-size:9px;font-weight:700;color:#687b71;background:#e9efe4;padding:7px 9px;border-radius:30px}.demo-dot{width:6px;height:6px;border-radius:50%;background:#c08346}.budget-context{font-size:11px;color:#647874;margin:0 0 11px}.city-comparison{display:grid;grid-template-columns:1fr 1fr;gap:13px}.city-card{border:1px solid var(--line);border-radius:15px;background:white;overflow:hidden}.city-card-head{display:flex;align-items:center;justify-content:space-between;padding:13px 15px 10px;border-bottom:1px solid #edf0e9;gap:8px}.city-name{font-size:15px;font-weight:700;letter-spacing:-.3px}.city-country{margin-top:3px;color:#7c8b84;font-size:9px}.city-status{text-align:right;color:#477767;font-size:9px;font-weight:700;white-space:nowrap}.affordability{display:inline-flex;align-items:center;padding:6px 8px;border-radius:7px;background:#eaf3e7;color:#426e58;font-size:8px;font-weight:700;white-space:nowrap}.affordability.over{background:#f2eee5;color:#86734e}.photo-wrap{display:block;position:relative;height:155px;overflow:hidden;background:#e8efeb}.photo-wrap img{width:100%;height:100%;object-fit:cover;display:block}.photo-image-link{display:block;width:100%;height:100%}.photo-credit a{color:#fff;text-decoration:underline}.photo-credit{position:absolute;left:0;right:0;bottom:0;padding:20px 10px 8px;color:#fff;font-size:8px;text-shadow:0 1px 3px #000;background:linear-gradient(transparent,#0008);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-empty{display:grid;place-items:center;color:#74857f;font-size:11px}.city-inner{padding:12px 15px 13px}.rent-highlight{background:#f0f6ee;border:1px solid #e3ecde;border-radius:11px;padding:11px 12px;display:grid;gap:5px}.rent-highlight>span{font-size:9px;font-weight:700;color:#668076}.rent-highlight strong{font-size:24px;letter-spacing:-.8px;color:var(--green)}.rent-highlight strong small{font-size:11px;letter-spacing:0;font-weight:500;color:#74847c}.rent-highlight em{font-style:normal;font-size:9px;color:#66766f;line-height:1.4}.price-meta{display:block;font-size:8px;line-height:1.45;color:#86938d;margin-top:2px}.missing-rent{border:1px dashed #d5dfd8;background:#f8faf7;border-radius:10px;padding:12px;color:#647874;font-size:10px;line-height:1.45}.item-prices{margin-top:12px}.item-prices h4{font-size:10px;margin:0 0 5px;color:#62756d}.price-item{display:flex;align-items:start;justify-content:space-between;gap:9px;padding:7px 0;border-bottom:1px solid #edf1ed;font-size:9px;line-height:1.4}.price-item span{color:#556b63}.price-item span small{display:block;color:#89958f;font-size:8px}.price-item strong{white-space:nowrap;font-size:10px;color:#314b42}.city-footer{margin-top:10px;padding-top:9px;border-top:1px solid #edf0e9;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#89948d;font-size:8px}.city-footer a{font-size:9px;color:var(--green2);font-weight:700}.planning-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:13px}.planning-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}.card-title-row{display:flex;align-items:center;gap:9px}.icon-box{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;font-weight:800}.visa-icon{background:#ecf1e5;color:#48715e}.health-icon{background:#e7f0ed;color:#377b71}.card-kicker{font-size:8px;letter-spacing:1.1px;color:#839089}.planning-card h3{font-size:13px;margin:2px 0 0}.planning-copy{font-size:9px;line-height:1.45;color:#718078;margin:8px 0}.text-link{font-size:9px;color:var(--green2);font-weight:700}.text-link:hover{text-decoration:underline}.data-footnote{display:flex;gap:9px;align-items:flex-start;border:1px solid #e4e5d8;background:#f0f0e7;border-radius:10px;padding:9px 11px;margin-top:12px;color:#6d756b}.footnote-mark{width:15px;height:15px;flex:0 0 15px;display:grid;place-items:center;border-radius:50%;background:#e0e3d4;color:#6d795f;font-size:9px;font-weight:700}.data-footnote p{font-size:9px;line-height:1.5;margin:0}.next-step{margin:18px auto 0;padding:15px 25px;background:#163b35;color:#f5f4ea;display:flex;align-items:center;justify-content:space-between;gap:16px}.next-kicker{color:#c1d69a;font-size:8px}.next-copy h2{font-size:14px;letter-spacing:-.3px;margin:4px 0}.next-copy p{font-size:9px;color:#c2d1c9;margin:0}.feedback-button{white-space:nowrap;border:1px solid #a0b994;border-radius:8px;padding:9px 12px;color:#eff4d4;font-size:9px;font-weight:700}.feedback-button:hover{background:#28564c}.method{padding:30px 25px 32px}.method-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:13px}.method-head h2{font-size:19px;letter-spacing:-.6px;margin:3px 0 0}.source-summary{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;color:#687973;font-size:10px;line-height:1.6}.source-summary p{margin:0 0 7px}.source-summary p:last-child{margin:0}.source-summary a{color:var(--green2);font-weight:700;text-decoration:underline}footer{border-top:1px solid #e0e5dd;min-height:58px;padding:11px max(24px,calc((100vw - 1240px)/2));display:flex;align-items:center;gap:16px;color:#79867e}footer .brand{font-size:12px}footer .brand-mark{width:22px;height:22px;font-size:12px;border-radius:7px}footer p{font-size:8px;margin:0 auto 0 0}footer>a:last-child{font-size:9px;font-weight:700;color:var(--green2)}[data-lang="zh"]{font-family:Arial,'PingFang SC','Microsoft YaHei',sans-serif}@media(max-width:980px){.workspace{grid-template-columns:1fr;gap:15px;align-items:start;padding-top:25px}.intro{max-width:700px}.intro h1{max-width:620px}.topbar{gap:17px}.form-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:660px){.topbar{height:56px;padding:0 14px;gap:9px}.brand{font-size:14px;gap:7px}.brand-mark{width:24px;height:24px}.topbar nav{gap:11px;font-size:9px}.topbar nav a:nth-child(2){display:none}.language{padding:6px 8px;font-size:9px}.workspace{padding:21px 14px 16px;gap:13px}.intro h1{font-size:29px;letter-spacing:-1.1px;max-width:380px}.intro-copy{font-size:11px;margin-bottom:10px}.trust-note{font-size:8px}.planner-card{padding:14px 12px 12px;border-radius:13px}.form-head{margin-bottom:11px}.form-head h2{font-size:15px}.private-badge{font-size:8px;padding:6px 7px}.form-grid{grid-template-columns:1fr 1fr;gap:9px}.field{font-size:9px}.field select,.input-wrap{height:36px;font-size:11px}.input-wrap input{font-size:14px}.per-month{font-size:8px}.form-bottom{align-items:stretch;flex-direction:column;margin-top:11px;gap:8px}.compare-button{width:100%;height:38px}.form-helper{font-size:8px}.results{padding:8px 14px 0}.results-head{align-items:start;flex-direction:column}.results-head h2{font-size:15px}.membership-callout{width:100%;justify-content:space-between}.demo-chip{font-size:7px;padding:6px 7px}.city-comparison{grid-template-columns:1fr;gap:9px}.city-card-head{padding:11px 12px 8px}.photo-wrap{height:170px}.city-inner{padding:10px 12px 11px}.planning-grid{grid-template-columns:1fr;gap:9px;margin-top:9px}.planning-card{padding:12px}.next-step{margin:14px 0 0;padding:14px;align-items:flex-start;flex-direction:column}.feedback-button{align-self:stretch;text-align:center}.method{padding:23px 14px}.method-head{display:block;margin-bottom:9px}.method-head h2{font-size:17px}footer{padding:10px 14px;gap:8px;flex-wrap:wrap}footer p{order:3;width:100%;margin:0}footer>a:last-child{margin-left:auto}}

/* Account entry and local-preview sign-in dialog */
.account-button{border:0;border-radius:9px;background:var(--green);color:white;padding:9px 12px;font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap}.account-button:hover{background:#236553}.auth-overlay[hidden]{display:none}.auth-overlay{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:#10231fc2;backdrop-filter:blur(6px)}.auth-dialog{position:relative;width:min(100%,410px);max-height:min(92vh,760px);overflow:auto;background:#fff;border:1px solid #e2e9e3;border-radius:20px;padding:28px 30px 22px;box-shadow:0 24px 80px #061c1760}.auth-close{position:absolute;right:16px;top:13px;width:32px;height:32px;border:0;border-radius:50%;background:#f1f5f1;color:#52675e;font-size:23px;line-height:1;cursor:pointer}.auth-brand{display:flex;align-items:center;gap:9px;color:var(--green);font-size:15px;font-weight:800;letter-spacing:-.5px}.auth-kicker{margin-top:24px;color:var(--green2);font-size:9px;font-weight:800;letter-spacing:1.25px}.auth-dialog h2{margin:7px 0;font-size:22px;letter-spacing:-.7px;line-height:1.2}.auth-copy{margin:0 0 18px;color:var(--muted);font-size:12px;line-height:1.5}.google-button{width:100%;height:44px;display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid #d6dfda;border-radius:10px;background:#fff;color:#2d3e39;font-size:12px;font-weight:700;cursor:pointer}.google-button:hover{background:#f8faf8}.google-g{font-family:Arial,sans-serif;font-weight:800;font-size:17px;color:#4285f4}.auth-divider{display:flex;align-items:center;gap:11px;margin:16px 0;color:#87948e;font-size:10px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e6ebe7;flex:1}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #e4eae5;margin-bottom:14px}.auth-tab{padding:9px 5px;border:0;border-bottom:2px solid transparent;background:transparent;color:#829089;font-size:11px;font-weight:700;cursor:pointer}.auth-tab.active{border-color:var(--green2);color:var(--green)}.auth-field{display:grid;gap:6px;margin-bottom:11px;color:#566b63;font-size:10px;font-weight:700}.auth-field input{width:100%;height:40px;border:1px solid #d7e1da;border-radius:9px;padding:0 11px;background:#fcfdfb;color:var(--ink);font:400 12px Arial,sans-serif;outline:none}.auth-field input:focus{border-color:#529180;box-shadow:0 0 0 3px #27766720}.auth-submit{width:100%;height:41px;margin-top:3px;border:0;border-radius:9px;background:var(--green);color:#fff;font-size:11px;font-weight:700;cursor:pointer}.auth-submit:hover{background:#236553}.auth-status{margin:12px 0 0;padding:10px;border-radius:8px;background:#f4f6ec;color:#596b46;font-size:10px;line-height:1.5}.auth-prototype-note{margin:13px 0 0;color:#8a9690;font-size:9px;line-height:1.5;text-align:center}.auth-open{overflow:hidden}
@media(max-width:660px){.account-button{padding:7px 8px;font-size:8px}.auth-dialog{padding:24px 20px 18px;border-radius:16px}.auth-kicker{margin-top:19px}.auth-dialog h2{font-size:20px}}

/* Membership is available from the top bar and expands into the contact details. */
.membership-nav{display:flex;align-items:center;gap:6px;white-space:nowrap;border:1px solid #2c6557;border-radius:9px;background:#173e37;color:#f4f6e8;padding:8px 10px;font-size:9px;font-weight:700;cursor:pointer}.membership-nav:hover{background:#225346}.membership-overlay[hidden]{display:none}.membership-overlay{position:fixed;inset:0;z-index:21;display:grid;place-items:center;padding:20px;background:#10231fc2;backdrop-filter:blur(6px)}.membership-dialog{position:relative;width:min(100%,420px);background:#fff;border:1px solid #e2e9e3;border-radius:19px;padding:30px;box-shadow:0 24px 80px #061c1760}.member-dialog-kicker{font-size:9px;font-weight:800;letter-spacing:1.2px;color:var(--green2)}.membership-dialog h2{max-width:320px;margin:8px 0 7px;font-size:23px;line-height:1.2;letter-spacing:-.7px}.member-dialog-copy{margin:0 0 18px;color:var(--muted);font-size:12px;line-height:1.55}.membership-email{display:flex;align-items:center;justify-content:center;min-height:43px;padding:9px 14px;border-radius:9px;background:var(--green);color:#fff;font-size:11px;font-weight:700}.membership-email:hover{background:#236553}.membership-mail-note{margin:12px 0 0;color:#87938d;font-size:9px;line-height:1.5;text-align:center}
@media(max-width:760px){.topbar{gap:8px}.topbar nav{display:none}.membership-nav{gap:4px;padding:7px;font-size:8px}.account-button{padding:8px 8px;font-size:9px}.language{padding:6px 7px;font-size:9px}.topbar .brand{margin-right:auto}}
@media(max-width:390px){.topbar{padding-left:9px;padding-right:9px;gap:5px}.brand{font-size:12px}.brand-mark{width:23px;height:23px}.membership-nav{font-size:7px;padding:6px 5px}.account-button{font-size:8px;padding:7px 5px}.language{font-size:8px;padding:6px 5px}.membership-dialog{padding:25px 20px}}
.membership-field{display:grid;gap:6px;margin:0 0 11px;color:#566b63;font-size:10px;font-weight:700}.membership-field input{height:41px;width:100%;border:1px solid #d7e1da;border-radius:9px;padding:0 11px;background:#fcfdfb;color:var(--ink);font:400 12px Arial,sans-serif;outline:none}.membership-field input:focus{border-color:#529180;box-shadow:0 0 0 3px #27766720}.membership-email{width:100%;border:0;cursor:pointer}.membership-email:disabled{opacity:.65;cursor:wait}.membership-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.membership-status{margin:12px 0 0;padding:10px;border-radius:8px;background:#edf5ec;color:#426e58;font-size:10px;line-height:1.5}.membership-status:not([hidden]){display:block}
.membership-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.membership-notes-field{grid-column:1/-1}.membership-field em{font-size:9px;font-style:normal;font-weight:500;color:#8a9690}.membership-field textarea{width:100%;min-height:70px;resize:vertical;border:1px solid #d7e1da;border-radius:9px;padding:10px 11px;background:#fcfdfb;color:var(--ink);font:400 12px/1.45 Arial,sans-serif;outline:none}.membership-field textarea:focus{border-color:#529180;box-shadow:0 0 0 3px #27766720}
@media(max-width:520px){.membership-form-grid{grid-template-columns:1fr}.membership-notes-field{grid-column:auto}.membership-dialog{max-height:92vh;overflow:auto}}
