@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:600;src:url(/buying-vs-renting-calculator/assets/bricolage-grotesque-latin-600-normal-nxTgbNFE.woff2)format("woff2"),url(/buying-vs-renting-calculator/assets/bricolage-grotesque-latin-600-normal-Bw0J83-2.woff)format("woff")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:700;src:url(/buying-vs-renting-calculator/assets/bricolage-grotesque-latin-700-normal-gtcctNPv.woff2)format("woff2"),url(/buying-vs-renting-calculator/assets/bricolage-grotesque-latin-700-normal-DvJDmrLu.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/buying-vs-renting-calculator/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/buying-vs-renting-calculator/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/buying-vs-renting-calculator/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/buying-vs-renting-calculator/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/buying-vs-renting-calculator/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/buying-vs-renting-calculator/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/buying-vs-renting-calculator/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/buying-vs-renting-calculator/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/buying-vs-renting-calculator/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/buying-vs-renting-calculator/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}:root{--bg:#f3f5f7;--surface:#fff;--surface-2:#eef1f4;--ink:#111820;--ink-2:#48525e;--ink-3:#6b7581;--line:#dce2e8;--grid:#e6eaee;--buy:#2a78d6;--rent:#eb6834;--shares:#1baf7a;--warn-bg:#fff4e0;--warn-ink:#7a4b00;--focus:#2a78d6;--display:"Bricolage Grotesque", "Avenir Next", "Segoe UI", system-ui, sans-serif;--body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1319;--surface:#161d25;--surface-2:#1d2630;--ink:#edf1f5;--ink-2:#b1bcc7;--ink-3:#8b97a4;--line:#2a3542;--grid:#232d38;--buy:#3987e5;--rent:#d95926;--shares:#199e70;--warn-bg:#3a2a10;--warn-ink:#ffd89a;--focus:#6da7ec}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1319;--surface:#161d25;--surface-2:#1d2630;--ink:#edf1f5;--ink-2:#b1bcc7;--ink-3:#8b97a4;--line:#2a3542;--grid:#232d38;--buy:#3987e5;--rent:#d95926;--shares:#199e70;--warn-bg:#3a2a10;--warn-ink:#ffd89a;--focus:#6da7ec}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font:15px/1.5 var(--body);-webkit-font-smoothing:antialiased}.page{max-width:1280px;margin:0 auto;padding-block:32px 64px;padding-inline:16px}@media (width>=720px){.page{padding-inline:32px}}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0;line-height:1.15}h1{letter-spacing:-.02em;font-size:clamp(30px,5vw,46px)}h2{font-size:19px}h3{margin-top:20px;font-size:15px}.masthead{gap:10px;max-width:68ch;margin-bottom:28px;display:grid}.eyebrow{font:500 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0}.lede{color:var(--ink-2);margin:0;font-size:16px}.layout{gap:24px;display:grid}@media (width>=980px){.layout{grid-template-columns:340px minmax(0,1fr);align-items:start}.inputs{max-height:calc(100vh - 32px);position:sticky;top:16px;overflow-y:auto}}.inputs{background:var(--surface);border:1px solid var(--line);border-radius:10px;align-content:start;gap:22px;padding:18px;display:grid}.inputs section{gap:14px;display:grid}.inputs h2{font-size:13px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);border-bottom:1px solid var(--line);padding-bottom:6px;font-weight:500}.field{gap:6px;display:grid}.field-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.field label,.field-label{color:var(--ink);font-size:14px}.field-input{background:var(--surface-2);border:1px solid var(--line);font-family:var(--mono);border-radius:6px;flex-shrink:0;align-items:center;gap:2px;padding:2px 8px;font-size:14px;display:inline-flex}.field-input:focus-within{outline:2px solid var(--focus);outline-offset:1px}.field-input input{color:var(--ink);font:inherit;text-align:right;-moz-appearance:textfield;background:0 0;border:0;outline:none;min-width:5ch;max-width:12ch;padding:3px 0}.field-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.field-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.affix{color:var(--ink-3)}input[type=range]{width:100%;accent-color:var(--buy);margin:0}.hint{color:var(--ink-3);margin:0;font-size:12.5px}.hint strong{color:var(--ink-2);font-weight:600}.segmented{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;gap:2px;padding:2px;display:inline-flex}.segmented button{color:var(--ink-2);font:500 13px/1 var(--body);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;flex:1;padding:8px 12px}.segmented button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0000001f}button:focus-visible,a:focus-visible,input[type=range]:focus-visible,input[type=checkbox]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.toggle{align-items:center;gap:8px;display:flex}.toggle input{width:16px;height:16px;accent-color:var(--buy);margin:0}.presets{flex-wrap:wrap;gap:6px;display:flex}.presets button,.reset{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font:13px/1 var(--body);cursor:pointer;border-radius:999px;padding:8px 10px}.presets button:hover,.reset:hover{border-color:var(--ink-3)}.reset{justify-self:start}.results{gap:20px;min-width:0;display:grid}.card,.verdict{background:var(--surface);border:1px solid var(--line);border-radius:10px;gap:12px;min-width:0;padding:20px;display:grid}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.sub{color:var(--ink-2);max-width:72ch;margin:0;font-size:14px}.note{color:var(--ink-3);max-width:80ch;margin:0;font-size:13px}.muted{color:var(--ink-3)}.neg{color:var(--rent)}.verdict{gap:16px}.verdict-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.verdict-top .field{display:block}.verdict-top .field-label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.pill{font:600 13px/1 var(--body);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;align-items:center;gap:8px;margin:0;padding:7px 12px 7px 10px;display:inline-flex}.pill:before{content:"";border-radius:50%;width:10px;height:10px}.pill-buy:before{background:var(--buy)}.pill-rent:before{background:var(--rent)}.headline{letter-spacing:-.01em;font-size:clamp(22px,3.2vw,32px);font-weight:600}.headline .num{font-weight:700}.headline .muted{font-weight:600}.kpis{background:var(--line);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;display:grid;overflow:hidden}.kpi{background:var(--surface);align-content:start;gap:4px;padding:14px;display:grid}.kpi-label{color:var(--ink-2);align-items:center;gap:6px;font-size:13px;display:flex}.kpi-value{font:500 24px/1.2 var(--mono);font-variant-numeric:tabular-nums}.kpi-note{color:var(--ink-3);font-size:12.5px}.warnings{background:var(--warn-bg);color:var(--warn-ink);border-radius:8px;gap:6px;margin:0;padding:12px 14px 12px 32px;font-size:14px;display:grid}.key{vertical-align:middle;border-radius:2px;flex-shrink:0;width:14px;height:3px;display:inline-block}.key-buy{background:var(--buy)}.key-rent{background:var(--rent)}.legend{color:var(--ink-2);gap:16px;font-size:13px;display:flex}.legend>span{align-items:center;gap:6px;display:inline-flex}.chart{width:100%;min-width:0}.tip{background:var(--surface);border:1px solid var(--line);border-radius:8px;gap:4px;min-width:180px;padding:10px 12px;font-size:13px;display:grid;box-shadow:0 6px 20px #0000001f}.tip-head{color:var(--ink-3);font-size:12px}.tip-row{color:var(--ink-2);align-items:center;gap:8px;display:flex}.tip-row strong{color:var(--ink);font:500 14px var(--mono);font-variant-numeric:tabular-nums}.tip-foot{border-top:1px solid var(--line);color:var(--ink-2);margin-top:2px;padding-top:6px}table{border-collapse:collapse;font-variant-numeric:tabular-nums}.ledger-pair{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:16px 28px;display:grid}.ledger{width:100%;font-size:14px}.ledger caption{text-align:left;align-items:center;gap:8px;padding-bottom:6px;font-weight:600;display:flex}.ledger th{text-align:left;color:var(--ink-2);border-bottom:1px solid var(--grid);padding:6px 12px 6px 0;font-weight:400}.ledger td{text-align:right;font-family:var(--mono);border-bottom:1px solid var(--grid);white-space:nowrap;padding:6px 0}.ledger tr.total th,.ledger tr.total td{color:var(--ink);border-bottom:0;border-top:1.5px solid var(--ink-3);font-weight:600}.flows{width:100%;font-size:13.5px}.flows th,.flows td{text-align:left;border-top:1px solid var(--grid);vertical-align:top;padding:8px 10px 8px 0}.flows thead th{border-top:0;font-weight:600}.flows thead th .key{margin-right:6px}.flows tbody th{font-weight:500}.flows td{font-family:var(--mono);font-size:13px}.facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0;display:grid}.facts div{gap:2px;display:grid}.facts dt{color:var(--ink-2);font-size:13px}.facts dd{font:500 20px/1.2 var(--mono);margin:0}.facts .total dd{font-weight:600}.scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.grid{width:100%;min-width:560px;font-size:12.5px}.grid th{font:500 12px var(--mono);color:var(--ink-2);text-align:center;padding:6px 8px}.grid th.corner{text-align:left;font-family:var(--body);color:var(--ink-3);white-space:nowrap}.grid td{font-family:var(--mono);text-align:center;border:2px solid var(--surface);color:var(--ink);white-space:nowrap;border-radius:4px;padding:8px 6px}.grid td.you{outline:2px solid var(--ink);outline-offset:-2px;font-weight:600}.grid-who{font-family:var(--body);color:var(--ink-2);font-size:11.5px}.milestones{width:100%;min-width:720px;font-size:13.5px}.milestones th,.milestones td{text-align:right;border-bottom:1px solid var(--grid);white-space:nowrap;padding:8px 10px}.milestones td{font-family:var(--mono);font-size:13px}.milestones thead th{color:var(--ink-2);white-space:normal;vertical-align:bottom;font-size:12.5px;font-weight:500}.milestones th:first-child{text-align:left}.prose ul{max-width:78ch;color:var(--ink-2);gap:8px;margin:0;padding-left:20px;font-size:14px;display:grid}.prose strong{color:var(--ink)}.sources a{color:var(--buy)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.tip-trigger{font:inherit;color:inherit;text-align:inherit;cursor:help;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:var(--ink-3);text-decoration-color:var(--ink-3);text-underline-offset:3px;background:0 0;border:0;margin:0;padding:0;text-decoration-thickness:1px}.tip-trigger:hover,.tip-trigger[aria-expanded=true]{text-decoration-style:solid;-webkit-text-decoration-color:var(--buy);text-decoration-color:var(--buy)}.tip-trigger:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:2px}.tip-pop{z-index:50;background:var(--surface);width:min(340px,100vw - 24px);color:var(--ink);border:1px solid var(--line);font:400 13.5px/1.5 var(--body);text-align:left;border-radius:10px;gap:6px;padding:12px 14px;display:grid;position:fixed;box-shadow:0 12px 32px #0000002e}.tip-title{font-size:14px;font-weight:600}.tip-body{color:var(--ink-2);gap:6px;display:grid}.tip-body p{margin:0}.tip-body .calc{font:12.5px/1.5 var(--mono);color:var(--ink);background:var(--surface-2);overflow-wrap:anywhere;border-radius:6px;padding:6px 8px}.tip-sources{border-top:1px solid var(--line);gap:4px;margin:2px 0 0;padding:8px 0 0;font-size:12.5px;list-style:none;display:grid}.tip-sources a{color:var(--buy)}.presets-stack{gap:6px;display:grid}.presets-stack button{text-align:left;border-radius:8px;gap:2px;padding:10px 12px;line-height:1.35;display:grid}.presets-stack button span{color:var(--ink-3);font-size:12.5px}.presets-stack button.on{border-color:var(--buy);box-shadow:inset 0 0 0 1px var(--buy);background:var(--surface)}.chip-tip{text-decoration:none}.chip{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font:13px/1 var(--body);cursor:pointer;border-radius:999px;padding:8px 10px;display:inline-block}.chip:hover{border-color:var(--ink-3)}.kpi-value.tip-trigger,.headline .tip-trigger{justify-self:start}.facts dd .tip-trigger{font:inherit}.source-list{list-style:none;padding-left:0!important}.source-list li{gap:2px;display:grid}.source-list a{color:var(--buy);font-weight:500}.source-list span{color:var(--ink-3);font-size:13px}.flows{min-width:480px}.ledger tr.subtotal th,.ledger tr.subtotal td{color:var(--ink);border-top:1px solid var(--ink-3);font-weight:500}.checks{background:var(--surface-2);border-radius:8px;gap:6px;padding:12px 14px;font-size:14px;display:grid}.checks p{margin:0}.facts.facts-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=560px){.facts.facts-3{grid-template-columns:repeat(2,minmax(0,1fr))}}.jump{color:var(--buy);justify-self:start;font-weight:500;display:none}@media (width<=979px){.results{order:-1}.jump{display:inline-block}}.switches{flex-wrap:wrap;align-items:end;gap:8px 12px;display:flex}.swatch{vertical-align:-1px;border-radius:3px;width:12px;height:12px;display:inline-block}.swatch-home,.seg-home{background:var(--buy)}.swatch-shares,.seg-shares{background:var(--shares)}.composition{gap:14px;display:grid}.comp-year{gap:4px;display:grid}.comp-label{font:500 12px var(--mono);color:var(--ink-3)}.comp-row{grid-template-columns:76px minmax(0,1fr) 64px;align-items:center;gap:10px;font-size:13px;display:grid}.comp-who{color:var(--ink-2);align-items:center;gap:6px;display:inline-flex}.comp-bar{gap:2px;min-width:0;height:14px;display:flex}.seg{border-radius:3px;min-width:0;height:100%;display:block}.comp-total{font:500 13px var(--mono);text-align:right;justify-self:end}
