@import"https://fonts.googleapis.com/css2?family=Roboto:ital,wdth,wght@0,75..100,100..900;1,75..100,100..900&display=swap";:root{--white: #ffffff;--black: #000000;--navy-blue: #002f63;--bright-blue: #00aeea;--blue: #006ce6;--blue-light: var(--bright-blue);--red: #db2200;--red-light: #ff4614;--green: #008300;--green-light: #00a100;--yellow: #fce228;--note-bg: #fff6d9;--note-border: #faeed0;--text-primary: #293036;--text-secondary: #6b7074;--text-tertiary: #8a8d91;--text-navy: var(--navy-blue);--text-navy-secondary: #5c738c;--text-navy-tertiary: #7d8fa3;--gray-bg-1: #fafbfc;--gray-bg-2: #f5f7f9;--gray-border-1: #e0e6ec;--gray-border-2: #d6dee6;--gray-border-3: #c8d0d8;--blue-bg-1: #f2fafe;--blue-bg-2: #edf7fd;--blue-border-1: #d3e8f5;--blue-border-2: #c9e0ee;--blue-border-3: #bad2e4;--input-border: var(--gray-border-3);--focus-ring: rgba(0, 108, 230, .25);--space-0: 0;--space-05: 2px;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 48px;--space-6: 96px;--radius-sm: 4px;--radius: 6px;--radius-lg: 8px;--radius-xl: 16px;--radius-xxl: 24px;--radius-pill: 50rem;--container-max: 960px;--container-padding: 2rem;--grid-gutter: 2rem;--min-width: 320px;--font-sans: Roboto, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-serif: Merriweather, Georgia, "Times New Roman", Times, serif;--font-system: system-ui, sans-serif;--font-mono: Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}:root --shadow-sm:{"light": "0 0.125rem 0.25rem rgba(0, 0, 0, 0.075)","high-contrast": "0 0 0 1px rgba(0, 0, 0, 0.25)"}:root --shadow-dropdown:{"light": "0 0 0 1px rgba(0, 0, 0, 0.04), 0 1px 2px 0 rgba(0, 0, 0, 0.04), 0 4px 8px 0 rgba(0, 0, 0, 0.04), 0 12px 24px 0 rgba(0, 0, 0, 0.08)","high-contrast": "0 0 0 1px rgba(0, 0, 0, 0.25)"}:root --shadow-calculator:{"light": "0 0 0 1px rgba(0, 0, 0, 0.02), 0 1px 3px 0 rgba(0, 0, 0, 0.04), 0 3px 9px 0 rgba(0, 0, 0, 0.04), 0 6px 18px 0 rgba(0, 0, 0, 0.04)","high-contrast": "0 0 0 1px rgba(0, 0, 0, 0.25)"}[data-theme=high-contrast]{--gray-border-1: #bac2ca;--gray-border-2: #bac2ca;--gray-border-3: #bac2ca;--blue-border-1: #a8c2d7;--blue-border-2: #a8c2d7;--blue-border-3: #a8c2d7;--input-border: var(--text-navy-tertiary)}body{font-family:var(--font-sans);color:var(--text-primary);background:var(--white);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}.tl-link,.tl-btn-link{color:var(--blue);text-decoration:underline;text-decoration-color:#006ce640;text-underline-offset:.125em;text-decoration-thickness:.0625em}.tl-link:hover,.tl-link:focus,.tl-btn-link:hover,.tl-btn-link:focus{text-decoration-color:currentColor}[data-theme=high-contrast] .tl-link,[data-theme=high-contrast] .tl-btn-link{text-decoration-color:currentColor}.tl-btn{display:inline-block;padding:.375rem 1em;font:inherit;font-size:16px;line-height:1.5;font-weight:450;white-space:nowrap;text-align:center;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;transition:background-color .15s,border-color .15s,box-shadow .15s}.tl-btn:focus-visible{outline:0;box-shadow:0 0 0 .25rem var(--focus-ring);border-color:var(--blue)}.tl-btn-primary{color:var(--white);background:var(--blue);border-color:var(--blue)}.tl-btn-primary:hover{background:#005cc4;border-color:#0056b8}.tl-btn-primary:focus-visible{box-shadow:0 0 0 .25rem var(--focus-ring);border-color:var(--navy-blue)}.tl-btn-light{color:var(--blue);background:var(--white);border-color:var(--gray-border-3)}.tl-btn-light:hover{background:var(--gray-bg-2)}.tl-btn-link{background:none;border-color:transparent;padding-left:0;padding-right:0}.tl-btn-lg{padding:.5rem 1em;font-size:20px;border-radius:var(--radius-lg)}.tl-btn:disabled{opacity:.65;cursor:default}.tl-card{background:var(--white);border:1px solid var(--gray-border-2);border-radius:var(--radius-lg);padding:var(--space-3);color:var(--text-primary)}.tl-card-primary{border-color:var(--blue-light);background:var(--blue-bg-2)}.tl-card h3{margin:0 0 var(--space-2);font-size:20px;line-height:1.4;font-weight:500;color:var(--text-primary)}.tl-card p{margin:0}.tl-card .tl-muted{color:var(--text-secondary)}.tl-field{display:flex;flex-direction:column;gap:var(--space-2);max-width:360px}.tl-label{font-weight:600;font-size:16px;line-height:1.5;color:var(--text-primary)}.tl-input{display:block;width:100%;box-sizing:border-box;padding:.375rem .75rem;font:inherit;font-size:16px;line-height:1.5;color:var(--text-primary);background:var(--white);border:1px solid var(--input-border);border-radius:var(--radius);transition:border-color .15s,box-shadow .15s}.tl-input::placeholder{color:var(--text-tertiary)}.tl-input:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 .25rem var(--focus-ring)}.tl-input.is-invalid{border-color:var(--red)}.tl-help{font-size:14px;color:var(--text-secondary)}.tl-error{font-size:14px;color:var(--red)}.tl-note{background:var(--note-bg);border:1px solid var(--note-border);border-radius:var(--radius-lg);padding:var(--space-3);color:var(--text-primary)}.tl-note strong{font-weight:600}*{box-sizing:border-box}body{margin:0;min-width:var(--min-width)}.app{max-width:calc(var(--container-max) + 2 * var(--space-3));margin:0 auto;padding:var(--space-4) var(--space-3) var(--space-5)}.app-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.app-header img{height:42px;max-width:146px}h1{font-size:32px;line-height:40px;font-weight:600;color:var(--navy-blue);margin:0;text-wrap:balance}h1:focus{outline:none}h2{font-size:24px;line-height:32px;font-weight:500;color:var(--navy-blue);margin:var(--space-3) 0 0;text-wrap:balance}h3{text-wrap:balance}p{margin:0;text-wrap:pretty}.lead{font-size:20px;line-height:28px;color:var(--text-secondary)}.small{font-size:14px;line-height:20px;color:var(--text-secondary)}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.spread{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.plain-list{list-style:none;padding:0;margin:0}.plain-fieldset{border:0;padding:0;margin:0;min-width:0}.tl-field{max-width:none}.choice{display:flex;gap:var(--space-2);align-items:center;padding:var(--space-1) 0}.num{font-variant-numeric:tabular-nums}:root{--ease-out: cubic-bezier(.22, 1, .36, 1);--dur-fast: .15s;--dur: .3s;--dur-slow: .7s}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}}@keyframes fill-in{0%{width:0}}.screen-enter{animation:rise-in var(--dur) var(--ease-out) both}.stagger>*{animation:rise-in var(--dur) var(--ease-out) both}.stagger>:nth-child(2){animation-delay:50ms}.stagger>:nth-child(3){animation-delay:.1s}.stagger>:nth-child(4){animation-delay:.15s}.stagger>:nth-child(5){animation-delay:.2s}.stagger>:nth-child(n+6){animation-delay:.25s}.tl-btn,.chip{transition:transform var(--dur-fast) var(--ease-out),background-color var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast)}.tl-btn:active:not(:disabled),.chip:active{transform:translateY(1px) scale(.98)}.tl-note[role=status]{animation:rise-in var(--dur) var(--ease-out) both}[data-inview=false] *,[data-inview=false]{animation-play-state:paused!important}.chip{min-height:44px;padding:0 var(--space-3);font:inherit;font-weight:450;color:var(--text-primary);background:var(--white);border:1px solid var(--gray-border-3);border-radius:var(--radius);cursor:pointer;white-space:nowrap}.chip:hover{background:var(--gray-bg-2)}.chip[aria-pressed=true]{color:var(--blue);background:var(--blue-bg-2);border-color:var(--blue)}.chip:focus-visible{outline:0;box-shadow:0 0 0 .25rem var(--focus-ring);border-color:var(--blue)}.progress{height:8px;background:var(--gray-bg-2);border:1px solid var(--gray-border-1);border-radius:var(--radius-pill);overflow:hidden}.progress-fill{height:100%;background:var(--blue);transition:width var(--dur-slow) var(--ease-out);animation:fill-in var(--dur-slow) var(--ease-out) both}.progress-fill.is-full{background:var(--green)}.split{margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.split-bar{display:flex;height:14px;border-radius:var(--radius-pill);overflow:hidden;gap:2px;background:var(--gray-bg-2)}.split-seg{height:100%;min-width:3px;transition:width var(--dur-slow) var(--ease-out);animation:fill-in var(--dur-slow) var(--ease-out) both}.split-seg.is-principal,.swatch.is-principal{background:var(--navy-blue)}.split-seg.is-interest,.swatch.is-interest{background:var(--blue)}.split-seg.is-own,.swatch.is-own{background:var(--bright-blue)}.schedule summary{cursor:pointer;color:var(--blue);font-weight:450;min-height:44px;display:flex;align-items:center}.schedule-table th[scope=row]{font-weight:400}.schedule-table td{text-align:right}.schedule-table tr.is-paid{color:var(--text-secondary)}@media (max-width: 599px){.schedule-table thead{display:none}.schedule-table tr{display:grid;grid-template-columns:1fr;padding:var(--space-2) 0;border-bottom:1px solid var(--gray-border-1)}.schedule-table th[scope=row],.schedule-table td{border:0;padding:0}.schedule-table th[scope=row]{font-weight:500}.schedule-table td{display:flex;justify-content:space-between;gap:var(--space-2)}.schedule-table td:before{content:attr(data-label);color:var(--text-secondary)}}.risk h3{margin:0 0 var(--space-1);font-size:18px;line-height:24px;color:var(--navy-blue)}.risk ul{margin:0;padding-left:var(--space-4)}.demo-control{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);border:1px dashed var(--gray-border-3);border-radius:var(--radius-lg)}.field-error{color:var(--red);font-size:14px;line-height:20px}.eyebrow{font-size:14px;line-height:20px;font-weight:600;color:var(--blue)}.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--space-3)}.choice-card{justify-content:space-between}.plan caption h2{margin:0}.hero-figure-sm{font-size:32px;line-height:40px;font-weight:600;color:var(--navy-blue);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}@media (min-width: 1000px){.landing-hero{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.step{display:grid;grid-template-columns:32px 1fr;gap:var(--space-2) var(--space-3);align-items:start}.step-num{width:32px;height:32px;border-radius:var(--radius-pill);background:var(--blue-bg-2);color:var(--navy-blue);font-weight:600;display:grid;place-items:center}.step-body{min-width:0}.step-body.stack{gap:var(--space-1)}.step-body h3{margin:0}.plan{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.plan caption{text-align:left;padding-bottom:var(--space-1)}.plan th,.plan td{text-align:left;padding:var(--space-1) 0;border-bottom:1px solid var(--gray-border-1)}.plan th:last-child,.plan td:last-child{text-align:right}.plan:not(.schedule-table) th:not(:last-child),.plan:not(.schedule-table) td:not(:last-child){padding-right:var(--space-2)}.summary{display:grid;grid-template-columns:1fr auto;gap:var(--space-1) var(--space-3);margin:0}.summary dt{color:var(--text-secondary)}.summary dd{margin:0;overflow-wrap:anywhere;text-align:right;font-weight:500;font-variant-numeric:tabular-nums}.swatch{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:var(--space-1);vertical-align:baseline}.landing.stack{gap:var(--space-4)}.landing h2{margin:0}.landing h1,.landing .section-title,.section-head h2{font-family:var(--font-serif);font-weight:700;color:var(--navy-blue)}.pill{align-self:center;display:inline-block;padding:var(--space-05) var(--space-3);font-size:12px;line-height:20px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);background:var(--white);border:1px solid var(--blue-border-1);border-radius:var(--radius-pill)}.landing-hero{display:grid;gap:var(--space-4);align-items:center;padding:var(--space-4) var(--space-3);background:linear-gradient(180deg,var(--blue-bg-2),var(--white));border-radius:var(--radius-xl)}.hero-text{align-items:flex-start;min-width:0}.hero-text .pill{align-self:flex-start}.hero-text .chip{padding:0 10px;font-size:15px}.landing-hero h1{font-size:30px;line-height:38px}.landing-hero .lead{max-width:36em;font-size:18px;line-height:28px}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.hero-actions .tl-btn{white-space:normal;max-width:100%;text-wrap:balance}.goal-card{min-width:0}.goal-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.example-label{font-size:12px;line-height:20px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.goal-row{display:flex;flex-direction:column;gap:var(--space-1)}.goal-row.is-picked{margin:calc(-1 * var(--space-2));padding:var(--space-2);border-radius:var(--radius);background:var(--blue-bg-2)}.goal-row-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-2);font-variant-numeric:tabular-nums}.goal-name{font-weight:500}.tag-full{display:inline-block;margin-left:var(--space-2);padding:0 var(--space-2);font-size:12px;line-height:18px;font-weight:500;color:var(--navy-blue);background:var(--gray-bg-2);border:1px solid var(--gray-border-1);border-radius:var(--radius-pill)}.goal-hint{font-size:13px;line-height:18px;color:var(--blue)}.limit{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:var(--blue-bg-2);color:var(--navy-blue)}.limit strong{font-size:20px;line-height:28px;white-space:nowrap;font-variant-numeric:tabular-nums}.journey .step:last-child{border-color:var(--blue)}.journey .progress{align-self:stretch;width:100%}.journey-figure{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2);font-weight:500}.section-head{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}.landing .section-title,.section-head h2{font-size:24px;line-height:32px}.tl-card.choice-card h3{margin:0;font-size:18px;line-height:24px;color:var(--navy-blue)}.landing-band{padding:var(--space-4) var(--space-3);background:var(--gray-bg-2);border-radius:var(--radius-xl)}.landing-band .section-title{text-align:center}.landing-band .choice-card{justify-content:flex-start;gap:var(--space-2)}.step-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--space-3)}.step-grid .step{grid-template-columns:1fr;align-content:start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--gray-border-2);border-radius:var(--radius-lg)}.step-grid .step .step-body{display:flex}.step-grid .step h3{font-size:18px;line-height:24px;color:var(--navy-blue)}@media (max-width: 599px){.step-grid .step{grid-template-columns:32px 1fr;gap:var(--space-2) var(--space-3)}}.good-to-know{margin:0;padding-left:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.amount-range{width:100%;min-height:32px;margin:0;accent-color:var(--blue)}.own-fund-figure{margin:0;font-size:24px;line-height:32px;font-weight:600;color:var(--navy-blue);font-variant-numeric:tabular-nums}.payment-small{margin:0;font-size:16px;line-height:24px;font-variant-numeric:tabular-nums}.amount-value{font-weight:600;color:var(--navy-blue)}.overview-top{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-items:stretch}.overview-top .tl-card h2{margin:0}.card-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-2)}.standing-order{margin-top:auto;padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:var(--blue-bg-2);color:var(--navy-blue);font-size:14px;line-height:20px}.card-head .tl-btn{padding-inline:var(--space-2);font-size:14px}.loan-limit{display:flex;flex-direction:column;gap:var(--space-3)}.loan-limit h2{margin:0}.loan-limit-head{display:flex;flex-direction:column;gap:var(--space-05)}.loan-quick{display:grid;gap:var(--space-2) var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));align-items:center}.loan-quick-input,.loan-quick-result{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.loan-limit-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.hero-stat{display:flex;flex-direction:column;gap:var(--space-05)}.hero-value{font-size:36px;line-height:44px;font-weight:600;color:var(--navy-blue);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.value-chart{margin:0;display:flex;flex-direction:column;gap:var(--space-1)}.value-chart-body{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:128px auto;gap:var(--space-1) var(--space-2)}.value-chart-range{display:flex;flex-direction:column;justify-content:space-between;text-align:right;font-variant-numeric:tabular-nums}.value-chart-plot{position:relative;min-width:0;touch-action:pan-y;border-radius:var(--radius-sm)}.value-chart-plot:focus-visible{outline:0;box-shadow:0 0 0 .25rem var(--focus-ring)}.value-chart-plot svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.value-chart-grid{stroke:var(--gray-border-1);stroke-width:1;vector-effect:non-scaling-stroke}.value-chart-cross{stroke:var(--gray-border-3);stroke-width:1;vector-effect:non-scaling-stroke}.value-chart-area{fill:var(--blue);fill-opacity:.1;stroke:none}.value-chart-line{fill:none;stroke:var(--blue);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.value-chart-dot{position:absolute;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px var(--white);pointer-events:none}.value-chart-tip{position:absolute;z-index:1;display:flex;flex-direction:column;padding:var(--space-1) var(--space-2);background:var(--white);border:1px solid var(--gray-border-2);border-radius:var(--radius);white-space:nowrap;pointer-events:none;font-variant-numeric:tabular-nums}.value-chart-axis{grid-column:2;display:flex;justify-content:space-between}.value-chart-details summary{cursor:pointer;color:var(--blue);font-size:14px;line-height:20px}.value-chart-details .plan{margin-top:var(--space-2)}.narrow{max-width:720px}@media (min-width: 800px){.app{padding-left:var(--space-4);padding-right:var(--space-4)}.landing.stack{gap:calc(var(--space-4) + var(--space-2))}.hero-value{font-size:44px;line-height:52px}.landing-hero{padding:calc(var(--space-4) + var(--space-2)) var(--space-4)}.landing-hero h1{font-size:40px;line-height:50px}.step .step-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-2) var(--space-5);align-items:start}.step .step-body>h3{grid-column:1 / -1}}
