{"id":2002,"date":"2023-11-03T15:31:59","date_gmt":"2023-11-03T20:31:59","guid":{"rendered":"https:\/\/westmanrealty.c21.ca\/?page_id=2002"},"modified":"2026-07-22T13:48:00","modified_gmt":"2026-07-22T18:48:00","slug":"mortgage-caclulator","status":"publish","type":"page","link":"https:\/\/westmanrealty.c21.ca\/fr-ca\/mortgage-caclulator","title":{"rendered":"Mortgage Caclulator"},"content":{"rendered":"\n\n\t<!-- =============================================\n     MORTGAGE CALCULATOR HUB  |  Century 21 Westman Realty Ltd.\n     Single Beaver Builder Custom HTML block.\n     Standalone page, not agent-specific.\n============================================= -->\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Anton&family=Raleway:wght@300;400;500;600;700&display=swap');\n\/* \u2500\u2500 Sit flush under the site's global header \u2500\u2500 *\/\n.wrapper.responsive.page-wrapper { padding-top: 0 !important; }\nbody.page .fl-content,\nbody.page .mainbody.pageContent,\nbody.page .fl-post-content { background: #0d0d0d !important; }\nhtml, body { background-color: #0d0d0d !important; }\n\/* \u2500\u2500 Kill trailing padding\/margin so the global footer sits flush \u2500\u2500 *\/\nbody.page .fl-row-content-wrap:last-of-type,\nbody.page .fl-builder-content > .fl-row:last-child .fl-row-content-wrap { padding-bottom: 0 !important; }\n.fl-module-content:has(#c21w-mortgage-calc) { margin-bottom: 0 !important; }\n\/* \u2500\u2500 Variables \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ar-mc {\n  --mc-dark:       #0d0d0d;\n  --mc-dark-2:     #111111;\n  --mc-dark-3:     #141414;\n  --mc-dark-4:     #1a1a1a;\n  --mc-dark-5:     #222222;\n  --mc-gold:       #BEAF87;\n  --mc-gold-faint: rgba(190,175,135,0.10);\n  --mc-gold-mid:   rgba(190,175,135,0.25);\n  --mc-white:      #ffffff;\n  --mc-grey:       rgba(255,255,255,0.62);\n  --mc-grey-faint: rgba(255,255,255,0.07);\n  --mc-blue:       #4a90c4;\n  --mc-orange:     #c9834a;\n  --mc-purple:     #8a6acb;\n  --mc-green:      #5aaa7a;\n  --mc-teal:       #4a9fa8;\n  font-family: 'Raleway', sans-serif;\n  background:  var(--mc-dark);\n  color:       var(--mc-white);\n  width:       100vw;\n  margin-left: calc((100vw - 100%) \/ -2);\n  overflow-x:  hidden;\n}\n\/* \u2500\u2500 Shared Utilities \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ar-mc__tag {\n  display: block;\n  font-size: 10px;\n  font-weight: 700;\n  letter-spacing: 4px;\n  text-transform: uppercase;\n  color: var(--mc-gold);\n  margin-bottom: 12px;\n}\n.ar-mc__title {\n  font-family: 'Anton', sans-serif;\n  font-size: clamp(30px, 4vw, 52px);\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  line-height: 1.05;\n  color: var(--mc-white);\n  margin-bottom: 18px;\n}\n.ar-mc__subtitle {\n  font-size: 15px;\n  font-weight: 400;\n  line-height: 1.75;\n  color: var(--mc-grey);\n  max-width: 620px;\n}\n.ar-mc__divider {\n  width: 60px;\n  height: 1px;\n  background: linear-gradient(90deg, transparent, var(--mc-gold), transparent);\n  margin-bottom: 24px;\n}\n.ar-mc__rule {\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 1px;\n  background: linear-gradient(90deg, transparent, var(--mc-gold-faint), transparent);\n}\n\/* \u2500\u2500 Buttons \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ar-mc__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 10px;\n  font-family: 'Raleway', sans-serif;\n  font-size: 12px;\n  font-weight: 700;\n  letter-spacing: 2.5px;\n  text-transform: uppercase;\n  text-decoration: none;\n  padding: 16px 36px;\n  transition: all 0.3s ease;\n  cursor: pointer;\n  border: none;\n}\n.ar-mc__btn--gold {\n  background: var(--mc-gold);\n  color: var(--mc-dark);\n}\n.ar-mc__btn--gold:hover {\n  background: #d4c49a;\n  transform: translateY(-2px);\n  box-shadow: 0 16px 40px rgba(190,175,135,0.25);\n}\n.ar-mc__btn--outline {\n  background: transparent;\n  color: var(--mc-white);\n  border: 1px solid rgba(255,255,255,0.28);\n  text-decoration: none;\n}\n.ar-mc__btn--outline:hover {\n  border-color: var(--mc-gold);\n  color: var(--mc-gold);\n  transform: translateY(-2px);\n}\n\/* \u2500\u2500 HERO \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ar-mc__hero {\n  position: relative;\n  min-height: 100vh;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  text-align: center;\n  padding: 100px 5vw 70px;\n  overflow: hidden;\n}\n.ar-mc__hero-bg {\n  position: absolute;\n  inset: 0;\n  background-image: url('https:\/\/westmanrealty.c21.ca\/files\/2026\/07\/Brandon-3-of-13-scaled.jpg');\n  background-size: cover;\n  background-position: center;\n  will-change: transform;\n}\n.ar-mc__hero-overlay {\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(\n    to bottom,\n    rgba(0,0,0,0.75) 0%,\n    rgba(0,0,0,0.52) 45%,\n    rgba(0,0,0,0.90) 100%\n  );\n  z-index: 1;\n}\n.ar-mc__hero-content {\n  position: relative;\n  z-index: 2;\n  max-width: 860px;\n}\n.ar-mc__hero-eyebrow {\n  display: inline-block;\n  font-size: 11px;\n  font-weight: 700;\n  letter-spacing: 5px;\n  text-transform: uppercase;\n  color: var(--mc-gold);\n  margin-bottom: 22px;\n}\n.ar-mc__hero-title {\n  font-family: 'Anton', sans-serif;\n  font-size: clamp(42px, 7vw, 88px);\n  text-transform: uppercase;\n  letter-spacing: 2px;\n  line-height: 1.0;\n  color: var(--mc-white);\n  margin-bottom: 24px;\n}\n.ar-mc__hero-sub {\n  font-size: clamp(15px, 1.6vw, 18px);\n  font-weight: 400;\n  line-height: 1.8;\n  color: rgba(255,255,255,0.78);\n  margin-bottom: 44px;\n  max-width: 680px;\n  margin-left: auto;\n  margin-right: auto;\n}\n.ar-mc__hero-btns {\n  display: flex;\n  gap: 16px;\n  justify-content: center;\n  flex-wrap: wrap;\n}\n\/* \u2500\u2500 HUB SECTION \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ar-mc__hub {\n  position: relative;\n  background: var(--mc-dark-2);\n  padding: 72px 5vw 100px;\n  min-height: 600px;\n}\n.ar-mc__hub-header {\n  text-align: center;\n  margin-bottom: 52px;\n}\n.ar-mc__hub-header .ar-mc__subtitle {\n  margin: 0 auto;\n}\n\/* \u2500\u2500 CONTACT CTA \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ar-mc__cta {\n  position: relative;\n  background: var(--mc-dark-3);\n  padding: 88px 5vw 100px;\n  text-align: center;\n}\n.ar-mc__cta-h2 {\n  font-family: 'Anton', sans-serif;\n  font-size: clamp(26px, 3vw, 40px);\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  color: var(--mc-white);\n  margin: 0 0 14px;\n}\n.ar-mc__cta-p {\n  font-size: 15px;\n  line-height: 1.75;\n  color: var(--mc-grey);\n  max-width: 560px;\n  margin: 0 auto 32px;\n}\n\/* \u2500\u2500 CARD GRID \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n#mcGrid {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: 20px;\n  max-width: 1100px;\n  margin: 0 auto;\n  transition: opacity 0.25s ease, transform 0.25s ease;\n}\n.mc-card {\n  position: relative;\n  background: var(--mc-dark-4);\n  border: 1px solid rgba(255,255,255,0.07);\n  padding: 36px 30px;\n  cursor: pointer;\n  transition: border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;\n  display: flex;\n  flex-direction: column;\n  gap: 0;\n}\n.mc-card:hover {\n  border-color: var(--mc-gold-mid);\n  transform: translateY(-4px);\n  box-shadow: 0 20px 48px rgba(0,0,0,0.4);\n}\n.mc-card__badge {\n  position: absolute;\n  top: 16px;\n  right: 16px;\n  font-size: 8px;\n  font-weight: 700;\n  letter-spacing: 2.5px;\n  text-transform: uppercase;\n  color: var(--mc-dark);\n  background: var(--mc-gold);\n  padding: 4px 10px;\n}\n.mc-card__icon {\n  width: 44px;\n  height: 44px;\n  margin-bottom: 22px;\n  color: var(--mc-gold);\n  flex-shrink: 0;\n}\n.mc-card__name {\n  font-family: 'Anton', sans-serif;\n  font-size: 20px;\n  letter-spacing: 1px;\n  text-transform: uppercase;\n  color: var(--mc-white);\n  margin-bottom: 10px;\n  line-height: 1.1;\n}\n.mc-card__desc {\n  font-size: 13px;\n  color: var(--mc-grey);\n  line-height: 1.65;\n  flex: 1;\n  margin-bottom: 24px;\n}\n.mc-card__cta {\n  font-size: 11px;\n  font-weight: 700;\n  letter-spacing: 2.5px;\n  text-transform: uppercase;\n  color: var(--mc-gold);\n  display: flex;\n  align-items: center;\n  gap: 8px;\n  transition: gap 0.2s ease;\n}\n.mc-card:hover .mc-card__cta {\n  gap: 14px;\n}\n\/* \u2500\u2500 Audit Card \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mc-card--audit {\n  border-color: var(--mc-gold-mid);\n  background: linear-gradient(135deg, rgba(190,175,135,0.08) 0%, var(--mc-dark-4) 55%);\n  box-shadow: 0 0 32px rgba(190,175,135,0.10);\n}\n.mc-card--audit:hover {\n  box-shadow: 0 20px 48px rgba(0,0,0,0.4), 0 0 40px rgba(190,175,135,0.18);\n}\n.mc-card__badge--start {\n  background: var(--mc-gold);\n  color: var(--mc-dark);\n}\n\/* \u2500\u2500 Audit Calculator \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mc-audit-parts { display: flex; flex-direction: column; gap: 14px; }\n.mc-audit-part {\n  background: var(--mc-dark-3);\n  border: 1px solid rgba(255,255,255,0.06);\n  border-radius: 10px;\n  padding: 20px 22px;\n}\n.mc-audit-part__tag {\n  font-size: 9px;\n  font-weight: 700;\n  letter-spacing: 3px;\n  text-transform: uppercase;\n  color: var(--mc-gold);\n  margin-bottom: 3px;\n}\n.mc-audit-part__name {\n  font-size: 14px;\n  font-weight: 700;\n  color: var(--mc-white);\n  margin-bottom: 14px;\n}\n.mc-audit-line {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 10px;\n  margin-bottom: 9px;\n}\n.mc-audit-line label {\n  font-size: 12.5px;\n  color: var(--mc-grey);\n  flex: 1;\n  line-height: 1.4;\n}\n.mc-audit-input {\n  width: 90px !important;\n  background: var(--mc-dark-5) !important;\n  border: 1px solid rgba(255,255,255,0.09) !important;\n  border-radius: 6px !important;\n  padding: 5px 9px !important;\n  font-size: 13px !important;\n  font-weight: 600 !important;\n  color: var(--mc-white) !important;\n  text-align: right !important;\n  font-family: 'Raleway', sans-serif !important;\n  transition: border-color 0.2s;\n  box-sizing: border-box;\n}\n.mc-audit-input:focus {\n  outline: none !important;\n  border-color: var(--mc-gold-mid) !important;\n}\n.mc-audit-part__total {\n  margin-top: 12px;\n  padding-top: 10px;\n  border-top: 1px solid rgba(255,255,255,0.07);\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n.mc-audit-part__total-label {\n  font-size: 10.5px;\n  font-weight: 700;\n  letter-spacing: 2px;\n  text-transform: uppercase;\n  color: var(--mc-grey);\n}\n.mc-audit-part__total-val {\n  font-size: 17px;\n  font-weight: 700;\n  color: var(--mc-gold);\n}\n.mc-audit-lifestyle-total {\n  background: var(--mc-dark-2);\n  border: 1px solid var(--mc-gold-mid);\n  border-radius: 10px;\n  padding: 16px 22px;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  margin-top: 4px;\n}\n.mc-audit-lifestyle-total__label {\n  font-size: 10px;\n  font-weight: 700;\n  letter-spacing: 2.5px;\n  text-transform: uppercase;\n  color: var(--mc-grey);\n}\n.mc-audit-lifestyle-total__val {\n  font-family: 'Anton', sans-serif;\n  font-size: 26px;\n  letter-spacing: 1px;\n  color: var(--mc-gold);\n}\n\/* Audit Step containers *\/\n.mc-audit-step {\n  background: var(--mc-dark-3);\n  border: 1px solid rgba(255,255,255,0.06);\n  border-radius: 10px;\n  padding: 20px 22px;\n  margin-bottom: 14px;\n}\n.mc-audit-step__header {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  margin-bottom: 16px;\n}\n.mc-audit-step__num {\n  width: 28px;\n  height: 28px;\n  border-radius: 50%;\n  background: var(--mc-gold-mid);\n  border: 1px solid var(--mc-gold);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  font-size: 13px;\n  font-weight: 700;\n  color: var(--mc-gold);\n  flex-shrink: 0;\n}\n.mc-audit-step__label {\n  font-size: 11px;\n  font-weight: 700;\n  letter-spacing: 2.5px;\n  text-transform: uppercase;\n  color: var(--mc-gold);\n}\n\/* Mortgage prompt (before synced) *\/\n.mc-audit-mort-prompt {\n  background: var(--mc-dark-5);\n  border: 1px solid rgba(255,255,255,0.07);\n  border-radius: 8px;\n  padding: 18px;\n  margin-bottom: 16px;\n  text-align: center;\n}\n.mc-audit-mort-prompt__text {\n  font-size: 13px;\n  color: var(--mc-grey);\n  line-height: 1.65;\n  margin-bottom: 14px;\n}\n.mc-audit-cta-btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  background: var(--mc-gold);\n  color: var(--mc-dark);\n  font-size: 10px;\n  font-weight: 700;\n  letter-spacing: 2px;\n  text-transform: uppercase;\n  padding: 11px 22px;\n  border: none;\n  cursor: pointer;\n  transition: opacity 0.2s;\n  font-family: 'Raleway', sans-serif;\n  border-radius: 2px;\n}\n.mc-audit-cta-btn:hover { opacity: 0.85; }\n\/* Back to audit button in mortgage panel *\/\n.mc-back-to-audit {\n  display: none;\n  align-items: center;\n  gap: 8px;\n  font-size: 11px;\n  font-weight: 700;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--mc-gold);\n  background: var(--mc-gold-faint);\n  border: 1px solid var(--mc-gold-mid);\n  padding: 9px 18px;\n  cursor: pointer;\n  margin-bottom: 20px;\n  font-family: 'Raleway', sans-serif;\n  border-radius: 4px;\n  transition: background 0.2s;\n}\n.mc-back-to-audit:hover { background: var(--mc-gold-mid); }\n.mc-back-to-audit.visible { display: inline-flex; }\n.mc-audit-final {\n  background: var(--mc-dark-3);\n  border: 1px solid rgba(255,255,255,0.06);\n  border-radius: 10px;\n  padding: 22px;\n  margin-bottom: 14px;\n}\n.mc-audit-final__title {\n  font-size: 9px;\n  font-weight: 700;\n  letter-spacing: 3px;\n  text-transform: uppercase;\n  color: var(--mc-gold);\n  margin-bottom: 16px;\n}\n.mc-audit-final__row {\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  padding: 9px 0;\n  border-bottom: 1px solid rgba(255,255,255,0.05);\n  gap: 10px;\n}\n.mc-audit-final__row:last-child { border-bottom: none; }\n.mc-audit-final__label {\n  font-size: 13px;\n  color: var(--mc-grey);\n  flex: 1;\n  line-height: 1.35;\n}\n.mc-audit-final__label small {\n  display: block;\n  font-size: 10px;\n  color: var(--mc-gold);\n  opacity: 0.8;\n  margin-top: 2px;\n  font-style: italic;\n}\n.mc-audit-final__static {\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--mc-white);\n}\n.mc-audit-real-cost {\n  background: var(--mc-dark-2);\n  border: 1px solid var(--mc-gold-mid);\n  border-radius: 10px;\n  padding: 16px 22px;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  margin-bottom: 14px;\n}\n.mc-audit-real-cost__label {\n  font-size: 10px;\n  font-weight: 700;\n  letter-spacing: 2.5px;\n  text-transform: uppercase;\n  color: var(--mc-grey);\n}\n.mc-audit-real-cost__val {\n  font-family: 'Anton', sans-serif;\n  font-size: 28px;\n  letter-spacing: 1px;\n  color: var(--mc-white);\n}\n.mc-audit-income-section {\n  background: var(--mc-dark-3);\n  border: 1px solid rgba(255,255,255,0.06);\n  border-radius: 10px;\n  padding: 22px;\n  margin-bottom: 14px;\n}\n.mc-audit-verdict {\n  border-radius: 12px;\n  padding: 24px 20px;\n  text-align: center;\n  transition: all 0.35s ease;\n  border: 1px solid rgba(255,255,255,0.08);\n}\n.mc-audit-verdict--safe   { background: rgba(90,170,122,0.10); border-color: rgba(90,170,122,0.30); }\n.mc-audit-verdict--warn   { background: rgba(190,175,135,0.10); border-color: rgba(190,175,135,0.30); }\n.mc-audit-verdict--danger { background: rgba(201,80,60,0.10); border-color: rgba(220,70,50,0.35); }\n.mc-audit-verdict__icon  { font-size: 28px; margin-bottom: 8px; }\n.mc-audit-verdict__title {\n  font-family: 'Anton', sans-serif;\n  font-size: 18px;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--mc-white);\n  margin-bottom: 4px;\n}\n.mc-audit-verdict__amount {\n  font-family: 'Anton', sans-serif;\n  font-size: 38px;\n  letter-spacing: 1px;\n  margin: 6px 0;\n}\n.mc-audit-verdict--safe   .mc-audit-verdict__amount { color: var(--mc-green); }\n.mc-audit-verdict--warn   .mc-audit-verdict__amount { color: var(--mc-gold); }\n.mc-audit-verdict--danger .mc-audit-verdict__amount { color: #e05540; }\n.mc-audit-verdict__sub {\n  font-size: 12.5px;\n  color: var(--mc-grey);\n  line-height: 1.65;\n  margin-top: 8px;\n}\n\/* \u2500\u2500 CALCULATOR PANEL \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n#mcPanel {\n  display: none;\n  opacity: 0;\n  transform: translateY(20px);\n  transition: opacity 0.3s ease, transform 0.3s ease;\n  max-width: 1100px;\n  margin: 0 auto;\n}\n.mc-panel__back {\n  display: inline-flex;\n  align-items: center;\n  gap: 10px;\n  font-size: 11px;\n  font-weight: 700;\n  letter-spacing: 2.5px;\n  text-transform: uppercase;\n  color: var(--mc-grey);\n  cursor: pointer;\n  margin-bottom: 36px;\n  background: none;\n  border: none;\n  padding: 0;\n  transition: color 0.2s ease;\n}\n.mc-panel__back:hover { color: var(--mc-gold); }\n.mc-panel__back svg { transition: transform 0.2s ease; }\n.mc-panel__back:hover svg { transform: translateX(-4px); }\n.mc-panel__title {\n  font-family: 'Anton', sans-serif;\n  font-size: clamp(26px, 3vw, 40px);\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  color: var(--mc-white);\n  margin-bottom: 8px;\n}\n.mc-panel__desc {\n  font-size: 14px;\n  color: var(--mc-grey);\n  margin-bottom: 40px;\n}\n.mc-panel__rule {\n  height: 1px;\n  background: linear-gradient(90deg, var(--mc-gold-mid), transparent);\n  margin-bottom: 40px;\n}\n\/* \u2500\u2500 CALC LAYOUT \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mc-calc { display: none; }\n.mc-calc.active { display: block; }\n.mc-layout {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 28px;\n  align-items: start;\n}\n.mc-inputs {\n  background: var(--mc-dark-4);\n  border: 1px solid rgba(255,255,255,0.07);\n  padding: 32px 28px;\n  display: flex;\n  flex-direction: column;\n  gap: 28px;\n}\n.mc-results {\n  background: var(--mc-dark-3);\n  border: 1px solid rgba(255,255,255,0.07);\n  padding: 32px 28px;\n  display: flex;\n  flex-direction: column;\n  gap: 20px;\n}\n\/* \u2500\u2500 INPUT CONTROLS \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mc-field { display: flex; flex-direction: column; gap: 10px; }\n.mc-field__header {\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n.mc-field__label {\n  font-size: 11px;\n  font-weight: 700;\n  letter-spacing: 2px;\n  text-transform: uppercase;\n  color: var(--mc-grey);\n}\n.mc-field__value {\n  font-size: 15px !important;\n  font-weight: 600 !important;\n  color: var(--mc-gold) !important;\n  background: var(--mc-grey-faint) !important;\n  border: 1px solid rgba(255,255,255,0.10) !important;\n  padding: 5px 10px !important;\n  width: 120px;\n  text-align: right !important;\n  font-family: 'Raleway', sans-serif !important;\n  box-shadow: none !important;\n  border-radius: 0 !important;\n}\n.mc-field__value:focus {\n  outline: none !important;\n  border-color: var(--mc-gold-mid) !important;\n}\n.mc-field__value--wide { width: 100%; text-align: left; }\ninput[type=\"range\"] {\n  -webkit-appearance: none;\n  appearance: none;\n  width: 100%;\n  height: 3px;\n  background: rgba(255,255,255,0.12);\n  outline: none;\n  cursor: pointer;\n  position: relative;\n}\ninput[type=\"range\"]::-webkit-slider-thumb {\n  -webkit-appearance: none;\n  width: 18px;\n  height: 18px;\n  border-radius: 50%;\n  background: var(--mc-gold);\n  cursor: pointer;\n  box-shadow: 0 0 8px rgba(190,175,135,0.4);\n  transition: transform 0.15s ease;\n}\ninput[type=\"range\"]::-webkit-slider-thumb:hover { transform: scale(1.2); }\ninput[type=\"range\"]::-moz-range-thumb {\n  width: 18px;\n  height: 18px;\n  border-radius: 50%;\n  background: var(--mc-gold);\n  cursor: pointer;\n  border: none;\n}\ninput[type=\"range\"].mc-range {\n  background: linear-gradient(to right,\n    var(--mc-gold) 0%,\n    var(--mc-gold) var(--fill, 40%),\n    rgba(255,255,255,0.12) var(--fill, 40%),\n    rgba(255,255,255,0.12) 100%\n  );\n}\n.mc-select {\n  width: 100% !important;\n  background: var(--mc-dark-5) !important;\n  border: 1px solid rgba(255,255,255,0.12) !important;\n  color: var(--mc-white) !important;\n  font-family: 'Raleway', sans-serif !important;\n  font-size: 13px !important;\n  padding: 10px 14px !important;\n  appearance: none !important;\n  -webkit-appearance: none !important;\n  cursor: pointer;\n  background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23BEAF87' stroke-width='1.5' fill='none'\/%3E%3C\/svg%3E\") !important;\n  background-repeat: no-repeat !important;\n  background-position: right 14px center !important;\n  padding-right: 36px !important;\n  border-radius: 0 !important;\n  box-shadow: none !important;\n}\n.mc-select:focus { outline: none !important; border-color: var(--mc-gold-mid) !important; }\n.mc-toggle {\n  display: flex;\n  gap: 0;\n  border: 1px solid rgba(255,255,255,0.12);\n}\n.mc-toggle button {\n  flex: 1;\n  padding: 9px 12px;\n  background: transparent;\n  border: none;\n  color: var(--mc-grey);\n  font-family: 'Raleway', sans-serif;\n  font-size: 12px;\n  font-weight: 600;\n  letter-spacing: 1px;\n  cursor: pointer;\n  transition: all 0.2s ease;\n}\n.mc-toggle button.active {\n  background: var(--mc-gold);\n  color: var(--mc-dark);\n}\n\/* \u2500\u2500 Checkbox Options \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mc-check-group {\n  display: flex;\n  flex-direction: column;\n  gap: 8px;\n}\n.mc-check-item {\n  display: flex;\n  align-items: center;\n  gap: 10px;\n  cursor: pointer;\n  padding: 9px 12px;\n  border: 1px solid rgba(255,255,255,0.12);\n  transition: border-color 0.2s ease;\n  user-select: none;\n}\n.mc-check-item:hover {\n  border-color: var(--mc-gold-mid);\n}\n.mc-check-item input[type=\"checkbox\"] {\n  -webkit-appearance: none;\n  appearance: none;\n  width: 16px;\n  height: 16px;\n  border: 1px solid rgba(255,255,255,0.28);\n  background: transparent;\n  cursor: pointer;\n  flex-shrink: 0;\n  position: relative;\n  transition: background 0.2s ease, border-color 0.2s ease;\n}\n.mc-check-item input[type=\"checkbox\"]:checked {\n  background: var(--mc-gold);\n  border-color: var(--mc-gold);\n}\n.mc-check-item input[type=\"checkbox\"]:checked::after {\n  content: '';\n  position: absolute;\n  left: 4px;\n  top: 1px;\n  width: 5px;\n  height: 9px;\n  border: 2px solid var(--mc-dark);\n  border-top: none;\n  border-left: none;\n  transform: rotate(45deg);\n}\n.mc-check-item span {\n  font-size: 12px;\n  font-weight: 600;\n  letter-spacing: 1px;\n  color: var(--mc-grey);\n  transition: color 0.2s ease;\n}\n.mc-check-item:has(input:checked) span {\n  color: var(--mc-white);\n}\n\/* \u2500\u2500 RESULTS PANEL \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mc-result__headline {\n  text-align: center;\n  padding: 24px 20px;\n  background: var(--mc-dark-5);\n  border: 1px solid var(--mc-gold-mid);\n  margin-bottom: 8px;\n}\n.mc-result__label {\n  font-size: 10px;\n  font-weight: 700;\n  letter-spacing: 3px;\n  text-transform: uppercase;\n  color: var(--mc-grey);\n  margin-bottom: 8px;\n}\n.mc-result__amount {\n  font-family: 'Anton', sans-serif;\n  font-size: clamp(32px, 4vw, 48px);\n  color: var(--mc-gold);\n  letter-spacing: 1px;\n}\n.mc-result__sub {\n  font-size: 12px;\n  color: var(--mc-grey);\n  margin-top: 4px;\n}\n.mc-stats {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 12px;\n}\n.mc-stat {\n  background: var(--mc-grey-faint);\n  border: 1px solid rgba(255,255,255,0.06);\n  padding: 14px 16px;\n}\n.mc-stat__label {\n  font-size: 9px;\n  font-weight: 700;\n  letter-spacing: 2px;\n  text-transform: uppercase;\n  color: var(--mc-grey);\n  margin-bottom: 6px;\n}\n.mc-stat__value {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--mc-white);\n}\n.mc-stat--full { grid-column: 1 \/ -1; }\n\/* \u2500\u2500 BREAKDOWN BARS \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mc-breakdown { display: flex; flex-direction: column; gap: 10px; }\n.mc-breakdown__title {\n  font-size: 9px;\n  font-weight: 700;\n  letter-spacing: 2.5px;\n  text-transform: uppercase;\n  color: var(--mc-grey);\n  margin-bottom: 4px;\n}\n.mc-bar {\n  display: grid;\n  grid-template-columns: 1fr auto;\n  grid-template-rows: auto auto;\n  gap: 4px 12px;\n  align-items: center;\n}\n.mc-bar__label {\n  font-size: 12px;\n  color: var(--mc-grey);\n  grid-column: 1;\n  grid-row: 1;\n}\n.mc-bar__val {\n  font-size: 13px;\n  font-weight: 700;\n  color: var(--mc-white);\n  grid-column: 2;\n  grid-row: 1;\n  text-align: right;\n  white-space: nowrap;\n}\n.mc-bar__track {\n  grid-column: 1 \/ -1;\n  grid-row: 2;\n  height: 4px;\n  background: rgba(255,255,255,0.08);\n  border-radius: 2px;\n  overflow: hidden;\n}\n.mc-bar__fill {\n  height: 100%;\n  border-radius: 2px;\n  transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n.mc-bar__fill--gold   { background: var(--mc-gold); }\n.mc-bar__fill--blue   { background: var(--mc-blue); }\n.mc-bar__fill--orange { background: var(--mc-orange); }\n.mc-bar__fill--purple { background: var(--mc-purple); }\n.mc-bar__fill--green  { background: var(--mc-green); }\n.mc-bar__fill--teal   { background: var(--mc-teal); }\n\/* \u2500\u2500 AMORTIZATION TABLE \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mc-amort-toggle {\n  background: none;\n  border: 1px solid rgba(255,255,255,0.12);\n  color: var(--mc-grey);\n  font-family: 'Raleway', sans-serif;\n  font-size: 11px;\n  font-weight: 700;\n  letter-spacing: 2px;\n  text-transform: uppercase;\n  padding: 12px 20px;\n  cursor: pointer;\n  width: 100%;\n  transition: all 0.2s ease;\n}\n.mc-amort-toggle:hover { border-color: var(--mc-gold-mid); color: var(--mc-gold); }\n.mc-amort-wrap { display: none; margin-top: 12px; overflow-x: auto; }\n.mc-amort-wrap.open { display: block; }\n.mc-amort-table {\n  width: 100%;\n  border-collapse: collapse;\n  font-size: 12px;\n}\n.mc-amort-table th {\n  font-size: 9px;\n  font-weight: 700;\n  letter-spacing: 2px;\n  text-transform: uppercase;\n  color: var(--mc-grey);\n  padding: 8px 10px;\n  text-align: right;\n  border-bottom: 1px solid rgba(255,255,255,0.08);\n}\n.mc-amort-table th:first-child { text-align: left; }\n.mc-amort-table td {\n  padding: 8px 10px;\n  text-align: right;\n  color: rgba(255,255,255,0.8);\n  border-bottom: 1px solid rgba(255,255,255,0.04);\n}\n.mc-amort-table td:first-child { text-align: left; color: var(--mc-grey); }\n.mc-amort-table tr:hover td { background: rgba(255,255,255,0.03); }\n\/* \u2500\u2500 NOTE \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mc-note {\n  font-size: 11px;\n  color: rgba(255,255,255,0.35);\n  line-height: 1.6;\n  padding-top: 8px;\n  border-top: 1px solid rgba(255,255,255,0.06);\n}\n\/* \u2500\u2500 VERDICT CARD (Rent vs Buy) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mc-verdict {\n  padding: 20px;\n  border: 1px solid;\n  text-align: center;\n}\n.mc-verdict--buy  { border-color: var(--mc-green);  background: rgba(90,170,122,0.07); }\n.mc-verdict--rent { border-color: var(--mc-blue);   background: rgba(74,144,196,0.07); }\n.mc-verdict--tie  { border-color: var(--mc-gold-mid); background: var(--mc-gold-faint); }\n.mc-verdict__icon { font-size: 28px; margin-bottom: 8px; }\n.mc-verdict__title {\n  font-family: 'Anton', sans-serif;\n  font-size: 20px;\n  letter-spacing: 1px;\n  text-transform: uppercase;\n  margin-bottom: 6px;\n}\n.mc-verdict__sub { font-size: 13px; color: var(--mc-grey); }\n\/* \u2500\u2500 CONTACT SECTION \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ar-mc__contact {\n  position: relative;\n  background: var(--mc-dark-3);\n  padding: 72px 5vw 180px;\n}\n.ar-mc__contact-grid {\n  display: grid;\n  grid-template-columns: 1fr 1.3fr;\n  gap: 80px;\n  align-items: start;\n  max-width: 1100px;\n  margin: 0 auto;\n}\n.ar-mc__contact-left {\n  position: sticky;\n  top: 100px;\n}\n.ar-mc__contact-intro {\n  font-size: 15px;\n  line-height: 1.88;\n  color: rgba(255,255,255,0.50);\n  margin: 24px 0 40px;\n}\n.ar-mc__contact-points {\n  display: flex;\n  flex-direction: column;\n  border-top: 1px solid rgba(190,175,135,0.14);\n}\n.ar-mc__contact-point {\n  display: grid;\n  grid-template-columns: 44px 1fr;\n  gap: 0 16px;\n  align-items: start;\n  padding: 22px 0;\n  border-bottom: 1px solid rgba(190,175,135,0.10);\n}\n.ar-mc__contact-point-icon {\n  width: 36px; height: 36px;\n  background: rgba(190,175,135,0.10);\n  border: 1px solid rgba(190,175,135,0.22);\n  border-radius: 50%;\n  display: flex; align-items: center; justify-content: center;\n  flex-shrink: 0; margin-top: 2px;\n  color: var(--mc-gold);\n}\n.ar-mc__contact-point-icon svg { width: 15px; height: 15px; }\n.ar-mc__contact-point-title {\n  font-family: 'Anton', sans-serif;\n  font-size: 14px; letter-spacing: 1.5px;\n  text-transform: uppercase; color: #ffffff; margin: 0 0 5px;\n}\n.ar-mc__contact-point-desc {\n  font-size: 13px; line-height: 1.7;\n  color: rgba(255,255,255,0.42); margin: 0;\n}\n\/* \u2500\u2500 FORM WRAP \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ar-mc__form-wrap {\n  background: var(--mc-dark-2);\n  border: 1px solid rgba(190,175,135,0.16);\n  padding: 48px 44px 40px;\n  box-sizing: border-box;\n  position: relative;\n  overflow: hidden;\n}\n.ar-mc__form-wrap::before {\n  content: '';\n  position: absolute;\n  top: 0; left: 0;\n  width: 3px; height: 64px;\n  background: linear-gradient(to bottom, var(--mc-gold), transparent);\n}\n.ar-mc__form-title {\n  font-family: 'Anton', sans-serif;\n  font-size: 22px; letter-spacing: 2px;\n  text-transform: uppercase; color: #ffffff; margin: 0 0 8px;\n}\n.ar-mc__form-subtitle {\n  font-size: 13px; color: rgba(255,255,255,0.38);\n  margin: 0 0 32px; letter-spacing: 0.5px;\n}\n.ar-mc__form {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 16px;\n}\n.ar-mc__field { display: flex; flex-direction: column; gap: 8px; }\n.ar-mc__field--full { grid-column: 1 \/ -1; }\n.ar-mc__field label {\n  font-size: 10.5px; font-weight: 700;\n  letter-spacing: 2.5px; text-transform: uppercase; color: var(--mc-gold);\n}\n.ar-mc__field input,\n.ar-mc__field select,\n.ar-mc__field textarea {\n  background: rgba(255,255,255,0.04) !important;\n  border: 1px solid rgba(190,175,135,0.18) !important;\n  border-radius: 0 !important;\n  padding: 13px 16px !important;\n  font-family: 'Raleway', sans-serif !important;\n  font-size: 14px !important;\n  color: #ffffff !important;\n  transition: border-color 0.2s ease, background 0.2s ease !important;\n  width: 100% !important;\n  box-sizing: border-box !important;\n  outline: none !important;\n  -webkit-appearance: none !important;\n  appearance: none !important;\n  box-shadow: none !important;\n}\n.ar-mc__field select {\n  background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23BEAF87' stroke-width='1.5' fill='none' stroke-linecap='round'\/%3E%3C\/svg%3E\") !important;\n  background-repeat: no-repeat !important;\n  background-position: right 14px center !important;\n  padding-right: 40px !important;\n  cursor: pointer !important;\n}\n.ar-mc__field select option { background: #1a1a1a; color: #fff; }\n.ar-mc__field input:focus,\n.ar-mc__field select:focus,\n.ar-mc__field textarea:focus {\n  border-color: var(--mc-gold) !important;\n  background: rgba(255,255,255,0.06) !important;\n}\n.ar-mc__field input::placeholder,\n.ar-mc__field textarea::placeholder { color: rgba(255,255,255,0.20) !important; }\n.ar-mc__field textarea { resize: vertical !important; min-height: 110px !important; }\n.ar-mc__form-foot {\n  grid-column: 1 \/ -1;\n  display: flex; align-items: center;\n  gap: 18px; flex-wrap: wrap; margin-top: 4px;\n}\n.ar-mc__form-note { font-size: 12px; color: rgba(255,255,255,0.28); letter-spacing: 0.5px; }\n.ar-mc__form-status {\n  display: none;\n  grid-column: 1 \/ -1;\n  padding: 14px 18px;\n  font-size: 13.5px; letter-spacing: 0.5px;\n}\n.ar-mc__form-status--ok {\n  background: rgba(190,175,135,0.09);\n  border: 1px solid rgba(190,175,135,0.28);\n  color: var(--mc-gold);\n}\n.ar-mc__form-status--err {\n  background: rgba(200,50,50,0.09);\n  border: 1px solid rgba(200,50,50,0.28);\n  color: #e08888;\n}\n\/* \u2500\u2500 RESPONSIVE \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n@media (max-width: 960px) {\n  #mcGrid { grid-template-columns: repeat(2, 1fr); }\n  .mc-layout { grid-template-columns: 1fr; }\n  .ar-mc__contact-grid { grid-template-columns: 1fr; gap: 52px; }\n  .ar-mc__contact-left { position: static; }\n}\n@media (max-width: 640px) {\n  #mcGrid { grid-template-columns: 1fr; }\n  .ar-mc__hub { padding: 52px 5vw 80px; }\n  .mc-inputs, .mc-results { padding: 24px 18px; }\n  .mc-stats { grid-template-columns: 1fr; }\n  .mc-stat--full { grid-column: 1; }\n  .mc-field__value { width: 100px; }\n  .ar-mc__form-wrap { padding: 32px 22px; }\n  .ar-mc__form { grid-template-columns: 1fr; }\n}\n<\/style>\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     ROOT WRAPPER\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <!-- \u2500\u2500 HERO \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <section>\n      Financial Tools\n      <h1>Mortgage<br \/>Calculators<\/h1>\n      <p>Everything you need to plan your purchase, from monthly payments to closing costs, all in one place.<\/p>\n        <button onclick=\"document.getElementById('calcHub').scrollIntoView({behavior:'smooth'})\">Open a Calculator &nbsp;\u2193<\/button>\n  <\/section>\n  <!-- \u2500\u2500 CALCULATOR HUB \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <section id=\"calcHub\">\n    <!-- Hub header -->\n      Six Tools\n      <h2>Choose a Calculator<\/h2>\n      <p>Select any tool below to get started. All calculators update in real time as you adjust the inputs.<\/p>\n    <!-- \u2500\u2500 CARD GRID \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n      <!-- Card 0: Affordability Audit - START HERE -->\n        \u2605 Start Here\n        <h3>Affordability Audit<\/h3>\n        <p>Before running any calculator, find out what you truly spend each month. Your results carry through to other tools automatically.<\/p>\n        Begin Audit \u2192\n      <!-- Card 1: Mortgage Payment -->\n        Most Popular\n        <h3>Mortgage Payment<\/h3>\n        <p>Calculate your monthly payment, total interest, and view a full amortization schedule.<\/p>\n        Calculate \u2192\n      <!-- Card 2: Purchase Power -->\n        <h3>Purchase Power<\/h3>\n        <p>Find out how much home you can afford based on your income, debts, and down payment.<\/p>\n        Calculate \u2192\n      <!-- Card 3: Closing Costs -->\n        <h3>Closing Costs<\/h3>\n        <p>Never be surprised again. Get a detailed breakdown of all closing costs before you sign.<\/p>\n        Calculate \u2192\n      <!-- Card 4: Land Transfer Tax -->\n        <h3>Land Transfer Tax<\/h3>\n        <p>Transfer tax and rebates for every province in Canada, including first-time buyer savings.<\/p>\n        Calculate \u2192\n      <!-- Card 5: Maximum Mortgage -->\n        <h3>Maximum Mortgage<\/h3>\n        <p>Stress test your borrowing limit using GDS\/TDS ratios, the way lenders actually calculate it.<\/p>\n        Calculate \u2192\n      <!-- Card 6: Rent vs Buy -->\n        <h3>Rent vs. Buy<\/h3>\n        <p>Compare the true financial advantage of renting versus buying based on your situation.<\/p>\n        Calculate \u2192\n    <!-- \/mcGrid -->\n    <!-- \u2500\u2500 CALCULATOR PANEL \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n      <button onclick=\"hideCalc()\">\n        All Calculators\n      <\/button>\n      <!-- \u2550\u2550\u2550 0. AFFORDABILITY AUDIT \u2550\u2550\u2550 -->\n          <!-- LEFT: The 4 Parts -->\n              <!-- Part 1: Subscription Creep -->\n                Part 1\n                The Subscription Creep\n                <label>Streaming (Netflix, Disney+, Crave)<\/label><input id=\"au-streaming\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>Audio (Spotify, Apple Music, Audible)<\/label><input id=\"au-audio\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>Digital Storage (iCloud, Google Drive)<\/label><input id=\"au-storage\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>Memberships (Amazon Prime, Costco)<\/label><input id=\"au-memberships\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>Fitness (Gym, Peloton, Yoga apps)<\/label><input id=\"au-fitness\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                  Monthly Subscriptions\n                  $0\n              <!-- Part 2: Convenience Tax -->\n                Part 2\n                The Convenience Tax\n                <label>Delivery Apps (Skip, UberEats, DoorDash)<\/label><input id=\"au-delivery\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>Coffee \/ Energy Drink Runs<\/label><input id=\"au-coffee\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>Gas Station \/ Vending Snacks<\/label><input id=\"au-snacks\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>Dining Out \/ Social Drinks<\/label><input id=\"au-dining\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                  Convenience Spending\n                  $0\n              <!-- Part 3: Buy Now Reflex -->\n                Part 3\n                The &#8220;Buy Now&#8221; Reflex\n                <label>Online Shopping (Amazon, etc.)<\/label><input id=\"au-online\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>App Store \/ In-Game Purchases<\/label><input id=\"au-apps\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>Impulse Retail (Decor, Gadgets, Clothes)<\/label><input id=\"au-impulse\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                  Impulse Spending\n                  $0\n              <!-- Part 4: Canadian Reality Check -->\n                Part 4\n                The Canadian Reality Check\n                <label>Monthly Groceries<\/label><input id=\"au-groceries\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>Peak Winter Heating Bill (Jan. estimate)<\/label><input id=\"au-heating\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                <label>Vehicle Fuel \/ Maintenance \/ Autopac<\/label><input id=\"au-vehicle\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n                  Essential Lifestyle Costs\n                  $0\n            <!-- \/mc-audit-parts -->\n          <!-- \/mc-inputs -->\n          <!-- RIGHT: 3-Step Flow -->\n            <!-- Step 1: Lifestyle Total -->\n                1\n                Your Lifestyle Total\n                Monthly Lifestyle Spending\n                $0\n              Fill in Parts 1-4 on the left to calculate your true monthly lifestyle cost.\n            <!-- Step 2: Housing Costs -->\n                2\n                Your Housing Costs\n              <!-- Mortgage: not yet synced -->\n                  Your mortgage payment is the biggest number in this picture. Run the calculator to get your exact figure, and it will sync back here automatically.\n                  <button onclick=\"goToMortgageCalc()\">Calculate My Mortgage \u2192<\/button>\n              <!-- Mortgage: synced state -->\n                    Mortgage Payment\n                    <small>\u2197 Synced from Mortgage Calculator<\/small>\n                  $0\n                \u2197 Adjust in Mortgage Calculator\n              <!-- Hidden value store -->\n              <input type=\"hidden\" id=\"au-mortgage\" value=\"0\"\/>\n              <!-- Property Tax -->\n                  Property Taxes (Monthly TIPP)\n                  <small>~$350\/mo typical for Brandon, MB<\/small>\n                <input id=\"au-propertytax\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n              <!-- Insurance + Utilities -->\n                  Home Insurance \/ Utilities\n                  <small>~$250\/mo typical<\/small>\n                <input id=\"au-insurance\" value=\"$0\" oninput=\"auFmt(this);calcAudit()\"\/>\n            <!-- Real Cost Total -->\n              The Real Cost of Your Life\n              $0 \/mo\n            <!-- Step 3: The Gut-Check -->\n                3\n                The Gut-Check\n                  <label>Monthly Net Income (Take-Home)<\/label>\n                  <input type=\"text\" id=\"au-income-val\" value=\"$4,500\" oninput=\"auFmt(this);auditData.income=auVal('au-income-val');syncFromAuditIncome();calcAudit()\"\/>\n                <input type=\"range\" id=\"au-income\" min=\"2000\" max=\"20000\" step=\"100\" value=\"4500\" oninput=\"syncToText(this,'au-income-val','$','');auditData.income=+this.value;calcAudit()\"\/>\n                  <label>Comfort Buffer Goal<\/label>\n                  <input type=\"text\" id=\"au-buffer-val\" value=\"$500\" oninput=\"auFmt(this);$('au-buffer').value=auVal('au-buffer-val');updateSliderFill($('au-buffer'));calcAudit()\"\/>\n                <input type=\"range\" id=\"au-buffer\" min=\"0\" max=\"2000\" step=\"50\" value=\"500\" oninput=\"syncToText(this,'au-buffer-val','$','');calcAudit()\"\/>\n                The worksheet flags &lt;$500 left over as the Danger Zone\n              <!-- Verdict -->\n                \u2696\ufe0f\n                Complete Steps 1 &amp; 2 First\n                Fill in your lifestyle spending and run the mortgage calculator to see your full picture.\n          <!-- \/mc-results -->\n        <!-- \/mc-layout -->\n      <!-- \/calc-audit -->\n      <!-- \u2550\u2550\u2550 1. MORTGAGE PAYMENT \u2550\u2550\u2550 -->\n        <button id=\"mp-back-to-audit\" onclick=\"returnToAudit()\">\n          Back to Affordability Audit\n        <\/button>\n                <label>Home Price<\/label>\n                <input type=\"text\" id=\"mp-price-val\" value=\"$400,000\" oninput=\"syncFromText(this,'mp-price')\" onblur=\"formatCurrency(this,'mp-price')\"\/>\n              <input type=\"range\" id=\"mp-price\" min=\"100000\" max=\"1500000\" step=\"5000\" value=\"400000\" oninput=\"syncToText(this,'mp-price-val','$',''); calcMortgage()\"\/>\n                <label>Down Payment<\/label>\n                <input type=\"text\" id=\"mp-down-val\" value=\"$20,000\" oninput=\"syncFromText(this,'mp-down')\" onblur=\"formatCurrency(this,'mp-down')\"\/>\n              <input type=\"range\" id=\"mp-down\" min=\"5000\" max=\"750000\" step=\"1000\" value=\"20000\" oninput=\"syncToText(this,'mp-down-val','$',''); calcMortgage()\"\/>\n              5.0% down \u00b7 CMHC required\n                <label>Interest Rate<\/label>\n                <input type=\"text\" id=\"mp-rate-val\" value=\"4.10%\" oninput=\"syncFromText(this,'mp-rate')\" onblur=\"formatPct(this,'mp-rate')\"\/>\n              <input type=\"range\" id=\"mp-rate\" min=\"100\" max=\"1200\" step=\"5\" value=\"410\" oninput=\"syncToText(this,'mp-rate-val','','%',2); calcMortgage()\"\/>\n                <label>Amortization<\/label>\n                <input type=\"text\" id=\"mp-amort-val\" value=\"25 yrs\" oninput=\"syncFromTextAmort(this,'mp-amort')\"\/>\n              <input type=\"range\" id=\"mp-amort\" min=\"5\" max=\"30\" step=\"1\" value=\"25\" oninput=\"document.getElementById('mp-amort-val').value=this.value+' yrs'; updateSliderFill(this); calcMortgage()\"\/>\n              <label>Payment Frequency<\/label>\n              <select id=\"mp-freq\" onchange=\"calcMortgage()\">\n                <option value=\"12\">Monthly<\/option>\n                <option value=\"24\">Semi-Monthly<\/option>\n                <option value=\"26\">Bi-Weekly<\/option>\n                <option value=\"52\">Weekly<\/option>\n                <option value=\"26acc\">Accelerated Bi-Weekly<\/option>\n                <option value=\"52acc\">Accelerated Weekly<\/option>\n              <\/select>\n          <!-- \/mc-inputs -->\n              Monthly Payment\n              $1,910\n                Mortgage Amount\n                $320,000\n                CMHC Premium\n                None\n                Total Interest\n                $253,000\n                Total Cost\n                $653,000\n              Cost Breakdown\n                Principal\n                $320,000\n                Total Interest\n                $253,000\n                Down Payment\n                $80,000\n            <button onclick=\"toggleAmort()\">Show Amortization Schedule \u25be<\/button>\n              <table>\n                <thead><tr><th>Year<\/th><th>Balance<\/th><th>Principal<\/th><th>Interest<\/th><th>Total Paid<\/th><\/tr><\/thead>\n                <tbody id=\"mp-amort-body\"><\/tbody>\n              <\/table>\n      <!-- \/calc-mortgage -->\n      <!-- \u2550\u2550\u2550 2. PURCHASE POWER \u2550\u2550\u2550 -->\n                <label>Annual Household Income<\/label>\n                <input type=\"text\" id=\"pp-income-val\" value=\"$120,000\" oninput=\"syncFromText(this,'pp-income')\" onblur=\"formatCurrency(this,'pp-income')\"\/>\n              <input type=\"range\" id=\"pp-income\" min=\"40000\" max=\"400000\" step=\"5000\" value=\"120000\" oninput=\"syncToText(this,'pp-income-val','$',''); calcPurchase()\"\/>\n                <label>Monthly Debt Payments<\/label>\n                <input type=\"text\" id=\"pp-debts-val\" value=\"$300\" oninput=\"syncFromText(this,'pp-debts')\" onblur=\"formatCurrency(this,'pp-debts')\"\/>\n              <input type=\"range\" id=\"pp-debts\" min=\"0\" max=\"5000\" step=\"50\" value=\"300\" oninput=\"syncToText(this,'pp-debts-val','$',''); calcPurchase()\"\/>\n              Car loans, credit cards, student loans, etc.\n                <label>Down Payment Available<\/label>\n                <input type=\"text\" id=\"pp-down-val\" value=\"$20,000\" oninput=\"syncFromText(this,'pp-down')\" onblur=\"formatCurrency(this,'pp-down')\"\/>\n              <input type=\"range\" id=\"pp-down\" min=\"5000\" max=\"500000\" step=\"5000\" value=\"20000\" oninput=\"syncToText(this,'pp-down-val','$',''); calcPurchase()\"\/>\n                <label>Interest Rate<\/label>\n                <input type=\"text\" id=\"pp-rate-val\" value=\"4.10%\" oninput=\"syncFromText(this,'pp-rate')\" onblur=\"formatPct(this,'pp-rate')\"\/>\n              <input type=\"range\" id=\"pp-rate\" min=\"100\" max=\"1200\" step=\"5\" value=\"410\" oninput=\"syncToText(this,'pp-rate-val','','%',2); calcPurchase()\"\/>\n                <label>Monthly Property Tax (est.)<\/label>\n                <input type=\"text\" id=\"pp-tax-val\" value=\"$300\" oninput=\"syncFromText(this,'pp-tax')\" onblur=\"formatCurrency(this,'pp-tax')\"\/>\n              <input type=\"range\" id=\"pp-tax\" min=\"0\" max=\"1200\" step=\"25\" value=\"300\" oninput=\"syncToText(this,'pp-tax-val','$',''); calcPurchase()\"\/>\n                <label>Monthly Heating (est.)<\/label>\n                <input type=\"text\" id=\"pp-heat-val\" value=\"$150\" oninput=\"syncFromText(this,'pp-heat')\" onblur=\"formatCurrency(this,'pp-heat')\"\/>\n              <input type=\"range\" id=\"pp-heat\" min=\"50\" max=\"500\" step=\"10\" value=\"150\" oninput=\"syncToText(this,'pp-heat-val','$',''); calcPurchase()\"\/>\n                <label>Amortization<\/label>\n                <input type=\"text\" id=\"pp-amort-val\" value=\"25 yrs\"\/>\n              <input type=\"range\" id=\"pp-amort\" min=\"5\" max=\"30\" step=\"1\" value=\"25\" oninput=\"document.getElementById('pp-amort-val').value=this.value+' yrs'; updateSliderFill(this); calcPurchase()\"\/>\n              Maximum Home Price\n              $0\n                Max Mortgage\n                $0\n                Monthly Payment\n                $0\n                Stress Test Rate\n                7.50%\n                Limiting Factor\n                GDS\n                Debt Ratios\n                    GDS Ratio (max 39%)\n                    0%\n                    TDS Ratio (max 44%)\n                    0%\n            * Based on CMHC stress test guidelines. Results are estimates. Contact a mortgage broker for pre-approval.\n      <!-- \/calc-purchase -->\n      <!-- \u2550\u2550\u2550 3. CLOSING COSTS \u2550\u2550\u2550 -->\n                <label>Purchase Price<\/label>\n                <input type=\"text\" id=\"cc-price-val\" value=\"$400,000\" oninput=\"syncFromText(this,'cc-price')\" onblur=\"formatCurrency(this,'cc-price')\"\/>\n              <input type=\"range\" id=\"cc-price\" min=\"100000\" max=\"1500000\" step=\"5000\" value=\"400000\" oninput=\"syncToText(this,'cc-price-val','$',''); calcClosing()\"\/>\n              <label>Province<\/label>\n              <select id=\"cc-province\" onchange=\"calcClosing()\">\n                <option value=\"MB\" selected>Manitoba<\/option>\n                <option value=\"ON\">Ontario<\/option>\n                <option value=\"BC\">British Columbia<\/option>\n                <option value=\"AB\">Alberta<\/option>\n                <option value=\"SK\">Saskatchewan<\/option>\n                <option value=\"QC\">Quebec<\/option>\n                <option value=\"NS\">Nova Scotia<\/option>\n                <option value=\"NB\">New Brunswick<\/option>\n                <option value=\"PE\">PEI<\/option>\n                <option value=\"NL\">Newfoundland<\/option>\n              <\/select>\n              <label>First-Time Home Buyer?<\/label>\n                <button id=\"cc-ftb-yes\" onclick=\"setToggle('cc-ftb','yes'); calcClosing()\">Yes<\/button>\n                <button id=\"cc-ftb-no\" onclick=\"setToggle('cc-ftb','no'); calcClosing()\">No<\/button>\n              <label>Home Type<\/label>\n                <button id=\"cc-type-resale\" onclick=\"setToggle('cc-type','resale'); calcClosing()\">Resale<\/button>\n                <button id=\"cc-type-new\" onclick=\"setToggle('cc-type','new'); calcClosing()\">New Build<\/button>\n              <label>Optional Costs<\/label>\n                <label>\n                  <input type=\"checkbox\" id=\"cc-include-inspection\" checked onchange=\"calcClosing()\"\/>\n                  Include Home Inspection ($500)\n                <\/label>\n                <label>\n                  <input type=\"checkbox\" id=\"cc-include-appraisal\" checked onchange=\"calcClosing()\"\/>\n                  Include Appraisal ($400)\n                <\/label>\n              Estimated Total Closing Costs\n              $0\n              Cost Breakdown\n                Land Transfer Tax\n                $0\n                Legal Fees\n                $1,500\n                Home Inspection\n                $500\n                Title Insurance\n                $300\n                Appraisal\n                $400\n                GST\/HST (New Build)\n                $0\n            * All figures are estimates. Actual costs vary by property and lawyer. Contact your real estate lawyer for an exact quote.\n      <!-- \/calc-closing -->\n      <!-- \u2550\u2550\u2550 4. LAND TRANSFER TAX \u2550\u2550\u2550 -->\n              <label>Province<\/label>\n              <select id=\"ltt-province\" onchange=\"calcLTT()\">\n                <option value=\"MB\" selected>Manitoba<\/option>\n                <option value=\"ON\">Ontario<\/option>\n                <option value=\"BC\">British Columbia<\/option>\n                <option value=\"AB\">Alberta<\/option>\n                <option value=\"SK\">Saskatchewan<\/option>\n                <option value=\"QC\">Quebec<\/option>\n                <option value=\"NS\">Nova Scotia<\/option>\n                <option value=\"NB\">New Brunswick<\/option>\n                <option value=\"PE\">PEI<\/option>\n                <option value=\"NL\">Newfoundland<\/option>\n              <\/select>\n                <label>Purchase Price<\/label>\n                <input type=\"text\" id=\"ltt-price-val\" value=\"$400,000\" oninput=\"syncFromText(this,'ltt-price')\" onblur=\"formatCurrency(this,'ltt-price')\"\/>\n              <input type=\"range\" id=\"ltt-price\" min=\"50000\" max=\"1500000\" step=\"5000\" value=\"400000\" oninput=\"syncToText(this,'ltt-price-val','$',''); calcLTT()\"\/>\n              <label>First-Time Home Buyer?<\/label>\n                <button id=\"ltt-ftb-yes\" onclick=\"setToggle('ltt-ftb','yes'); calcLTT()\">Yes<\/button>\n                <button id=\"ltt-ftb-no\" onclick=\"setToggle('ltt-ftb','no'); calcLTT()\">No<\/button>\n              Net Tax Payable\n              $0\n              Tax Breakdown\n                Provincial LTT\n                $0\n                Toronto Municipal LTT\n                $0\n                First-Time Buyer Rebate\n                -$0\n              Tax Brackets Applied\n      <!-- \/calc-ltt -->\n      <!-- \u2550\u2550\u2550 5. MAXIMUM MORTGAGE \u2550\u2550\u2550 -->\n                <label>Annual Household Income<\/label>\n                <input type=\"text\" id=\"mm-income-val\" value=\"$120,000\" oninput=\"syncFromText(this,'mm-income')\" onblur=\"formatCurrency(this,'mm-income')\"\/>\n              <input type=\"range\" id=\"mm-income\" min=\"40000\" max=\"400000\" step=\"5000\" value=\"120000\" oninput=\"syncToText(this,'mm-income-val','$',''); calcMaxMort()\"\/>\n                <label>Monthly Debt Payments<\/label>\n                <input type=\"text\" id=\"mm-debts-val\" value=\"$300\" oninput=\"syncFromText(this,'mm-debts')\" onblur=\"formatCurrency(this,'mm-debts')\"\/>\n              <input type=\"range\" id=\"mm-debts\" min=\"0\" max=\"5000\" step=\"50\" value=\"300\" oninput=\"syncToText(this,'mm-debts-val','$',''); calcMaxMort()\"\/>\n                <label>Contract Interest Rate<\/label>\n                <input type=\"text\" id=\"mm-rate-val\" value=\"4.10%\" oninput=\"syncFromText(this,'mm-rate')\" onblur=\"formatPct(this,'mm-rate')\"\/>\n              <input type=\"range\" id=\"mm-rate\" min=\"100\" max=\"1200\" step=\"5\" value=\"410\" oninput=\"syncToText(this,'mm-rate-val','','%',2); calcMaxMort()\"\/>\n                <label>Amortization<\/label>\n                <input type=\"text\" id=\"mm-amort-val\" value=\"25 yrs\"\/>\n              <input type=\"range\" id=\"mm-amort\" min=\"5\" max=\"30\" step=\"1\" value=\"25\" oninput=\"document.getElementById('mm-amort-val').value=this.value+' yrs'; updateSliderFill(this); calcMaxMort()\"\/>\n                <label>Monthly Property Tax<\/label>\n                <input type=\"text\" id=\"mm-tax-val\" value=\"$300\" oninput=\"syncFromText(this,'mm-tax')\" onblur=\"formatCurrency(this,'mm-tax')\"\/>\n              <input type=\"range\" id=\"mm-tax\" min=\"0\" max=\"1500\" step=\"25\" value=\"300\" oninput=\"syncToText(this,'mm-tax-val','$',''); calcMaxMort()\"\/>\n                <label>Monthly Heating<\/label>\n                <input type=\"text\" id=\"mm-heat-val\" value=\"$150\" oninput=\"syncFromText(this,'mm-heat')\" onblur=\"formatCurrency(this,'mm-heat')\"\/>\n              <input type=\"range\" id=\"mm-heat\" min=\"50\" max=\"500\" step=\"10\" value=\"150\" oninput=\"syncToText(this,'mm-heat-val','$',''); calcMaxMort()\"\/>\n                <label>Monthly Condo Fees<\/label>\n                <input type=\"text\" id=\"mm-condo-val\" value=\"$0\" oninput=\"syncFromText(this,'mm-condo')\" onblur=\"formatCurrency(this,'mm-condo')\"\/>\n              <input type=\"range\" id=\"mm-condo\" min=\"0\" max=\"1500\" step=\"25\" value=\"0\" oninput=\"syncToText(this,'mm-condo-val','$',''); calcMaxMort()\"\/>\n              50% of condo fees counted toward GDS\/TDS\n              Maximum Mortgage\n              $0\n                Stress Test Rate\n                7.50%\n                Limiting Factor\n                GDS\n                GDS-Based Max\n                $0\n                TDS-Based Max\n                $0\n              Ratio at Maximum Mortgage\n                GDS (max 39%)\n                0%\n                TDS (max 44%)\n                0%\n            * Stress tested at max(contract rate + 2%, 5.25%) per OSFI guidelines. Actual lender limits may vary.\n      <!-- \/calc-maxmort -->\n      <!-- \u2550\u2550\u2550 6. RENT vs BUY \u2550\u2550\u2550 -->\n                <label>Monthly Rent<\/label>\n                <input type=\"text\" id=\"rb-rent-val\" value=\"$1,800\" oninput=\"syncFromText(this,'rb-rent')\" onblur=\"formatCurrency(this,'rb-rent')\"\/>\n              <input type=\"range\" id=\"rb-rent\" min=\"500\" max=\"5000\" step=\"50\" value=\"1800\" oninput=\"syncToText(this,'rb-rent-val','$',''); calcRentBuy()\"\/>\n                <label>Home Purchase Price<\/label>\n                <input type=\"text\" id=\"rb-price-val\" value=\"$400,000\" oninput=\"syncFromText(this,'rb-price')\" onblur=\"formatCurrency(this,'rb-price')\"\/>\n              <input type=\"range\" id=\"rb-price\" min=\"100000\" max=\"1500000\" step=\"5000\" value=\"400000\" oninput=\"syncToText(this,'rb-price-val','$',''); calcRentBuy()\"\/>\n                <label>Down Payment<\/label>\n                <input type=\"text\" id=\"rb-down-val\" value=\"$20,000\" oninput=\"syncFromText(this,'rb-down')\" onblur=\"formatCurrency(this,'rb-down')\"\/>\n              <input type=\"range\" id=\"rb-down\" min=\"5000\" max=\"750000\" step=\"5000\" value=\"20000\" oninput=\"syncToText(this,'rb-down-val','$',''); calcRentBuy()\"\/>\n                <label>Interest Rate<\/label>\n                <input type=\"text\" id=\"rb-rate-val\" value=\"4.10%\" oninput=\"syncFromText(this,'rb-rate')\" onblur=\"formatPct(this,'rb-rate')\"\/>\n              <input type=\"range\" id=\"rb-rate\" min=\"100\" max=\"1200\" step=\"5\" value=\"410\" oninput=\"syncToText(this,'rb-rate-val','','%',2); calcRentBuy()\"\/>\n                <label>Time Horizon<\/label>\n                <input type=\"text\" id=\"rb-years-val\" value=\"10 yrs\"\/>\n              <input type=\"range\" id=\"rb-years\" min=\"1\" max=\"30\" step=\"1\" value=\"10\" oninput=\"document.getElementById('rb-years-val').value=this.value+' yrs'; updateSliderFill(this); calcRentBuy()\"\/>\n                <label>Annual Home Appreciation<\/label>\n                <input type=\"text\" id=\"rb-appr-val\" value=\"3.00%\" oninput=\"syncFromText(this,'rb-appr')\" onblur=\"formatPct(this,'rb-appr')\"\/>\n              <input type=\"range\" id=\"rb-appr\" min=\"0\" max=\"800\" step=\"10\" value=\"300\" oninput=\"syncToText(this,'rb-appr-val','','%',2); calcRentBuy()\"\/>\n                <label>Investment Return (on savings)<\/label>\n                <input type=\"text\" id=\"rb-invest-val\" value=\"6.00%\" oninput=\"syncFromText(this,'rb-invest')\" onblur=\"formatPct(this,'rb-invest')\"\/>\n              <input type=\"range\" id=\"rb-invest\" min=\"0\" max=\"1500\" step=\"25\" value=\"600\" oninput=\"syncToText(this,'rb-invest-val','','%',2); calcRentBuy()\"\/>\n              Annual return on invested down payment if renting\n                <label>Annual Rent Increase<\/label>\n                <input type=\"text\" id=\"rb-rentrise-val\" value=\"3.00%\" oninput=\"syncFromText(this,'rb-rentrise')\" onblur=\"formatPct(this,'rb-rentrise')\"\/>\n              <input type=\"range\" id=\"rb-rentrise\" min=\"0\" max=\"800\" step=\"10\" value=\"300\" oninput=\"syncToText(this,'rb-rentrise-val','','%',2); calcRentBuy()\"\/>\n              \u2696\ufe0f\n              Calculating&#8230;\n                Total Cost to Buy\n                $0\n                Total Cost to Rent\n                $0\n                Net Worth (Buying)\n                $0\n                Net Worth (Renting)\n                $0\n              Buying Cost Breakdown\n                Mortgage Payments\n                $0\n                Maintenance &amp; Tax\n                $0\n                Less: Equity Gained\n                -$0\n            * Net worth = home equity (buying) or invested portfolio (renting). Renting assumes the down payment and monthly savings are invested at the return rate specified.\n      <!-- \/calc-rentvbuy -->\n    <!-- \/mcPanel -->\n  <\/section><!-- \/hub -->\n  <!-- \u2500\u2500 CONTACT CTA \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <section>\n    <h2>Have Questions About Your Numbers?<\/h2>\n    <p>These calculators are a great starting point, but every situation is unique. Send us a message and the right person on our team will follow up.<\/p>\n    <a href=\"https:\/\/westmanrealty.c21.ca\/contact-us\" target=\"_blank\" rel=\"noopener\">Get in Touch<\/a>\n  <\/section>\n<!-- \/ar-mc -->\n\n","protected":false},"excerpt":{"rendered":"<p>Financial Tools MortgageCalculators Everything you need to plan your purchase, from monthly payments to closing costs, all in one place. Open a Calculator &nbsp;\u2193 Six Tools Choose a Calculator Select any tool below to get started. All calculators update in real time as you adjust the inputs. \u2605 Start Here Affordability Audit Before running any [&hellip;]<\/p>\n","protected":false},"author":18430,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2002","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/westmanrealty.c21.ca\/fr-ca\/wp-json\/wp\/v2\/pages\/2002","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/westmanrealty.c21.ca\/fr-ca\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/westmanrealty.c21.ca\/fr-ca\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/westmanrealty.c21.ca\/fr-ca\/wp-json\/wp\/v2\/users\/18430"}],"replies":[{"embeddable":true,"href":"https:\/\/westmanrealty.c21.ca\/fr-ca\/wp-json\/wp\/v2\/comments?post=2002"}],"version-history":[{"count":5,"href":"https:\/\/westmanrealty.c21.ca\/fr-ca\/wp-json\/wp\/v2\/pages\/2002\/revisions"}],"predecessor-version":[{"id":2195,"href":"https:\/\/westmanrealty.c21.ca\/fr-ca\/wp-json\/wp\/v2\/pages\/2002\/revisions\/2195"}],"wp:attachment":[{"href":"https:\/\/westmanrealty.c21.ca\/fr-ca\/wp-json\/wp\/v2\/media?parent=2002"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}