{"id":1106,"date":"2025-12-26T11:39:57","date_gmt":"2025-12-26T11:39:57","guid":{"rendered":"https:\/\/profilegroup.ae\/?page_id=1106"},"modified":"2025-12-26T11:46:23","modified_gmt":"2025-12-26T11:46:23","slug":"mortgage-calculator","status":"publish","type":"page","link":"https:\/\/profilegroup.ae\/ar\/mortgage-calculator\/","title":{"rendered":"Mortgage Calculator"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"1106\" class=\"elementor elementor-1106\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-edf148c e-flex e-con-boxed e-con e-parent\" data-id=\"edf148c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3434ed5 elementor-widget elementor-widget-heading\" data-id=\"3434ed5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Finance Calculator<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a1fc916 elementor-widget elementor-widget-shortcode\" data-id=\"a1fc916\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n    <div class=\"pm-fc\" id=\"pmfc_21d5a53373\" data-currency=\"AED\" data-default=\"mortgage\">\n      <style>\n        \/* ======================================================================\n           BOOKMARK: PMFC_MOBILE_RESPONSIVE_STYLES\n           Includes: mobile tab dropdown\n           ====================================================================== *\/\n\n        #pmfc_21d5a53373{\n          width:100%;\n          max-width:1100px;\n          margin:0 auto;\n          box-sizing:border-box;\n        }\n        #pmfc_21d5a53373 *{box-sizing:border-box}\n\n        #pmfc_21d5a53373 .pmfc-card{\n          background:#fff;\n          border:1px solid rgba(0,0,0,.08);\n          border-radius:16px;\n          box-shadow:0 16px 42px rgba(0,0,0,.10);\n          padding:14px;\n          max-width:100%;\n          overflow:visible;\n        }\n\n        #pmfc_21d5a53373 .pmfc-head{\n          display:flex;\n          align-items:flex-end;\n          justify-content:space-between;\n          gap:10px;\n          margin-bottom:10px;\n        }\n        #pmfc_21d5a53373 .pmfc-title{margin:0;font-size:14px;font-weight:900;color:#111}\n        #pmfc_21d5a53373 .pmfc-sub{margin:6px 0 0 0;font-size:12px;color:rgba(0,0,0,.55)}\n\n        \/* Desktop tabs (pills) *\/\n        #pmfc_21d5a53373 .pmfc-tabs{\n          display:flex;\n          gap:8px;\n          margin:10px 0 14px 0;\n          padding:6px 2px;\n          overflow:auto;\n          -webkit-overflow-scrolling:touch;\n          border-top:1px solid rgba(0,0,0,.06);\n          border-bottom:1px solid rgba(0,0,0,.06);\n        }\n        #pmfc_21d5a53373 .pmfc-tabs::-webkit-scrollbar{height:6px}\n        #pmfc_21d5a53373 .pmfc-tabs::-webkit-scrollbar-thumb{background:rgba(0,0,0,.18);border-radius:999px}\n\n        #pmfc_21d5a53373 .pmfc-tab{\n          flex:0 0 auto;\n          border:1px solid rgba(0,0,0,.10);\n          background:#fff;\n          color:#111;\n          border-radius:999px;\n          padding:10px 12px;\n          font-size:12px;\n          font-weight:900;\n          cursor:pointer;\n          line-height:1;\n          user-select:none;\n          white-space:nowrap;\n        }\n        #pmfc_21d5a53373 .pmfc-tab[aria-selected=\"true\"]{\n          background:#111;color:#fff;border-color:#111\n        }\n\n        \/* Mobile tab dropdown *\/\n        #pmfc_21d5a53373 .pmfc-tabs-select{\n          display:none;\n          margin:10px 0 14px 0;\n        }\n        #pmfc_21d5a53373 .pmfc-tabs-select label{\n          display:block;\n          font-size:12px;\n          font-weight:900;\n          color:rgba(0,0,0,.70);\n          margin:0 0 6px 0;\n        }\n        #pmfc_21d5a53373 .pmfc-tabs-select select{\n          width:100%;\n          border:1px solid rgba(0,0,0,.14);\n          border-radius:12px;\n          padding:12px;\n          font-size:14px;\n          outline:none;\n          background:#fff;\n          color:#111;\n          min-height:44px;\n          font-weight:800;\n        }\n\n        #pmfc_21d5a53373 .pmfc-panel{display:none}\n        #pmfc_21d5a53373 .pmfc-panel.is-active{display:block}\n\n        \/* Layout *\/\n        #pmfc_21d5a53373 .pmfc-grid{\n          display:grid;\n          grid-template-columns:1fr;\n          gap:12px;\n        }\n\n        #pmfc_21d5a53373 .pmfc-box{\n          border:1px solid rgba(0,0,0,.08);\n          border-radius:14px;\n          padding:12px;\n          background:#fff;\n          max-width:100%;\n        }\n\n        \/* Fields *\/\n        #pmfc_21d5a53373 .pmfc-fields{\n          display:grid;\n          grid-template-columns:1fr;\n          gap:10px;\n        }\n        #pmfc_21d5a53373 .pmfc-field{\n          display:flex;\n          flex-direction:column;\n          gap:6px;\n        }\n        #pmfc_21d5a53373 .pmfc-field label{\n          font-size:12px;\n          font-weight:900;\n          color:rgba(0,0,0,.70);\n        }\n        #pmfc_21d5a53373 .pmfc-field input,\n        #pmfc_21d5a53373 .pmfc-field select{\n          width:100%;\n          border:1px solid rgba(0,0,0,.14);\n          border-radius:12px;\n          padding:12px;\n          font-size:14px;\n          outline:none;\n          background:#fff;\n          color:#111;\n          min-height:44px;\n        }\n\n        \/* Buttons *\/\n        #pmfc_21d5a53373 .pmfc-actions{\n          display:grid;\n          grid-template-columns:1fr;\n          gap:10px;\n          margin-top:12px;\n          align-items:center;\n        }\n        #pmfc_21d5a53373 .pmfc-btn{\n          width:100%;\n          border:0;\n          border-radius:12px;\n          padding:13px 14px;\n          cursor:pointer;\n          font-size:13px;\n          font-weight:900;\n          line-height:1;\n          min-height:44px;\n        }\n        #pmfc_21d5a53373 .pmfc-btn.primary{background:#111;color:#fff}\n        #pmfc_21d5a53373 .pmfc-btn.ghost{background:rgba(0,0,0,.04);color:#111}\n\n        \/* KPIs *\/\n        #pmfc_21d5a53373 .pmfc-kpis{\n          display:grid;\n          grid-template-columns:1fr;\n          gap:10px;\n        }\n        #pmfc_21d5a53373 .pmfc-kpi{\n          border:1px solid rgba(0,0,0,.08);\n          border-radius:14px;\n          padding:12px;\n          background:#fff;\n        }\n        #pmfc_21d5a53373 .pmfc-kpi .lbl{font-size:12px;font-weight:900;color:rgba(0,0,0,.55);margin:0 0 6px 0}\n        #pmfc_21d5a53373 .pmfc-kpi .val{font-size:18px;font-weight:900;color:#111;margin:0;word-break:break-word}\n        #pmfc_21d5a53373 .pmfc-note{margin-top:10px;font-size:12px;color:rgba(0,0,0,.55)}\n\n        \/* Amortization table (desktop\/tablet default) *\/\n        #pmfc_21d5a53373 .pmfc-tablewrap{\n          margin-top:12px;\n          border:1px solid rgba(0,0,0,.08);\n          border-radius:14px;\n          overflow:auto;\n          max-height:360px;\n          background:#fff;\n          -webkit-overflow-scrolling:touch;\n          max-width:100%;\n        }\n        #pmfc_21d5a53373 table.pmfc-table{\n          width:100%;\n          border-collapse:collapse;\n          font-size:12px;\n        }\n        #pmfc_21d5a53373 table.pmfc-table th,\n        #pmfc_21d5a53373 table.pmfc-table td{\n          border-bottom:1px solid rgba(0,0,0,.06);\n          padding:10px 10px;\n          text-align:right;\n          white-space:nowrap;\n        }\n        #pmfc_21d5a53373 table.pmfc-table th:first-child,\n        #pmfc_21d5a53373 table.pmfc-table td:first-child{text-align:left}\n        #pmfc_21d5a53373 table.pmfc-table thead th{\n          position:sticky;\n          top:0;\n          background:#fff;\n          z-index:2;\n          font-weight:900;\n          color:rgba(0,0,0,.70);\n        }\n\n        \/* Tablet *\/\n        @media (min-width: 720px){\n          #pmfc_21d5a53373 .pmfc-card{padding:16px}\n          #pmfc_21d5a53373 .pmfc-fields{grid-template-columns:1fr 1fr}\n          #pmfc_21d5a53373 .pmfc-actions{grid-template-columns:1fr 1fr;justify-content:end}\n          #pmfc_21d5a53373 .pmfc-kpis{grid-template-columns:1fr 1fr}\n        }\n\n        \/* Desktop *\/\n        @media (min-width: 980px){\n          #pmfc_21d5a53373 .pmfc-grid{grid-template-columns:1.05fr .95fr;gap:14px}\n          #pmfc_21d5a53373 .pmfc-kpis{grid-template-columns:1fr}\n          #pmfc_21d5a53373 .pmfc-actions{grid-template-columns:auto auto;justify-content:end}\n          #pmfc_21d5a53373 .pmfc-btn{width:auto;min-width:160px}\n          #pmfc_21d5a53373 .pmfc-tabs{overflow:visible;border:0;padding:0}\n        }\n\n        \/* ======================================================================\n           BOOKMARK: PMFC_MOBILE_TAB_DROPDOWN_SWITCH\n           Replace pill tabs with dropdown on mobile\n           ====================================================================== *\/\n        @media (max-width: 719px){\n          #pmfc_21d5a53373 .pmfc-tabs{display:none;}\n          #pmfc_21d5a53373 .pmfc-tabs-select{display:block;}\n          #pmfc_21d5a53373 .pmfc-btn{padding:12px 12px;}\n          #pmfc_21d5a53373 .pmfc-box{padding:12px;}\n          #pmfc_21d5a53373 .pmfc-kpi .val{font-size:16px}\n        }\n\n        \/* ======================================================================\n           BOOKMARK: PMFC_AMORT_MOBILE_TABLE_HIDDEN\n           Mobile: hide amortization table, keep download button only\n           ====================================================================== *\/\n        #pmfc_21d5a53373 .pmfc-amort-mobile-note{display:none;}\n        @media (max-width: 719px){\n          #pmfc_21d5a53373 .pmfc-tablewrap{display:none;}\n          #pmfc_21d5a53373 .pmfc-amort-mobile-note{\n            display:block;\n            margin-top:10px;\n            font-size:12px;\n            color:rgba(0,0,0,.55);\n          }\n        }\n\n        \/* Buttons layout for amortization *\/\n        #pmfc_21d5a53373 .pmfc-actions.pmfc-actions-amort{\n          grid-template-columns:1fr;\n        }\n        @media (min-width: 720px){\n          #pmfc_21d5a53373 .pmfc-actions.pmfc-actions-amort{\n            grid-template-columns:auto auto auto;\n            justify-content:end;\n          }\n          #pmfc_21d5a53373 .pmfc-actions.pmfc-actions-amort .pmfc-btn{\n            min-width:140px;\n          }\n        }\n        @media (max-width: 719px){\n          #pmfc_21d5a53373 .pmfc-actions.pmfc-actions-amort{\n            grid-template-columns:1fr 1fr;\n          }\n          #pmfc_21d5a53373 .pmfc-actions.pmfc-actions-amort .pmfc-btn[data-download=\"amort_csv\"]{\n            grid-column:1 \/ -1;\n          }\n        }\n      <\/style>\n\n      <div class=\"pmfc-card\">\n        <div class=\"pmfc-head\">\n          <div>\n            <h3 class=\"pmfc-title\">Calculators<\/h3>\n            <p class=\"pmfc-sub\">Estimates only. Fees, insurance, and taxes can change the final numbers.<\/p>\n          <\/div>\n        <\/div>\n\n        <!-- Mobile dropdown selector -->\n        <div class=\"pmfc-tabs-select\">\n          <label for=\"pmfc_21d5a53373_tabsel\">Calculator<\/label>\n          <select id=\"pmfc_21d5a53373_tabsel\" aria-label=\"Select calculator\">\n            <option value=\"mortgage\">Mortgage Calculator<\/option>\n            <option value=\"amortization\">Amortization<\/option>\n            <option value=\"refinancing\">Refinancing<\/option>\n            <option value=\"rentbuy\">Rent vs Buy<\/option>\n            <option value=\"affordability\">House Affordability<\/option>\n          <\/select>\n        <\/div>\n\n        <!-- Desktop pills -->\n        <div class=\"pmfc-tabs\" role=\"tablist\" aria-label=\"Property calculators\">\n          <button class=\"pmfc-tab\" type=\"button\" role=\"tab\" data-tab=\"mortgage\" aria-selected=\"false\">Mortgage Calculator<\/button>\n          <button class=\"pmfc-tab\" type=\"button\" role=\"tab\" data-tab=\"amortization\" aria-selected=\"false\">Amortization<\/button>\n          <button class=\"pmfc-tab\" type=\"button\" role=\"tab\" data-tab=\"refinancing\" aria-selected=\"false\">Refinancing<\/button>\n          <button class=\"pmfc-tab\" type=\"button\" role=\"tab\" data-tab=\"rentbuy\" aria-selected=\"false\">Rent vs Buy<\/button>\n          <button class=\"pmfc-tab\" type=\"button\" role=\"tab\" data-tab=\"affordability\" aria-selected=\"false\">House Affordability<\/button>\n        <\/div>\n\n        <!-- Mortgage -->\n        <section class=\"pmfc-panel\" data-panel=\"mortgage\" role=\"tabpanel\">\n          <div class=\"pmfc-grid\">\n            <form class=\"pmfc-box pmfc-form\" data-form=\"mortgage\" action=\"\">\n              <div class=\"pmfc-fields\">\n                <div class=\"pmfc-field\"><label>Property Price (AED)<\/label><input name=\"price\" type=\"number\" min=\"0\" step=\"1000\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Down Payment (AED)<\/label><input name=\"down\" type=\"number\" min=\"0\" step=\"1000\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Interest Rate (Annual %)<\/label><input name=\"rate\" type=\"number\" min=\"0\" step=\"0.01\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Loan Term<\/label><select name=\"term\"><option value=\"10\">10 years<\/option><option value=\"15\">15 years<\/option><option value=\"20\">20 years<\/option><option value=\"25\" selected>25 years<\/option><option value=\"30\">30 years<\/option><\/select><\/div>\n                <div class=\"pmfc-field\"><label>Payment Frequency<\/label><select name=\"freq\"><option value=\"12\" selected>Monthly<\/option><option value=\"26\">Bi-weekly (26)<\/option><option value=\"52\">Weekly (52)<\/option><\/select><\/div>\n                <div class=\"pmfc-field\"><label>Extra Payment (per period)<\/label><input name=\"extra\" type=\"number\" min=\"0\" step=\"50\" value=\"0\"><\/div>\n              <\/div>\n              <div class=\"pmfc-actions\">\n                <button class=\"pmfc-btn ghost\" type=\"button\" data-reset=\"mortgage\">Reset<\/button>\n                <button class=\"pmfc-btn primary\" type=\"submit\">Calculate<\/button>\n              <\/div>\n              <div class=\"pmfc-note\">Loan amount = price minus down payment.<\/div>\n            <input type=\"hidden\" name=\"trp-form-language\" value=\"ar\"\/><\/form>\n\n            <div class=\"pmfc-box\">\n              <div class=\"pmfc-kpis\">\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Estimated Payment<\/p><p class=\"val\" data-out=\"mortgage_payment\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Loan Amount<\/p><p class=\"val\" data-out=\"mortgage_loan\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Total Interest (estimate)<\/p><p class=\"val\" data-out=\"mortgage_interest\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Payoff Time (estimate)<\/p><p class=\"val\" data-out=\"mortgage_payoff\">0 payments<\/p><\/div>\n              <\/div>\n              <div class=\"pmfc-note\">Extra payment reduces interest and payoff time. This is a simplified estimate.<\/div>\n            <\/div>\n          <\/div>\n        <\/section>\n\n        <!-- Amortization -->\n        <section class=\"pmfc-panel\" data-panel=\"amortization\" role=\"tabpanel\">\n          <div class=\"pmfc-grid\">\n            <form class=\"pmfc-box pmfc-form\" data-form=\"amortization\" action=\"\">\n              <div class=\"pmfc-fields\">\n                <div class=\"pmfc-field\"><label>Loan Amount (AED)<\/label><input name=\"loan\" type=\"number\" min=\"0\" step=\"1000\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Interest Rate (Annual %)<\/label><input name=\"rate\" type=\"number\" min=\"0\" step=\"0.01\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Loan Term<\/label><select name=\"term\"><option value=\"10\">10 years<\/option><option value=\"15\">15 years<\/option><option value=\"20\">20 years<\/option><option value=\"25\" selected>25 years<\/option><option value=\"30\">30 years<\/option><\/select><\/div>\n                <div class=\"pmfc-field\"><label>Payment Frequency<\/label><select name=\"freq\"><option value=\"12\" selected>Monthly<\/option><option value=\"26\">Bi-weekly (26)<\/option><option value=\"52\">Weekly (52)<\/option><\/select><\/div>\n                <div class=\"pmfc-field\"><label>Extra Payment (per period)<\/label><input name=\"extra\" type=\"number\" min=\"0\" step=\"50\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Show Rows<\/label><select name=\"limit\"><option value=\"120\">First 120<\/option><option value=\"240\">First 240<\/option><option value=\"999999\" selected>All<\/option><\/select><\/div>\n              <\/div>\n\n              <div class=\"pmfc-actions pmfc-actions-amort\">\n                <button class=\"pmfc-btn ghost\" type=\"button\" data-reset=\"amortization\">Reset<\/button>\n                <button class=\"pmfc-btn primary\" type=\"submit\">Generate<\/button>\n                <button class=\"pmfc-btn ghost\" type=\"button\" data-download=\"amort_csv\">Download CSV<\/button>\n              <\/div>\n\n              <div class=\"pmfc-note\">Download exports the currently generated schedule.<\/div>\n              <div class=\"pmfc-amort-mobile-note\">On mobile, the amortization table is hidden. Use \u201cDownload CSV\u201d to view it.<\/div>\n            <input type=\"hidden\" name=\"trp-form-language\" value=\"ar\"\/><\/form>\n\n            <div class=\"pmfc-box\">\n              <div class=\"pmfc-kpis\">\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Payment<\/p><p class=\"val\" data-out=\"amort_payment\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Total Interest<\/p><p class=\"val\" data-out=\"amort_interest\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Total Paid<\/p><p class=\"val\" data-out=\"amort_total\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Payments<\/p><p class=\"val\" data-out=\"amort_n\">0<\/p><\/div>\n              <\/div>\n\n              <div class=\"pmfc-tablewrap\" aria-label=\"Amortization schedule\">\n                <table class=\"pmfc-table\">\n                  <thead>\n                    <tr><th>Payment #<\/th><th>Payment<\/th><th>Principal<\/th><th>Interest<\/th><th>Balance<\/th><\/tr>\n                  <\/thead>\n                  <tbody data-out=\"amort_rows\">\n                    <tr><td colspan=\"5\" style=\"text-align:left;color:rgba(0,0,0,.55)\">Generate schedule to view rows.<\/td><\/tr>\n                  <\/tbody>\n                <\/table>\n              <\/div>\n\n            <\/div>\n          <\/div>\n        <\/section>\n\n        <!-- Refinancing -->\n        <section class=\"pmfc-panel\" data-panel=\"refinancing\" role=\"tabpanel\">\n          <div class=\"pmfc-grid\">\n            <form class=\"pmfc-box pmfc-form\" data-form=\"refinancing\" action=\"\">\n              <div class=\"pmfc-fields\">\n                <div class=\"pmfc-field\"><label>Current Loan Balance (AED)<\/label><input name=\"balance\" type=\"number\" min=\"0\" step=\"1000\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Current Rate (Annual %)<\/label><input name=\"cur_rate\" type=\"number\" min=\"0\" step=\"0.01\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Remaining Term<\/label><select name=\"cur_term\"><option value=\"5\">5 years<\/option><option value=\"10\">10 years<\/option><option value=\"15\" selected>15 years<\/option><option value=\"20\">20 years<\/option><option value=\"25\">25 years<\/option><option value=\"30\">30 years<\/option><\/select><\/div>\n                <div class=\"pmfc-field\"><label>New Rate (Annual %)<\/label><input name=\"new_rate\" type=\"number\" min=\"0\" step=\"0.01\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>New Term<\/label><select name=\"new_term\"><option value=\"5\">5 years<\/option><option value=\"10\">10 years<\/option><option value=\"15\" selected>15 years<\/option><option value=\"20\">20 years<\/option><option value=\"25\">25 years<\/option><option value=\"30\">30 years<\/option><\/select><\/div>\n                <div class=\"pmfc-field\"><label>Refinance Fees (AED)<\/label><input name=\"fees\" type=\"number\" min=\"0\" step=\"100\" value=\"0\"><\/div>\n              <\/div>\n              <div class=\"pmfc-actions\">\n                <button class=\"pmfc-btn ghost\" type=\"button\" data-reset=\"refinancing\">Reset<\/button>\n                <button class=\"pmfc-btn primary\" type=\"submit\">Compare<\/button>\n              <\/div>\n              <div class=\"pmfc-note\">Break-even is based on monthly payment difference only.<\/div>\n            <input type=\"hidden\" name=\"trp-form-language\" value=\"ar\"\/><\/form>\n\n            <div class=\"pmfc-box\">\n              <div class=\"pmfc-kpis\">\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Current Monthly Payment<\/p><p class=\"val\" data-out=\"refi_cur_pay\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">New Monthly Payment<\/p><p class=\"val\" data-out=\"refi_new_pay\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Monthly Difference<\/p><p class=\"val\" data-out=\"refi_diff\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Estimated Break-even<\/p><p class=\"val\" data-out=\"refi_breakeven\">0 months<\/p><\/div>\n              <\/div>\n              <div class=\"pmfc-note\">If the new payment is not lower, break-even will show as not applicable.<\/div>\n            <\/div>\n          <\/div>\n        <\/section>\n\n        <!-- Rent vs Buy -->\n        <section class=\"pmfc-panel\" data-panel=\"rentbuy\" role=\"tabpanel\">\n          <div class=\"pmfc-grid\">\n            <form class=\"pmfc-box pmfc-form\" data-form=\"rentbuy\" action=\"\">\n              <div class=\"pmfc-fields\">\n                <div class=\"pmfc-field\"><label>Home Price (AED)<\/label><input name=\"price\" type=\"number\" min=\"0\" step=\"1000\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Down Payment (AED)<\/label><input name=\"down\" type=\"number\" min=\"0\" step=\"1000\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Mortgage Rate (Annual %)<\/label><input name=\"rate\" type=\"number\" min=\"0\" step=\"0.01\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Loan Term<\/label><select name=\"term\"><option value=\"10\">10 years<\/option><option value=\"15\">15 years<\/option><option value=\"20\">20 years<\/option><option value=\"25\" selected>25 years<\/option><option value=\"30\">30 years<\/option><\/select><\/div>\n                <div class=\"pmfc-field\"><label>Annual Rent (AED)<\/label><input name=\"rent\" type=\"number\" min=\"0\" step=\"1000\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Rent Growth (Annual %)<\/label><input name=\"rent_g\" type=\"number\" min=\"0\" step=\"0.1\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Home Value Growth (Annual %)<\/label><input name=\"home_g\" type=\"number\" min=\"0\" step=\"0.1\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Holding Period<\/label><select name=\"years\"><option value=\"3\">3 years<\/option><option value=\"5\" selected>5 years<\/option><option value=\"7\">7 years<\/option><option value=\"10\">10 years<\/option><\/select><\/div>\n                <div class=\"pmfc-field\"><label>Annual Owner Costs (% of price)<\/label><input name=\"owner_pct\" type=\"number\" min=\"0\" step=\"0.1\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Buy Transaction Costs (% of price)<\/label><input name=\"buy_pct\" type=\"number\" min=\"0\" step=\"0.1\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Sell Transaction Costs (% of price)<\/label><input name=\"sell_pct\" type=\"number\" min=\"0\" step=\"0.1\" value=\"0\"><\/div>\n              <\/div>\n              <div class=\"pmfc-actions\">\n                <button class=\"pmfc-btn ghost\" type=\"button\" data-reset=\"rentbuy\">Reset<\/button>\n                <button class=\"pmfc-btn primary\" type=\"submit\">Compare<\/button>\n              <\/div>\n              <div class=\"pmfc-note\">Simplified model. Does not include investment returns on savings.<\/div>\n            <input type=\"hidden\" name=\"trp-form-language\" value=\"ar\"\/><\/form>\n\n            <div class=\"pmfc-box\">\n              <div class=\"pmfc-kpis\">\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Estimated Monthly Mortgage<\/p><p class=\"val\" data-out=\"rb_mort\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Total Rent Paid (period)<\/p><p class=\"val\" data-out=\"rb_rent_total\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Owner Net Cost (period)<\/p><p class=\"val\" data-out=\"rb_buy_net\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Better Option (estimate)<\/p><p class=\"val\" data-out=\"rb_winner\">-<\/p><\/div>\n              <\/div>\n              <div class=\"pmfc-note\">Owner net cost is a simplified estimate and can differ from real outcomes.<\/div>\n            <\/div>\n          <\/div>\n        <\/section>\n\n        <!-- Affordability -->\n        <section class=\"pmfc-panel\" data-panel=\"affordability\" role=\"tabpanel\">\n          <div class=\"pmfc-grid\">\n            <form class=\"pmfc-box pmfc-form\" data-form=\"affordability\" action=\"\">\n              <div class=\"pmfc-fields\">\n                <div class=\"pmfc-field\"><label>Gross Monthly Income (AED)<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Monthly Debts (AED)<\/label><input name=\"debts\" type=\"number\" min=\"0\" step=\"100\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Max DTI (Debt-to-Income %)<\/label><input name=\"dti\" type=\"number\" min=\"1\" step=\"0.5\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Down Payment (AED)<\/label><input name=\"down\" type=\"number\" min=\"0\" step=\"1000\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Interest Rate (Annual %)<\/label><input name=\"rate\" type=\"number\" min=\"0\" step=\"0.01\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Loan Term<\/label><select name=\"term\"><option value=\"10\">10 years<\/option><option value=\"15\">15 years<\/option><option value=\"20\">20 years<\/option><option value=\"25\" selected>25 years<\/option><option value=\"30\">30 years<\/option><\/select><\/div>\n                <div class=\"pmfc-field\"><label>Other Housing Costs (Monthly)<\/label><input name=\"other\" type=\"number\" min=\"0\" step=\"50\" value=\"0\"><\/div>\n                <div class=\"pmfc-field\"><label>Safety Buffer (Monthly)<\/label><input name=\"buffer\" type=\"number\" min=\"0\" step=\"50\" value=\"0\"><\/div>\n              <\/div>\n              <div class=\"pmfc-actions\">\n                <button class=\"pmfc-btn ghost\" type=\"button\" data-reset=\"affordability\">Reset<\/button>\n                <button class=\"pmfc-btn primary\" type=\"submit\">Estimate<\/button>\n              <\/div>\n              <div class=\"pmfc-note\">Max payment is based on DTI, minus debts, minus other costs, minus buffer.<\/div>\n            <input type=\"hidden\" name=\"trp-form-language\" value=\"ar\"\/><\/form>\n\n            <div class=\"pmfc-box\">\n              <div class=\"pmfc-kpis\">\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Max Mortgage Payment<\/p><p class=\"val\" data-out=\"aff_pay\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Estimated Max Loan Amount<\/p><p class=\"val\" data-out=\"aff_loan\">AED 0<\/p><\/div>\n                <div class=\"pmfc-kpi\"><p class=\"lbl\">Estimated Max Home Price<\/p><p class=\"val\" data-out=\"aff_price\">AED 0<\/p><\/div>\n              <\/div>\n              <div class=\"pmfc-note\">Estimate only. Lenders use their own rules.<\/div>\n            <\/div>\n          <\/div>\n        <\/section>\n\n      <\/div>\n\n      <script>\n        (function(){\n          var root = document.getElementById('pmfc_21d5a53373');\n          if(!root) return;\n\n          var currency = root.getAttribute('data-currency') || 'AED';\n          var defTab = root.getAttribute('data-default') || 'mortgage';\n\n          \/* ======================================================================\n             BOOKMARK: PMFC_DOWNLOAD_AMORT_CSV\n             Client-side CSV export of currently generated amortization schedule\n             ====================================================================== *\/\n          var amortLastRows = [];\n\n          function num(v){ var x = parseFloat(String(v||'').replace(\/,\/g,'')); return isFinite(x) ? x : 0; }\n          function clampMin(x,min){ x=num(x); return (x<min)?min:x; }\n          function money0(x){ x=num(x); try{return currency+' '+x.toLocaleString(undefined,{maximumFractionDigits:0});}catch(e){return currency+' '+Math.round(x);} }\n          function money2(x){ x=num(x); try{return currency+' '+x.toLocaleString(undefined,{minimumFractionDigits:2,maximumFractionDigits:2});}catch(e){return currency+' '+(Math.round(x*100)\/100);} }\n\n          function paymentFixed(P, annualRate, periodsPerYear, years){\n            P = clampMin(P,0);\n            var n = Math.round(clampMin(years,0) * clampMin(periodsPerYear,1));\n            var r = clampMin(annualRate,0) \/ 100 \/ clampMin(periodsPerYear,1);\n            if(P<=0||n<=0) return {pay:0,n:n,r:r};\n            if(r===0) return {pay:(P\/n),n:n,r:r};\n            var pow = Math.pow(1+r,n);\n            return {pay:(P*r*pow\/(pow-1)), n:n, r:r};\n          }\n\n          function amortSchedule(P, annualRate, periodsPerYear, years, extraPerPeriod){\n            P = clampMin(P,0);\n            extraPerPeriod = clampMin(extraPerPeriod,0);\n\n            var base = paymentFixed(P, annualRate, periodsPerYear, years);\n            var pay = base.pay, r = base.r, n = base.n;\n\n            var rows=[], bal=P, totalInterest=0, totalPaid=0, i=0;\n            var cap = Math.max(1,n)+600;\n\n            while(bal>0.01 && i<cap){\n              i++;\n              var interest = (r===0)?0:(bal*r);\n              var principal = (pay + extraPerPeriod) - interest;\n              if(principal<=0) break;\n              if(principal>bal) principal=bal;\n\n              var actualPayment = principal + interest;\n              bal = bal - principal;\n\n              totalInterest += interest;\n              totalPaid += actualPayment;\n\n              rows.push({k:i,payment:actualPayment,principal:principal,interest:interest,balance:bal});\n            }\n\n            return {pay:(pay+extraPerPeriod), basePay:pay, nUsed:i, totalInterest:totalInterest, totalPaid:totalPaid, rows:rows};\n          }\n\n          var tabs = root.querySelectorAll('.pmfc-tab');\n          var panels = root.querySelectorAll('.pmfc-panel');\n          var sel = document.getElementById('pmfc_21d5a53373_tabsel');\n\n          function setTab(name){\n            for(var i=0;i<tabs.length;i++){\n              var on = (tabs[i].getAttribute('data-tab')===name);\n              tabs[i].setAttribute('aria-selected', on?'true':'false');\n            }\n            for(var p=0;p<panels.length;p++){\n              var isOn = (panels[p].getAttribute('data-panel')===name);\n              panels[p].classList.toggle('is-active', isOn);\n            }\n            if(sel) sel.value = name;\n          }\n\n          for(var t=0;t<tabs.length;t++){\n            tabs[t].addEventListener('click', function(){ setTab(this.getAttribute('data-tab')); });\n          }\n          if(sel){\n            sel.addEventListener('change', function(){ setTab(this.value); });\n          }\n\n          function setOut(key, text){\n            var el = root.querySelector('[data-out=\"'+key+'\"]');\n            if(el) el.textContent = text;\n          }\n\n          function calcMortgage(){\n            var f = root.querySelector('[data-form=\"mortgage\"]'); if(!f) return;\n            var price=num(f.querySelector('[name=\"price\"]').value);\n            var down=num(f.querySelector('[name=\"down\"]').value);\n            var rate=num(f.querySelector('[name=\"rate\"]').value);\n            var term=num(f.querySelector('[name=\"term\"]').value);\n            var freq=num(f.querySelector('[name=\"freq\"]').value);\n            var extra=num(f.querySelector('[name=\"extra\"]').value);\n            if(down>price) down=price;\n            var loan=Math.max(0, price-down);\n            var sched=amortSchedule(loan, rate, freq, term, extra);\n            setOut('mortgage_payment', money2(sched.pay));\n            setOut('mortgage_loan', money0(loan));\n            setOut('mortgage_interest', money0(sched.totalInterest));\n            setOut('mortgage_payoff', String(sched.nUsed||0)+' payments');\n          }\n          function resetMortgage(){\n            var f=root.querySelector('[data-form=\"mortgage\"]'); if(!f) return;\n            f.querySelector('[name=\"price\"]').value=0;\n            f.querySelector('[name=\"down\"]').value=0;\n            f.querySelector('[name=\"rate\"]').value=0;\n            f.querySelector('[name=\"term\"]').value=25;\n            f.querySelector('[name=\"freq\"]').value=12;\n            f.querySelector('[name=\"extra\"]').value=0;\n            calcMortgage();\n          }\n\n          function calcAmort(){\n            var f=root.querySelector('[data-form=\"amortization\"]'); if(!f) return;\n            var loan=num(f.querySelector('[name=\"loan\"]').value);\n            var rate=num(f.querySelector('[name=\"rate\"]').value);\n            var term=num(f.querySelector('[name=\"term\"]').value);\n            var freq=num(f.querySelector('[name=\"freq\"]').value);\n            var extra=num(f.querySelector('[name=\"extra\"]').value);\n            var limit=num(f.querySelector('[name=\"limit\"]').value);\n\n            var sched=amortSchedule(loan, rate, freq, term, extra);\n\n            amortLastRows = (sched.rows || []).map(function(r){\n              return {\n                k: r.k,\n                payment: num(r.payment),\n                principal: num(r.principal),\n                interest: num(r.interest),\n                balance: Math.max(0, num(r.balance))\n              };\n            });\n\n            setOut('amort_payment', money2(sched.pay));\n            setOut('amort_interest', money0(sched.totalInterest));\n            setOut('amort_total', money0(sched.totalPaid));\n            setOut('amort_n', String(sched.nUsed||0));\n\n            var tbody=root.querySelector('[data-out=\"amort_rows\"]'); if(!tbody) return;\n            var rows=sched.rows||[], html='';\n            var max=(limit>0)?Math.min(rows.length, limit):rows.length;\n\n            if(!rows.length){\n              html='<tr><td colspan=\"5\" style=\"text-align:left;color:rgba(0,0,0,.55)\">No schedule generated.<\/td><\/tr>';\n            } else {\n              for(var i=0;i<max;i++){\n                var r=rows[i];\n                html+='<tr>'\n                  +'<td>'+r.k+'<\/td>'\n                  +'<td>'+money2(r.payment)+'<\/td>'\n                  +'<td>'+money2(r.principal)+'<\/td>'\n                  +'<td>'+money2(r.interest)+'<\/td>'\n                  +'<td>'+money2(Math.max(0,r.balance))+'<\/td>'\n                  +'<\/tr>';\n              }\n              if(max<rows.length){\n                html+='<tr><td colspan=\"5\" style=\"text-align:left;color:rgba(0,0,0,.55)\">Showing first '+max+' rows.<\/td><\/tr>';\n              }\n            }\n            tbody.innerHTML=html;\n          }\n          function resetAmort(){\n            var f=root.querySelector('[data-form=\"amortization\"]'); if(!f) return;\n            f.querySelector('[name=\"loan\"]').value=0;\n            f.querySelector('[name=\"rate\"]').value=0;\n            f.querySelector('[name=\"term\"]').value=25;\n            f.querySelector('[name=\"freq\"]').value=12;\n            f.querySelector('[name=\"extra\"]').value=0;\n            f.querySelector('[name=\"limit\"]').value=999999;\n            calcAmort();\n          }\n\n          function calcRefi(){\n            var f=root.querySelector('[data-form=\"refinancing\"]'); if(!f) return;\n            var bal=num(f.querySelector('[name=\"balance\"]').value);\n            var curRate=num(f.querySelector('[name=\"cur_rate\"]').value);\n            var curTerm=num(f.querySelector('[name=\"cur_term\"]').value);\n            var newRate=num(f.querySelector('[name=\"new_rate\"]').value);\n            var newTerm=num(f.querySelector('[name=\"new_term\"]').value);\n            var fees=num(f.querySelector('[name=\"fees\"]').value);\n\n            var cur=paymentFixed(bal, curRate, 12, curTerm);\n            var neu=paymentFixed(bal, newRate, 12, newTerm);\n\n            var curPay=cur.pay, newPay=neu.pay, diff=curPay-newPay;\n            setOut('refi_cur_pay', money2(curPay));\n            setOut('refi_new_pay', money2(newPay));\n            setOut('refi_diff', money2(diff));\n\n            if(diff<=0.01) setOut('refi_breakeven','Not applicable');\n            else setOut('refi_breakeven', String(Math.ceil(fees\/diff))+' months');\n          }\n          function resetRefi(){\n            var f=root.querySelector('[data-form=\"refinancing\"]'); if(!f) return;\n            f.querySelector('[name=\"balance\"]').value=0;\n            f.querySelector('[name=\"cur_rate\"]').value=0;\n            f.querySelector('[name=\"cur_term\"]').value=15;\n            f.querySelector('[name=\"new_rate\"]').value=0;\n            f.querySelector('[name=\"new_term\"]').value=15;\n            f.querySelector('[name=\"fees\"]').value=0;\n            calcRefi();\n          }\n\n          function calcRentBuy(){\n            var f=root.querySelector('[data-form=\"rentbuy\"]'); if(!f) return;\n            var price=num(f.querySelector('[name=\"price\"]').value);\n            var down=num(f.querySelector('[name=\"down\"]').value);\n            if(down>price) down=price;\n            var loan=Math.max(0, price-down);\n            var rate=num(f.querySelector('[name=\"rate\"]').value);\n            var term=num(f.querySelector('[name=\"term\"]').value);\n            var rentAnnual=num(f.querySelector('[name=\"rent\"]').value);\n            var rentG=num(f.querySelector('[name=\"rent_g\"]').value)\/100;\n            var homeG=num(f.querySelector('[name=\"home_g\"]').value)\/100;\n            var years=num(f.querySelector('[name=\"years\"]').value);\n            var ownerPct=num(f.querySelector('[name=\"owner_pct\"]').value)\/100;\n            var buyPct=num(f.querySelector('[name=\"buy_pct\"]').value)\/100;\n            var sellPct=num(f.querySelector('[name=\"sell_pct\"]').value)\/100;\n\n            var pay=paymentFixed(loan, rate, 12, term).pay;\n            setOut('rb_mort', money2(pay));\n\n            var rentTotal=0;\n            for(var y=1;y<=years;y++){ rentTotal += rentAnnual*Math.pow(1+rentG, y-1); }\n\n            var ownerCosts=(price*ownerPct)*years;\n            var buyCosts=price*buyPct;\n            var sellCosts=(price*Math.pow(1+homeG, years))*sellPct;\n\n            var sched=amortSchedule(loan, rate, 12, term, 0);\n            var payCount=Math.min(sched.rows.length, Math.round(years*12));\n            var remaining=loan;\n            if(payCount>0) remaining=sched.rows[payCount-1].balance;\n\n            var futureValue=price*Math.pow(1+homeG, years);\n            var equity=Math.max(0, futureValue-remaining);\n\n            var paymentsMade=pay*(years*12);\n            var ownerNet=down + buyCosts + paymentsMade + ownerCosts + sellCosts - equity;\n\n            setOut('rb_rent_total', money0(rentTotal));\n            setOut('rb_buy_net', money0(ownerNet));\n            setOut('rb_winner', (ownerNet < rentTotal) ? 'Buy (estimate)' : 'Rent (estimate)');\n          }\n          function resetRentBuy(){\n            var f=root.querySelector('[data-form=\"rentbuy\"]'); if(!f) return;\n            f.querySelector('[name=\"price\"]').value=0;\n            f.querySelector('[name=\"down\"]').value=0;\n            f.querySelector('[name=\"rate\"]').value=0;\n            f.querySelector('[name=\"term\"]').value=25;\n            f.querySelector('[name=\"rent\"]').value=0;\n            f.querySelector('[name=\"rent_g\"]').value=0;\n            f.querySelector('[name=\"home_g\"]').value=0;\n            f.querySelector('[name=\"years\"]').value=5;\n            f.querySelector('[name=\"owner_pct\"]').value=0;\n            f.querySelector('[name=\"buy_pct\"]').value=0;\n            f.querySelector('[name=\"sell_pct\"]').value=0;\n            calcRentBuy();\n          }\n\n          function calcAff(){\n            var f=root.querySelector('[data-form=\"affordability\"]'); if(!f) return;\n            var income=num(f.querySelector('[name=\"income\"]').value);\n            var debts=num(f.querySelector('[name=\"debts\"]').value);\n            var dti=num(f.querySelector('[name=\"dti\"]').value)\/100;\n            var down=num(f.querySelector('[name=\"down\"]').value);\n            var rate=num(f.querySelector('[name=\"rate\"]').value);\n            var term=num(f.querySelector('[name=\"term\"]').value);\n            var other=num(f.querySelector('[name=\"other\"]').value);\n            var buffer=num(f.querySelector('[name=\"buffer\"]').value);\n\n            var maxDebtPayment=Math.max(0, income*dti);\n            var maxMortgage=Math.max(0, maxDebtPayment - debts - other - buffer);\n\n            var low=0, high=50000000;\n            for(var i=0;i<34;i++){\n              var mid=(low+high)\/2;\n              var p=paymentFixed(mid, rate, 12, term).pay;\n              if(p>maxMortgage) high=mid; else low=mid;\n            }\n            var maxLoan=Math.max(0, low);\n            var maxPrice=maxLoan + Math.max(0, down);\n\n            setOut('aff_pay', money2(maxMortgage));\n            setOut('aff_loan', money0(maxLoan));\n            setOut('aff_price', money0(maxPrice));\n          }\n          function resetAff(){\n            var f=root.querySelector('[data-form=\"affordability\"]'); if(!f) return;\n            f.querySelector('[name=\"income\"]').value=0;\n            f.querySelector('[name=\"debts\"]').value=0;\n            f.querySelector('[name=\"dti\"]').value=0;\n            f.querySelector('[name=\"down\"]').value=0;\n            f.querySelector('[name=\"rate\"]').value=0;\n            f.querySelector('[name=\"term\"]').value=25;\n            f.querySelector('[name=\"other\"]').value=0;\n            f.querySelector('[name=\"buffer\"]').value=0;\n            calcAff();\n          }\n\n          function bindForm(name, onCalc, onReset){\n            var form=root.querySelector('[data-form=\"'+name+'\"]'); if(!form) return;\n            form.addEventListener('submit', function(e){ e.preventDefault(); onCalc(); });\n            var rb=form.querySelector('[data-reset=\"'+name+'\"]');\n            if(rb) rb.addEventListener('click', function(e){ e.preventDefault(); onReset(); });\n\n            var inputs=form.querySelectorAll('input,select');\n            for(var i=0;i<inputs.length;i++){\n              inputs[i].addEventListener('change', function(){ onCalc(); });\n              inputs[i].addEventListener('input', function(){ onCalc(); });\n            }\n          }\n\n          bindForm('mortgage', calcMortgage, resetMortgage);\n          bindForm('amortization', calcAmort, resetAmort);\n          bindForm('refinancing', calcRefi, resetRefi);\n          bindForm('rentbuy', calcRentBuy, resetRentBuy);\n          bindForm('affordability', calcAff, resetAff);\n\n          function normalizeDefault(v){\n            var ok=['mortgage','amortization','refinancing','rentbuy','affordability'];\n            return (ok.indexOf(v)!==-1)?v:'mortgage';\n          }\n\n          function escCsv(val){\n            var s = (val === null || typeof val === 'undefined') ? '' : String(val);\n            if (s.indexOf('\"') !== -1) s = s.replace(\/\"\/g, '\"\"');\n            if (\/[\",\\n\\r]\/.test(s)) s = '\"' + s + '\"';\n            return s;\n          }\n\n          function downloadCsv(filename, csvText){\n            var blob = new Blob([csvText], {type: 'text\/csv;charset=utf-8;'});\n            var url = URL.createObjectURL(blob);\n            var a = document.createElement('a');\n            a.href = url;\n            a.download = filename;\n            document.body.appendChild(a);\n            a.click();\n            setTimeout(function(){\n              URL.revokeObjectURL(url);\n              document.body.removeChild(a);\n            }, 80);\n          }\n\n          function exportAmortCsv(){\n            if(!amortLastRows || !amortLastRows.length){\n              alert('Please generate the amortization schedule first.');\n              return;\n            }\n\n            var lines = [];\n            lines.push(['Payment #','Payment ('+currency+')','Principal ('+currency+')','Interest ('+currency+')','Balance ('+currency+')'].map(escCsv).join(','));\n\n            for(var i=0;i<amortLastRows.length;i++){\n              var r = amortLastRows[i];\n              lines.push([\n                r.k,\n                (Math.round(r.payment*100)\/100),\n                (Math.round(r.principal*100)\/100),\n                (Math.round(r.interest*100)\/100),\n                (Math.round(r.balance*100)\/100)\n              ].map(escCsv).join(','));\n            }\n\n            var now = new Date();\n            var y = now.getFullYear();\n            var m = String(now.getMonth()+1).padStart(2,'0');\n            var d = String(now.getDate()).padStart(2,'0');\n            downloadCsv('amortization_'+y+'-'+m+'-'+d+'.csv', lines.join('\\n'));\n          }\n\n          var dlBtn = root.querySelector('[data-download=\"amort_csv\"]');\n          if(dlBtn){\n            dlBtn.addEventListener('click', function(e){\n              e.preventDefault();\n              exportAmortCsv();\n            });\n          }\n\n          setTab(normalizeDefault(defTab));\n          calcMortgage(); calcAmort(); calcRefi(); calcRentBuy(); calcAff();\n        })();\n      <\/script>\n\n    <\/div>\n\n    <\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9087d42 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"9087d42\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"28\" data-end=\"210\">This calculator is for <strong data-start=\"51\" data-end=\"90\">general informational purposes only<\/strong> and provides <strong data-start=\"104\" data-end=\"117\">estimates<\/strong> based on the values you enter. Results may differ from actual UAE bank offers and approvals. Calculations may <strong data-start=\"229\" data-end=\"240\">exclude<\/strong> lender specific fees and charges such as processing fees, valuation fees, mortgage registration fees, insurance (life or property), early settlement fees, broker fees, and other bank or government costs.<\/p><p data-start=\"446\" data-end=\"667\" data-is-last-node=\"\" data-is-only-node=\"\">This tool does <strong data-start=\"461\" data-end=\"468\">not<\/strong> provide financial, legal, or tax advice. Always confirm final figures, eligibility, and terms directly with your UAE bank or a qualified mortgage advisor. Use of this calculator is at your own risk.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Finance Calculator This calculator is for general informational purposes only and provides estimates based on the values you enter. Results may differ from actual UAE bank offers and approvals. Calculations may exclude lender specific fees and charges such as processing fees, valuation fees, mortgage registration fees, insurance (life or property), early settlement fees, broker fees, [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-1106","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/profilegroup.ae\/ar\/wp-json\/wp\/v2\/pages\/1106","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/profilegroup.ae\/ar\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/profilegroup.ae\/ar\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/profilegroup.ae\/ar\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/profilegroup.ae\/ar\/wp-json\/wp\/v2\/comments?post=1106"}],"version-history":[{"count":6,"href":"https:\/\/profilegroup.ae\/ar\/wp-json\/wp\/v2\/pages\/1106\/revisions"}],"predecessor-version":[{"id":1112,"href":"https:\/\/profilegroup.ae\/ar\/wp-json\/wp\/v2\/pages\/1106\/revisions\/1112"}],"wp:attachment":[{"href":"https:\/\/profilegroup.ae\/ar\/wp-json\/wp\/v2\/media?parent=1106"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}