{"id":5296,"date":"2025-11-17T16:37:47","date_gmt":"2025-11-17T11:37:47","guid":{"rendered":"https:\/\/insurancewala.pk\/?page_id=5296"},"modified":"2026-10-22T18:25:22","modified_gmt":"2026-10-22T13:25:22","slug":"hajj-savings-calculator","status":"publish","type":"page","link":"https:\/\/insurancewala.pk\/?page_id=5296","title":{"rendered":"Hajj Savings Calculator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"5296\" class=\"elementor elementor-5296\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a9fdeac e-flex e-con-boxed e-con e-parent\" data-id=\"a9fdeac\" 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-2d4b8ac elementor-widget elementor-widget-html\" data-id=\"2d4b8ac\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- ================= INSURANCE WALA HAJJ SAVINGS CALCULATOR (v1) =================\r\n     Paste into a WordPress \"Custom HTML\" block or an Elementor \"HTML\" widget. -->\r\n<div id=\"iw-hajj\">\r\n<style>\r\n\r\n#iw-hajj{\r\n  --navy:#0d2840; --deep:#071a2b; --lime:#b3ff3c; --ink:#1e2f44; --muted:#566680;\r\n  --line:#d9e0ea; --mist:#f4f7fb; --err:#c0183f;\r\n  --page-bg:transparent;      \/* set to #0b1a2f for the old dark page look *\/\r\n  --scroll-offset:12px;       \/* raise this if your theme has a sticky header *\/\r\n  font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,\"Helvetica Neue\",Arial,sans-serif;\r\n  color:var(--ink); background:var(--page-bg); padding:12px; line-height:1.45;\r\n  text-align:left; -webkit-font-smoothing:antialiased;\r\n}\r\n#iw-hajj *,#iw-hajj *::before,#iw-hajj *::after{box-sizing:border-box}\r\n#iw-hajj :where(h2,h3,p,dl,dd,dt,ul,li){margin:0;padding:0;list-style:none}\r\n#iw-hajj [hidden]{display:none!important}\r\n#iw-hajj button,#iw-hajj label{-webkit-tap-highlight-color:transparent;touch-action:manipulation}\r\n#iw-hajj button{font:inherit;color:inherit;background:none;border:0;padding:0;margin:0;cursor:pointer;\r\n  text-transform:none;letter-spacing:normal;box-shadow:none;-webkit-appearance:none;appearance:none;border-radius:0;line-height:1.2}\r\n#iw-hajj svg{display:block}\r\n\r\n\/* ---------- card + header ---------- *\/\r\n#iw-hajj .iw-card{max-width:560px;margin:0 auto;background:#fff;border-radius:28px;scroll-margin-top:var(--scroll-offset);\r\n  box-shadow:0 24px 48px -24px rgba(7,26,43,.45),0 0 0 1px rgba(13,40,64,.08)}\r\n#iw-hajj .iw-head{display:flex;align-items:center;gap:16px;padding:16px 18px;\r\n  background:linear-gradient(145deg,#0d2840,#071a2b);border-radius:28px 28px 0 0}\r\n#iw-hajj .iw-logo{display:block;width:auto;height:78px;max-width:none;flex:none;\r\n  filter:drop-shadow(0 0 16px rgba(179,255,60,.22))}\r\n#iw-hajj .iw-title{font-size:21px;line-height:1.15;font-weight:800;letter-spacing:-.4px;color:#fff}\r\n#iw-hajj .iw-sub{margin-top:4px;font-size:13.5px;line-height:1.35;color:rgba(255,255,255,.82)}\r\n\r\n\/* ---------- tabs ---------- *\/\r\n#iw-hajj .iw-tabs{display:flex;gap:6px;margin:14px 14px 0;padding:6px;background:var(--mist);border-radius:18px}\r\n#iw-hajj .iw-tab{--tb:var(--mist);flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:8px 6px;\r\n  border-radius:14px;font-size:14.5px;font-weight:700;color:var(--muted);transition:background .2s,color .2s}\r\n#iw-hajj .iw-tab svg{width:24px;height:24px;flex:none;fill:currentColor;stroke:none}\r\n#iw-hajj .iw-tab svg .i2{fill:#9db0c8;stroke:var(--tb);stroke-width:1.6;stroke-linejoin:round;paint-order:stroke}\r\n#iw-hajj .iw-tab:hover{--tb:#e9eef5;color:var(--navy);background:#e9eef5}\r\n#iw-hajj .iw-tab[aria-selected=\"true\"]{--tb:var(--navy);background:var(--navy);color:#fff}\r\n#iw-hajj .iw-tab[aria-selected=\"true\"] svg .i2{fill:var(--lime)}\r\n\r\n\/* ---------- body + progress ---------- *\/\r\n#iw-hajj .iw-body{padding:18px 16px 6px}\r\n#iw-hajj .iw-progress{display:flex;align-items:center;gap:12px;margin-bottom:16px}\r\n#iw-hajj .iw-pstep{font-size:13.5px;font-weight:700;color:var(--muted);white-space:nowrap}\r\n#iw-hajj .iw-pbar{flex:1;display:flex;gap:4px}\r\n#iw-hajj .iw-pbar i{flex:1;height:6px;border-radius:3px;background:#e3e9f1;transition:background .25s}\r\n#iw-hajj .iw-pbar i.on{background:var(--navy)}\r\n\r\n@keyframes iw-fwd{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}\r\n@keyframes iw-bwd{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}\r\n#iw-hajj .iw-screen.is-fwd{animation:iw-fwd .24s cubic-bezier(.2,.7,.2,1)}\r\n#iw-hajj .iw-screen.is-bwd{animation:iw-bwd .24s cubic-bezier(.2,.7,.2,1)}\r\n#iw-hajj .iw-h{font-size:22px;line-height:1.2;font-weight:800;color:var(--navy);letter-spacing:-.3px;outline:none}\r\n#iw-hajj .iw-lead{margin-top:4px;font-size:15px;color:var(--muted)}\r\n#iw-hajj .iw-field{margin-top:24px}\r\n#iw-hajj .iw-label{display:block;font-size:15.5px;font-weight:800;color:var(--navy)}\r\n#iw-hajj .iw-hint{margin:2px 0 10px;font-size:13.5px;color:var(--muted)}\r\n#iw-hajj .iw-tag{font-weight:600;color:var(--muted);font-size:13.5px}\r\n#iw-hajj .iw-stack{display:grid;gap:8px}\r\n#iw-hajj .iw-grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}\r\n\r\n\/* ---------- native inputs, visually hidden (labels carry the look) ---------- *\/\r\n#iw-hajj .iw-opt{position:relative}\r\n#iw-hajj .iw-in{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}\r\n#iw-hajj .iw-in:focus-visible+label{outline:3px solid var(--navy);outline-offset:3px}\r\n\r\n\/* age \/ parent chips *\/\r\n#iw-hajj .iw-chip{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 12px;text-align:center;\r\n  border:1.5px solid var(--line);border-radius:12px;background:#fff;font-size:15px;font-weight:700;color:var(--navy);\r\n  cursor:pointer;user-select:none;transition:background .15s,border-color .15s,color .15s}\r\n#iw-hajj .iw-chip:hover{border-color:var(--navy)}\r\n#iw-hajj .iw-in:checked+.iw-chip{background:var(--navy);border-color:var(--navy);color:#fff}\r\n\r\n\/* plan cards *\/\r\n#iw-hajj .iw-plan{display:flex;align-items:center;gap:12px;min-height:68px;padding:12px 14px;\r\n  border:1.5px solid var(--line);border-radius:16px;background:#fff;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}\r\n#iw-hajj .iw-plan:hover{border-color:var(--navy)}\r\n#iw-hajj .iw-radio{flex:none;width:22px;height:22px;border-radius:50%;border:2px solid #8fa1b8;position:relative;transition:border-color .15s}\r\n#iw-hajj .iw-radio::after{content:\"\";position:absolute;inset:3px;border-radius:50%;background:var(--navy);transform:scale(0);transition:transform .15s}\r\n#iw-hajj .iw-plan-main{flex:1;min-width:0}\r\n#iw-hajj .iw-plan-main strong,#iw-hajj .iw-row-text strong{display:block;font-size:16px;font-weight:800;color:var(--navy)}\r\n#iw-hajj .iw-plan-main small,#iw-hajj .iw-row-text small{display:block;font-size:13.5px;color:var(--muted)}\r\n#iw-hajj .iw-plan-price{text-align:right;flex:none}\r\n#iw-hajj .iw-plan-price b{display:block;font-size:17px;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}\r\n#iw-hajj .iw-plan-price small{display:block;font-size:13px;color:var(--muted)}\r\n#iw-hajj .iw-in:checked+.iw-plan{border-color:var(--navy);background:#f4fde4;box-shadow:0 0 0 1px var(--navy)}\r\n#iw-hajj .iw-in:checked+.iw-plan .iw-radio{border-color:var(--navy)}\r\n#iw-hajj .iw-in:checked+.iw-plan .iw-radio::after{transform:scale(1)}\r\n\r\n\/* switch rows *\/\r\n#iw-hajj .iw-row{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 14px;\r\n  border:1.5px solid var(--line);border-radius:16px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}\r\n#iw-hajj .iw-row-static{cursor:default}\r\n#iw-hajj .iw-row-text{flex:1;min-width:0}\r\n#iw-hajj .iw-row-text strong{font-size:15.5px}\r\n#iw-hajj .iw-pill{flex:none;padding:4px 10px;border-radius:40px;background:#eef2f7;font-size:13px;font-weight:800;color:var(--navy);white-space:nowrap}\r\n#iw-hajj .iw-sw{flex:none;position:relative;width:46px;height:28px;border-radius:20px;background:#b9c4d3;transition:background .2s}\r\n#iw-hajj .iw-sw::after{content:\"\";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .2s,background .2s}\r\n#iw-hajj .iw-in:checked+.iw-row{border-color:var(--navy);background:#f7fafd}\r\n#iw-hajj .iw-in:checked+.iw-row .iw-sw{background:var(--navy)}\r\n#iw-hajj .iw-in:checked+.iw-row .iw-sw::after{transform:translateX(18px);background:var(--lime)}\r\n\r\n\/* children stepper *\/\r\n#iw-hajj .iw-stepper{display:flex;align-items:center;gap:4px;flex:none}\r\n#iw-hajj .iw-sbtn{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);background:#fff;\r\n  font-size:22px;font-weight:700;color:var(--navy);display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}\r\n#iw-hajj .iw-sbtn:hover:not(:disabled){border-color:var(--navy);background:var(--mist)}\r\n#iw-hajj .iw-sbtn:disabled{opacity:.35;cursor:not-allowed}\r\n#iw-hajj .iw-kids{min-width:30px;text-align:center;font-size:20px;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}\r\n\r\n\/* ---------- review screen ---------- *\/\r\n#iw-hajj .iw-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin:-8px 0 4px -6px;padding:0 8px;\r\n  border-radius:10px;font-size:15px;font-weight:700;color:var(--navy)}\r\n#iw-hajj .iw-back svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}\r\n#iw-hajj .iw-back:hover{background:var(--mist)}\r\n#iw-hajj .iw-sum{margin-top:16px;padding:2px 16px;border:1.5px solid var(--line);border-radius:16px;background:#fff}\r\n#iw-hajj .iw-sum+.iw-sum{margin-top:10px}\r\n#iw-hajj .iw-sum-row{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #edf1f6;font-size:15px}\r\n#iw-hajj .iw-sum-row:last-child{border-bottom:0}\r\n#iw-hajj .iw-sum-row dt{color:var(--muted);font-weight:600;flex:none}\r\n#iw-hajj .iw-sum-row dd{color:var(--navy);font-weight:700;text-align:right}\r\n#iw-hajj .iw-sum-total dt{color:var(--navy);font-weight:800}\r\n#iw-hajj .iw-sum-total dd{font-size:19px;font-weight:800;font-variant-numeric:tabular-nums}\r\n#iw-hajj .iw-note{margin-top:8px;font-size:13.5px;color:var(--muted)}\r\n#iw-hajj .iw-benefits{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px;margin-top:16px}\r\n#iw-hajj .iw-ben{display:flex;align-items:flex-start;gap:10px}\r\n#iw-hajj .iw-ben-ico{flex:none;width:28px;height:28px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center}\r\n#iw-hajj .iw-ben-ico svg{width:15px;height:15px;stroke:var(--lime);fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}\r\n#iw-hajj .iw-ben-t{display:block;font-size:14.5px;font-weight:800;color:var(--navy);line-height:1.25}\r\n#iw-hajj .iw-ben-d{display:block;font-size:13.5px;color:var(--muted)}\r\n\r\n\/* ---------- form fields ---------- *\/\r\n#iw-hajj .iw-input{display:block;width:100%;min-height:52px;margin:8px 0 0;padding:12px 16px;border:1.5px solid var(--line);border-radius:14px;\r\n  background:#fff;font:inherit;font-size:16px;font-weight:600;color:var(--navy);box-shadow:none;transition:border-color .15s,box-shadow .15s}\r\n#iw-hajj .iw-input::placeholder{color:#7d8ba1;font-weight:500}\r\n#iw-hajj .iw-input:focus,#iw-hajj .iw-phone:focus-within{outline:none;border-color:var(--navy);box-shadow:0 0 0 4px rgba(13,40,64,.14)}\r\n#iw-hajj .iw-phone{display:flex;align-items:center;margin-top:8px;padding:0 6px 0 16px;border:1.5px solid var(--line);border-radius:14px;background:#fff;transition:border-color .15s,box-shadow .15s}\r\n#iw-hajj .iw-phone span{font-size:16px;font-weight:800;color:var(--navy);margin-right:10px}\r\n#iw-hajj .iw-phone .iw-input{flex:1;min-width:0;margin:0;border:0;border-radius:0;padding:12px 0;box-shadow:none}\r\n#iw-hajj .iw-phone .iw-input:focus{box-shadow:none}\r\n#iw-hajj .iw-input.is-bad,#iw-hajj .iw-phone.is-bad{border-color:var(--err);background:#fff6f8}\r\n#iw-hajj .iw-err{margin-top:6px;font-size:13.5px;font-weight:700;color:var(--err)}\r\n\r\n\/* ---------- sticky price bar ---------- *\/\r\n#iw-hajj .iw-pricebar{position:sticky;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;\r\n  margin:14px 12px 12px;padding:12px 12px 12px 18px;border-radius:22px;background:var(--navy);color:#fff;\r\n  box-shadow:0 14px 30px -12px rgba(7,26,43,.6)}\r\n#iw-hajj .iw-pb-label,#iw-hajj .iw-pb-month{display:block;font-size:13px;color:rgba(255,255,255,.82);white-space:nowrap}\r\n#iw-hajj .iw-pb-total{display:block;font-size:26px;line-height:1.1;font-weight:800;letter-spacing:-.5px;color:var(--lime);font-variant-numeric:tabular-nums}\r\n#iw-hajj .iw-pb-btn{display:flex;align-items:center;justify-content:center;gap:8px;flex:none;min-height:50px;padding:0 22px;border-radius:40px;\r\n  background:var(--lime);color:var(--navy);font-size:16px;font-weight:800;white-space:nowrap;transition:background .15s,transform .1s}\r\n#iw-hajj .iw-pb-btn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}\r\n#iw-hajj .iw-pb-btn:hover:not(:disabled){background:#a2ee2a}\r\n#iw-hajj .iw-pb-btn:active:not(:disabled){transform:scale(.98)}\r\n#iw-hajj .iw-pb-btn:disabled{opacity:.45;cursor:not-allowed}\r\n#iw-hajj .iw-pb-actions{display:flex;gap:8px;flex:none}\r\n#iw-hajj .iw-pb-back{display:flex;align-items:center;justify-content:center;gap:4px;flex:none;min-height:50px;padding:0 20px 0 12px;\r\n  border-radius:40px;border:1.5px solid rgba(255,255,255,.42);color:#fff;font-size:16px;font-weight:700;transition:background .15s,border-color .15s,transform .1s}\r\n#iw-hajj .iw-pb-back svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}\r\n#iw-hajj .iw-pb-back:hover{background:rgba(255,255,255,.12);border-color:#fff}\r\n#iw-hajj .iw-pb-back:active{transform:scale(.98)}\r\n#iw-hajj .iw-pricebar.is-review{flex-direction:column;align-items:stretch;gap:10px;padding:12px}\r\n#iw-hajj .iw-pricebar.is-review .iw-pb-price{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 6px}\r\n#iw-hajj .iw-pricebar.is-review .iw-pb-total{font-size:22px}\r\n#iw-hajj .iw-pricebar.is-review .iw-pb-month{display:none}\r\n#iw-hajj .iw-pricebar.is-review .iw-pb-actions{flex:1}\r\n#iw-hajj .iw-pricebar.is-review .iw-pb-btn{flex:1}\r\n#iw-hajj .iw-pb-btn:focus-visible,#iw-hajj .iw-pb-back:focus-visible,#iw-hajj .iw-modal-btn:focus-visible,#iw-hajj .iw-back:focus-visible,#iw-hajj .iw-sbtn:focus-visible,#iw-hajj .iw-tab:focus-visible{\r\n  outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 6px var(--navy)}\r\n#iw-hajj .iw-back:focus-visible,#iw-hajj .iw-sbtn:focus-visible,#iw-hajj .iw-tab:focus-visible{outline-color:var(--navy);box-shadow:none}\r\n\r\n\/* ---------- confirmation dialog ---------- *\/\r\n#iw-hajj .iw-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(7,26,43,.62)}\r\n#iw-hajj .iw-modal-card{width:100%;max-width:380px;padding:28px 24px 22px;border-radius:24px;background:#fff;text-align:center}\r\n#iw-hajj .iw-modal-ico{width:56px;height:56px;margin:0 auto 14px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center}\r\n#iw-hajj .iw-modal-ico svg{width:28px;height:28px;stroke:var(--lime);fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}\r\n#iw-hajj .iw-modal h3{font-size:22px;font-weight:800;color:var(--navy);letter-spacing:-.3px}\r\n#iw-hajj .iw-modal p{margin:8px 0 18px;font-size:15px;color:var(--muted)}\r\n#iw-hajj .iw-modal-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;border-radius:40px;font-size:16px;font-weight:800;text-decoration:none;cursor:pointer}\r\n#iw-hajj .iw-modal-btn.main{background:var(--lime);color:var(--navy)}\r\n#iw-hajj .iw-modal-btn.ghost{margin-top:8px;color:var(--navy);background:transparent}\r\n#iw-hajj .iw-modal-btn.ghost:hover{background:var(--mist)}\r\n\r\n\/* ---------- small screens ---------- *\/\r\n@media (max-width:440px){\r\n  #iw-hajj{padding:8px}\r\n  #iw-hajj .iw-title{font-size:19px}\r\n  #iw-hajj .iw-logo{height:66px}\r\n  #iw-hajj .iw-sub{font-size:13px}\r\n  #iw-hajj .iw-tab{flex-direction:column;gap:3px;min-height:58px;font-size:13px}\r\n  #iw-hajj .iw-body{padding:16px 12px 4px}\r\n  #iw-hajj .iw-h{font-size:20px}\r\n  #iw-hajj .iw-pb-total{font-size:23px}\r\n  #iw-hajj .iw-pb-btn{padding:0 16px;font-size:15px}\r\n  #iw-hajj .iw-pricebar{margin:12px 8px 8px;padding-left:14px}\r\n  #iw-hajj .iw-pricebar.is-review{padding:12px}\r\n  #iw-hajj .iw-pb-back{padding:0 16px 0 10px;font-size:15px}\r\n}\r\n@media (max-width:359px){\r\n  #iw-hajj .iw-benefits{grid-template-columns:1fr}\r\n}\r\n@media (prefers-reduced-motion:reduce){\r\n  #iw-hajj *,#iw-hajj *::before,#iw-hajj *::after{transition:none!important;animation:none!important}\r\n}\r\n\r\n\/* ===== Hajj savings calculator additions ===== *\/\r\n#iw-hajj .hj-logo{--lw:111px;position:relative;flex:none;display:block;width:var(--lw);height:calc(var(--lw)*.70455);overflow:hidden}\r\n#iw-hajj .hj-logo .iw-logo{position:absolute;display:block;max-width:none;width:calc(var(--lw)*1.26263);height:calc(var(--lw)*1.26263);left:calc(var(--lw)*-.12879);top:calc(var(--lw)*-.31061);filter:none}\r\n#iw-hajj .hj-need{margin-top:10px;padding:10px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--mist);font-size:14px;font-weight:700;color:var(--navy)}\r\n#iw-hajj .hj-need:empty{display:none}\r\n#iw-hajj .hj-need.is-short{border-color:var(--err);background:#fff6f8;color:var(--ink)}\r\n#iw-hajj .hj-need.is-ok{border-color:var(--navy);background:#f4fde4}\r\n#iw-hajj .hj-who{margin-top:10px;font-size:14px;font-weight:700;color:var(--navy)}\r\n#iw-hajj .iw-sum-row dd{white-space:nowrap}\r\n#iw-hajj .iw-sum-row dt{flex:1 1 0;min-width:0}\r\n#iw-hajj .hj-det .iw-sum-row dd{white-space:normal}\r\n#iw-hajj .hj-usewrap{margin-top:8px}\r\n#iw-hajj .hj-use{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:6px 16px;border:2px solid var(--navy);border-radius:40px;background:#fff;font-size:15px;font-weight:800;line-height:1.25;text-align:center;color:var(--navy);transition:background .15s,transform .1s}\r\n#iw-hajj .hj-use:hover{background:var(--mist)}\r\n#iw-hajj .hj-use:active{transform:scale(.99)}\r\n#iw-hajj .hj-use:focus-visible{outline:3px solid var(--navy);outline-offset:3px}\r\n#iw-hajj .hj-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}\r\n#iw-hajj .hj-note{margin-top:4px;font-weight:700;color:var(--navy)}\r\n#iw-hajj .iw-plan-price small{max-width:104px}\r\n#iw-hajj .hj-range{-webkit-appearance:none;appearance:none;display:block;width:100%;height:36px;margin:10px 0 0;padding:0;background:transparent;cursor:pointer;--p:0%}\r\n#iw-hajj .hj-range::-webkit-slider-runnable-track{height:8px;border-radius:4px;background:linear-gradient(to right,var(--navy) var(--p),#dfe6ef var(--p))}\r\n#iw-hajj .hj-range::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;margin-top:-10px;border-radius:50%;background:var(--lime);border:3px solid var(--navy);box-shadow:0 2px 6px rgba(7,26,43,.35)}\r\n#iw-hajj .hj-range::-moz-range-track{height:8px;border-radius:4px;background:#dfe6ef}\r\n#iw-hajj .hj-range::-moz-range-progress{height:8px;border-radius:4px;background:var(--navy)}\r\n#iw-hajj .hj-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--lime);border:3px solid var(--navy);box-shadow:0 2px 6px rgba(7,26,43,.35)}\r\n#iw-hajj .hj-range:focus{outline:none}\r\n#iw-hajj .hj-range:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #fff,0 0 0 7px var(--navy)}\r\n#iw-hajj .hj-range:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px #fff,0 0 0 7px var(--navy)}\r\n#iw-hajj .hj-rl{display:flex;justify-content:space-between;font-size:13px;font-weight:600;color:var(--muted)}\r\n#iw-hajj .hj-words{margin-top:8px;font-size:13.5px;font-weight:600;color:var(--muted)}\r\n#iw-hajj .hj-grow{margin-top:10px;padding:10px 14px;border:1.5px solid var(--navy);border-radius:14px;background:#f4fde4;font-size:14px;font-weight:600;color:var(--navy)}\r\n#iw-hajj .hj-feats{display:flex;flex-wrap:wrap;gap:2px 12px;margin-top:6px}\r\n#iw-hajj .hj-feats li{font-size:13px;color:var(--muted);font-weight:600}\r\n#iw-hajj .hj-feats li::before{content:\"\";display:inline-block;width:6px;height:6px;margin:0 6px 1px 0;border-radius:50%;background:var(--navy)}\r\n#iw-hajj .hj-hero{margin-top:18px;padding:22px 16px 18px;border-radius:24px;background:linear-gradient(145deg,#0d2840,#071a2b);text-align:center;color:#fff}\r\n#iw-hajj .hj-hero p{font-size:14.5px;color:rgba(255,255,255,.86)}\r\n#iw-hajj .hj-hero b{display:block;margin:6px 0 2px;font-size:38px;line-height:1.1;font-weight:800;letter-spacing:-.8px;color:var(--lime);font-variant-numeric:tabular-nums}\r\n#iw-hajj .hj-hero small{display:block;margin-bottom:8px;font-size:14px;color:rgba(255,255,255,.78)}\r\n#iw-hajj .hj-prog{height:8px;margin:14px 8px 6px;border-radius:4px;background:rgba(255,255,255,.2);overflow:hidden}\r\n#iw-hajj .hj-prog i{display:block;height:100%;border-radius:4px;background:var(--lime);transition:width .4s}\r\n#iw-hajj .hj-hero .hj-pct{font-size:13.5px}\r\n#iw-hajj .hj-tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}\r\n#iw-hajj .hj-tile{min-width:0;padding:12px 14px;border:1.5px solid var(--line);border-radius:16px;background:#fff}\r\n#iw-hajj .hj-tile span,#iw-hajj .hj-gap span{display:block;font-size:13.5px;font-weight:600;color:var(--muted)}\r\n#iw-hajj .hj-tile b{display:block;margin-top:2px;font-size:19px;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}\r\n#iw-hajj .hj-tile small,#iw-hajj .hj-gap small{display:block;font-size:13px;color:var(--muted)}\r\n#iw-hajj .hj-gap{margin-top:8px;padding:14px 16px;border:1.5px solid var(--err);border-left-width:6px;border-radius:16px;background:#fff6f8}\r\n#iw-hajj .hj-gap b{display:block;margin:2px 0;font-size:25px;font-weight:800;color:var(--err);font-variant-numeric:tabular-nums}\r\n#iw-hajj .hj-gap.is-ok{border-color:var(--navy);background:#f4fde4}\r\n#iw-hajj .hj-gap.is-ok b{color:var(--navy)}\r\n#iw-hajj .hj-chartbox{margin-top:8px;padding:12px 10px;border:1.5px solid var(--line);border-radius:18px;background:#fff}\r\n#iw-hajj .hj-svg{display:block;width:100%;height:auto;cursor:crosshair}\r\n#iw-hajj .hj-ax{font-size:17px;fill:#566680;font-family:inherit}\r\n#iw-hajj .hj-legend{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}\r\n#iw-hajj .hj-lg{display:flex;align-items:center;gap:6px;min-height:38px;padding:0 12px;border:1.5px solid var(--line);border-radius:40px;background:#fff;font-size:13px;font-weight:700;color:var(--navy);cursor:pointer;transition:opacity .15s,background .15s}\r\n#iw-hajj .hj-lg i{width:12px;height:12px;flex:none;border-radius:50%}\r\n#iw-hajj .iw-in:not(:checked)+.hj-lg{opacity:.5}\r\n#iw-hajj .iw-in:checked+.hj-lg{background:var(--mist);border-color:var(--navy)}\r\n#iw-hajj .hj-read{margin-top:10px;padding:10px 12px;border-radius:14px;background:var(--mist);font-size:13.5px;color:var(--ink)}\r\n#iw-hajj .hj-read strong{display:block;margin-bottom:4px;color:var(--navy)}\r\n#iw-hajj .hj-read li{display:flex;align-items:center;gap:8px;padding:2px 0}\r\n#iw-hajj .hj-read li i{width:10px;height:10px;flex:none;border-radius:50%}\r\n#iw-hajj .hj-read li span{flex:1;min-width:0}\r\n#iw-hajj .hj-read li b{color:var(--navy);font-variant-numeric:tabular-nums}\r\n#iw-hajj .hj-det{margin-top:6px}\r\n#iw-hajj .hj-det summary{display:flex;align-items:center;min-height:44px;cursor:pointer;list-style:none;font-size:14.5px;font-weight:800;color:var(--navy)}\r\n#iw-hajj .hj-det summary::-webkit-details-marker{display:none}\r\n#iw-hajj .hj-det summary::after{content:\"\";width:8px;height:8px;margin:-3px 0 0 10px;border-right:2.5px solid var(--navy);border-bottom:2.5px solid var(--navy);transform:rotate(45deg);transition:transform .2s}\r\n#iw-hajj .hj-det[open] summary::after{margin-top:3px;transform:rotate(-135deg)}\r\n#iw-hajj .hj-det summary:focus-visible{outline:3px solid var(--navy);outline-offset:3px}\r\n#iw-hajj .hj-tbl{overflow-x:auto;margin-top:2px}\r\n#iw-hajj .hj-tbl table{width:100%;border-collapse:collapse;font-size:13px}\r\n#iw-hajj .hj-tbl th,#iw-hajj .hj-tbl td{padding:8px 10px;text-align:right;white-space:nowrap;border-bottom:1px solid #edf1f6;color:var(--ink)}\r\n#iw-hajj .hj-tbl th:first-child,#iw-hajj .hj-tbl td:first-child{text-align:left}\r\n#iw-hajj .hj-tbl th{color:var(--muted);font-weight:700}\r\n#iw-hajj .hj-ul{display:grid;gap:8px;margin:4px 0 8px;font-size:14px;color:var(--ink)}\r\n#iw-hajj .hj-ul li{position:relative;padding-left:16px}\r\n#iw-hajj .hj-ul li::before{content:\"\";position:absolute;left:2px;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--navy)}\r\n#iw-hajj .iw-pb-price{min-width:0;flex:1}\r\n#iw-hajj .iw-pb-month{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\r\n#iw-hajj .iw-pricebar.is-review .iw-pb-price{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;align-items:center;padding:0 6px;flex:none}\r\n#iw-hajj .iw-pricebar.is-review .iw-pb-label{grid-column:1;grid-row:1}\r\n#iw-hajj .iw-pricebar.is-review .iw-pb-month{display:block;grid-column:1;grid-row:2}\r\n#iw-hajj .iw-pricebar.is-review .iw-pb-total{grid-column:2;grid-row:1 \/ span 2}\r\n@media (max-width:440px){\r\n  #iw-hajj .hj-logo{--lw:94px}\r\n  #iw-hajj .hj-hero b{font-size:34px}\r\n  #iw-hajj .iw-plan-price small{max-width:84px}\r\n}\r\n<\/style>\r\n\r\n<div class=\"iw-card\" id=\"hj-card\">\r\n  <header class=\"iw-head\">\r\n    <span class=\"hj-logo\"><img fetchpriority=\"high\" class=\"iw-logo\" src=\"https:\/\/insurancewala.pk\/wp-content\/uploads\/2025\/10\/logo-green-500-x-500-px.png\" alt=\"Insurance Wala\" width=\"500\" height=\"500\" decoding=\"async\"><\/span>\r\n    <div>\r\n      <h2 class=\"iw-title\">Hajj savings calculator<\/h2>\r\n      <p class=\"iw-sub\">Plan your pilgrimage and see how much you need to save.<\/p>\r\n    <\/div>\r\n  <\/header>\r\n\r\n  <div class=\"iw-body\">\r\n    <div class=\"iw-progress\">\r\n      <span class=\"iw-pstep\" id=\"hj-pstep\">Step 1 of 3<\/span>\r\n      <div class=\"iw-pbar\" aria-hidden=\"true\"><i class=\"on\" id=\"hj-pb1\"><\/i><i id=\"hj-pb2\"><\/i><i id=\"hj-pb3\"><\/i><\/div>\r\n    <\/div>\r\n    <div id=\"hj-screens\"><\/div>\r\n  <\/div>\r\n\r\n  <div class=\"iw-pricebar\" id=\"hj-bar\">\r\n    <div class=\"iw-pb-price\">\r\n      <span class=\"iw-pb-label\" id=\"hj-label\">Estimated total cost<\/span>\r\n      <strong class=\"iw-pb-total\" id=\"hj-total\">&ndash;<\/strong>\r\n      <span class=\"iw-pb-month\" id=\"hj-sub\"><\/span>\r\n    <\/div>\r\n    <div class=\"iw-pb-actions\">\r\n      <button type=\"button\" class=\"iw-pb-back\" id=\"hj-back\" data-act=\"back\" hidden><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><polyline points=\"15 18 9 12 15 6\"\/><\/svg>Back<\/button>\r\n      <button type=\"button\" class=\"iw-pb-btn\" id=\"hj-next\" data-act=\"next\">Continue<\/button>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<div class=\"iw-modal\" id=\"hj-modal\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"hj-modal-title\" hidden>\r\n  <div class=\"iw-modal-card\">\r\n    <div class=\"iw-modal-ico\"><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/div>\r\n    <h3 id=\"hj-modal-title\">One last step<\/h3>\r\n    <p>WhatsApp is opening with your plan filled in. Tap <strong>Send<\/strong> in WhatsApp so it reaches us. Our specialist will reply with your pilgrimage options.<\/p>\r\n    <a class=\"iw-modal-btn main\" id=\"hj-wa-link\" href=\"#\" target=\"_blank\" rel=\"noopener\">Open WhatsApp again<\/a>\r\n    <button type=\"button\" class=\"iw-modal-btn ghost\" id=\"hj-modal-close\" data-act=\"close\">Done<\/button>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function () {\r\n  'use strict';\r\n  var root = document.getElementById('iw-hajj');\r\n  if (!root || root.getAttribute('data-ready')) return;\r\n  root.setAttribute('data-ready', '1');\r\n\r\n  var LOGO_FALLBACK = 'data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AABLnklEQVR42u2deXxedZX\/3+d777MlbdMkrSwim4hLwWVkdBSX1gUVRdwaFWhaEa3jOO7LzKiTZnRcRhnHZfwNipQmLTipOq44AloEd0VxKSiDGyhY2iZN2yTPcu\/3\/P743ps8TZM0KQW6nPfr9ZCSPM9zt+\/93HPO93zPAcMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDMMwDGMfiJ2CIw9VZA1Ex4LcCWmv4O2sGIZxUIrVbH5nGAcjsZ2CI0usRNAP6zGLjqLaDRyXEn1RZNv1+d\/sLBkHM85OwZFBj+IEuFwXP\/hYaj+q4C5uwb2phP9mv3acJYIOKJGdKcMEy7jfWQKCoI50TQU5aRStj6K1GIkV\/defKIXNoOYeGuYSGgeDK5heqp3zQZ9cAxWIgGgM9WXcGZtpX94rQ1csCVZWamfNMMEy7hfWhNlgFZLFgiv78P+5JaXhb7xtrfKFzVBHgzV2z1QS6QFZArI5\/NTlYTuKxcoMcwmNfVGg6BTZI04lENVQLeEeGdN5Vq\/ge9j\/WJYqMqBECNor+C4h7RWSLiEVwZPFysz1NPYHGzRHjkuoa7Xl6IjSj4u44xqozx9YCmkLEo2gX1spg8\/b3xlDVZxkOV2blPJdtD0xJX4I+FaPG43xv08pfqdbtoxMfr9hmEto7EGd0e0VSiOy91MrqqIaoc9ar+2niwz9skdxc0ko7cnEZ622LYyIXvcn9BUOObkAOBweSBGExu192nFZjeTjIjsH57odw1xC43A3ozM3bLXQENjlglW1hwXlwVdwsYcL5zo2ctFZq21LC7jvtSLviZGTPVBHtYb6Bup9eEIe34qsqRB\/\/3LtCC6o2jg0TLCMqfnLNLEBqaOAvLRPj3pAr5DMRkgGlKhX8Ot04bkVoq8XcA8fQZNGJogSwg4uH2sN0BE0KSCnluErfdr2gl7Bq4mWYYJlTEbht9ONhUaIZR3jSJZDlru1D8uqS0g\/o20nF3D\/pUi5iqYCsUzzWQERiGtoqkgxJrq0T9tOEhMtwwTL2PuCy00zeY8pkKKre5RiFzPHlpaA9CguJnp\/CTm6gSZuljOMAlEDTYpIJ7h\/A1hjl8cwwTKaSeBmjzKVBSTg6mhagUecTPszcpdvOlewS0hPofOxEbxwFM2TUWeNQDyGqiAv2aBtjzXX0DDBMgDYnMWUPHpXDd0WgZsceM9cRhwSCaxG0M3MnN6g6LNakYKG7Pg5p8ko+ApCijsX4FPYekbDBOuIZw0oisxj6E6QXxaDtvipXLUxVB3y3LXa8Te9gl8+hZWVu4sCj0zGPzp3BDQbhI8EuNOWBRkmWIYIuongxgn8VJjedFLwZSSKkLcBDEy1KFrGf\/cAD8h+CpaCBMGTBwzoI4qZW2gJzYYJ1pHO1nG3MP1eDcVNc\/0FXBX1EbxgnbY\/QQS\/cYr3iqCK1mYSvzlYWulibrYEUsMEywgsH3cB\/bcb6E6XLYqeSj88aCGMj\/eOB96bLJ\/cChK4040bS\/vnEsaggm5dluV+WSFBwwTLCBaRIitl13aHfr2EqE6TupAt10lbcE+r0rGqS0ibF0VfN\/5v\/fE9sbA0pFKIwo8AltqYNEywjMlCo7ir2HfcyTVQdej712n78c3Z70uz4LhHvjqCDhWD6MxVtzQCGcWPpaQbm7\/XMEywDK4DjyIxcu0IfkshCNh0VpYkoCXcYodcAln2e1bNYUCJVsrQ7QKfKSMOSOa4O0kFcQ4uWyU7f2vuoDGLEIJxpJEnffZp+2dacBeOhuU00QxuW1pBojH0Q90y+PZNSrwM0p5s\/JzK8W2e3d+uIKePhGz3fVYBUUhakHgM\/2ul+NTfsmXbGlATLGMmrLzMEf200ssTdNVsXMMqmpaQt12uC29fJjs+0aPEvUISamfdPrRO57+kSvzV+biHjKCJZoueZU+RIrfmWpC4jv7OIy9aKVvutq49hllYxtTWTTbD9zEoLqT9ugru8VXU78PKUhdekpBe2C3Dlw8oUTbzKCL4y7XjgUX4dAF5jhBqLWsmVHlN5kI25Br4axvwypUydLsV8jNMsIwZ2aTEy4SkTzu6y8i6WlMF0n2IFjEkCf5NF8iO\/4RQtQEgL8TXrwsviIle1ECfKGibIs6hXpEdDv1hgn5+JTvW5+WSu8QC7YYJlrEPKysLnFfGaP9FCTmlEaylfU3EeMAVgRr60a0M\/eNbhLEeJV4DvrnJxJf1mJYRqp0NaBNkxyilwdVy12j+RVZt1DDBMmbNciXaKKR92vl3LfCJUTSR2QXMVUAriKui36viXneRbPtZbrkBLJPpZwwHlKiL0JDCroJhgmXM0sxCFKSfoyrQuKGMPCaLZbnZfTzMHjZgp6If3o1+bLUMDeeitBx0TfbeNUHkMJEyTLCM\/aYpxeHZRdzXGqgyhxIvCj4CV0Ko4m8T+FBKcUPeGSdf1mMWlWGCZRxQ0Vqn7f2tuAv2lZc1lYsI+CISRUAN\/Q3wSfBfukB2\/HH8fYqsyRJVLXZlmGAZ+0Ue\/L5CK8emlG+McUclwdKa00qIZuEqACPoNuCbDv3yCHwtdxfzbeY14zcH19GSRg0TLGNuVla\/tq+u4P5rrlbWJLyGdYJRGaGB0oC7HfoVD1cn+B+9Qob\/MNU+NLW19xbzMkywjOnMI+kBORaiMu03lHGPr80hAD+dxSWQKkQxSImQcFXHb\/FwC7jvCf57jujW+RT+\/PymlIc9vickusp14K4DxgXNxMwEyzArq08XnlMh+vLYPbOypnQXAQoQxU1DbwwdA70ZuEVxmx3pzUrh5jKlP2\/mT7Xp4l2Wx2WCZRzB9ChuDehGFrfWSH9QhCX12SWT7pfLmP+Pg6iAUCDUlqmFP9U8OiTIbQp3CNyhcAdwV4r+ZZChn2YJqyZaJljGEesZKpEI6Xptf28Z987RA2hlzcL6UkKj1ShvFx0h2c\/w\/zWgjtYd3Aq88nwZ\/JGJlgmWceQKlhPQ9Sx8suKuk4nCfHLf70oooZxn1meCFgEyD5FdpLdE6JnnMbyDoHQW0zrMsQJ+xt4Gj6AN9BeK7rofn2giEyVqIsKSoUI2ZnUXmlSIHt4gWiqCrrF+hiZYxpFrcp\/I8G5Bbo\/Cbw42y8VNNK\/gdAgzh3b1TLCMI0+xFMYXL\/\/ZMR5jOghNQVRgnl20IwerOGrMxM6DLMiZx7FSIAp9FeXnAIstHmsWlnFkklck9eiI3PtdbLyG5NLxV\/47INHwSrPBKkXEtSKFArADf9kQ2z+niiybZj\/z4oKGWVjGYcqaiQarWkKiUbTBAQ5q525mEXHNg3A8t4GJVIaEUG7ZQ62G\/qSB\/19P9L1VMvgtgDfMsJ1ewVu9eBMs4wiwsvrh0mHSR7Xi\/mrkwGa9E2cuXAN\/Sx3uECTPo1qgMB\/YCWwXdDvobcANNaKbLpLtu\/LvmbEQoCIIul4XniBNFSOMQxvz+49wehS3FNxW0M3ZeOgNrhki6CV6TMt8ah8pIK+uoukBsLTUgXgYTuEVD4Bvni2DO5tEqFijozzK4NhqoZH\/\/lJtP60FPSdFHhwjv6vhv7pKdvxiKusp\/906bf9oO+6lO9ANKxh8K1iulgmWcchaUBvBTdcAIlumg4w3luh8XxH+sR6aVcj+jh2FZB4S70b\/qVsG3\/9qpfBYYLXQmJyxnhf\/G6PzbSV4f8zEOqEEHa6hL10pQ99o7rqT\/3uDtj\/JITdECFW0LrB4hQzuNPfQBMs4hBnQxaeMkZ7p4ARBqynuN1WK16yWu0bzgHUuXP3a8bUycnbzomgNZWBSQkZ8JDOPKYV8pkfPVNgdw+dTqDbg5atkaHPeOuw6iLKuPstbkIEq6n3YlgPSElKo4u+C+qO7ZeTuHsX1gg5kXz9G+1UV5KwaeNCxEjywS4aGTbAObSyGdQRaVmtAloL7E509nvRv5yGdLnt+1YGY6s2XaccbL5TBa1RxG8dFSN5cR5\/ioFWzpTNlxJURl6BUUdIZFktnFQElhbrgEkXfU8E9pBri+1et1bandsnwH7LmGAlhtnKlgmZilY9XV0WTFtwxI5SfBSP9S8EtAQ3VJtpeUMY9s4YmMcQJsn0eHVUYsif0IY5N+R5RahXEqlfwt9P+6XnwLg+do2iyK3vV0bSAe0QLfLlf258rgt+YuWcrZPtvPLqxgohCUkKkhr92B\/7C3eiHEnRLEdy+E03VCWkFiOuor6O1EnJ8hFu7VikPgM\/ECoG2NPzca6xGoA49CeDWTFQv1c75QvSerOeFxiEif9PZcltNs0C8DQQTLOMQoAeiXsH3a\/tFrbhVu9Eks4hiyV5AVEUTkDLwqSv0AUdtFNLFICE\/S784hvoyUkjQjStk6Jk1ki8N0fFujzy2gf64FATNTxV\/UNAiEqeIF+SqQhC4eBRNW3FLHR1rAQbAZeJycyFzPacKaSjsAihyQtQlpAX82yvIabUwcSDBJNMbAK6z9YYmWMbBZUHllslUrmAvpAO6eB7wujS4dDLVGBCIa2jagjs2pXF+drMjglZp\/NBDo4EfFeSNG7T9Ca3Ev+tg8MYC6WhKckGCjslELtdkgfFFhAh5QAm\/YTe6PQ5rA2UETechL+uj81+6hLRHcQqfS0CyJUJp5oomMbhRtOqIrx1QolfIH6uXasdZMfIPWasycRCNoFXBfwtgq603NMEyDhLrSTOLRNBpsrsFQUdJThDktFpQtmktDgEyUXsOTCwuvpqRbQIjDeS\/zpPtd6ZwWYy0zcctSYk+sVJ23ZqiN5ant7J8FMTnQV0yNOzRD+UWmQQRSkvou\/q04\/W9gl\/B4LVj6KcX4OIiEsUgZSSuIK4B77lA7v5liFt1Pq0VrhCIfFYSJ5Rk1u+tYPhnPTr9jKhhgmXcx5ZVr+CXK9GAUuwV\/GTRygPnEVGpiETMztoQQRYDLM\/evxwqoDdE0Nun7a9uwT2sitZDuoM+VBUR2BYFcdK9dxUJquGPQZGFlD8+il7fgsSZwLkGaAE+ul47e7vArZLBVw+Tvtejv0rQv6Twg13IRatk8H0A67X9VQ79qkBnEoJXeYkJccgnEHSJzYibYBkHj2XVp51PewEdN9Vov+lybe\/qFXyexwShlRZADLtr6JjL6krtUwrRrc2C16CtAHpxichHyDuT4H4RgRNka0gZkPY0E4ypRDAIlpyCoKHxhLy6iv6lkO1TtrrZF+Gfz6Fj0wZdeE6Cv3gX9WV13GO\/wPYnpbRu6NeOl\/Rr+7di5FMClXpmpSmkLUg0ir\/2Nga\/1KO4LqwiqQmWcf8aVpllFWbGfF8ZOa2Ie3gJWX+5tr+8S0g3aUgFWJOJU5XW20E3FxGvM9\/E6oJrdW3zLwsM71whO24YI31TBTm+lmUrhLpZ+ufsbQ\/MZvamEiyXoigs2aTEqsgK2f6bBFktWWXRLPjlaqgvIU8uEH05xv2mhcJAEf3k8+n4YsSuX5eRjSXcsjpoGj7nyDpR1\/EjMfHbxhNRbXbQBMu4f1mTCUKMP16Ro0dDikDiIS4hl\/Vp+7OXCclAqNOueXBa4FOFiWvvpzCrkhISj6Hbhagvt9B6FLccfL92HOfg9dUJUZNMhP5vQNvbHHpcEv5fpomNIXDin1i0OCz\/obBKtn+5hq6tIJGf2CdXR30V9RHygApuWStybgvyvAJywhiaZgF28lLOWWE\/GvDqC2TrTQMaZkZttJhgGfe\/YGkWlxokNGZwQJSG35cjZP0VuvCRXUKat\/DqUVyRoct24j82D4kiJM+bGu9kU0HiFL8zhfNWyLa7cktuCSFLXPH\/XEEW5d2hBaI6iiI31pCHl3FlD+k0FpaEtT1S8qSPBDg1E8MK8bvG0DuK4XPjoiXgEtBRNB3JXpkrGmVWVZ6z5UtINIb+40oZuiI\/ZhspJljGQUC+xOQ2tm0R5McFRPPZtjqkMdLpkYF1Or9zOSEQ3yv4LiFdKUNvGCH9O4\/+Jc7qTBUQiaGRoJvq6JNXyeDVPWFtnvYocZeQrtOFz4txr6xONFnVbG3faIXoB8BZ+zJnNAiLRPCo\/HdLQLpk6188\/oNxyGKYbJnl3XQimag8s0ewLSuF82+rZOiD45UcDBMs4+ChR4l7Be+RS12TReMgqqFJGfdQIf70RnBrMksGRXoUt0J2fHKMZInHn9NA39DAr\/a4J7xcBp+2Snb8Ihe4zK1K+vSok4rI\/yOkIYyLTzGshf5ml2zd7dHn7CtYJJDGgCKnQcjxWp5lt49RWTuK\/3Xmss5WcNJylnW\/UgbfMR5kt7jV4feQtlNwiKOIAl+H4lY6flJBTmuyfshnzKqkl\/wfO16bC1CzmziNELosPSLOxKrV0bimhDxhbM8W9mkJcWPI82Iav4ZoM1CaIeiOBoGJauj3Bxlc9gah1lw9ok8Xvq6V6OO70dTNLju9MR8p7ELfuEIGP7pJibOa9IZZWMZB9sjRLnBnCzVB35aGi5rXPkcgCktpotWn0vHZS7VzfhbLivNA+oAS9Shx9tP1KG4JSG5ZrdWWo4X6V8rIE7LGqrkY+kJYiHz779j2v0r0qhZkpvjV+LhrhF186ELaj8ricbKZEAiLaWwcwf8lyxebtVun2X5dZ6PCBMs4eNlIsJq6Zeh\/a+jFLeFGb7acsgxyWd6CfqNfOx\/aKyS9gu8VfN7AIfs5HucKMau2Z5Qpbyrjlo1OsngUtICIwMVLOK6k6IVjsxhXEnKx0jKuQ3Cn5DGsXsEPgDtPRrYI8j\/ZGkKdhVBlQXe16iOHOXaBDx8rK+1RXAuD79hNx8MryNnNAiMQjaJpGXmCR7\/Xrx3\/ATJwG9v\/L3eferOv69eOBR73GMG\/NoaXCOLGJpVIzt26UfzPVsjQx\/tU3tuKe8DInu7iLHbdPw741mQ3V\/CfTYleM9uwRVa6xmXiZ7ErEyzjYGcNqAj+05qsEKLvV3Cnjk0SrZDTREcZ+ZdR9B9Pof0H65VfedyfHeo8nKTwN0X86QWEMZQ0SyFo1gc3LhLymj5dcEoBfXM1zFDOKS6qyJOa\/395Fiz3WrqxRuNXZeT06ixF0AfL0jDBMg4JQytLDu2SnYPrtf0lDfzVJdzR9aYbXsClIafJO6iUcMsiWJYtlyECGkAN1cbE59wkly4tI\/EI\/q0rZehH\/drx3RipZMH4WQmWkHed0Iddose0dMldo2TVQHuUuFu2jPRp+3UxcjozFAXcU7CsfIzFsIxDinz27wIZ+mUCL0rR4ayoXtosFllVAx1D091oMob6\/N+1THgyq0omuV5JBYl34y9bKUMXr9OOD7QgTxxrCsbP0oWTRmht88AKtdMhq4HV5NIp7pvVUFViVg9WsfFsgmUcuqK1Uoa+X8OfA+woIJFOajbalIwZS5axnv97GgsmbUHiEbh2lQy98nJd+PwivGNsb5dxthZWMg8pO\/QxAHnXnjzhs07jhhQGM\/dT9yGAuOCpGiZYxqEoWpuU+ELZccMo+jJBR4tBtPYr+1vBt4RlL798EPPOWattS4u4KxW83898vnxdoYe\/AViTC2qW8Pkq2TkIelMBmbJUzRT7aOPZBMs4VMkXPl8oQ9+owbkJ\/s+FibWDcxErjUHq6NaU5IV3suuRRaIvAy0J0yeIzuJ7o5CPxZMGlKJIyMOC5hbzemvE7NIbLIZlgmUcJpbWShm8tkrydNA7s8YMcxEtX0Qkgctq7Lw9Rf8nRuYnIUF0v8eQTNTGOqnKwocD9EyIX56cerub8PqmtdTCB8TGswmWcThYWpcohYtk128a8P8Ke1ZDmDUR+ocy7cc45Ng6qgciyK3gy4hT3LLmMbl0\/O\/RcFY+ZibB0ubjWW55WCZYxqFNe1atweGv39\/vSKE1oTTmoS4HaB2qgo+D6DwRJmYIb53IXq\/J1JvyCkn2MyoG62oBhMavhgmWcYjTK\/g68e79d+GkojSqEqyrA4KEyqII+tfrdH5nXrPr1PFaX1LU8E+fdc1JsyVBbh4SFxAn6Ngu9Ed5O681ZmEdtlji6BHC8vGa7mm9Fgo8zOlhFRRAK3dw+tgp\/OJACoJLQozsxCrRaapcvxFk63guVrrQEyVAqYzggDpKA93cQG8U+E4Df82XGLpjY1Z5wlrRm2AZhzi5m1Qmro6RViOo+KYOM7O0h8q98u2kX9sPaGE8BXUIgnSJ8O0BzZboACluSZZVv6WK3qLw1ZjouoTGb18hwzsmfZF1djbBMg4nUpKawG6HVOaqOoIUM12oCbQoByaQJVlNeJDnXqqd\/9DF9t1Zf8XYob\/fjn+j4r\/cLcO\/b\/5cjxIvAV0e1jBaowkTLONwo0GxBo0RgcXZ7NqsNUfRQiYwjQO8W64e1ic+SPFvR3h3j+J6IUWG3p2\/KW9blrm3Klak74jDgu5HjkuYFfRrVDMLa85um0CbKqJo\/UAF3fPW8w6iUpjpS5tML80tqbxzc5eQiuAtTmUWlnEEkDBYj2kfyYI9s5ntUwmVRaMa\/FIE7Ve5RzGsvB2XgkYQVZB4FB0exv\/zShn6mIaqDePb6DVLyjAL68hkFdRARudgIaXzkMIIfv0KGXzfem1\/ewTHNeYYsM8sqRRoCEgJcS2hB+G2EfxnIH5ytwx+LC8xY1fKMAvrCEYInaKDhcTYvpQms4J8KxKPkF45wo4L+7TzBW3IB3cF48dnAiRTCZfmcaasnlYEUkCiIkS7Ua3hvxtBn6BXXyA7\/gghRmV9BA0TLAME3RiC1qmio1kMazpLxgtIBaIR\/EdK7Hjb+eD78D8dhv9QeHUR11IMOVT4XBCbviDKBlcdqKOaortS2FRHb\/C4n3XL4HhZ5AEl2gxqYmWYYBnjbJ7okDythaWhZ2Ak0BjFv7VbdnxMFVkD0itDtwNvulQ7PwT+nDo8QeBhIPMmi18C26pwq8Jmh7upRP1XXbJzcHw7WVsvEyrDBMuYkmPJzSqpZsKlk8QqqSBxDd2e4letlB1fzVIJfK\/gc+G6SLbfCVwCXHKVUtpCWyUm8qNZDL8d2MzQrl7Ze4F1njslQaRMqAwTLGNqTh1PbfBDnggNVUbJivrpPCSuoj9OYeVK2XFL1p5+fIYuC4Zrk3UkZws1GK5Ntb1LlMKdWSWFNUGk1Gb8DBMsY04o0aBvsqqKSCwoY+in6qTveIUM78gC4FOKSyZcae7aTbcdkYkE01477YYJljEXJhYU+8EEl7qQA8Uo+lvQd6+QoSthbrN1loJgmGAZ97KFJUPlkF4wOoJ+pEz6712yc1BDWeI8vmQYJljG\/cdEJU5\/9y7kczH6nvNkxy9yq8qEyjCMg44Bpdj072imOJRhGMb97xYqMtGZxjAM46BWLLOqDMMwDMMwDMMwDMMwDMMwDMMwjlhspujepHkmzpawGPd0DNk4OngEa0CJFk+zP9dl5U2aL2IPREun+a6lkM5ljVuP4pZOUy56r23P4rsAN1VVgqw8S7RkFjWgepR4uuNbBulsBu5czulM52Caz7MEdDPoXM7P\/XFNZnNOD+SY2XoPanzl37sUvExzjLN5jypyXaijeI+YaRvGIUyP4vI2VM03yIBSvEQpTJVNPqBEh0PyZn7sljG\/\/1aUTjF+msdQ9oqmEqbDZRwdEhZWXme8T9ufqLgHC74hE5UxvUcqEfKD82X7r3sU1yv4tdq2MCZ6hkeLkpXzzWqQi4BX5OsXMLgLZq4mkH9fv7b9FUSnC1rV7KmZfU8Z0l+ukOGf5u+d5hhc\/hS6XNuXRPAs4EzgJKBVkYbCoEN\/q8iNit64Uoa+3yxczU\/kASWqsfC5CvNBUhkvvIcKLnYkXztfhof21el4vS58ised6NBaflwT3yE\/PF+2\/V++7+u1\/fQU9+jm8z\/9\/YUKOqrobof8Nq\/JPtWx7M94AFhPxwM9smyq8VAgve7lDP9RmX21iAGlWGPhs1OiBQ6fNJ9TxRUKVK8+T0a26D6aYOR\/X6eLTgV9\/OT9S5Gyw\/9uhey4YTadqHsUtyarFQbQrx3HCXom6GM97jTQo4EWwvjeDXK3oLcqcpMS3dQtW3\/efO6XB4tIL9XOYwv4pXHWQdvP8V7Pz7WS\/Gql7PzJTOP\/vuR+X\/y8MdxIqYN3LESeP4obf1SkwEKEu0neBfzrkqxMeEzhZMFvnI8LXRAmbiTKCEP4i0V4a\/ZEmvbmOTaYzB6iVy3GvWYnE48pDyxA2Ar\/BfztxHunFqtLdNEx8\/E9Ci+tIAvzcpqajVoBIuTJEazaDfU+7bg5go0Jur4rlB4eb7U+wgmFiF2XL0DaG5OOr4Swi8IZwI0D4LomH58i+Y2suJ7FuKftajqu\/Dt2kr4VuPhjUABqinR3Im9tPv8zkaDUQRW9u187biug\/btIN3bJzsF7Mrg3EvoP9ik9i5CLRpr2xwOtCNvhvxFeNpts\/Vxgxpg\/3+Eua0c667i9xswgxS\/CyAvX7F2efg\/WhHGQONJzFxL9W7XpuzwwH2ErejXwrB6Q3hm+Kxf3XmCdLn5SRPpaQZcWcMfEQKiXL9kYCjLigBg5W4FRkt192n5zRPTfdeSKLtn6lx4lBpKY9IwFRBuS\/bRKUqAN4W6iy4BXTjf+jzjBatL0kTE0qaKeCd87GYVIkT0qWka4JMEPj6Lz\/J7di7WGEsHr+7T9C10y9L3Z3DwCo6NoUkNTzc6JZNsWGJ1pwImQrtO2ZxTwny4hJ1ZRdqMJWTcZzbWDiU4yDopF5NERPFrgTX3a+cGU7Z94BTQf5\/AouiBpOr7w1EMUl87yKbl7iuPyHsRn5\/SY8RpZMjbF+Z\/pu0XAxchREXKUQ85shTf26cK3d8uOr+yPpaUaLOR+XXQM+OftxCeNJk9AQBvhFD53rbadKDL8h9mKYwXRKgyPoW0NVLUp\/lRF0wruBeu187wLZPsVs9l3RWqjaFJv+i6BJApjZve+jnMNSJeQrtNFj4lI3+1IX1ggVDysomkmmk4mbTUbDB7AIfMKyOMc+jiHf\/067Xz3V9l+RbixpTGKpmnWe1LnrlvJ2D7G\/\/3BQeP3Zhc9JpykSMJNEwHxZBclCX04x98jE6\/Yg8RIQZCPrlXKa3LLZeatT7vt7G9TmvJdQnq5tj+niPuSgxN3TwyQOPsOl+27y\/6d76PWUT+KJjGyCHyv0r54kvuw1\/Hl+5TOqv\/p3M4pU7x30svJxDFEZG54Ar6K+hE0dbiHFYi+vFbb3tglpHONq2wEh6BCem4FOTqzDuKmbcYpSAtuXkx0\/n6M4WiqY1SIE1DBf3CtLj66C\/y+9j07f9OMmek\/m1t8IRTR8caI9Poy7oUJ6FgYPz4fJ3mLtOaXTFynOA0PaD+K1iu4E8CveC1PlaYHSr5P013TaV\/5sehB1rv0sAvUCUQ1NK0gZ8QsfLMIfuAAH2ced+jTBafESB9ISy24tVGzECikCokG6z7viEWTiEk2Ej9yoQzdMVVQ9SB6oOQvnx1P3kjVCTgHUR1NU1TLRB\/p1\/bnZo0r3Cw3IF1CqoqksCqdfnxKGk7ky\/r0qNZewmfu4ZhxDdSXccc5kvdlD44Dfm\/kYjWgFPu0\/TMtyEcEmTeGJk0C42a4BFOJphMo7ManwL8sk28nZINtH\/jZvJSDK43isJxZEHA1VB3yTwPa8Yj9edrvcxuCCtGaCrKoAYlrcqPyi1xBovlIPB+JW5A4AqcTDUh9AZEqfovDfVIVWc7BmWPjgAIiRUTKiJvXdCyTHxYefBT05\/0DungeWdOKfQbFwaHIehY+KUYeVw9utJvm2voyclqB+lOa4qD39BjdKJqWkO712v6cXiE5kA+Q3A3sUYpVOvrn4S4cySzyKUIzmo+T7KW5Rdv0uzT7f19BJEWvWilD39mk+w7zSLiebqZXhBQLiHNo4WAai4drxVFJwVdwraP4j6lyFhyYRgh5zORS7Xyoxz+\/iubdjccfg1EYXFTRbwO\/IcSNHujQvyrjHijhbz4G14BLL5Dtd8bZDM9Bdh59EVwNrld0raIlhTbgoQLPLuGOrYXjl2bRqkJaRk6vkjxJhP\/d1+RH052kqKwsITKKpjJ9LE0daA1ehfD1zXpAhF4yo8V59N+\/qJ3fOZftu2cz0zdbd7dXSNdp+4fmI1270YaE+08mmVEekDIyHr9qoCQhPhYXkSgfZ7UQ60gbaOrQD6HILzglgtuSmQ5SoVbH\/2EfpyMZQ8vg\/gwTHZdMsO5FK2sMTVtwT19P56tWyPZLDkQr9KXgesGX4K8ruPnNN5aCRiAe3aX47jLDX2ne3qXaeSzo4xVWxcjzRvE7C9Q\/DrA8xC4ONjdQIwSP3twtg5c3\/61fO45L0MtLyNPrIVDvJp1\/BZ4N\/O9sHgJdQnqpdh4r6DnTWVfNBlE9zHw+\/UpddOrLZdutB2ja3dXRtBX3sGH0n0V4W48S93IPWpMFy9l1CWm\/tneVca8fCZMyhSnOty8jLkGp4X+myLUOf72HOxRXVzSuIg8AvxTk6cAZC3GFbfivrmTHd0rgZhIrBV9EXB3\/+zLpmcMz7HYLooO0RMdkQfdlB0l7tsO6pruANMLg\/9crtf2qLhm6ozlnan\/YOtHb7yERTrMZm2jCIpFoDD7dLcNfVMVdomFgvhoSCQ1I\/wf4n35tf64jWnCejGwhz\/05SBMvHVrMs+avA5aA65LBP\/Xpgtco0c8d0pJOxLSavGZ56Gy+f0n2uRL64jLygMnWlY6f8\/HZQvGQtOAWjOKXE1Je5ACNGVdF0xK8rk\/b\/6dbhr53T8ZMD0ivkG7QYxal1C9OwkzfVGKclpGojv+xR9+zUnZ8ZQaT5pvAu9dp+5NG0Dcp8nERtEfRfZ2HYEZK0tyFe3qGD7qxeLg3oXAJpC1I5yj678DyjfdwYG\/Obh4PbX7cjdgrmvl7gI9B4Q0SUhVWZyWJlxBiVSJDX2sOxB7MJ1GzpSaqyLJMWHsU1y07b+vTjp+VkDN9eDBMcm904Wy+fzn4AX1EscpdK9MpLk8UAtJMyilyjbCN7o8qH+6SzEO65+dSUpACUgb5yJf1mGUbuWu\/vzsXkJTq37fijhuBvVzdzLKK6vi1nuLfd8uWkbxZbfO4WxNcSxm3yGXoO8B38vf0Cn42cTclZNYTvlPWTOPu5X87mMbn4Rh01+aZDYFoDE1LuJf0a8dLuoT0ngRTJ55gMuTY80pLGOwaw8p+7VjwBqE2vmQnm8ruElLJBlZPeHIfeotZs2PJ8qa2uSYraNIbG\/v6qgElEqDGlifHyGPqTTFBDeeSFP1Tgv66FE69nxAs1SJyagcdZ0MWuL8HotxsZdXQpAUeN0z19V1Cuj\/fvSTLtdqgxywS5BX1SfG+bLtpBXFj6NfOZ+iV3bJlZJMSi4SHRP7qlbCmL\/\/\/bLbxXp1VPtjE6rAULAeSB72b75zM37p4gx6zqItws+3P9+eLiSO4OSQx0qxbro5SQM4A\/Xa\/dpyVi1S+5ivfbj4ID9EnguRiq+hxvsldm6Rr22djXQXLxZ9fQlw2gzqePF4K6wQ+BfKpQnhj86VNYwQP3bkVsj\/XVRifKNkjDy6bUHjXFdq+ZH9mmhePW1eNZ5SRBzXYK13CF0JM6c8VWJ2L0GzjRfckHitBADUTQp3uZS7hvay+HoYVTWOkI2nKFapB2oocP0rtvQiv2bifT6elkKJISuHbKfU\/F5Bjk6Y4loDUUC3iHp2i37hC2z9fx\/+nyPAmspmyAxH8v69P7SYlvhFkU5iRS3sF36cdj4\/hkY0p3MGMX+0rIC2CXqGdxzbQF1XD\/RE1Wzp1tBGhX6gjO3aTfsAhxaZp\/mgM1Rieeal2PvQi2f6bbBWSzkWsFEY8jEWwyO\/pGqYVXOsI\/j82Kc\/ZCrqYuc82C\/6c7Bmqk6wrYpAR9D\/Pl6E\/9yhx170c3A47oO6L2jm\/jtOdeFmA22O\/mn+3ma2jB9OD9XCysHwU7pmtIO\/VSbNuLps1LMBF67TjGV1CWuSEOYuWCDoArlu23O2Qi4shvDI5H0kaqPdAEffimOibfdq+aZ22v7RPj2rNxepQWGGf3dBjy4TkDKGxTEg+BXGftj\/RoWsdFHTP5VGEeJOq7GOGMHezGvjzW5C2LMs7X5SclhGpw\/ePYeg3q2Twz4J8o5yZY\/l5zuI\/rQW4YE+XfXZuYPbmBHiPh8FoIkd2PJzQinvGHbRf2CWkW+dWgser4hQepXvHOzUKY3K4SOOyLE8rvZevpWuEoP+Dd6E\/q5HeVMp+Nr\/K6E\/rpDdVSX9yKosefDCN1cPKwsrScdoi6v0phdPm4S7cPTHjJAriQjLcR\/q148zjOHEU\/jjn7XQRYlAnM\/iJm2l\/6jzcuSNoQ\/dc8uIA8hmvMm4psDSh8dMrtONj58ngul7BL1eijQevtZWlD8iT1mnHB7PzmOdhnRmDq4ebvjkPLakg8Sh6Q4Vjfqw6JDL1onEhnMdKFV6aKV5zHCk7j35gmZCgiKAbUjhHJhYoS\/ZwAPRll2j7h5cztHMuExmZOi2I0W+mEJdxF+9CU9dkMTdQFeRf12rb1TB8x2xPXq\/gT9S2E2NYlI5r4ESgvYBEHn58noxsOe8+u0fAIcUYefC+HlQJEJGWLIZ1714QGaNUFKJ3jeC3FMY9xfFgatqCnObRd+TLGPYn6Lwc\/BmQlGHlGPrVVqSQPfHTSRc+UtAqmlbRNEL+qoBcvkE7rrpcFzx44z2cBLiXn8jSAArwyHnI2+chb5mPXFRBnhyC3hMWUX4TOogzN+4fu+Tm+hqmnl3bmC3srdL2hCLy2Nqei65z62OoRvFz+Y1WJL2mCn8s7Bk3lEawsk5pQZ4pgs418z0kX7JglKGPj6C\/LCNRUxa\/S8C3IIsc0Qe7JIQEZvvdBYoLQVum8qmiMJR+2yTg95loNVA\/wysNHoLWvC3NudcvR9pKo7JCtt0F8k\/RJJcty7PxMfKWy7T9idlA2S\/XUIEuGRouMPji3fC+CMZaJjKR0+b8oXxRaQ31Y6gvIs8pEF2\/Thc99d5YOnQgXcIG6CiajKDJLjQZa6omkLtWCkkBcTGiCbzmAhn67kzJnMvDknSF6KJoUjBds2C7ol96ldy9JZ\/i75Kdg4J+Md7z\/ZInuCqszC3guQ4aRQurhYYib0yDhUWzaziK+hJ0bdD2lyGoDxOYs7H6HVMvMcqqZGgDQgrB\/XDvz+aFCda9TBVJVZHbGOyr4r9WRuImy0dS0AJSKuD+XQT1ITeG\/RKtsGi33i3b31mHpXX4goQncuQyi2vylHmWhZ\/EuGOL6P\/0acfje++FRdr3QvggbqpEIROWj8i8cI7\/XEeXr5TBy2YUq1CWx\/dp20nAs5tmW9Gw7Ebq4SkyMKBEG6EwREgPiZAr6qhvdkOzWBPAWf3a8QhCEqWb28FJCtAt27+VoJ8sI843CZ9OCPOHvqy0OHRsNhvw+DGQmkxyeTUkvwKyKHcf72NPJJ3uRdNPE6z7gAKi2ZRtIri31PC7oiY3Ig+mzoPH92vnBZLlVHEPRGtAiVbJ4I\/Ok+0vTtGnjqJXeqi3IHkFh8mB+Ti4iLQDV2zQeYu6DvBaQj1AT+1o+u\/RCDTF37Yb\/y+j8LhuGfz8gBLNdAMunxh+L25F2pPwwBhPZQjLR\/TGC2To61neUX210OgS0vNl8EcJem0Z2cP91pAgXATfPdfgezM9iovwPaPo70rBnfcTAWt8K+64HbS\/E1x1dt\/YuBvY7aZwt7MCj48ZX7B8H7mFQliYP92rjMQVJCogZX+QacRhnel+iVJYIdt\/06\/ta8rIxWNhDVc8Ec9CFX2PoLdVw1hx+ytaEGJRzRnIV+jCR1aRN0TICocUJicOOoiqaDIPOXmUwt8j9OxDgNQBgi\/OYn8QtJj5XbK\/d0JQeb0b5AFMmg0E1CHiYaSbwTUIukmJZ8wjysrI9ChFkFUN9szhEnBJyE3o6NOOzyoau9wYQZ0iCejxSbi7mz8nSfj6l6zVtg90yfCO\/YwLxefL8NB67Xwz8MXM888D\/G40XMO\/B39DLRRSjGbwMyORXdv7tOOPDjlew2fHT20D1Qg59c8seiK67YYpK8geWHyMuAZ6xxj6FgkWo8g0caowiyp\/vD8swCNSsK7NZvNGWPDJUXa9qIKcOZa5EwKSLaA9UZATs5XvsxcsRQbA5TW0YSKRL3dHzpMdvwBeebl2ri+g\/1VETp0i2zmqo+rhpZco710tNFpJpTZDsFPRzpkCqgJcpaeUtrF9vp9B\/GbjNpSRaAQ+J3jXSvSa3Xuu83MN1Lcgj+qn46pRPen513FjOtMylvymPJVFzxB0SX1StYvMZSeCkwrISZOWJwJh9ioTuubPuTrqK7gHV+EsYGBjdn3mMmaWZA+eLtn+pT7tuKIFOW9kYtZQQpKszAc52zNzJcXryJ+C+l0XJiomn99s7Wn6FoTrF4dmFPfaUq2skggJ7FghgxsPxXv6sO608YjspnyF\/LEqJG9qoGOT8mzwoPsaeNPY1ZovkZgcL+mV0IaqR0PC5SrZvinBndNAt8aTMqqz6WMBTlxA+9EAI0SqwRqcZtPy0Omshzx4O8ZdbQrHJeydhR5Ebd\/LZppFVSm9dRT9WTaDljZbRKOhYOKzK\/zu33oF37OPSYxQpM93l8Lnp7Qo0qwC51SvxvTXSzVcz4tgYt3nXNmcleKPkbeNoXc3zzSTjRnde7H3tKS4zzdCkb7JFS2iKuqLuOev04UrlwnJjXM0IlRx+2FJuk2hG0+UdeWJpnuZYN3HZO5HvEJ2\/jhBPzJpyjq\/mWd\/wbOn4AZta+\/Xjr\/fpMR5Zc2phGtZKARXXCnbblX024U918M1D1\/XIO4AaOWPHtiZNa\/QKZ6UTxFBT57i+h1LWP4zQvGUEu7YdO\/SL+JRHH54docLgpa6ZctIgl9VR4ez4n066cZLyrg3rtOFr+0Vkp4pCsnlZWSuoO0khz5nLNRDj6b3bKct4Tvd9XJ1lBietF7bHt0r+DX7MQPcK3gFOU+23+nhH+MQL9O5jpmt2VKh49l+UwO+U5oUd8vjjCmqMe4\/+7XjrDOERk8YS\/F0Ewf537OVAn5\/LLKlZGsUmVivONXrYLufD\/dqDWEAZmV0+ym+b4TGuSVkSW3STNNsGQAnQtqvbvVC5P130H7uOnX\/ILL9JxCW3Uz+zND4FDbt0wVBBfUptd0AXdDoR\/7k4NFMmmGsoxqjz1ynbY85Q4Z\/lm9vOejGsNi2sRroV94chcTO5hlQzYK93mcZs0OzsEJ8thxplez4RZ+2v6aIu9KH1AaX37geokawFv59nbb\/dqUMfWPyEqQl4++NXt6CLBiZokifzjGGI037kOXBJRVcZTfycuCm\/Q5MZwvUuxhc28fCl1SInjM2xzGTWXiuS0j6lfensFT29NybFsxLawQb12vHGy4Itcd8Lk7NEwhNjWs9QL92nBUR\/\/zl3H03wGz9vOsgGlB0M8iSGQog3luNck2w9uG+bVSibtkysk473qjo15uzpWf7NbmFsEHbTlbkHTtDFYin19Dv9unCtUp8SZds+9lUXsE67Ty3gD6hNqk4XdMODHfQehe6UxDUq94UI8+r7un+ZCkZrjVCPrtB2\/6uS4avbd7Qldr+oAT39hhePLZ3fChzg3VHBW4GuHO2bpOglyiFbhn67OXa8dfzkTc3C05+4zmkVIC+z2jHsi4ZvHk8kz8UsvOX6DEtSvX8xjSnvRxmVWcdk6mz193mQushPe9S7XzvRbJ91\/4Om81Zrpho9KYa\/kkRMi+dgyuYPXx8j+JWyODV67Tjs\/OQl40E9zDec8JANYIFBWTtem0\/T+HSGL7\/chnaK7P+Uu08toQ+XtDzyshLxkjeKcL75uDC+YOlIJ8J1gyuYXjiD17bpx2faUVW725agjHLgKyEoK\/8ayuyMLRR0tRBsUy0eoz0\/PXa8S1FrxL4VYiNRSco6bME3wVS8XsPeB8jLoGfPZ+7xppmir7TVH55jydyKKvCqQ2ia\/q042eC\/l7RGsgDElhShqOrU5cy8SXEjcJ3umRwGEWWzCHO055NYixm8B1\/ov3RLbinjey5jMU1Ql30B5TRKzbovGecz+7tmWvjBNJ+xp5RwD2ssXcuFSnUq+jnJFSOi6abGJhIE5EW0BcL0tr0RpegWsYdJ+gLgb79tsxzK0u2\/6ZP2\/+lBfnQaLAso7k8LNcorFHkSmpvrFJ6XAk5uTbJuswFP0Wp4J7p4Zl1\/F\/Wa\/sdKXIX6C4HZUWOFvxJRdyxLmsLpujf9mnrpcsZ2fqpcE9PZ6VKWCKki9dr+1vSGXdbfAEpJSQ\/XiHD37RGqvcDy8GjSET9XaMUn11Ejk+mKO87FQ\/iFHe23Nbo045nFpDlY5NKI4+iPkLmFZHngzx\/TzvAUQ91uacqw6Ihz0m\/gKD5TNFXKN8wRG1zecJ93WNwN4JL4MrIYwR5TP63BGVs6nrouVsqgm7I3ds5nz8QEdIrlVU19Lsl5EHNiZxZNn\/SgjyqSuEzA\/CirLlG2htqtnfHiDR\/RiEtIa6G\/mSFDJ4\/l33q0\/aFFeScEdQ3CWcahRZtKzbpU69YJt9OxtD9Su3I143C0MdGaH9xC+5vxmauNz+Ve6kDSnSejGxZqy3dQvrVAixsTCrmJ+MTJupDDzE5OkaOnpD0\/BpDHR3vaNOCO26M4oUiIx\/46AwJs3nqhyBHl5APzzxREBqpbkM+A3zzYGmk6o4kwcorLZwvu7cpvG0upv0PeWC6Tud3gv6HoJOvnAhEM81spVPMbIUblXgUf1uZ9HOqyFJIN4J7vtw16vAfzKpt6hTWhsvWKPrm7SRZX7sp3Ke0gkSj+B920vmlrEuP349z6AeU6OUydEcNXumhMUUhw3gUTSq451dp\/7CE4Lf06YJTFM7OUkiiSQNRFK7MknCLM81cZa9isNzk82mWI9V0rNFYyHF6yp\/Y\/Mgw46f7l4om6OZQcbUeI2+o42vRfiSl5hb+K2TrdxPoAnaUwgRQMk1cziXgpxpLWTmjvEekZHW2XvdJbWt\/PdRn40pPN07zVx2thYauMnYw3cNHlGDlA2e5EnXL4MY6urEyUTRuRtbw7TQimgeSFJEoylJaJs8ezXZmS7MuwVkZnNd3yc7BjSGgr\/nawgvYsWEUXT8PiZm0xKdpe25SA0w3xQBNikhcQ3eX8K89W26rrWH\/833ymdcLZfCaGv5d5dBecfKi73gUTcu4N\/Zpx+uDOxGtasFV0j0z1DUKVtmQw39FgkAkM81cdQlpFzR6BV9Gv1RDtzSni+RlZ0pIEdKVCJrSut9jPXcNz5fBH6XwkfIsx8x0otUtg9dU4TkN9NZsSdN0kw1umiane+SfNdCkhHtgK+7Ns72ms2ykGlkj1elPoKdpHVPTWqZ0mvK7e617yj63T6vhEVmeTRl9axXdlvnFDZ1h2xuhcIHs+GONZNlu9N81LHSOm9YLpkw0npy8v7mFNN6TsBJEaKwGr7pAhr6eB\/THb5Jxi6zwmt34z2e9AKXpGKdrcrnXtlqQWNFtDXT5y2T4p1PFI7LPTHn+ZTzTvOkmzhIsVzH0oVF0Y0uwFiafQ22giUPf36cdy4FnZes2fdN7GiXEp3Dt+ey4XWcbK8ny37pkaFjQLxQRbd6+gK8HC+EFa7VtodCoZudmrzFDcCF1X+5wKOcs7x9BNxcnjtdPPl8zuU4TltbgD6rIslH8ZRHQvGieiUamU6W0qE7qW1hECsWQArMkD7zHE9+1xzWd7Wvi2h9cVXEPplb1LWUkKiHFfE1TESmFWSMt7fledUBb87qnElKohBmm+dE+zP98oXGXDN2eIu+u4MY\/P3nbQBmy6X9FXiU7B7tl8C2KPm43fi0w2hL2IyqEDsjS9MRMcgGNQIqIq2Tvq6LfqMPTVsrgZVOuvcuelN2yZWSFDL1kDN7u4O5sWy7OsvWzgZ1k20rzvoiFpm2N4q+u4Z\/+Chn63+nW+Qlamnz+S0gxy1trmc5VCsdWf+0Y\/pYFSKE0aU1aAYnLuJYyDJRxZ4TaYHuc66ILq5Q2ZqVhZu1uLQlnSRzyBQVpyfY323YhQqJ23PEx8UtvY3A0HzP5tW5eM5fuo\/pCbrmskMGdAm\/O1uMVytl53nPMSMu+LC1V3EWy\/c4LZOiVKZw1GiZqaAn756KJdA2fX1uycj5x1rcwO5bIoz\/dib4uZWi8rFYDjfNjzI9zLq+JY9GKzRLu+eTKg8G3VPHH1SYFY6vhhrljXDQCI2EWzVf8xAyaZrGMwYRCbTbB1JAhvP2SPtqfUEGWTMqzSceCAP4Wsul\/Ga8ZLiJDvwIuXKeLPlAjPTeFsx1ysofFBajEoVpDMCFQUnSnR+8U5DuKbFgh26+DiVSJ6ayIfKnG+bL9Q5do+3+3Ii9T9FzQByuyqIREmXjhQzCWFN3t0Tsb8EOH9HXL0LXTbWvi\/MsfqvgbJ51\/HwV37zfTCf\/NSrRRdm\/boItWjKKf9Hg3xaLryfX59phwGIOho4ivyq\/LXFwsgIIOXj9G+xeKyAnNS58m9l8fuoTF5Rrpd6v4Y5pKOuc\/E816Ws3Ufbtppvnqy7XjA\/PgmdU9Zw3TanjIbZ5NLDDvBt0tg9cA16zTzjNq8KIUfZbAg4DFxezhlAfbayEeuiNF71L0JsFtVArf7JYtIzCRBxgj26v4G\/PY6VwXwk\/ce\/J\/4+P\/4PDEjP2hR3FrsoGX\/26DHrMIaien+KNAWgUXg1YFHanDnxoM\/Xp1mIke\/47ZThVPTsJcrwtPUPQkT9ShSEuIZ\/mGws4C0V01tt3yCqG6P9uas3V8CLQqO5jJW241n8MN+oCTE5KTBdo8UonxXpExjx+Mie88X7b936TxGPceorlVh6RgTc7onRw\/mHxDTJckF3r+ze3GnCnhbqptT7Xfs91uVtFBZbyA3dzP0Wyzj\/NtMYt2TZP74DUzm+3NdP1mZS2Nd8\/ZP2ZzDVVx07mcc93+TN+1X9nhGkp4bwxjaVbLbZpWOez9\/mxx\/j29Lw+2THezsA6wpbER3GaQpdnvrguxFt0M2rsfIjUL8RrfFoT1a7MVKePgtuAnX989xtIh2iLOMAzDMAzDMAzDMPYTi2EdokwV5J6pflFzkHimGMhUwfcZYyZTBHf3J0h\/T+IyU+3zbAPXhmEYhmEW1pFOnu8UFmHHb3FQDmXG1YGrOpIPnS\/DQ+N5UVlt9auU0iDtryMkI+KJbu6WbZ+abPH0Cv5KbTsxJXqtorEi3qGRottuY8cH98jzyb77E7p4Xivpmwtoh0fqBWhpwJe6ZfCavfKzss\/0KO4hdP5tBKc20FqElDx6W4nBT443Kp2FdZTv8xXaeWxK+nqQIkgao8UEv24Fwz\/rAbEZtcOH2E7BoUc788aGqb+gDR4+RmitXAR2wrXAtzL3KM07omxj8YOE9ENlRCJgN36oT4\/a0C1bRnJRWQquF3yDaFkH8raR7FnWgmMH\/hu98L5mAdoE0TIlbaPxtFai3iRTmDKwE\/\/E5cq3yMr55OKTp5UvBfcndNU83Bm7gVaEYfTnwCXZfs\/qSZq7lA20q4P4HaNZMb95OAaRYxC61ij02pA5bHB2Cg4hczhYJ\/Hz5a5RRa9qQFpD61W0Hnr7uWXN7984XvQv+esSImNoPSta2AbJ42GiacXSrFqAwBNq2ffW0HqouxRqda1pKgmzFNKsg1i3B18N70+H0VSQRz+fzieLoMunH2Mj1dASfSxb3rJ7rucjX5MnsHIMn9bQRh1Nd+C9oGf3adtJMrGcyjDBMu5rJiqE+m\/X0EigSCgDEgFnwpTr4c7K7tgIIJSD8U\/NhMdlzQw0ZE7rk+pZaZEIimP4MUf8o+Zt6\/j7F58CcnYVdQKFvMZVBZG8oeny6dzbMPaiptecxmKe5b2ejmfE8OhaWE9ZEIg8aAXXKkQX2Dg3wTLuR\/LFwWU6rk9ha27yJMEdevgV2nlstrDWLQe\/Vk8oKzwu9NObaJopyOMHlGhp5joG16rzIYqckmZ6V0DwyK0PZOuvNGuA2jxuqiTdlVD2OWWiHpWrBefv3H7tOC6v7XVgg3lhKVSIx9FdCruf75uGcsuqQNeALp4n98Y+GCZYxmz8whBM75LfDSv6nULWCqwROq8c5fGPytzBWASN2X26wMmNIGgyISicAR1HS3D14nDH+6cUodDUnh1Fr18mJHnaQGZdpZcq84GuZM\/BJFkZ3rSCdHh4SXOs6UDRE4oP+kt14QkxnF1taheWVWqIaqBFOK1B8pR7Yx8MEyxjlmzKbk4P1zSt+E0riKTIGQDzxltq+ce24soKSXYzuxR8Gemso4\/MbubcTXtcMQSmPFmXY4dcNSku5gCKtD29jHtofaLevCo6kqtCGsSj+xKl0HWAi8Dl4lNCukpIe5rViQLUo3lJX3XBQnzVNG6yYYJl3BdcN24B+R+M4EddsJAktG\/XpwA8J6vt7ZCnphOClFdDzV9nZTdzo0+PagXOyGvfxIir4e+MiH+evcdDczfl6KJMnHxm5W32yPuLmSETehRyeoWOpc0xp3vsDWa16Af0uIpHujNh9OXgkV4LXNIS9sfXQ+34p2\/Qzoflteht9JhgGfcxvVlH4d8x\/EuFWwsTIgHIX23Q49tF0NADUJ8Ufo\/LGlrkxe1EkScNKJEIGpE8KEYeVg+xH7I28t8\/T+7e0hNm4lieVSu9TNtPd+jSrJmElkLM6CtC4dNVdCgOkwBpjMSCXkCYLTwgVtYawv7WGVlagkdk3WMkQsTj+gX5dA1NgNhDowWZ79HlNmpMsIz7MY61EVyvkAhcn7thWb+yjjq7nghQZuyvHfLANFT2dB79i0d3RqFLMx49tUr7w8Nn9fElpJQ1xXDBKpMbIJtJlIm7vgBdFVyrD25mPILWIb6qW7bcDVxbCG5lHit7Yb92HJfFyu5xHKk3C64r0h1nzS9iiHeTbvMkN6xg8JYE\/WkxtIWXGoqiKy5WKuNJqYYJlnG\/qdfXMh9NFNIyQpylNwjytBIiitYrwU36b+DqMkIKjVbcAofmPQ2fqeN6iKvhG8A1mWCl+SxhsNrkgszdooiIR29aTNuPB5RIcZfn++MhreDme+QCgGO5Zy5ZjwbhvFLbTgQ9pxbarbnghso3XyHDfxgAJ+gVWUa0NECLuIcspuNsmHsvRsMEyzgA5LGkhOgXVfxdWV13H8wHecxPlALIY0MnA3F1QHHfAq7JTAwNF9+duUmJgUdnQpN3Y9j8ZQZ\/AyFh9bpMbFqonltETmyEzi1Zc1L5z7PltlqXkK6UbVeNoT8thbHlQzqFvnStnlBezT0u4ZvVNo9WVHCtKaQuiFIaoR+FkEy6C+0bDa2\/IoEkHI+uUMVttuD7IY0tzTlU41iC71HcKrZu6af9ByXkhaMo9SwfazNtpzk4PbOECjX8qCDXAcdXQ7frqBFcwcdtYdEjIT0+BO3RIkIdrtmYZZKTtQDrUZwiF8RAPbSAimtoouij+7X9WI8WHbJb0XrQFo2qqC8ij2qw6ykIV6uGnZgrqohAOqCL51VJX9qUEOYa6DDw3PW6cKmHSJHEozsKuKMS1FVRdchZl9N5aq9s\/\/XB0nbdMME64ixkEZI+lRtSeKFClJkwDxLcSxQe1AgzaK6G\/mCFDO4c0MV\/GCO9uYyclgXpH5Tgzy\/g5jcyIauhONz1ANeB2xo6H6d92r4kRp9WDcmZeR+9uIJ7U3NgqIGSBeQdoeefa8BFwNX7e6BZOoWvkTy1hFuSdfeJsoTYthLunc37UEdpZB2mPaQtIcF1BfBOy8kyl9C4f\/DhqaNX19CGy65n1g369XnfwkIQlm+EhNOtuwW+UwgfToF2RVen2cLhArg6epcn+hHAsqaOxA7pLuLKPsvTyraf1NDGGFrPX0kIxica3E6pBy\/srCt10aki6NYpxp2gMgRxjxJ\/KvvZo8SblHhAiTbnbdbgVa6pWW3e\/7HatP0xtJ5O9PJTQjIroC+9VDvnd+WLsg2zsIz70C3MbtqXM3RLP+23FHCPzKwkJ8i8rO5MPIo2BP3+RNUEva4Gr8ksIBGkNfOPNEJwcOMK2XL3ePsp8Bu0rT3JMtuzVvCUmnrmTUU1BMUlhXQ+0rab5MXA++eBVPd6tzRWC6NTHOM4\/dr5UIdflgmgAygj0XSRfM32AZAGmpaRkwX\/HISBHiXu5fBvi2WCZRw8ZLWlRPB9KtcU4ZH1LC0hTxItIFLD\/36Myo2qO0QErVD6VpX6cARt6UQQWvL\/OOTrhCqesjmkNCSpytkV5ISssoKEOJf\/Vh1+rmiFpnb2LrPeBDkvQjp1PLYmK3+ij\/3wY7mxsX5ie5IGYTu+X9v\/gSaLTkEFKXr0Dytl6ArQl5ZxC0bQRLKxW8V\/2cHvFErZMedBN591rH5ZhLT4ILwCshIY6GX66qyGCZZxL7E0q2Ml+OvrRG9u6lwtgM\/cp++vlrtG20Omd9olf9narx0\/KCDP8iFRdNyVrKH1BvptBF2u6MSyGlmVvUcdRAk64pHXrZTBW6bbtz7tiIrw2gSoh2D+Q3\/Db599hvCVfh2PgbkEiOCEAu79k\/3dVoQd+O\/1KJ\/1sCqbGCAGGnDHGHSvlqHh6fZhvbYfV0CeWUUl5IXpM\/q0\/bRuGfqVBd9NsIz7mOsyQSlR+FGV5M4YOSqFRrYYOPVQBPlaHrPJOwQLfCOGZ1ShkQXQ0xLEVfTnNcq\/h6yeluA\/q+2nNZAz62hDs6U4Y\/jvdTP066pSuHOStXIsROF3uqEBr860p1FEot24lwNfCXpDI\/ub90AtuLPNLl1aCFnzf3oIbU+N4fgGWg9xOZEGetVqGRq+ZJp9eDUkV+D6CEuQEoVGGRePwnnAP1nw3QTLuK\/jWNkauS7Z+pc+7bylA\/fAEXwcik1JvBPvFf0hgm5WNF\/onKI\/SJCoDRf54JIV5iNsIf3RarlrdJMSbyW4nHXkHUcTVXbhkRA3ooZsyGpo+dWTrZTgm+nH6LyxncFbFuNOH0OJECrw8s\/qgo\/U0eICXGGmQlgeaEEYxZ\/oid7RiYt2olGU15FA12cNKPbah56sNEUf1WtSirs6iObXUEoINfTv+nXRx7tk211mZZlgGfcxm8PdK4L\/j13whyzPiiLqBL3teIbuBFgD6rKbs0LrTVVGP5Cii5IQ75EaKh42ZK6mF8FfpaeUBhm8bQfpp8eyWb8RfL2V5KswsSh6UmzNo7g3yG21DdrRO4o+ayxULpUSEjUoLHDolTvRX1XDWkA3dYgOHQ3lrbYKuG342xPQGHUN9O4KQzdmFUX9VEIeSuGM3N2vxbfV0MeOoX43KhUk2oVvB+6y0WMYhmHcK5gPfxgxoERDk6yVU0GXydTT95uU+NZJY+BOSCe7SFO979WQzKbv31T7lMWb3LGzHH+nZrN\/zfsw03HNZh9mu\/+GYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiGYRiHM\/8fK+6gRQ5SBmgAAAAASUVORK5CYII=';\r\n\r\n  \/* ================= ENGINE (formulas from the Hajj Savings Calculator file) ================= *\/\r\n  var RETURNS = 0.13;       \/\/ fixed annual return\r\n  var INFLATION = 0.05;     \/\/ yearly cost inflation\r\n  var INDEXATION = 0.05;    \/\/ monthly premium rises by this much every year (always on)\r\n  var WA_NUMBER = '923223579770';\r\n  var LOGO_URL = 'https:\/\/insurancewala.pk\/wp-content\/uploads\/2025\/10\/logo-green-500-x-500-px.png';\r\n\r\n  var TYPES = {\r\n    hajj:   { name: 'Hajj', desc: 'Annual Islamic pilgrimage to Mecca', base: 2000000, add: 200000, approx: 'Minimum approx. PKR 2,000,000' },\r\n    umrah:  { name: 'Umrah', desc: 'Minor pilgrimage to Mecca', base: 300000, add: 100000, approx: 'Approx. PKR 300,000' },\r\n    ziarat: { name: 'Ziarat (Karbala)', desc: 'Visiting holy sites in Karbala, Iraq', base: 350000, add: 100000, approx: 'Approx. PKR 350,000',\r\n              note: 'Ziarat to Karbala is available from 2030 onwards' }\r\n  };\r\n  var TERMS = {\r\n    5:  { title: '5 Years', desc: 'Shorter term with higher monthly contributions' },\r\n    10: { title: '10 Years', desc: 'Longer term with lower monthly contributions' }\r\n  };\r\n  \/\/ Family members who travel together (same cost per person)\r\n  var FAM_MAX_TOTAL = 10;\r\n  function famCount(f) { return (f.self ? 1 : 0) + (f.spouse ? 1 : 0) + (f.father ? 1 : 0) + (f.mother ? 1 : 0) + f.kids + f.others; }\r\n  function famText(f) {\r\n    var p = [];\r\n    if (f.self) p.push('Self'); if (f.spouse) p.push('Spouse'); if (f.father) p.push('Father'); if (f.mother) p.push('Mother');\r\n    if (f.kids) p.push(f.kids + (f.kids === 1 ? ' Child' : ' Children'));\r\n    if (f.others) p.push(f.others + (f.others === 1 ? ' Other family member' : ' Other family members'));\r\n    return p.join(', ');\r\n  }\r\n\r\n  \/\/ Rs. 12.50 Cr \/ Rs. 12.50 Lac \/ Rs. 12,500\r\n  function fmtPKR(amount) {\r\n    amount = Math.round(amount);\r\n    var neg = amount < 0, a = Math.abs(amount), s;\r\n    if (a >= 10000000) s = 'Rs. ' + (a \/ 10000000).toFixed(2) + ' Cr';\r\n    else if (a >= 100000) s = 'Rs. ' + (a \/ 100000).toFixed(2) + ' Lac';\r\n    else s = 'Rs. ' + a.toLocaleString('en-US');\r\n    return neg ? '-' + s : s;\r\n  }\r\n  function fmtFull(amount) { return 'Rs. ' + Math.round(amount).toLocaleString('en-US'); }\r\n\r\n  function toWords(num) {\r\n    if (num === 0) return 'Zero';\r\n    var units = ['', 'One', 'Two', 'Three', 'Four', 'Five', 'Six', 'Seven', 'Eight', 'Nine'];\r\n    var teens = ['Ten', 'Eleven', 'Twelve', 'Thirteen', 'Fourteen', 'Fifteen', 'Sixteen', 'Seventeen', 'Eighteen', 'Nineteen'];\r\n    var tens = ['', '', 'Twenty', 'Thirty', 'Forty', 'Fifty', 'Sixty', 'Seventy', 'Eighty', 'Ninety'];\r\n    var r;\r\n    if (num >= 10000000) { r = toWords(Math.floor(num \/ 10000000)) + ' Crore'; if (num % 10000000 > 0) r += ' ' + toWords(num % 10000000); return r; }\r\n    if (num >= 100000) { r = toWords(Math.floor(num \/ 100000)) + ' Lac'; if (num % 100000 > 0) r += ' ' + toWords(num % 100000); return r; }\r\n    if (num >= 1000) { r = toWords(Math.floor(num \/ 1000)) + ' Thousand'; if (num % 1000 > 0) r += ' ' + toWords(num % 1000); return r; }\r\n    var w = '';\r\n    if (num >= 100) { w += units[Math.floor(num \/ 100)] + ' Hundred '; num %= 100; }\r\n    if (num >= 20) { w += tens[Math.floor(num \/ 10)] + ' '; num %= 10; }\r\n    else if (num >= 10) { w += teens[num - 10] + ' '; num = 0; }\r\n    if (num > 0) w += units[num] + ' ';\r\n    return w.trim();\r\n  }\r\n\r\n  \/\/ Years you can pick: at least 6 options, and as far out as the plan term (10-year plans reach 10 years)\r\n  function yearOptions(type, cy, term) {\r\n    var min = type === 'ziarat' ? Math.max(2030, cy + 1) : cy + 1;\r\n    var max = Math.max(cy + Math.max(term || 5, 6), min + 5), a = [], y;\r\n    for (y = min; y <= max; y++) a.push(y);\r\n    return a;\r\n  }\r\n  \/\/ The plan ends in cy + term, so that is the natural pilgrimage year\r\n  function defaultYear(type, cy, term) {\r\n    var o = yearOptions(type, cy, term), want = cy + term, best = o[0], i;\r\n    for (i = 0; i < o.length; i++) if (o[i] <= want) best = o[i];\r\n    return best;\r\n  }\r\n\r\n  \/\/ Cost of the trip, inflated to the pilgrimage year\r\n  function costs(type, travelers, years) {\r\n    var T = TYPES[type], base = T.base * travelers, add = T.add * travelers, mult = 1, i;\r\n    for (i = 0; i < years; i++) mult *= (1 + INFLATION);\r\n    return { base: base, add: add, inflation: (base + add) * (mult - 1), total: (base + add) * mult };\r\n  }\r\n  \/\/ Future value factor of 1 rupee saved at the start of every month for `years` years\r\n  function annuityDue(years) {\r\n    var i = RETURNS \/ 12, n = years * 12;\r\n    return ((Math.pow(1 + i, n) - 1) \/ i) * (1 + i);\r\n  }\r\n  \/\/ Future value of a monthly premium of Rs. 1 (rising 5% a year when indexed) paid for `years` years\r\n  function contribFactor(years, indexed) {\r\n    if (!indexed) return annuityDue(years);\r\n    var v = 0, t;\r\n    for (t = 1; t <= years; t++) v += 12 * Math.pow(1 + INDEXATION, t - 1) * Math.pow(1 + RETURNS, years - t);\r\n    return v;\r\n  }\r\n  \/\/ Value of contributions after y years (same basis as the headline, so the chart ends where the result ends)\r\n  function contribValue(monthly, indexed, y) {\r\n    if (!(monthly > 0) || y <= 0) return 0;\r\n    if (!indexed) return monthly * annuityDue(y);\r\n    var v = 0, t, yc = monthly * 12;\r\n    for (t = 1; t <= y; t++) v += yc * Math.pow(1 + INDEXATION, t - 1) * Math.pow(1 + RETURNS, y - t);\r\n    return v;\r\n  }\r\n\r\n  \/\/ S: { type, year, travelers, current, monthly, index, adhoc }, cy: current year\r\n  function project(S, cy) {\r\n    var years = S.year - cy, c = costs(S.type, S.travelers, years);\r\n    var fvCurrent = S.current * Math.pow(1 + RETURNS, years);\r\n    var fvContrib = contribValue(S.monthly, true, years);\r\n    var fvAdhoc = S.adhoc > 0 ? S.adhoc * Math.pow(1 + RETURNS, years) : 0;\r\n    var total = fvCurrent + fvContrib + fvAdhoc, gap = c.total - total;\r\n    var needed = c.total - fvCurrent - fvAdhoc;                       \/\/ what the monthly premium has to build\r\n    var required = Math.max(0, needed) \/ contribFactor(years, true);    \/\/ starting monthly premium (rising 5% a year) that reaches the target fund\r\n    var extra = required - S.monthly;                                   \/\/ above (+) or below (-) the current monthly premium\r\n    var scratch = c.total \/ contribFactor(years, true);                 \/\/ monthly premium needed starting with no savings\r\n    var lumpOnly = Math.max(0, needed) \/ Math.pow(1 + RETURNS, years);  \/\/ one-time amount today that reaches the target with no monthly premium\r\n    var lumpExtra = gap > 0 ? gap \/ Math.pow(1 + RETURNS, years) : 0;    \/\/ one-time amount today that closes the gap on top of the current plan\r\n    var schedule = [], t, idx = 0;\r\n    for (t = 1; t <= years; t++) { schedule.push({ year: t, monthly: required * Math.pow(1 + INDEXATION, t - 1) }); idx += Math.pow(1 + INDEXATION, t - 1); }\r\n    var paidCurrent = S.monthly * 12 * idx, paidRequired = required * 12 * idx;           \/\/ premiums paid over the whole plan\r\n    var returnsCurrent = total - S.current - S.adhoc - paidCurrent;                        \/\/ growth earned at the current plan\r\n    var reached = Math.max(c.total, fvCurrent + fvAdhoc);                                  \/\/ fund reached with the required premium\r\n    var returnsRequired = reached - S.current - S.adhoc - paidRequired;                    \/\/ growth earned with the required premium\r\n    var series = [], y;\r\n    for (y = 0; y <= years; y++) {\r\n      var a = S.current * Math.pow(1 + RETURNS, y), b = contribValue(S.monthly, true, y), d = S.adhoc * Math.pow(1 + RETURNS, y);\r\n      series.push({ year: y, total: a + b + d, current: a, contrib: b, adhoc: d, target: c.total });\r\n    }\r\n    return {\r\n      years: years, cost: c, fvCurrent: fvCurrent, fvContrib: fvContrib, fvAdhoc: fvAdhoc, total: total, gap: gap,\r\n      needed: needed, required: required, extra: extra, scratch: scratch, lumpOnly: lumpOnly, lumpExtra: lumpExtra, schedule: schedule, paidCurrent: paidCurrent, paidRequired: paidRequired, returnsCurrent: returnsCurrent, returnsRequired: returnsRequired, reached: reached, pctIncrease: S.monthly > 0 ? Math.round(extra \/ S.monthly * 100) : 0,\r\n      pctOfTarget: c.total > 0 ? Math.min(100, Math.round(total \/ c.total * 100)) : 0, series: series\r\n    };\r\n  }\r\n\r\n  \/\/ Slider ranges: always wide enough to reach the target fund\r\n  function ceilTo(v, u) { return Math.ceil(v \/ u) * u; }\r\n  function limitsFor(S, cy) {\r\n    var years = S.year - cy, c = costs(S.type, S.travelers, years);\r\n    var mMax = Math.max(100000, ceilTo(c.total \/ contribFactor(years, true), 10000));\r\n    var sMax = Math.max(5000000, ceilTo(c.total, 1000000));\r\n    var sStep = sMax <= 5000000 ? 50000 : sMax <= 20000000 ? 100000 : 500000;\r\n    return {\r\n      monthly: { min: 0, max: mMax, step: mMax <= 100000 ? 1000 : mMax <= 500000 ? 5000 : 10000 },\r\n      current: { min: 0, max: sMax, step: sStep },\r\n      adhoc: { min: 0, max: sMax, step: sStep }\r\n    };\r\n  }\r\n\r\n  \/* ================= UI ================= *\/\r\n  var CY = new Date().getFullYear();\r\n  var S = {\r\n    step: 1, type: 'hajj', year: defaultYear('hajj', CY, 5), travelers: 1, term: 5, current: 0, monthly: 10000, adhoc: 0,\r\n    fam: { self: true, spouse: false, father: false, mother: false, kids: 0, others: 0 }, name: '', phone: ''\r\n  };\r\n  function currentTitle() { return 'Current ' + TYPES[S.type].name.split(' ')[0] + ' savings'; }\r\n  var R = null;                                  \/\/ latest projection\r\n  var chartVis = { total: true, target: true, current: true, contrib: true, adhoc: true };\r\n  var chartIdx = -1;\r\n\r\n  function $(sel, ctx) { return (ctx || root).querySelector(sel); }\r\n  function $$(sel, ctx) { return Array.prototype.slice.call((ctx || root).querySelectorAll(sel)); }\r\n  var reduceMotion = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n  var ICON_WA = '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z\"\/><\/svg>';\r\n\r\n  function normPhone(v) {\r\n    var d = String(v || '').replace(\/\\D\/g, '');\r\n    if (d.indexOf('0092') === 0) d = d.slice(4);\r\n    else if (d.indexOf('92') === 0 && d.length > 10) d = d.slice(2);\r\n    if (d.charAt(0) === '0') d = d.slice(1);\r\n    return d.slice(0, 10);\r\n  }\r\n\r\n  \/* ---------- markup ---------- *\/\r\n  function radio(field, value, inner, checked, cls) {\r\n    var id = 'hj-' + field + '-' + value;\r\n    return '<div class=\"iw-opt\"><input class=\"iw-in\" type=\"radio\" name=\"hj-' + field + '\" id=\"' + id + '\" value=\"' + value + '\" data-f=\"' + field + '\"' + (checked ? ' checked' : '') + '>' +\r\n      '<label class=\"' + cls + '\" for=\"' + id + '\">' + inner + '<\/label><\/div>';\r\n  }\r\n  function typeCard(k) {\r\n    var T = TYPES[k];\r\n    return radio('type', k, '<span class=\"iw-radio\" aria-hidden=\"true\"><\/span><span class=\"iw-plan-main\"><strong>' + T.name + '<\/strong><small>' + T.desc + '<\/small>' +\r\n      (T.note ? '<small class=\"hj-note\">' + T.note + '<\/small>' : '') + '<\/span><span class=\"iw-plan-price\"><small>' + T.approx + '<\/small><\/span>', S.type === k, 'iw-plan');\r\n  }\r\n  function moneyField(key, title, hint, extra) {\r\n    var L = limitsFor(S, CY)[key];\r\n    return '<div class=\"iw-field\"><label class=\"iw-label\" for=\"hj-' + key + '\" id=\"hj-' + key + '-lt\">' + title + '<\/label>' + (hint ? '<p class=\"iw-hint\">' + hint + '<\/p>' : '') +\r\n      '<div class=\"iw-phone\"><span>Rs.<\/span><input class=\"iw-input\" id=\"hj-' + key + '\" data-m=\"' + key + '\" type=\"text\" inputmode=\"numeric\" autocomplete=\"off\" value=\"' + S[key].toLocaleString('en-US') + '\"><\/div>' +\r\n      '<input class=\"hj-range\" id=\"hj-' + key + '-r\" data-r=\"' + key + '\" type=\"range\" min=\"' + L.min + '\" max=\"' + L.max + '\" step=\"' + L.step + '\" value=\"' + S[key] + '\" aria-label=\"' + title + ' slider\">' +\r\n      '<div class=\"hj-rl\"><span id=\"hj-' + key + '-min\">' + fmtPKR(L.min) + '<\/span><span id=\"hj-' + key + '-max\">' + fmtPKR(L.max) + '<\/span><\/div>' +\r\n      '<p class=\"hj-words\" id=\"hj-' + key + '-w\"><\/p>' + (extra || '') + '<\/div>';\r\n  }\r\n  function switchRow(field, title, desc) {\r\n    var id = 'hj-' + field;\r\n    return '<div class=\"iw-opt\"><input class=\"iw-in\" type=\"checkbox\" role=\"switch\" id=\"' + id + '\" data-f=\"' + field + '\"' + (S[field] ? ' checked' : '') + '>' +\r\n      '<label class=\"iw-row\" for=\"' + id + '\"><span class=\"iw-row-text\"><strong>' + title + '<\/strong><small>' + desc + '<\/small><\/span><span class=\"iw-sw\" aria-hidden=\"true\"><\/span><\/label><\/div>';\r\n  }\r\n  function famSwitch(k, title, desc) {\r\n    var id = 'hj-fam-' + k;\r\n    return '<div class=\"iw-opt\"><input class=\"iw-in\" type=\"checkbox\" role=\"switch\" id=\"' + id + '\" data-fam=\"' + k + '\"' + (S.fam[k] ? ' checked' : '') + '>' +\r\n      '<label class=\"iw-row\" for=\"' + id + '\"><span class=\"iw-row-text\"><strong>' + title + '<\/strong><small>' + desc + '<\/small><\/span><span class=\"iw-sw\" aria-hidden=\"true\"><\/span><\/label><\/div>';\r\n  }\r\n  function famStep(k, title, desc) {\r\n    return '<div class=\"iw-row iw-row-static\"><span class=\"iw-row-text\"><strong>' + title + '<\/strong><small>' + desc + '<\/small><\/span>' +\r\n      '<span class=\"iw-stepper\"><button type=\"button\" class=\"iw-sbtn\" data-act=\"f-' + k + '\" aria-label=\"Fewer: ' + title + '\">&minus;<\/button><output class=\"iw-kids\" id=\"hj-n-' + k + '\" aria-live=\"polite\">0<\/output>' +\r\n      '<button type=\"button\" class=\"iw-sbtn\" data-act=\"f+' + k + '\" aria-label=\"More: ' + title + '\">+<\/button><\/span><\/div>';\r\n  }\r\n  function famBlock() {\r\n    return '<div class=\"iw-field\"><span class=\"iw-label\">Who is going?<\/span><p class=\"iw-hint\">Add everyone who will travel. The cost is the same for each person.<\/p><div class=\"iw-stack\">' +\r\n      famSwitch('self', 'Myself', 'You') + famSwitch('spouse', 'Spouse', 'Husband or wife') + famSwitch('father', 'Father', 'Your father') + famSwitch('mother', 'Mother', 'Your mother') +\r\n      famStep('kids', 'Children', 'Sons and daughters') + famStep('others', 'Other family members', 'Siblings, in-laws or relatives') + '<\/div>' +\r\n      '<p class=\"hj-who\" id=\"hj-who\" role=\"status\"><\/p><\/div>';\r\n  }\r\n\r\n  function termCards() {\r\n    return Object.keys(TERMS).map(function (k) {\r\n      return radio('term', k, '<span class=\"iw-radio\" aria-hidden=\"true\"><\/span><span class=\"iw-plan-main\"><strong>' + TERMS[k].title + '<\/strong><small>' + TERMS[k].desc + '<\/small><\/span>', S.term === Number(k), 'iw-plan');\r\n    }).join('');\r\n  }\r\n  function screen1() {\r\n    return '<section class=\"iw-screen hj-screen\" data-s=\"1\"><h3 class=\"iw-h\" tabindex=\"-1\">Your pilgrimage<\/h3>' +\r\n      '<p class=\"iw-lead\">Tell us about your pilgrimage plans to get an accurate savings estimate.<\/p>' +\r\n      '<div class=\"iw-field\"><span class=\"iw-label\" id=\"hj-type-l\">Type of pilgrimage<\/span><div class=\"iw-stack\" style=\"margin-top:8px\" role=\"radiogroup\" aria-labelledby=\"hj-type-l\">' +\r\n        Object.keys(TYPES).map(typeCard).join('') + '<\/div><\/div>' +\r\n      '<div class=\"iw-field\"><span class=\"iw-label\" id=\"hj-term-l\">Plan term<\/span><div class=\"iw-stack\" style=\"margin-top:8px\" role=\"radiogroup\" aria-labelledby=\"hj-term-l\">' + termCards() + '<\/div>' +\r\n        '<p class=\"iw-note\" id=\"hj-term-n\"><\/p><\/div>' +\r\n      '<div class=\"iw-field\"><span class=\"iw-label\" id=\"hj-year-l\">Desired year for pilgrimage<\/span><p class=\"iw-hint\" id=\"hj-yhint\"><\/p><div class=\"hj-grid3\" id=\"hj-years\" role=\"radiogroup\" aria-labelledby=\"hj-year-l\"><\/div><\/div>' +\r\n      famBlock() +\r\n      '<div class=\"iw-field\"><span class=\"iw-label\">Target fund you need<\/span><dl class=\"iw-sum\" id=\"hj-cost1\" style=\"margin-top:8px\"><\/dl>' +\r\n        '<p class=\"iw-note\">Costs are inflated by 5% every year until your pilgrimage year.<\/p>' +\r\n        '<p class=\"hj-need\" id=\"hj-scratch\"><\/p><\/div>' +\r\n      '<\/section>';\r\n  }\r\n  function screen2() {\r\n    return '<section class=\"iw-screen hj-screen\" data-s=\"2\" hidden><h3 class=\"iw-h\" tabindex=\"-1\">Your savings<\/h3>' +\r\n      '<p class=\"iw-lead\">Tell us what you save today. The monthly premium you need updates as you change it.<\/p>' +\r\n      moneyField('current', currentTitle(), 'What you have already set aside') +\r\n      moneyField('monthly', 'Monthly savings contribution', '', '<p class=\"iw-note\">Your monthly premium increases by 5% every year to keep up with inflation.<\/p><p class=\"hj-need\" id=\"hj-need\" role=\"status\"><\/p>' +\r\n        '<div class=\"hj-usewrap\" id=\"hj-use-m-w\" hidden><button type=\"button\" class=\"hj-use\" data-act=\"use-m\" id=\"hj-use-m\"><\/button><\/div>') +\r\n      moneyField('adhoc', 'Adhoc premium', 'A one-time additional investment', '<p class=\"hj-grow\" id=\"hj-grow\" hidden><\/p><p class=\"hj-need\" id=\"hj-lump\" role=\"status\" hidden><\/p>' +\r\n        '<div class=\"hj-usewrap\" id=\"hj-use-a-w\" hidden><button type=\"button\" class=\"hj-use\" data-act=\"use-a\" id=\"hj-use-a\"><\/button><\/div>') +\r\n      '<p class=\"iw-note\">Projections use 13% fixed annual returns and a monthly premium that rises 5% every year.<\/p>' +\r\n      '<\/section>';\r\n  }\r\n  function screen3() {\r\n    return '<section class=\"iw-screen hj-screen\" data-s=\"3\" hidden><h3 class=\"iw-h\" tabindex=\"-1\">Your pilgrimage savings plan<\/h3>' +\r\n      '<p class=\"iw-lead\">Here is your personalised plan, based on the details you entered.<\/p>' +\r\n      '<div id=\"hj-res\"><\/div>' +\r\n      '<div class=\"iw-field\"><span class=\"iw-label\">Your name<\/span>' +\r\n        '<input class=\"iw-input\" id=\"hj-name\" data-f=\"name\" type=\"text\" autocomplete=\"name\" placeholder=\"Enter your full name\" aria-label=\"Your name\">' +\r\n        '<p class=\"iw-err\" id=\"hj-name-err\" role=\"alert\" hidden>Enter your full name so we know who to reply to.<\/p><\/div>' +\r\n      '<div class=\"iw-field\"><span class=\"iw-label\">Mobile number <span class=\"iw-tag\">(optional)<\/span><\/span><p class=\"iw-hint\">Add it if you would like a call back.<\/p>' +\r\n        '<div class=\"iw-phone\"><span>+92<\/span><input class=\"iw-input\" id=\"hj-phone\" data-f=\"phone\" type=\"tel\" inputmode=\"numeric\" autocomplete=\"tel-national\" placeholder=\"3223579770\" aria-label=\"Mobile number\"><\/div>' +\r\n        '<p class=\"iw-err\" id=\"hj-phone-err\" role=\"alert\" hidden>Enter 10 digits starting with 3, like 3223579770.<\/p><\/div>' +\r\n      '<\/section>';\r\n  }\r\n\r\n  var card = $('#hj-card'), nextBtn = $('#hj-next'), totalEl = $('#hj-total'), subEl = $('#hj-sub'), labelEl = $('#hj-label'), barEl = $('#hj-bar');\r\n  $('#hj-screens').innerHTML = screen1() + screen2() + screen3();\r\n\r\n  \/* ---------- live updates ---------- *\/\r\n  function renderYears() {\r\n    var opts = yearOptions(S.type, CY, S.term);\r\n    if (opts.indexOf(S.year) < 0) S.year = defaultYear(S.type, CY, S.term);\r\n    $('#hj-years').innerHTML = opts.map(function (y) { return radio('year', y, y, S.year === y, 'iw-chip'); }).join('');\r\n  }\r\n  function sumRow(k, v, cls) { return '<div class=\"iw-sum-row' + (cls ? ' ' + cls : '') + '\"><dt>' + k + '<\/dt><dd>' + v + '<\/dd><\/div>'; }\r\n  function costRows(c) {\r\n    return sumRow('Package cost today', fmtPKR(c.base)) + sumRow('Additional expenses', fmtPKR(c.add)) + sumRow('Inflation adjustment', fmtPKR(c.inflation)) +\r\n      sumRow('Target fund (total cost)', fmtPKR(c.total), 'iw-sum-total');\r\n  }\r\n  function sliderFill(el) {\r\n    var p = (Number(el.value) - Number(el.min)) \/ (Number(el.max) - Number(el.min)) * 100;\r\n    el.style.setProperty('--p', Math.max(0, Math.min(100, p)) + '%');\r\n  }\r\n  function words(key) { $('#hj-' + key + '-w').textContent = 'Pakistani Rupees ' + toWords(Math.round(S[key])) + ' Only'; }\r\n\r\n  function famUI() {\r\n    var f = S.fam, tot = famCount(f);\r\n    $('#hj-n-kids').textContent = f.kids; $('#hj-n-others').textContent = f.others;\r\n    $('[data-act=\"f-kids\"]').disabled = f.kids <= 0; $('[data-act=\"f-others\"]').disabled = f.others <= 0;\r\n    var full = tot >= FAM_MAX_TOTAL;\r\n    $('[data-act=\"f+kids\"]').disabled = full || f.kids >= 5; $('[data-act=\"f+others\"]').disabled = full || f.others >= 5;\r\n    $('#hj-who').textContent = tot + (tot === 1 ? ' traveller: ' : ' travellers: ') + famText(f) + (full ? '. You can add up to ' + FAM_MAX_TOTAL + ' travellers.' : '');\r\n  }\r\n  function applyLimits() {\r\n    var Ls = limitsFor(S, CY);\r\n    ['current', 'monthly', 'adhoc'].forEach(function (k) {\r\n      var L = Ls[k], r = $('#hj-' + k + '-r');\r\n      r.min = L.min; r.max = L.max; r.step = L.step;\r\n      $('#hj-' + k + '-max').textContent = fmtPKR(L.max);\r\n      if (S[k] > L.max) { S[k] = L.max; $('#hj-' + k).value = S[k].toLocaleString('en-US'); }\r\n      r.value = S[k]; sliderFill(r);\r\n    });\r\n  }\r\n  function recalc() {\r\n    S.travelers = famCount(S.fam);\r\n    applyLimits();\r\n    R = project(S, CY);\r\n    var yrs = R.years;\r\n    $('#hj-yhint').textContent = yrs + (yrs === 1 ? ' year' : ' years') + ' from now';\r\n    $('#hj-term-n').textContent = yrs === S.term\r\n      ? 'Your premiums and returns are shown for the full ' + S.term + '-year plan term.'\r\n      : 'Your plan term is ' + S.term + ' years, but your pilgrimage is in ' + yrs + (yrs === 1 ? ' year' : ' years') + '. The plan runs until your pilgrimage year.';\r\n    famUI();\r\n    $('#hj-cost1').innerHTML = costRows(R.cost);\r\n    $('#hj-scratch').textContent = 'Starting from zero savings, you would need about ' + fmtFull(R.scratch) + ' a month (rising 5% every year) to reach this target fund.';\r\n    $('#hj-current-lt').textContent = currentTitle();\r\n    ['current', 'monthly', 'adhoc'].forEach(words);\r\n    var g = $('#hj-grow');\r\n    if (S.adhoc > 0) { g.hidden = false; g.textContent = 'Your adhoc premium will grow to about ' + fmtPKR(R.fvAdhoc) + ' by your pilgrimage year.'; } else g.hidden = true;\r\n    var nd = $('#hj-need'), LM = limitsFor(S, CY);\r\n    nd.className = 'hj-need' + (R.extra > 0 ? ' is-short' : ' is-ok');\r\n    nd.textContent = R.extra > 0\r\n      ? 'To reach your target fund of ' + fmtPKR(R.cost.total) + ' you need ' + fmtFull(R.required) + ' a month, rising 5% every year. That is ' + fmtFull(R.extra) + ' more than you save now.'\r\n      : (R.required === 0 ? 'Your savings already reach the target fund. No monthly premium is needed.' : 'You are on track. ' + fmtFull(R.required) + ' a month is enough to reach your target fund.');\r\n    var um = $('#hj-use-m-w'), amtM = Math.ceil(R.required \/ 1000) * 1000;\r\n    if (R.extra > 0 && amtM <= LM.monthly.max) { um.hidden = false; $('#hj-use-m').textContent = 'Set my monthly premium to ' + fmtFull(amtM); } else um.hidden = true;\r\n    var lp = $('#hj-lump'), ua = $('#hj-use-a-w'), amtA = Math.ceil(R.lumpExtra \/ 10000) * 10000;\r\n    if (R.gap > 0) {\r\n      lp.hidden = false; lp.className = 'hj-need is-short';\r\n      lp.textContent = 'Prefer a one-time amount? Add about ' + fmtFull(R.lumpExtra) + ' today, on top of your plan, instead of raising your monthly premium.';\r\n      if (S.adhoc + amtA <= LM.adhoc.max) { ua.hidden = false; $('#hj-use-a').textContent = 'Add ' + fmtFull(amtA) + ' as a one-time amount'; } else ua.hidden = true;\r\n    } else { lp.hidden = true; ua.hidden = true; }\r\n    updateBar();\r\n    if (S.step === 3) renderResults();\r\n  }\r\n  function updateBar() {\r\n    if (!R) return;\r\n    if (S.step === 1) {\r\n      labelEl.textContent = 'Target fund needed'; totalEl.textContent = fmtPKR(R.cost.total);\r\n      subEl.textContent = TYPES[S.type].name + ' for ' + S.travelers + (S.travelers === 1 ? ' person' : ' people') + ', ' + S.year;\r\n    } else {\r\n      labelEl.textContent = 'Monthly premium needed'; totalEl.textContent = fmtFull(R.required);\r\n      subEl.textContent = 'Target ' + fmtPKR(R.cost.total);\r\n    }\r\n  }\r\n\r\n  \/* ---------- results ---------- *\/\r\n  var LINES = [\r\n    { k: 'total', label: 'Total pilgrimage savings', color: '#0d2840', w: 3.5, always: true },\r\n    { k: 'target', label: 'Target fund', color: '#c0183f', w: 2.5, dash: '7 6', always: true },\r\n    { k: 'current', label: 'Initial savings growth', color: '#8e44ad', w: 2.5 },\r\n    { k: 'contrib', label: 'Monthly contributions', color: '#1e8f4e', w: 2.5 },\r\n    { k: 'adhoc', label: 'Adhoc premium', color: '#c27c0e', w: 2.5 }\r\n  ];\r\n  function axisFmt(v) {\r\n    if (v >= 10000000) return (v \/ 10000000).toFixed(v % 10000000 === 0 ? 0 : 1) + ' Cr';\r\n    if (v >= 100000) return (v \/ 100000).toFixed(v % 100000 === 0 ? 0 : 1) + ' Lac';\r\n    return v === 0 ? '0' : (v \/ 1000) + 'k';\r\n  }\r\n  function niceStep(x) {\r\n    var mag = Math.pow(10, Math.floor(Math.log(x) \/ Math.LN10)), f = x \/ mag;\r\n    return (f <= 1 ? 1 : f <= 2 ? 2 : f <= 2.5 ? 2.5 : f <= 5 ? 5 : 10) * mag;\r\n  }\r\n  var CH = { W: 600, H: 380, L: 64, Rr: 14, T: 14, B: 40 };\r\n  function visibleLines() {\r\n    return LINES.filter(function (l) { return R.series.some(function (p) { return p[l.k] > 0; }); });\r\n  }\r\n  function chartSVG() {\r\n    var W = CH.W, H = CH.H, L = CH.L, pw = W - L - CH.Rr, ph = H - CH.T - CH.B, ser = R.series, n = ser.length, lines = visibleLines().filter(function (l) { return chartVis[l.k]; });\r\n    var maxV = 0; lines.forEach(function (l) { ser.forEach(function (p) { if (p[l.k] > maxV) maxV = p[l.k]; }); });\r\n    if (maxV <= 0) maxV = 100000;\r\n    var step = niceStep(maxV \/ 4), top = Math.ceil(maxV \/ step) * step;\r\n    function x(i) { return L + (n > 1 ? i \/ (n - 1) * pw : 0); }\r\n    function y(v) { return CH.T + ph - v \/ top * ph; }\r\n    var s = '<svg class=\"hj-svg\" id=\"hj-svg\" viewBox=\"0 0 ' + W + ' ' + H + '\" role=\"img\" aria-label=\"Projected savings of ' + fmtPKR(R.total) + ' by ' + S.year + ' against a cost target of ' + fmtPKR(R.cost.total) + '\">';\r\n    var v;\r\n    for (v = 0; v <= top + 1; v += step) {\r\n      s += '<line x1=\"' + L + '\" x2=\"' + (W - CH.Rr) + '\" y1=\"' + y(v).toFixed(1) + '\" y2=\"' + y(v).toFixed(1) + '\" stroke=\"#e3e9f1\" stroke-width=\"1\"\/>' +\r\n        '<text x=\"' + (L - 8) + '\" y=\"' + (y(v) + 4).toFixed(1) + '\" text-anchor=\"end\" class=\"hj-ax\">' + axisFmt(v) + '<\/text>';\r\n    }\r\n    var every = n <= 8 ? 1 : Math.ceil(n \/ 7), i;\r\n    for (i = 0; i < n; i += every) s += '<text x=\"' + x(i).toFixed(1) + '\" y=\"' + (H - 12) + '\" text-anchor=\"middle\" class=\"hj-ax\">Year ' + i + '<\/text>';\r\n    lines.forEach(function (l) {\r\n      var pts = ser.map(function (p, j) { return x(j).toFixed(1) + ',' + y(p[l.k]).toFixed(1); }).join(' ');\r\n      if (l.k === 'total') s += '<polygon points=\"' + x(0).toFixed(1) + ',' + y(0).toFixed(1) + ' ' + pts + ' ' + x(n - 1).toFixed(1) + ',' + y(0).toFixed(1) + '\" fill=\"rgba(13,40,64,.08)\"\/>';\r\n      s += '<polyline points=\"' + pts + '\" fill=\"none\" stroke=\"' + l.color + '\" stroke-width=\"' + l.w + '\" stroke-linejoin=\"round\" stroke-linecap=\"round\"' + (l.dash ? ' stroke-dasharray=\"' + l.dash + '\"' : '') + '\/>';\r\n    });\r\n    s += '<g id=\"hj-guide\" visibility=\"hidden\"><line id=\"hj-gl\" y1=\"' + CH.T + '\" y2=\"' + (CH.T + ph) + '\" stroke=\"#566680\" stroke-width=\"1\" stroke-dasharray=\"3 3\"\/>';\r\n    lines.forEach(function (l) { s += '<circle data-k=\"' + l.k + '\" r=\"4.5\" fill=\"#fff\" stroke=\"' + l.color + '\" stroke-width=\"2.5\"\/>'; });\r\n    s += '<\/g><rect id=\"hj-hit\" x=\"' + L + '\" y=\"' + CH.T + '\" width=\"' + pw + '\" height=\"' + ph + '\" fill=\"transparent\" style=\"touch-action:pan-y\"\/><\/svg>';\r\n    return { svg: s, x: x, y: y, lines: lines };\r\n  }\r\n  var chartGeo = null;\r\n  function readout(idx) {\r\n    var p = R.series[idx], h = '<strong>Year ' + p.year + ' (' + (CY + p.year) + ')<\/strong><ul>';\r\n    chartGeo.lines.forEach(function (l) { h += '<li><i style=\"background:' + l.color + '\"><\/i><span>' + l.label + '<\/span><b>' + fmtPKR(p[l.k]) + '<\/b><\/li>'; });\r\n    $('#hj-read').innerHTML = h + '<\/ul>';\r\n    var g = $('#hj-guide'); if (!g) return;\r\n    g.setAttribute('visibility', 'visible');\r\n    var gx = chartGeo.x(idx).toFixed(1), gl = $('#hj-gl'); gl.setAttribute('x1', gx); gl.setAttribute('x2', gx);\r\n    $$('#hj-guide circle').forEach(function (c) { c.setAttribute('cx', gx); c.setAttribute('cy', chartGeo.y(p[c.getAttribute('data-k')]).toFixed(1)); });\r\n    chartIdx = idx;\r\n  }\r\n  function renderChart() {\r\n    chartGeo = chartSVG();\r\n    $('#hj-chart').innerHTML = chartGeo.svg;\r\n    var vl = visibleLines();\r\n    $('#hj-legend').innerHTML = vl.map(function (l) {\r\n      var id = 'hj-lg-' + l.k;\r\n      return '<div class=\"iw-opt\"><input class=\"iw-in\" type=\"checkbox\" id=\"' + id + '\" data-s=\"' + l.k + '\"' + (chartVis[l.k] ? ' checked' : '') + '><label class=\"hj-lg\" for=\"' + id + '\"><i style=\"background:' + l.color + '\"><\/i>' + l.label + '<\/label><\/div>';\r\n    }).join('');\r\n    readout(chartIdx < 0 || chartIdx >= R.series.length ? R.series.length - 1 : chartIdx);\r\n    var svg = $('#hj-svg');\r\n    function move(e) {\r\n      var r = svg.getBoundingClientRect(), sx = (e.clientX - r.left) \/ r.width * CH.W, n = R.series.length;\r\n      var i = Math.round((sx - CH.L) \/ (CH.W - CH.L - CH.Rr) * (n - 1));\r\n      readout(Math.max(0, Math.min(n - 1, i)));\r\n    }\r\n    var hit = $('#hj-hit');\r\n    hit.addEventListener('pointermove', move); hit.addEventListener('pointerdown', move);\r\n  }\r\n\r\n  function renderResults() {\r\n    var r = R, ahead = r.gap <= 0, T = TYPES[S.type];\r\n    var h = '<div class=\"hj-hero\"><p>To reach your target fund of ' + fmtPKR(r.cost.total) + ' by ' + S.year + ', you need to save<\/p><b>' + fmtFull(r.required) + '<\/b>' +\r\n      '<small>every month, rising 5% every year<\/small>' +\r\n      '<p>You are saving ' + fmtFull(S.monthly) + ' a month now. Based on 13% fixed annual returns.<\/p>' +\r\n      '<div class=\"hj-prog\" role=\"img\" aria-label=\"' + r.pctOfTarget + ' percent of your target at your current plan\"><i style=\"width:' + r.pctOfTarget + '%\"><\/i><\/div>' +\r\n      '<p class=\"hj-pct\">At your current plan you reach ' + fmtPKR(r.total) + ' (' + r.pctOfTarget + '% of the target)<\/p><\/div>';\r\n    h += '<div class=\"hj-tiles\"><div class=\"hj-tile\"><span>Target fund<\/span><b>' + fmtPKR(r.cost.total) + '<\/b><small>total cost including inflation<\/small><\/div>' +\r\n      '<div class=\"hj-tile\"><span>Projected savings<\/span><b>' + fmtPKR(r.total) + '<\/b><small>at your current plan<\/small><\/div><\/div>';\r\n    if (ahead) h += '<div class=\"hj-gap is-ok\"><span>You are ahead of your target<\/span><b>' + fmtPKR(-r.gap) + '<\/b><small>more than the target fund<\/small><\/div>';\r\n    else h += '<div class=\"hj-gap\"><span>Savings gap at your current plan<\/span><b>' + fmtPKR(r.gap) + '<\/b><small>additional savings needed<\/small><\/div>';\r\n    h += '<div class=\"iw-field\"><span class=\"iw-label\">Your monthly premium plan<\/span><dl class=\"iw-sum\" style=\"margin-top:8px\">' +\r\n      sumRow('Monthly premium you save now', fmtFull(S.monthly)) +\r\n      sumRow('Monthly premium required', fmtFull(r.required), 'iw-sum-total') +\r\n      (r.extra > 0 ? sumRow('Extra needed each month', fmtFull(r.extra)) + sumRow('Increase on your current premium', r.pctIncrease + '%')\r\n                   : sumRow('Above what you need', fmtFull(-r.extra))) + '<\/dl>' +\r\n      '<p class=\"iw-note\">' + (r.extra > 0 ? 'Save the required amount every month to reach your target fund.' : 'You can keep your current premium, or lower it to the required amount.') +\r\n      ' The required amount is your starting premium. It rises 5% every year. Your current savings and adhoc premium are already counted.<\/p>' +\r\n      '<details class=\"hj-det\"><summary>See how the required premium grows<\/summary><div class=\"hj-tbl\"><table><thead><tr><th>Year<\/th><th>Monthly premium<\/th><\/tr><\/thead><tbody>' +\r\n      r.schedule.map(function (s) { return '<tr><td>Year ' + s.year + ' (' + (CY + s.year - 1) + ')<\/td><td>' + fmtFull(s.monthly) + '<\/td><\/tr>'; }).join('') + '<\/tbody><\/table><\/div><\/details><\/div>';\r\n    h += '<div class=\"iw-field\"><span class=\"iw-label\">Two ways to reach your target fund<\/span><dl class=\"iw-sum\" style=\"margin-top:8px\">' +\r\n      sumRow('1. Monthly premium (rising 5% yearly)', fmtFull(r.required)) +\r\n      sumRow('2. One-time savings today, no monthly premium', fmtFull(r.lumpOnly)) + '<\/dl>' +\r\n      '<p class=\"iw-note\">You can also mix both. Your current savings and adhoc premium are already counted in each option.<\/p><\/div>';\r\n    h += '<div class=\"iw-field\"><span class=\"iw-label\">Where your fund comes from over ' + r.years + (r.years === 1 ? ' year' : ' years') + '<\/span><dl class=\"iw-sum\" style=\"margin-top:8px\">' +\r\n      sumRow(currentTitle() + ' today', fmtPKR(S.current)) + (S.adhoc > 0 ? sumRow('Adhoc premium today', fmtPKR(S.adhoc)) : '') +\r\n      sumRow('Monthly premiums you pay', fmtPKR(r.paidRequired)) + sumRow('Returns earned at 13% a year', fmtPKR(r.returnsRequired)) +\r\n      sumRow('Fund at ' + S.year, fmtPKR(r.reached), 'iw-sum-total') + '<\/dl>' +\r\n      '<p class=\"iw-note\">This uses the required monthly premium, rising 5% every year. At your current plan you earn ' + fmtPKR(r.returnsCurrent) + ' in returns.<\/p><\/div>';\r\n    h += '<div class=\"iw-field\"><span class=\"iw-label\">Target fund breakdown<\/span><dl class=\"iw-sum\" style=\"margin-top:8px\">' + costRows(r.cost) + '<\/dl><\/div>';\r\n    h += '<div class=\"iw-field\"><span class=\"iw-label\">Savings details<\/span><dl class=\"iw-sum\" style=\"margin-top:8px\">' +\r\n      sumRow('Plan term', TERMS[S.term].title) + sumRow('Years to pilgrimage', r.years + (r.years === 1 ? ' Year' : ' Years')) + sumRow('Pilgrimage year', S.year) +\r\n      sumRow('Type of pilgrimage', T.name) + sumRow('Travelling', S.travelers + (S.travelers === 1 ? ' Person' : ' People')) + sumRow('Who is going', famText(S.fam)) +\r\n      sumRow(currentTitle(), fmtPKR(S.current)) + sumRow('Monthly contribution', fmtPKR(S.monthly)) + sumRow('Adhoc premium', fmtPKR(S.adhoc)) +\r\n      sumRow('Expected returns', '13%') + sumRow('Premium increase', '5% every year') + '<\/dl><\/div>';\r\n    h += '<div class=\"iw-field\"><span class=\"iw-label\">Pilgrimage savings projection<\/span><p class=\"iw-hint\">13% fixed returns at your current plan. Tap or drag on the chart to see each year.<\/p>' +\r\n      '<div class=\"hj-chartbox\"><div id=\"hj-chart\"><\/div><div class=\"hj-legend\" id=\"hj-legend\"><\/div><div class=\"hj-read\" id=\"hj-read\"><\/div><\/div>' +\r\n      '<details class=\"hj-det\"><summary>See the numbers year by year<\/summary><div class=\"hj-tbl\"><table><thead><tr><th>Year<\/th><th>Total savings<\/th><th>Target fund<\/th><th>Initial savings<\/th><th>Contributions<\/th><th>Adhoc<\/th><\/tr><\/thead><tbody>' +\r\n      r.series.map(function (p) { return '<tr><td>' + (CY + p.year) + '<\/td><td>' + fmtPKR(p.total) + '<\/td><td>' + fmtPKR(p.target) + '<\/td><td>' + fmtPKR(p.current) + '<\/td><td>' + fmtPKR(p.contrib) + '<\/td><td>' + fmtPKR(p.adhoc) + '<\/td><\/tr>'; }).join('') +\r\n      '<\/tbody><\/table><\/div><\/details><\/div>';\r\n    h += ABOUT;\r\n    h += '<p class=\"iw-note\">This projection is an estimate based on fixed 13% returns and 5% yearly inflation. Returns are not guaranteed.<\/p>';\r\n    $('#hj-res').innerHTML = h;\r\n    renderChart();\r\n  }\r\n\r\n  var ABOUT = '<div class=\"iw-field\"><span class=\"iw-label\">About the Hemayah Takaful Pilgrimage Plan<\/span>' +\r\n    '<details class=\"hj-det\"><summary>What is covered<\/summary><ul class=\"hj-ul\">' +\r\n    '<li><b>Pilgrimage savings:<\/b> Build your savings for Hajj, Umrah or Ziarat with Shariah-compliant investments.<\/li>' +\r\n    '<li><b>Death benefit:<\/b> Your beneficiaries receive the greater of Sum Covered or Cash Value in case of your death.<\/li>' +\r\n    '<li><b>Accidental death benefit:<\/b> Additional coverage for accidental death during pilgrimage.<\/li>' +\r\n    '<li><b>Hajj-e-Badal benefit:<\/b> If permanently disabled, your nominee can perform Hajj on your behalf.<\/li>' +\r\n    '<li><b>Kafalat benefit:<\/b> Monthly income for your family in case of your death during the plan term.<\/li>' +\r\n    '<li><b>Takaful waiver of contribution:<\/b> Waives your contributions in case of disability due to sickness or accident.<\/li>' +\r\n    '<li><b>Additional term takaful:<\/b> Increases your takaful cover with additional death benefit.<\/li>' +\r\n    '<li><b>Surplus sharing:<\/b> Share in any surplus from the Participants\\u2019 Takaful Fund.<\/li><\/ul><\/details>' +\r\n    '<details class=\"hj-det\"><summary>Plan details<\/summary><dl class=\"iw-sum\" style=\"margin-top:6px\">' +\r\n    sumRow('Eligible age', '18 to 55 years') + sumRow('Minimum contribution', 'PKR 40,000 annually') + sumRow('Contribution payment term', '10 to 15 years') +\r\n    sumRow('Maturity age', '65 years') + sumRow('Fund acceleration contributions', 'Minimum PKR 40,000') + sumRow('Inflation protection', '5% annual increase in contributions and benefits') +\r\n    sumRow('Minimum sum covered', 'PKR 500,000') + '<\/dl><\/details>' +\r\n    '<details class=\"hj-det\"><summary>Key benefits<\/summary><ul class=\"hj-ul\">' +\r\n    '<li><b>Financial security:<\/b> Ensure you have the funds needed for your pilgrimage when the time comes.<\/li>' +\r\n    '<li><b>Wealth accumulation:<\/b> Your contributions are invested in Shariah-compliant funds for potential growth.<\/li>' +\r\n    '<li><b>Family protection:<\/b> Financial security for your loved ones with comprehensive death benefits.<\/li>' +\r\n    '<li><b>Pilgrimage assurance:<\/b> Peace of mind knowing your spiritual journey is financially secured.<\/li>' +\r\n    '<li><b>Risk mitigation:<\/b> Protection against unforeseen circumstances that could prevent your pilgrimage.<\/li>' +\r\n    '<li><b>Nominee benefits:<\/b> Your nominee can perform Hajj on your behalf if you are permanently disabled.<\/li>' +\r\n    '<li><b>Health protection:<\/b> Waiver of contributions in case of disability due to sickness or accident.<\/li>' +\r\n    '<li><b>Legacy planning:<\/b> Create a financial legacy while fulfilling your religious obligations.<\/li><\/ul><\/details><\/div>';\r\n\r\n  \/* ---------- steps ---------- *\/\r\n  function show(dir) {\r\n    $$('.hj-screen').forEach(function (sc) { sc.hidden = Number(sc.getAttribute('data-s')) !== S.step; });\r\n    $('#hj-pstep').textContent = 'Step ' + S.step + ' of 3';\r\n    [1, 2, 3].forEach(function (i) { $('#hj-pb' + i).className = S.step >= i ? 'on' : ''; });\r\n    $('#hj-back').hidden = S.step === 1;\r\n    barEl.classList.toggle('is-review', S.step > 1);\r\n    nextBtn.innerHTML = S.step === 1 ? 'Continue' : S.step === 2 ? 'See my plan' : ICON_WA + 'Send on WhatsApp';\r\n    if (S.step === 3) { renderResults(); $('#hj-name').value = S.name; $('#hj-phone').value = S.phone; }\r\n    if (dir) {\r\n      var vis = $('.hj-screen:not([hidden])');\r\n      if (vis) { vis.classList.remove('is-fwd', 'is-bwd'); void vis.offsetWidth; vis.classList.add(dir === 'fwd' ? 'is-fwd' : 'is-bwd'); }\r\n    }\r\n    updateBar();\r\n  }\r\n  function bringIntoView() {\r\n    var r = card.getBoundingClientRect();\r\n    if (r.top < 0 || r.top > window.innerHeight * 0.6) card.scrollIntoView({ behavior: reduceMotion ? 'auto' : 'smooth', block: 'start' });\r\n  }\r\n  function focusHeading() {\r\n    var h = $('.hj-screen:not([hidden]) .iw-h');\r\n    if (h) { try { h.focus({ preventScroll: true }); } catch (e) { h.focus(); } }\r\n  }\r\n  var pushed = 0;\r\n  function forward(step) {\r\n    S.step = step;\r\n    try { history.pushState({ hj: step }, ''); pushed++; } catch (e) {}\r\n    show('fwd'); bringIntoView(); focusHeading();\r\n  }\r\n  function goBack() {\r\n    if (pushed > 0) {\r\n      var before = pushed;\r\n      history.back();\r\n      setTimeout(function () { if (pushed === before) { pushed = Math.max(0, pushed - 1); S.step = Math.max(1, S.step - 1); show('bwd'); bringIntoView(); focusHeading(); } }, 450);\r\n    } else { S.step = Math.max(1, S.step - 1); show('bwd'); bringIntoView(); focusHeading(); }\r\n  }\r\n  window.addEventListener('popstate', function () {\r\n    if (pushed <= 0) return;\r\n    pushed--; S.step = Math.max(1, S.step - 1);\r\n    show('bwd'); focusHeading();\r\n  });\r\n\r\n  \/* ---------- WhatsApp ---------- *\/\r\n  function setErr(which, bad, el) {\r\n    var err = $('#hj-' + which + '-err');\r\n    if (err) err.hidden = !bad;\r\n    el.setAttribute('aria-invalid', bad ? 'true' : 'false');\r\n    if (bad) el.setAttribute('aria-describedby', 'hj-' + which + '-err'); else el.removeAttribute('aria-describedby');\r\n    (el.closest('.iw-phone') || el).classList.toggle('is-bad', bad);\r\n  }\r\n  function waMessage(name, phone) {\r\n    var r = R, T = TYPES[S.type], L = [];\r\n    L.push('Hello! I\\u2019m interested in a Pilgrimage Savings Plan:', '');\r\n    L.push('Name: ' + name);\r\n    if (phone) L.push('Phone: +92 ' + phone);\r\n    L.push('', 'Pilgrimage Details:', '- Type: ' + T.name, '- Year: ' + S.year, '- Travelers: ' + S.travelers + (S.travelers === 1 ? ' Person' : ' People') + ' (' + famText(S.fam) + ')', '- Plan Term: ' + TERMS[S.term].title);\r\n    L.push('', 'Financial Details:', '- ' + currentTitle() + ': ' + fmtPKR(S.current), '- Monthly Contribution: ' + fmtPKR(S.monthly), '- Adhoc Premium: ' + fmtPKR(S.adhoc),\r\n      '- Premium Increase: 5% every year', '- Expected Returns: 13%');\r\n    L.push('', 'Calculated Values:', '- Target Fund (Total Cost): ' + fmtPKR(r.cost.total), '- Monthly Premium Required (rising 5% yearly): ' + fmtFull(r.required), '- Premiums Paid Over ' + r.years + ' Years: ' + fmtPKR(r.paidRequired), '- Returns Earned At 13%: ' + fmtPKR(r.returnsRequired), '- Or One-Time Savings Today: ' + fmtFull(r.lumpOnly), '- Projected Savings At Current Plan: ' + fmtPKR(r.total));\r\n    if (r.gap > 0) L.push('- Savings Gap: ' + fmtPKR(r.gap), '- Extra Needed Each Month: ' + fmtFull(r.extra));\r\n    else L.push('- Ahead of Target By: ' + fmtPKR(-r.gap));\r\n    L.push('', 'Please contact me with more details about the Hemayah Takaful Pilgrimage Plan.');\r\n    return L.join('\\n');\r\n  }\r\n  function sendWhatsApp() {\r\n    var nameEl = $('#hj-name'), phoneEl = $('#hj-phone');\r\n    var name = nameEl.value.trim(), phone = normPhone(phoneEl.value);\r\n    var badName = name.length < 2, badPhone = phone !== '' && !\/^3\\d{9}$\/.test(phone);\r\n    setErr('name', badName, nameEl); setErr('phone', badPhone, phoneEl);\r\n    if (badName) { nameEl.focus(); return; }\r\n    if (badPhone) { phoneEl.focus(); return; }\r\n    phoneEl.value = phone; S.name = name; S.phone = phone;\r\n    var url = 'https:\/\/wa.me\/' + WA_NUMBER + '?text=' + encodeURIComponent(waMessage(name, phone));\r\n    var w = window.open(url, '_blank');\r\n    if (w) { try { w.opener = null; } catch (e) {} }\r\n    $('#hj-wa-link').href = url;\r\n    openModal();\r\n  }\r\n  var modal = $('#hj-modal'), lastFocus = null;\r\n  function openModal() { lastFocus = document.activeElement; modal.hidden = false; $('#hj-wa-link').focus(); }\r\n  function closeModal() { modal.hidden = true; if (lastFocus && lastFocus.focus) lastFocus.focus(); }\r\n\r\n  \/* ---------- events ---------- *\/\r\n  function clampMoney(key, v) { var L = limitsFor(S, CY)[key]; return Math.max(L.min, Math.min(L.max, v)); }\r\n  function setMoney(key, v) { S[key] = v; $('#hj-' + key).value = v.toLocaleString('en-US'); recalc(); }\r\n  root.addEventListener('click', function (e) {\r\n    if (e.target === modal) { closeModal(); return; }\r\n    var b = e.target.closest('[data-act]');\r\n    if (!b) return;\r\n    var act = b.getAttribute('data-act');\r\n    if (act === 'next') { if (S.step === 1) forward(2); else if (S.step === 2) forward(3); else sendWhatsApp(); }\r\n    else if (act === 'back') goBack();\r\n    else if (act.indexOf('f-') === 0 || act.indexOf('f+') === 0) {\r\n      var fk = act.slice(2), d = act.charAt(1) === '+' ? 1 : -1;\r\n      if (d > 0 && (famCount(S.fam) >= FAM_MAX_TOTAL || S.fam[fk] >= 5)) return;\r\n      if (d < 0 && S.fam[fk] <= 0) return;\r\n      if (d < 0 && famCount(S.fam) <= 1) return;\r\n      S.fam[fk] += d; recalc();\r\n    }\r\n    else if (act === 'use-m') { setMoney('monthly', clampMoney('monthly', Math.ceil(R.required \/ 1000) * 1000)); }\r\n    else if (act === 'use-a') { setMoney('adhoc', clampMoney('adhoc', S.adhoc + Math.ceil(R.lumpExtra \/ 10000) * 10000)); }\r\n    else if (act === 'close') closeModal();\r\n  });\r\n  root.addEventListener('change', function (e) {\r\n    var el = e.target, f = el.getAttribute('data-f');\r\n    if (el.getAttribute('data-s')) { chartVis[el.getAttribute('data-s')] = el.checked; renderChart(); return; }\r\n    if (el.getAttribute('data-fam')) {\r\n      var k = el.getAttribute('data-fam');\r\n      if (!el.checked && famCount(S.fam) <= 1) { el.checked = true; $('#hj-who').textContent = 'Keep at least one traveller.'; return; }\r\n      S.fam[k] = el.checked; recalc(); return;\r\n    }\r\n    if (!f) return;\r\n    if (f === 'type') { S.type = el.value; renderYears(); }\r\n    else if (f === 'year') S.year = Number(el.value);\r\n    else if (f === 'term') { S.term = Number(el.value); S.year = defaultYear(S.type, CY, S.term); renderYears(); }\r\n    else return;\r\n    recalc();\r\n  });\r\n  root.addEventListener('input', function (e) {\r\n    var el = e.target, key = el.getAttribute('data-m'), rk = el.getAttribute('data-r');\r\n    if (key) {\r\n      var v = parseInt(String(el.value).replace(\/[^\\d]\/g, ''), 10);\r\n      if (isNaN(v)) v = 0;\r\n      v = clampMoney(key, v);\r\n      S[key] = v;\r\n      var r = $('#hj-' + key + '-r'); r.value = v; sliderFill(r);\r\n      if (v >= limitsFor(S, CY)[key].max) el.value = v.toLocaleString('en-US');\r\n      recalc();\r\n    } else if (rk) {\r\n      S[rk] = Number(el.value); sliderFill(el);\r\n      $('#hj-' + rk).value = S[rk].toLocaleString('en-US');\r\n      recalc();\r\n    } else if (el.getAttribute('data-f') === 'name' || el.getAttribute('data-f') === 'phone') {\r\n      if (el.getAttribute('aria-invalid') === 'true') setErr(el.getAttribute('data-f'), false, el);\r\n    }\r\n  });\r\n  root.addEventListener('focusout', function (e) {\r\n    var el = e.target, key = el.getAttribute('data-m');\r\n    if (key) {\r\n      var L = limitsFor(S, CY)[key], v = Math.max(L.min, Math.min(L.max, S[key]));\r\n      S[key] = v; el.value = v.toLocaleString('en-US');\r\n      var r = $('#hj-' + key + '-r'); r.value = v; sliderFill(r);\r\n      recalc();\r\n    } else if (el.getAttribute('data-f') === 'phone') {\r\n      var p = normPhone(el.value); el.value = p; S.phone = p;\r\n      setErr('phone', p !== '' && !\/^3\\d{9}$\/.test(p), el);\r\n    }\r\n  });\r\n  root.addEventListener('keydown', function (e) {\r\n    var el = e.target;\r\n    if (!modal.hidden) {\r\n      if (e.key === 'Escape') { closeModal(); return; }\r\n      if (e.key === 'Tab') { var f = [$('#hj-wa-link'), $('#hj-modal-close')], i = f.indexOf(document.activeElement); e.preventDefault(); f[(i + 1) % 2].focus(); }\r\n      return;\r\n    }\r\n    if (e.key === 'Enter' && el.tagName === 'INPUT' && (el.type === 'text' || el.type === 'tel')) {\r\n      e.preventDefault();\r\n      if (el.getAttribute('data-m')) { el.blur(); return; }\r\n      if (S.step === 3) sendWhatsApp(); else nextBtn.click();\r\n    }\r\n  });\r\n\r\n  \/\/ Logo: fall back to the built-in copy if the site image cannot load\r\n  (function () {\r\n    var logo = $('.iw-logo');\r\n    function useFallback() { if (!logo.getAttribute('data-fb')) { logo.setAttribute('data-fb', '1'); logo.src = LOGO_FALLBACK; } }\r\n    logo.addEventListener('error', useFallback);\r\n    if (logo.complete && logo.naturalWidth === 0) useFallback();\r\n  })();\r\n\r\n  renderYears();\r\n  $$('.hj-range').forEach(sliderFill);\r\n  recalc(); show();\r\n})();\r\n<\/script>\r\n<\/div>\r\n<!-- ================= END INSURANCE WALA HAJJ SAVINGS CALCULATOR ================= -->\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Hajj savings calculator Plan your pilgrimage and see how much you need to save. Step 1 of 3 Estimated total cost &ndash; Back Continue One last step WhatsApp is opening with your plan filled in. Tap Send in WhatsApp so it reaches us. Our specialist will reply with your pilgrimage options. Open WhatsApp again Done<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"rs_blank_template":"","rs_page_bg_color":"","slide_template_v7":"","footnotes":""},"class_list":["post-5296","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.5 (Yoast SEO v28.7) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Hajj Savings Calculator Pakistan | Insurance Wala<\/title>\n<meta name=\"description\" content=\"Plan your Hajj savings in Pakistan. See how much to set aside each month with this free Hajj savings calculator.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/insurancewala.pk\/?page_id=5296\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Hajj Savings Calculator \u2013 Plan &amp; Save for Your Hajj Journey\" \/>\n<meta property=\"og:description\" content=\"Estimate your Hajj expenses and plan your savings with our Hajj Savings Calculator. Make your Hajj journey stress-free and financially prepared\" \/>\n<meta property=\"og:url\" content=\"https:\/\/insurancewala.pk\/?page_id=5296\" \/>\n<meta property=\"og:site_name\" content=\"Insurance Wala\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/share\/1ZDzV3aBDp\/?mibextid=wwXIfr\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-22T13:25:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/insurancewala.pk\/wp-content\/uploads\/2025\/11\/hajj-umrah.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"1200\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Hajj Savings Calculator \u2013 Plan Your Hajj Budget\" \/>\n<meta name=\"twitter:description\" content=\"Calculate your Hajj expenses and start saving smartly with our Hajj Savings Calculator. Make your Hajj journey financially stress-free and well-planned\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/?page_id=5296\",\"url\":\"https:\\\/\\\/insurancewala.pk\\\/?page_id=5296\",\"name\":\"Hajj Savings Calculator Pakistan | Insurance Wala\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/?page_id=5296#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/?page_id=5296#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/insurancewala.pk\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/logo-green-500-x-500-px.png\",\"datePublished\":\"2025-11-17T11:37:47+00:00\",\"dateModified\":\"2026-10-22T13:25:22+00:00\",\"description\":\"Plan your Hajj savings in Pakistan. See how much to set aside each month with this free Hajj savings calculator.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/?page_id=5296#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/insurancewala.pk\\\/?page_id=5296\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/?page_id=5296#primaryimage\",\"url\":\"https:\\\/\\\/insurancewala.pk\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/logo-green-500-x-500-px.png\",\"contentUrl\":\"https:\\\/\\\/insurancewala.pk\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/logo-green-500-x-500-px.png\",\"width\":500,\"height\":500,\"caption\":\"Smart Insurance for Tomorrow\u2019s Families\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/?page_id=5296#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/insurancewala.pk\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Hajj Savings Calculator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/#website\",\"url\":\"https:\\\/\\\/insurancewala.pk\\\/\",\"name\":\"InsuranceWala.pk\",\"description\":\"Smart Insurance for Tomorrow\u2019s Families\",\"publisher\":{\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/insurancewala.pk\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/#organization\",\"name\":\"Insurance Wala\",\"url\":\"https:\\\/\\\/insurancewala.pk\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/insurancewala.pk\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/cropped-logo-Green-800-x-500-px.png\",\"contentUrl\":\"https:\\\/\\\/insurancewala.pk\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/cropped-logo-Green-800-x-500-px.png\",\"width\":500,\"height\":368,\"caption\":\"Insurance Wala\"},\"image\":{\"@id\":\"https:\\\/\\\/insurancewala.pk\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/share\\\/1ZDzV3aBDp\\\/?mibextid=wwXIfr\",\"https:\\\/\\\/www.instagram.com\\\/insurance_walay.pk?igsh=MTRicGd3NjJndmJoMg&utm_source=qr\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/insurancewalay\\\/\"],\"email\":\"admin@insurancewala.pk\",\"telephone\":\"+92 3223579770\",\"foundingDate\":\"2020-09-04\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"1\",\"maxValue\":\"10\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Hajj Savings Calculator Pakistan | Insurance Wala","description":"Plan your Hajj savings in Pakistan. See how much to set aside each month with this free Hajj savings calculator.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/insurancewala.pk\/?page_id=5296","og_locale":"en_US","og_type":"article","og_title":"Hajj Savings Calculator \u2013 Plan & Save for Your Hajj Journey","og_description":"Estimate your Hajj expenses and plan your savings with our Hajj Savings Calculator. Make your Hajj journey stress-free and financially prepared","og_url":"https:\/\/insurancewala.pk\/?page_id=5296","og_site_name":"Insurance Wala","article_publisher":"https:\/\/www.facebook.com\/share\/1ZDzV3aBDp\/?mibextid=wwXIfr","article_modified_time":"2026-10-22T13:25:22+00:00","og_image":[{"width":1200,"height":1200,"url":"https:\/\/insurancewala.pk\/wp-content\/uploads\/2025\/11\/hajj-umrah.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_title":"Hajj Savings Calculator \u2013 Plan Your Hajj Budget","twitter_description":"Calculate your Hajj expenses and start saving smartly with our Hajj Savings Calculator. Make your Hajj journey financially stress-free and well-planned","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/insurancewala.pk\/?page_id=5296","url":"https:\/\/insurancewala.pk\/?page_id=5296","name":"Hajj Savings Calculator Pakistan | Insurance Wala","isPartOf":{"@id":"https:\/\/insurancewala.pk\/#website"},"primaryImageOfPage":{"@id":"https:\/\/insurancewala.pk\/?page_id=5296#primaryimage"},"image":{"@id":"https:\/\/insurancewala.pk\/?page_id=5296#primaryimage"},"thumbnailUrl":"https:\/\/insurancewala.pk\/wp-content\/uploads\/2025\/10\/logo-green-500-x-500-px.png","datePublished":"2025-11-17T11:37:47+00:00","dateModified":"2026-10-22T13:25:22+00:00","description":"Plan your Hajj savings in Pakistan. See how much to set aside each month with this free Hajj savings calculator.","breadcrumb":{"@id":"https:\/\/insurancewala.pk\/?page_id=5296#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/insurancewala.pk\/?page_id=5296"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/insurancewala.pk\/?page_id=5296#primaryimage","url":"https:\/\/insurancewala.pk\/wp-content\/uploads\/2025\/10\/logo-green-500-x-500-px.png","contentUrl":"https:\/\/insurancewala.pk\/wp-content\/uploads\/2025\/10\/logo-green-500-x-500-px.png","width":500,"height":500,"caption":"Smart Insurance for Tomorrow\u2019s Families"},{"@type":"BreadcrumbList","@id":"https:\/\/insurancewala.pk\/?page_id=5296#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/insurancewala.pk\/"},{"@type":"ListItem","position":2,"name":"Hajj Savings Calculator"}]},{"@type":"WebSite","@id":"https:\/\/insurancewala.pk\/#website","url":"https:\/\/insurancewala.pk\/","name":"InsuranceWala.pk","description":"Smart Insurance for Tomorrow\u2019s Families","publisher":{"@id":"https:\/\/insurancewala.pk\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/insurancewala.pk\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/insurancewala.pk\/#organization","name":"Insurance Wala","url":"https:\/\/insurancewala.pk\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/insurancewala.pk\/#\/schema\/logo\/image\/","url":"https:\/\/insurancewala.pk\/wp-content\/uploads\/2025\/10\/cropped-logo-Green-800-x-500-px.png","contentUrl":"https:\/\/insurancewala.pk\/wp-content\/uploads\/2025\/10\/cropped-logo-Green-800-x-500-px.png","width":500,"height":368,"caption":"Insurance Wala"},"image":{"@id":"https:\/\/insurancewala.pk\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/share\/1ZDzV3aBDp\/?mibextid=wwXIfr","https:\/\/www.instagram.com\/insurance_walay.pk?igsh=MTRicGd3NjJndmJoMg&utm_source=qr","https:\/\/www.linkedin.com\/company\/insurancewalay\/"],"email":"admin@insurancewala.pk","telephone":"+92 3223579770","foundingDate":"2020-09-04","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"1","maxValue":"10"}}]}},"_links":{"self":[{"href":"https:\/\/insurancewala.pk\/index.php?rest_route=\/wp\/v2\/pages\/5296","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/insurancewala.pk\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/insurancewala.pk\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/insurancewala.pk\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/insurancewala.pk\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5296"}],"version-history":[{"count":16,"href":"https:\/\/insurancewala.pk\/index.php?rest_route=\/wp\/v2\/pages\/5296\/revisions"}],"predecessor-version":[{"id":5952,"href":"https:\/\/insurancewala.pk\/index.php?rest_route=\/wp\/v2\/pages\/5296\/revisions\/5952"}],"wp:attachment":[{"href":"https:\/\/insurancewala.pk\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5296"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}