{"id":83821,"date":"2026-09-03T18:21:59","date_gmt":"2026-09-03T10:21:59","guid":{"rendered":"https:\/\/www.greenpeace.org\/malaysia\/?post_type=p4_action&#038;p=83821"},"modified":"2026-10-30T14:41:00","modified_gmt":"2026-10-30T06:41:00","slug":"why-climate-finance","status":"publish","type":"p4_action","link":"https:\/\/www.greenpeace.org\/malaysia\/petitions\/why-climate-finance\/","title":{"rendered":"Why Climate Finance?"},"content":{"rendered":"\n<!--\n  UMMAH FOR EARTH \u2014 HERO SECTION\n  ================================\n  HOW TO USE IN WORDPRESS:\n  1. Add a \"Custom HTML\" block to your page.\n  2. Paste this whole snippet in.\n  3. Replace BACKGROUND_IMAGE_URL with your own photo.\n  4. Point the button href at your Bankometer \/ \"add your count\" page.\n\n  v7 (15 Oct 2026) \u2014 legal review (ALP supplementary advice, 15 Oct 2026, 2.3):\n  - Headline changed from \"YOUR SAVINGS MIGHT BE FUNDING COAL.\" to the\n    lawyer's suggested \"YOUR BANK MAY BE CONNECTED TO COAL FINANCING.\"\n    The old headline implied a direct link between a person's savings\n    and coal deals.\n  - Body: \"Malaysia's biggest banks report coal in their own books\" became\n    \"Some of Malaysia's biggest banks disclose coal exposure in their own\n    reports\". Only Maybank and CIMB publish a coal figure.\n\n  v6 (15 Oct 2026) \u2014 GreenpeaceSans (Planet 4) for the eyebrow, headline and\n  button; Georgia for the body line.\n--><section class=\"u4e-hero\" id=\"u4e-hero\">\n  <div class=\"u4e-hero-inner\">\n  <div class=\"u4e-hero-card\">\n    <div class=\"u4e-hero-eyebrow\">UMMAH FOR EARTH<\/div>\n\n    <h1 class=\"u4e-hero-stat\">YOUR BANK MAY BE CONNECTED TO <span class=\"u4e-hero-danger\">COAL FINANCING.<\/span><\/h1>\n\n    <p class=\"u4e-hero-body\">\n      Some of Malaysia\u2019s biggest banks disclose coal exposure in their own reports, and several have helped coal power companies raise billions. Most of us have never checked what ours is involved in.\n    <\/p>\n\n<a href=\"#u4e-full-flow\" class=\"u4e-hero-btn\" id=\"u4e-hero-btn\">ADD YOUR COUNT \u2192<\/a>\n<script>\n(function(){\n  var btn = document.getElementById('u4e-hero-btn');\n  if (!btn) return;\n  btn.addEventListener('click', function(e){\n    var flow = document.getElementById('u4e-full-flow');\n    if (!flow) return;\n    e.preventDefault();\n    var y = flow.getBoundingClientRect().top + window.pageYOffset - 80;\n    window.scrollTo({ top: y, behavior: 'smooth' });\n  });\n})();\n<\/script>\n\n  <\/div>\n  <\/div>\n<\/section>\n<style>\n  \/* Three fonts, each with one job:\n       GreenpeaceSans  headings, eyebrows, big numbers, buttons (Planet 4)\n       Georgia         intro \/ lead paragraphs (our house style)\n       SourceSans3     text inside cards, forms, labels and fine print (Planet 4)\n     Every element inherits by default, so the theme's own h1\/h2\/p rules can't\n     swap fonts in; only the role rules below change the font. *\/\n  #u4e-hero { font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\n  #u4e-hero * { font-family: inherit; }\n  #u4e-hero .u4e-hero-eyebrow,\n  #u4e-hero .u4e-hero-stat,\n  #u4e-hero .u4e-hero-btn { font-family: \"GreenpeaceSans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\n  #u4e-hero .u4e-hero-body { font-family: Georgia, \"Times New Roman\", serif; }\n  .u4e-hero {\n    position: relative;\n    width: 100vw;\n    left: 50%;\n    right: 50%;\n    margin-left: -50vw;\n    margin-right: -50vw;\n    min-height: 700px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    background-image: url(https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/10\/a51f1a3e-gp0sttb7d.jpg);\n    background-size: cover;\n    background-position: 100% center;\n    box-sizing: border-box;\n  }\n  .u4e-hero-inner {\n    width: 100%;\n    max-width: 1280px;\n    margin: 0 auto;\n    padding: 0 24px;\n    box-sizing: border-box;\n  }\n  .u4e-hero-card {\n    background: rgba(246, 244, 239, 0.72);\n    backdrop-filter: blur(10px);\n    -webkit-backdrop-filter: blur(10px);\n    width: 100%;\n    max-width: 620px;\n    padding: 56px 60px;\n    text-align: center;\n    box-shadow: 0 20px 50px rgba(0,0,0,0.15);\n  }\n  .u4e-hero-eyebrow {\n    font-size: 13px;\n    font-weight: 700;\n    letter-spacing: 2px;\n    color: #1a3409;\n    margin-bottom: 24px;\n  }\n  #u4e-hero .u4e-hero-stat {\n    font-size: 42px;\n    font-weight: 700;\n    line-height: 1.2;\n    color: #000000;\n    margin: 0 0 28px;\n  }\n  .u4e-hero-danger {\n    color: #c1290e;\n  }\n  #u4e-hero .u4e-hero-body {\n    font-size: 19px;\n    color: #000000;\n    line-height: 1.6;\n    margin: 0 0 32px;\n  }\n  .u4e-hero-btn {\n    display: inline-block;\n    background: #ffe100;\n    color: #000000;\n    border: none;\n    font-size: 19px;\n    font-weight: 700;\n    letter-spacing: 0.3px;\n    text-decoration: none;\n    padding: 16px 40px;\n    border-radius: 10px;\n    transition: transform 0.15s ease, box-shadow 0.15s ease;\n  }\n  .u4e-hero-btn:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 20px rgba(0,0,0,0.25);\n  }\n  @media (max-width: 700px) {\n    .u4e-hero {\n      min-height: 600px;\n      padding: 20px;\n    }\n    .u4e-hero-card {\n      margin-left: auto;\n      max-width: 100%;\n      padding: 36px 28px;\n    }\n    #u4e-hero .u4e-hero-stat {\n      font-size: 28px;\n    }\n  }\n<\/style>\n\n<!--\n  UMMAH FOR EARTH \u2014 WHY SECTION\n  ================================\n  IMPORTANT: paste this whole snippet into a \"Custom HTML\" block, not into\n  separate Heading + Paragraph blocks. If you use regular blocks, your theme's\n  default styles will apply instead of this design, which is what caused the\n  mismatched look under the hero.\n\n  v5 (15 Oct 2026) \u2014 GreenpeaceSans (Planet 4) headline, Georgia body text.\n-->\n\n<div id=\"u4e-why-block\">\n<section class=\"u4e-why\">\n  <div class=\"u4e-why-inner\">\n    <h2 class=\"u4e-why-headline\">Knowing where your money goes<br>is just as important as saving it.<\/h2>\n    <p class=\"u4e-why-text\">\n      Your savings are an <em>amanah<\/em> \u2014 a trust you&#8217;re responsible for, quietly kept\n      or quietly broken. The banks that hold those savings also lend to companies and help\n      them raise money, and for some of Malaysia&#8217;s biggest banks that includes companies\n      running coal plants. You don&#8217;t need to be an expert to see what&#8217;s on the public\n      record about yours.\n    <\/p>\n  <\/div>\n<\/section>\n<\/div>\n\n<style>\n  \/* Three fonts, each with one job:\n       GreenpeaceSans  headings, eyebrows, big numbers, buttons (Planet 4)\n       Georgia         intro \/ lead paragraphs (our house style)\n       SourceSans3     text inside cards, forms, labels and fine print (Planet 4)\n     Every element inherits by default, so the theme's own h1\/h2\/p rules can't\n     swap fonts in; only the role rules below change the font. *\/\n  #u4e-why-block { font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\n  #u4e-why-block * { font-family: inherit; }\n  #u4e-why-block h2.u4e-why-headline { font-family: \"GreenpeaceSans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\n  #u4e-why-block .u4e-why-text { font-family: Georgia, \"Times New Roman\", serif; }\n  .u4e-why {\n    background: #ffffff;\n    padding: 88px 24px;\n    text-align: center;\n  }\n  .u4e-why-inner {\n    max-width: 736px;\n    margin: 0 auto;\n  }\n  #u4e-why-block h2.u4e-why-headline {\n    font-size: clamp(26px, 3.4vw, 42px);\n    font-weight: 700;\n    letter-spacing: -0.5px;\n    line-height: 1.3;\n    color: #000000;\n    margin: 0 0 28px;\n  }\n  #u4e-why-block .u4e-why-text {\n    font-size: 19px;\n    line-height: 1.6;\n    color: #3a3a35;\n    margin: 0;\n  }\n  .u4e-why-text em {\n    font-style: italic;\n    color: #000000;\n  }\n\n  @media (max-width: 700px) {\n    .u4e-why { padding: 56px 24px; }\n    #u4e-why-block .u4e-why-text { font-size: 16px; }\n  }\n<\/style>\n\n\n<div class=\"wp-block-group alignfull block has-custom-css has-dark-green-800-background-color has-background is-layout-flow wp-block-group-is-layout-flow wp-custom-css-72ce2f81\">\n<div class=\"wp-block-group container is-layout-flow wp-block-group-is-layout-flow\">\n<div style=\"height:24px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<!--\n  UMMAH FOR EARTH \u2014 ISLAMIC ACCOUNT EXPLAINER (accordion)\n  ================================\n  Standalone Custom HTML block, replacing the native Planet4 accordion\n  block since its CSS wasn't overridable. Matches the dark card style\n  used elsewhere on the page (u4e-card-dark). Centered text as requested.\n\n  FIX: the toggle icon was a unicode \"\u25be\" character that wasn't rendering\n  reliably (showed as a tiny dot). Replaced with a CSS-drawn triangle,\n  which can't fail to render regardless of font support.\n\n  v5 (15 Oct 2026) \u2014 GreenpeaceSans (Planet 4) for the question, Georgia for\n  the answer.\n-->\n<div id=\"u4e-explainer-block\">\n<section class=\"u4e-explainer\">\n  <button class=\"u4e-explainer-toggle\" id=\"u4e-explainer-toggle\" aria-expanded=\"false\">\n    <span>&#8220;Wait \u2014 isn&#8217;t my account already ethical or Islamic?&#8221;<\/span>\n    <span class=\"u4e-explainer-icon\" id=\"u4e-explainer-icon\"><\/span>\n  <\/button>\n  <div class=\"u4e-explainer-body\" id=\"u4e-explainer-body\">\n    <p>None of these banks report their coal exposure separately for their Islamic and conventional arms, so there&#8217;s no public evidence that one side is cleaner than the other. And several of the coal power financings we traced were sukuk, which are Islamic bonds. Being Shariah-compliant hasn&#8217;t, so far, meant being coal-free.<\/p>\n  <\/div>\n<\/section>\n<\/div>\n<style>\n  \/* Three fonts, each with one job:\n       GreenpeaceSans  headings, eyebrows, big numbers, buttons (Planet 4)\n       Georgia         intro \/ lead paragraphs (our house style)\n       SourceSans3     text inside cards, forms, labels and fine print (Planet 4)\n     Every element inherits by default, so the theme's own h1\/h2\/p rules can't\n     swap fonts in; only the role rules below change the font. *\/\n  #u4e-explainer-block { font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\n  #u4e-explainer-block * { font-family: inherit; }\n  #u4e-explainer-block .u4e-explainer-toggle span:first-child { font-family: \"GreenpeaceSans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\n  #u4e-explainer-block .u4e-explainer-body p { font-family: Georgia, \"Times New Roman\", serif; }\n  .u4e-explainer {\n    background: #1f4912;\n    border-radius: 12px;\n    padding: 32px 40px;\n    max-width: 860px;\n    margin: 0 auto;\n  }\n  .u4e-explainer-toggle {\n    width: 100%;\n    background: transparent;\n    border: none;\n    cursor: pointer;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    gap: 12px;\n    padding: 0;\n    text-align: center;\n  }\n  .u4e-explainer-toggle span:first-child {\n    font-size: 22px;\n    font-weight: 700;\n    color: #ffffff;\n  }\n  .u4e-explainer-icon {\n    width: 0;\n    height: 0;\n    border-left: 6px solid transparent;\n    border-right: 6px solid transparent;\n    border-top: 8px solid #a8d15c;\n    transition: transform 0.15s ease;\n    flex-shrink: 0;\n  }\n  .u4e-explainer-icon.u4e-open {\n    transform: rotate(180deg);\n  }\n  .u4e-explainer-body {\n    max-height: 0;\n    overflow: hidden;\n    transition: max-height 0.25s ease;\n  }\n  #u4e-explainer-block .u4e-explainer-body p {\n    font-size: 17px;\n    color: #ffffff;\n    line-height: 1.6;\n    text-align: center;\n    max-width: 680px;\n    margin: 20px auto 0;\n  }\n  @media (max-width: 700px) {\n    .u4e-explainer { padding: 24px 20px; }\n    .u4e-explainer-toggle span:first-child { font-size: 16px; }\n    #u4e-explainer-block .u4e-explainer-body p { font-size: 15px; }\n  }\n<\/style>\n<script>\n(function(){\n  var toggle = document.getElementById('u4e-explainer-toggle');\n  var body = document.getElementById('u4e-explainer-body');\n  var icon = document.getElementById('u4e-explainer-icon');\n  var open = false;\n  toggle.addEventListener('click', function(){\n    open = !open;\n    body.style.maxHeight = open ? body.scrollHeight + 'px' : '0';\n    icon.classList.toggle('u4e-open', open);\n    toggle.setAttribute('aria-expanded', open);\n  });\n})();\n<\/script>\n\n\n\n<div style=\"height:24px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading has-text-align-center\">This isn&#8217;t just a values question. It&#8217;s our earth, and it&#8217;s us.<\/h2>\n\n<div style=\"height:28px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\">01<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"656\" title=\"Protest at the Maritsa 3 Power Plant in Dimitrovgrad, Bulgaria\" src=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/850df65d-gp0sty0cp-1024x656.jpg\" alt=\"Greenpeace activists painted the word \u2018CRIME\u2019 on a 50-metre high cooling tower at a power plant in Dimitrovgrad, Southeast Bulgaria, to protest its toxic impact on communities and the environment.\nActivists from eight countries in Central and Eastern Europe are making their voice heard together as they protest for people\u2019s right to clean air, a safe environment and a livable climate. They come from Bulgaria, Austria, Croatia, Czechia, Greece, Hungary, Poland and Romania.\nThe Maritsa 3 Power Plant resumed production in 2021 after three years on stand-by, as energy prices in Bulgaria rose, to profit from state-funded coal reserve subsidies. Now that the plant is running again, it&#039;s producing illegally high sulphur dioxide pollution, as well as particulate matter air pollution, which affects people\u2019s health.\" class=\"wp-image-83907\" srcset=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/850df65d-gp0sty0cp-1024x656.jpg 1024w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/850df65d-gp0sty0cp-300x192.jpg 300w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/850df65d-gp0sty0cp-768x492.jpg 768w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/850df65d-gp0sty0cp-510x327.jpg 510w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/850df65d-gp0sty0cp.jpg 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Islamic finance should already screen this out<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Some banks already screens out restricted industries. Coal isn&#8217;t on that list yet. Some banks have made partial commitments, but none have fully phased it out.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\">02<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"678\" title=\"Resident of Darri in Korba, India\" src=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/e32e1fdf-gp0stqoyg-1024x678.jpg\" alt=\"Kumar Mahant, a resident of Darri, Korba speaks of the pollution caused by the CSEB Hasdeo Thermal Power Plant (seen in the background). Putting on a N95 mask makes the situation tolerable but is definitely not the solution to the problem.\" class=\"wp-image-83954\" srcset=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/e32e1fdf-gp0stqoyg-1024x678.jpg 1024w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/e32e1fdf-gp0stqoyg-300x199.jpg 300w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/e32e1fdf-gp0stqoyg-768x509.jpg 768w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/e32e1fdf-gp0stqoyg-510x338.jpg 510w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/08\/e32e1fdf-gp0stqoyg.jpg 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">It&#8217;s already making people sick<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Coal plants emit particulate matter, sulfur dioxide, and mercury. This isn&#8217;t a future risk,  it&#8217;s measurable respiratory and cardiovascular harm in communities living along the plant&#8217;s footprint right now.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\">03<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"800\" title=\"Solar Panel in Istiqlal Mosque, Jakarta\" src=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/07\/67f99a4f-gp1summ1.jpg\" alt=\"A technician inspects solar panels on the roof of Istiqlal grand mosque in Jakarta.\" class=\"wp-image-62213\" srcset=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/07\/67f99a4f-gp1summ1.jpg 1200w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/07\/67f99a4f-gp1summ1-300x200.jpg 300w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/07\/67f99a4f-gp1summ1-1024x683.jpg 1024w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/07\/67f99a4f-gp1summ1-768x512.jpg 768w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/07\/67f99a4f-gp1summ1-510x340.jpg 510w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">It&#8217;s also just a bad financial bet<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">As renewables get cheaper and climate policy tightens, coal assets risk becoming uneconomical before the end of their operating life. <\/p>\n<\/div>\n<\/div>\n\n<div style=\"height:4px\" aria-hidden=\"true\" id=\"checker\" class=\"wp-block-spacer\"><\/div>\n\n\n<!--\n  UMMAH FOR EARTH \u2014 BANKOMETER FLOW (pivoted scope)\n  ================================\n  Shows the banks we have real, sourced information for: Maybank, CIMB,\n  RHB and Hong Leong Bank. Public Bank and Bank Islam have no public\n  financing record we could trace \u2014 that's a data gap, not a clean\n  result, and is surfaced honestly via the \"why aren't they here\" panel\n  rather than hidden or faked with a placeholder percentage.\n\n  Gravity Forms integration and the Apps Script webhook are unchanged \u2014\n  see goPledge() and the gform_confirmation_loaded hook below. Still ends\n  with a manual fallback button in case the real form fails to load.\n\n  v12 (15 Oct 2026) \u2014 legal review (ALP advice 14 Sep 2026 and\n  supplementary advice 15 Oct 2026):\n  - Jimah \/ Special Power Vehicle Class B (2005) removed from RHB and Hong\n    Leong (supp. 2.1). The banks' role ended in 2005 and the notes are held\n    by the plant's own shareholders, so it isn't a current bank connection.\n    Method rule tightened to match: only debt still outstanding with\n    investors is shown; repaid deals, or debt held by the company's own\n    shareholders, are left out.\n  - Hong Leong stays in the bank list on its own disclosure (coal policy\n    and phase-out dates). It now has no deal cards; the empty state says we\n    found none in public records without implying zero exposure (14 Sep 4.1.3).\n  - Utilities section heading now reads \"\u2026general borrowing, not earmarked\n    for coal\", and each section's description is shown under its heading\n    instead of only inside \"What do these mean?\" (supp. 2.2).\n  - Deal list heading changed from \"Coal-linked deals this bank helped\n    arrange\" to \"Deals involving coal power companies that this bank helped\n    arrange\" \u2014 the old label contradicted the utility and Malakoff captions.\n  - Compare view: note that the banks measure coal exposure differently,\n    so their figures can't be compared directly (14 Sep 2.1.6).\n  - Bank Islam panel: \"We also couldn't find a coal-specific policy\" softened\n    to \"We didn't identify a coal-specific policy\".\n  - Checker step 1 intro reworded now that Hong Leong has no deal cards.\n\n  v11 (15 Oct 2026) \u2014 intro lines back to Georgia; everything else stays on\n  the Planet 4 fonts (GreenpeaceSans \/ SourceSans3).\n\n  v10 (15 Oct 2026) \u2014 fonts now match Planet 4. Weights capped at 700.\n\n  v9 (15 Oct 2026) \u2014 fonts forced inside #u4e-full-flow; \"What do these\n  mean?\" rebuilt as a contained panel mirroring the cards.\n\n  v8 (12 Oct 2026) \u2014 decluttered cards; details behind \"Details and sources\".\n\n  v7 (12 Oct 2026) \u2014 Bank > deal type > deal cards; only outstanding debt.\n\n  v6 (12 Oct 2026) \u2014 legal-review pass: role\/status badges; non-coal\n  earmarked deals removed; copy no longer implies a user's deposit funds\n  any specific deal. Research notes: \"Deal Status Check\" sheet in the workbook.\n-->\n\n<div id=\"u4e-full-flow\" class=\"u4e-flow\">\n\n  <!-- STEP 0: choose your path -->\n  <section class=\"u4e-step u4e-step-goal\" data-step=\"goal\">\n    <div class=\"u4e-flow-inner\">\n      <h2 class=\"u4e-flow-h\" style=\"text-align:center\">We don&#8217;t pick your bank.<br>We help you see it clearly.<\/h2>\n      <p class=\"u4e-flow-sub\" style=\"text-align:center;margin-left:auto;margin-right:auto\">Checking your holdings or comparing your options isn&#8217;t about naming a winner \u2014 it&#8217;s about knowing what your money actually funds before you decide. That part&#8217;s yours.<\/p>\n\n      <div class=\"u4e-goal-cards\">\n        <div class=\"u4e-goal-card\" data-action=\"go\" data-target=\"checker1\">\n          <div class=\"u4e-goal-num\">01<\/div>\n          <h3 class=\"u4e-goal-h\">What is my bank doing with my money?<\/h3>\n          <p class=\"u4e-goal-p\">You already have savings parked somewhere. See what&#8217;s publicly known about it.<\/p>\n          <div class=\"u4e-goal-link\">CHECK MY BANK \u2192<\/div>\n        <\/div>\n        <div class=\"u4e-goal-card\" data-action=\"go\" data-target=\"compare1\">\n          <div class=\"u4e-goal-num\">02<\/div>\n          <h3 class=\"u4e-goal-h\">Which bank should I choose?<\/h3>\n          <p class=\"u4e-goal-p\">You&#8217;re just starting to save or invest, and weighing your options.<\/p>\n          <div class=\"u4e-goal-link\">COMPARE BANKS \u2192<\/div>\n        <\/div>\n        <div class=\"u4e-goal-card u4e-goal-card-skip\" data-action=\"pledge\" data-path=\"direct\">\n          <p class=\"u4e-goal-p\" style=\"margin-bottom:16px\">Already know your number?<\/p>\n          <div class=\"u4e-goal-link u4e-goal-link-skip\">COUNT ME IN \u2192<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- CHECKER 1: pick bank + amount -->\n  <section class=\"u4e-step\" data-step=\"checker1\" style=\"display:none\">\n    <div class=\"u4e-flow-inner\">\n      <div class=\"u4e-back\" data-action=\"go\" data-target=\"goal\">\u2190 back<\/div>\n      <div class=\"u4e-flow-eyebrow\">HOLDINGS CHECKER \u00b7 STEP 1 OF 2<\/div>\n      <h2 class=\"u4e-flow-h\">Where is your money <span class=\"u4e-accent\">actually sitting?<\/span><\/h2>\n      <p class=\"u4e-flow-sub\">Maybank, CIMB, RHB and Hong Leong Bank each have coal on the public record \u2014 in their own reports, in deals they helped arrange, or both. Pick yours below.<\/p>\n\n      <label class=\"u4e-field-label\">Your bank<\/label>\n      <div class=\"u4e-select-list\" id=\"u4e-checker-bank-list\"><\/div>\n\n      <span class=\"u4e-excluded-toggle\" data-toggle=\"u4e-checker-excluded\">Bank with someone else? See why they&#8217;re not listed yet \u2192<\/span>\n      <div class=\"u4e-excluded-panel\" id=\"u4e-checker-excluded\"><\/div>\n\n      <label class=\"u4e-field-label\">Amount held here (RM)<\/label>\n      <input type=\"number\" id=\"u4e-checker-amount\" class=\"u4e-input\" value=\"10000\">\n\n      <button class=\"u4e-btn-primary\" data-action=\"checker-go\">Check what we found \u2192<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- CHECKER 2: result -->\n  <section class=\"u4e-step\" data-step=\"checker2\" style=\"display:none\">\n    <div class=\"u4e-flow-inner\">\n      <div class=\"u4e-back\" data-action=\"go\" data-target=\"checker1\">\u2190 back<\/div>\n      <div class=\"u4e-flow-eyebrow\">HOLDINGS CHECKER \u00b7 STEP 2 OF 2<\/div>\n      <h2 class=\"u4e-flow-h\">Here&#8217;s what we found on <span class=\"u4e-accent\" id=\"u4e-checker2-bank-name\">\u2014<\/span><\/h2>\n      <p class=\"u4e-flow-sub\" id=\"u4e-checker2-sub\"><\/p>\n\n      <div class=\"u4e-disclosure-card\">\n        <div class=\"u4e-disclosure-tag\">What the bank reports<\/div>\n        <div class=\"u4e-disclosure-headline\" id=\"u4e-checker2-headline\"><\/div>\n        <div class=\"u4e-disclosure-detail\" id=\"u4e-checker2-short\"><\/div>\n        <details class=\"u4e-more\"><summary>Read more<\/summary>\n          <div class=\"u4e-disclosure-detail\" id=\"u4e-checker2-detail\"><\/div>\n          <div class=\"u4e-disclosure-source\" id=\"u4e-checker2-source\"><\/div>\n        <\/details>\n      <\/div>\n\n      <p class=\"u4e-field-label\" style=\"margin-top:22px\" id=\"u4e-checker2-deals-label\">Deals involving coal power companies that this bank helped arrange<\/p>\n      <div class=\"u4e-legend-slot\"><\/div>\n      <div id=\"u4e-checker2-deals\"><\/div>\n\n      <button class=\"u4e-btn-primary\" data-action=\"pledge\" data-path=\"checker\">Add my voice \u2192<\/button>\n      <p class=\"u4e-fine-print u4e-method-note\"><\/p>\n    <\/div>\n  <\/section>\n\n  <!-- COMPARE 1: pick banks + amount -->\n  <section class=\"u4e-step\" data-step=\"compare1\" style=\"display:none\">\n    <div class=\"u4e-flow-inner\">\n      <div class=\"u4e-back\" data-action=\"go\" data-target=\"goal\">\u2190 back<\/div>\n      <div class=\"u4e-flow-eyebrow\">COMPARE BEFORE CHOOSING \u00b7 STEP 1 OF 2<\/div>\n      <h2 class=\"u4e-flow-h\">Returns and fees aren&#8217;t <span class=\"u4e-accent\">the whole picture.<\/span><\/h2>\n      <p class=\"u4e-flow-sub\">There&#8217;s a third thing worth checking before you decide: what your bank finances. Here&#8217;s what&#8217;s publicly documented, bank by bank.<\/p>\n\n      <label class=\"u4e-field-label\">Compare Maybank, CIMB, RHB and Hong Leong Bank<\/label>\n      <div class=\"u4e-select-list\" id=\"u4e-compare-bank-list\">\n        <label class=\"u4e-check-row\"><span>Maybank<\/span><input type=\"checkbox\" checked=\"\" class=\"u4e-bank-check\" data-bank=\"maybank\"><\/label>\n        <label class=\"u4e-check-row\"><span>CIMB<\/span><input type=\"checkbox\" checked=\"\" class=\"u4e-bank-check\" data-bank=\"cimb\"><\/label>\n        <label class=\"u4e-check-row\"><span>RHB<\/span><input type=\"checkbox\" checked=\"\" class=\"u4e-bank-check\" data-bank=\"rhb\"><\/label>\n        <label class=\"u4e-check-row\"><span>Hong Leong Bank<\/span><input type=\"checkbox\" checked=\"\" class=\"u4e-bank-check\" data-bank=\"hongleong\"><\/label>\n      <\/div>\n\n      <span class=\"u4e-excluded-toggle\" data-toggle=\"u4e-compare-excluded\">Bank with someone else? See why they&#8217;re not listed yet \u2192<\/span>\n      <div class=\"u4e-excluded-panel\" id=\"u4e-compare-excluded\"><\/div>\n\n      <label class=\"u4e-field-label\">How much are you starting with?<\/label>\n      <div class=\"u4e-card\">\n        <div class=\"u4e-slider-amount\" id=\"u4e-compare-amt\">RM 5,000<\/div>\n        <input type=\"range\" id=\"u4e-compare-range\" min=\"500\" max=\"100000\" step=\"500\" value=\"5000\" style=\"width:100%;accent-color:#1a3409\">\n        <div style=\"display:flex;justify-content:space-between;font-size:11px;color:#6b6b62;margin-top:6px\">\n          <span>RM 500<\/span><span>RM 100k<\/span>\n        <\/div>\n      <\/div>\n\n      <button class=\"u4e-btn-primary\" data-action=\"compare-go\">Compare banks \u2192<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- COMPARE 2: sourced deal cards -->\n  <section class=\"u4e-step\" data-step=\"compare2\" style=\"display:none\">\n    <div class=\"u4e-flow-inner\">\n      <div class=\"u4e-back\" data-action=\"go\" data-target=\"compare1\">\u2190 back<\/div>\n      <div class=\"u4e-flow-eyebrow\" id=\"u4e-compare2-eyebrow\">STEP 2 OF 2<\/div>\n      <h2 class=\"u4e-flow-h\">Here&#8217;s what&#8217;s <span class=\"u4e-accent\">on the public record.<\/span><\/h2>\n\n      <!-- v12: comparability note (legal advice 14 Sep 2026, 2.1.6) -->\n      <p class=\"u4e-compare-basis\">Each bank measures its coal exposure differently \u2014 as an amount, as a share of its loans, or not at all \u2014 so the figures under \u201cWhat the bank reports\u201d can\u2019t be compared directly.<\/p>\n\n      <div class=\"u4e-legend-slot\"><\/div>\n      <div id=\"u4e-compare2-cards\"><\/div>\n      <p class=\"u4e-fine-print\" style=\"margin-bottom:12px\">Some deals were arranged jointly by several banks, so they appear under more than one bank. Don&#8217;t add the amounts together.<\/p>\n      <p class=\"u4e-fine-print u4e-method-note\" style=\"margin-bottom:20px\"><\/p>\n\n      <div class=\"u4e-card\">\n        <p class=\"u4e-card-text\">\n          No single &#8220;best&#8221; bank here \u2014 weigh what matters most to you and decide for yourself.\n          This page doesn&#8217;t open accounts or move money.\n        <\/p>\n      <\/div>\n\n      <div class=\"u4e-card u4e-card-dark\">\n        <div class=\"u4e-card-dark-label\">WHICHEVER YOU CHOOSE<\/div>\n        <p class=\"u4e-card-text u4e-card-text-dark\">\n          Separately, there&#8217;s a running public total called the Bankometer \u2014 the combined\n          savings of everyone who&#8217;s added their number so far. Greenpeace Malaysia uses that\n          total directly with Bank Negara Malaysia, the Securities Commission, and the banks\n          named on this page, to push for less coal financing.\n        <\/p>\n      <\/div>\n\n      <button class=\"u4e-btn-primary\" data-action=\"pledge\" data-path=\"compare\">Add my planned amount to the total \u2192<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- SHARED: pledge confirm \u2014 form gets moved into u4e-gf-slot on first\n       visit; TEST\/fallback button only shows if the real form fails to\n       load. -->\n  <section class=\"u4e-step\" data-step=\"pledge\" style=\"display:none\">\n    <div class=\"u4e-flow-inner\">\n      <div class=\"u4e-back\" id=\"u4e-pledge-back\" data-action=\"go\" data-target=\"checker2\">\u2190 back<\/div>\n      <div class=\"u4e-flow-eyebrow\">BANKOMETER \u00b7 CONFIRM<\/div>\n      <h2 class=\"u4e-flow-h\" id=\"u4e-pledge-h\">Confirm your number, <span class=\"u4e-accent\">add your name.<\/span><\/h2>\n\n      <div class=\"u4e-card u4e-card-dark\">\n        <div class=\"u4e-card-dark-label\">WHAT HAPPENS WHEN YOU CONFIRM<\/div>\n        <div class=\"u4e-numbered-line\"><span>1<\/span><span id=\"u4e-pledge-step1\">Your entry joins the public Bankometer total.<\/span><\/div>\n        <div class=\"u4e-numbered-line\"><span>2<\/span><span id=\"u4e-pledge-step2\">Your name is added as a co-signer on this quarter&#8217;s open letter to Bank Negara Malaysia, the Securities Commission, and the banks named on this page \u2014 real advocacy, not a symbolic count.<\/span><\/div>\n        <div class=\"u4e-numbered-line\"><span>3<\/span><span id=\"u4e-pledge-step3\">Nothing moves or leaves your own account. This is a declaration, not a transaction.<\/span><\/div>\n      <\/div>\n\n      <p class=\"u4e-fine-print\" style=\"text-align:left;margin-bottom:20px\">\u2193 Your name and email form is just below \u2014 the Bankometer total updates automatically once you submit it.<\/p>\n\n      <!-- the real Gravity Form gets physically moved into this empty\n           slot by JS the first time this step is shown \u2014 see goPledge(). -->\n      <div id=\"u4e-gf-slot\"><script>\nvar gform;gform||(document.addEventListener(\"gform_main_scripts_loaded\",function(){gform.scriptsLoaded=!0}),document.addEventListener(\"gform\/theme\/scripts_loaded\",function(){gform.themeScriptsLoaded=!0}),window.addEventListener(\"DOMContentLoaded\",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>\"function\"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn(\"The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.\"),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener(\"gform_main_scripts_loaded\",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener(\"gform\/theme\/scripts_loaded\",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener(\"DOMContentLoaded\",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook(\"action\",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook(\"filter\",o,r,e,t)},doAction:function(o){gform.doHook(\"action\",o,arguments)},applyFilters:function(o){return gform.doHook(\"filter\",o,arguments)},removeAction:function(o,r){gform.removeHook(\"action\",o,r)},removeFilter:function(o,r,e){gform.removeHook(\"filter\",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+\"_\"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){\"function\"!=typeof(t=o.callable)&&(t=window[t]),\"action\"==r?t.apply(null,e):e[0]=t.apply(null,e)})),\"filter\"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}});\n<\/script>\n\n                <div class='gf_browser_gecko gform_wrapper gravity-theme gform-theme--no-framework' data-form-theme='gravity-theme' data-form-index='0' id='gform_wrapper_25' ><div id='gf_25' class='gform_anchor' tabindex='-1'><\/div>\n                        <div class='gform_heading'>\n                            <h2 class=\"gform_title\">Add your number (Not a Donation)<\/h2>\n                            <p class='gform_description'>The money stays in your own account, we're gathering the saving amounts to demand banks to completely phase out coal. Together with one and another.<\/p>\n                        <\/div><form method='post' enctype='multipart\/form-data' target='gform_ajax_frame_25' id='gform_25'  action='\/malaysia\/wp-json\/wp\/v2\/p4_action\/83821#gf_25' data-formid='25' novalidate>\n                        <div class='gform-body gform_body'><div id='gform_fields_25' class='gform_fields top_label form_sublabel_above description_above validation_below'><div id=\"field_25_31\" class=\"gfield gfield--type-honeypot gform_validation_container field_sublabel_above gfield--has-description field_description_above field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_25_31'><span class='gform-field-label__text'>X\/Twitter<\/span><\/label><div class='gfield_description' id='gfield_description_25_31'>This field is for validation purposes and should be left unchanged.<\/div><div class='ginput_container'><input name='input_31' id='input_25_31' type='text' value='' autocomplete='new-password'\/><\/div><\/div><fieldset id=\"field_25_8\" class=\"gfield gfield--type-radio gfield--type-choice gfield--input-type-radio gfield--width-full gfield_contains_required field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_visible gfield--choice-align-vertical custom-control\"  data-field-class=\"custom-control\" ><legend class='gfield_label gform-field-label' ><span class='gform-field-label__text'>Are you currently using Islamic Banking?<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/legend><div class='ginput_container ginput_container_radio'><div class='gfield_radio' id='input_25_8'>\n\t\t\t<div class='gchoice gchoice_25_8_0'>\n\t\t\t\t\t<input class='gfield-choice-input' name='input_8' type='radio' value='Yes'  id='choice_25_8_0' onchange='gformToggleRadioOther( this )'    \/>\n\t\t\t\t\t<label for='choice_25_8_0' id='label_25_8_0' class='gform-field-label gform-field-label--type-inline'>Yes<\/label>\n\t\t\t<\/div>\n\t\t\t<div class='gchoice gchoice_25_8_1'>\n\t\t\t\t\t<input class='gfield-choice-input' name='input_8' type='radio' value='No'  id='choice_25_8_1' onchange='gformToggleRadioOther( this )'    \/>\n\t\t\t\t\t<label for='choice_25_8_1' id='label_25_8_1' class='gform-field-label gform-field-label--type-inline'>No<\/label>\n\t\t\t<\/div><\/div><\/div><\/fieldset><div id=\"field_25_13\" class=\"gfield gfield--type-number gfield--input-type-number gfield--width-full u4e-gf-amount gfield_contains_required field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_25_13'><span class='gform-field-label__text'>How much would you like to add? (RM) [This is not a donation]<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/label><div class='ginput_container ginput_container_number'><input name='input_13' id='input_25_13' type='text' step='any'   value='' class='large'     aria-required=\"true\" aria-invalid=\"false\"  \/><\/div><\/div><fieldset id=\"field_25_1\" class=\"gfield gfield--type-name gfield--input-type-name gfield--width-full gfield_contains_required field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_visible\"  ><legend class='gfield_label gform-field-label gfield_label_before_complex' ><span class='gform-field-label__text'>Name<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/legend><div class='ginput_complex ginput_container ginput_container--name no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name gform-grid-row' id='input_25_1'>\n                            \n                            <span id='input_25_1_3_container' class='name_first gform-grid-col gform-grid-col--size-auto' >\n                                                    <label for='input_25_1_3' class='gform-field-label gform-field-label--type-sub '>First<\/label>\n                                                    <input type='text' name='input_1.3' id='input_25_1_3' value=''   aria-required='true'    autocomplete=\"given-name\" \/>\n                                                <\/span>\n                            \n                            <span id='input_25_1_6_container' class='name_last gform-grid-col gform-grid-col--size-auto' >\n                                                            <label for='input_25_1_6' class='gform-field-label gform-field-label--type-sub '>Last<\/label>\n                                                            <input type='text' name='input_1.6' id='input_25_1_6' value=''   aria-required='true'    autocomplete=\"family-name\" \/>\n                                                        <\/span>\n                            \n                        <\/div><\/fieldset><div id=\"field_25_2\" class=\"gfield gfield--type-email gfield--input-type-email gfield_contains_required field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_25_2'><span class='gform-field-label__text'>Email<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/label><div class='ginput_container ginput_container_email'>\n                            <input name='input_2' id='input_25_2' type='email' value='' class='large'    aria-required=\"true\" aria-invalid=\"false\"  \/>\n                        <\/div><\/div><div id=\"field_25_26\" class=\"gfield gfield--type-select gfield--input-type-select gfield--width-full field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_hidden\"  ><label class='gfield_label gform-field-label' for='input_25_26'><span class='gform-field-label__text'>Form Goal<\/span><\/label><div class='ginput_container ginput_container_select'><select name='input_26' id='input_25_26' class='large gfield_select'     aria-invalid=\"false\" ><option value='Bankometer Add and Letter Signature' >Bankometer Add and Letter Signature<\/option><\/select><\/div><\/div><div id=\"field_25_27\" class=\"gfield gfield--type-select gfield--input-type-select gfield--width-full field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_hidden\"  ><label class='gfield_label gform-field-label' for='input_25_27'><span class='gform-field-label__text'>zzzCountry of Ownership<\/span><\/label><div class='ginput_container ginput_container_select'><select name='input_27' id='input_25_27' class='large gfield_select'     aria-invalid=\"false\" ><option value='Malaysia' >Malaysia<\/option><\/select><\/div><\/div><div id=\"field_25_28\" class=\"gfield gfield--type-select gfield--input-type-select gfield--width-full field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_hidden\"  ><label class='gfield_label gform-field-label' for='input_25_28'><span class='gform-field-label__text'>zzzContact Code<\/span><\/label><div class='ginput_container ginput_container_select'><select name='input_28' id='input_25_28' class='large gfield_select'     aria-invalid=\"false\" ><option value='Active_Cyberactivist' >Active Cyberactivist<\/option><\/select><\/div><\/div><div id=\"field_25_29\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-full field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_hidden\"  ><label class='gfield_label gform-field-label' for='input_25_29'><span class='gform-field-label__text'>utm_campaign<\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_29' id='input_25_29' type='text' value='51702870-dom.2026999-mys.gen-inh.20250516-u4e-ummah4earth' class='large'      aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_25_23\" class=\"gfield gfield--type-html gfield--input-type-html gfield--width-full gfield_html gfield_html_formatted gfield_no_follows_desc field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_visible\"  ><div class=\"u4e-form-why\">\n  <p class=\"u4e-form-why-h\">The Why<\/p>\n  <ul>\n    <li>Coal generates 43% of Malaysia\u2019s electricity, and its fine-particle pollution is twice as deadly as pollution from other sources.<\/li>\n    <li>A company earning 5% of its income from tobacco fails Malaysia\u2019s Shariah screen. One earning 100% from coal passes.<\/li>\n    <li>Our banks and funds still finance coal, and companies linked to rights violations.<\/li>\n  <\/ul>\n  <p class=\"u4e-form-why-h\">Our Key Demands<\/p>\n  <ul>\n    <li><strong>Regulators:<\/strong> classify coal as Shariah non-compliant, keep it out of green labels, and make banks disclose their coal financing in ringgit every year.<\/li>\n    <li><strong>Banks and investors:<\/strong> exit all coal financing and facilitating by 2035, with no new deals, roll-overs or arranging, and move that money into renewables, not transition gas.<\/li>\n  <\/ul>\n  <p class=\"u4e-form-why-link\"><a href=\"https:\/\/www.greenpeace.org\/malaysia\/story\/84666\/lead-the-world-in-climate-finance\/\" target=\"_blank\" rel=\"noopener\">Read the full letter here<\/a><\/p>\n<\/div><\/div><fieldset id=\"field_25_11\" class=\"gfield gfield--type-checkbox gfield--type-choice gfield--input-type-checkbox gfield--width-full field_sublabel_above gfield--no-description field_description_above hidden_label field_validation_below gfield_visibility_visible gfield--choice-align-vertical custom-control\"  data-field-class=\"custom-control\" ><legend class='gfield_label gform-field-label gfield_label_before_complex' ><span class='gform-field-label__text'>Consent<\/span><\/legend><div class='ginput_container ginput_container_checkbox'><div class='gfield_checkbox ' id='input_25_11'><div class='gchoice gchoice_25_11_1'>\n\t\t\t\t\t\t\t\t<input class='gfield-choice-input' name='input_11.1' type='checkbox'  value='Also add my name to the open letter to Bank Negara, the Securities Commissions, Banks this quarter.' checked='checked' id='choice_25_11_1'   \/>\n\t\t\t\t\t\t\t\t<label for='choice_25_11_1' id='label_25_11_1' class='gform-field-label gform-field-label--type-inline'>Also add my name to the open letter to Bank Negara, the Securities Commissions, Banks this quarter.<\/label>\n\t\t\t\t\t\t\t<\/div><\/div><\/div><\/fieldset><fieldset id=\"field_25_30\" class=\"gfield gfield--type-checkbox gfield--type-choice gfield--input-type-checkbox gfield--width-full field_sublabel_above gfield--no-description field_description_above hidden_label field_validation_below gfield_visibility_visible gfield--choice-align-vertical custom-control\"  data-field-class=\"custom-control\" ><legend class='gfield_label gform-field-label gfield_label_before_complex' ><span class='gform-field-label__text'>Consent<\/span><\/legend><div class='ginput_container ginput_container_checkbox'><div class='gfield_checkbox ' id='input_25_30'><div class='gchoice gchoice_25_30_1'>\n\t\t\t\t\t\t\t\t<input class='gfield-choice-input' name='input_30.1' type='checkbox'  value='I\u2019m okay with my name being displayed publicly as a supporter.' checked='checked' id='choice_25_30_1'   \/>\n\t\t\t\t\t\t\t\t<label for='choice_25_30_1' id='label_25_30_1' class='gform-field-label gform-field-label--type-inline'>I\u2019m okay with my name being displayed publicly as a supporter.<\/label>\n\t\t\t\t\t\t\t<\/div><\/div><\/div><\/fieldset><fieldset id=\"field_25_24\" class=\"gfield gfield--type-checkbox gfield--type-choice gfield--input-type-checkbox gfield--width-full field_sublabel_above gfield--no-description field_description_above hidden_label field_validation_below gfield_visibility_visible gfield--choice-align-vertical custom-control\"  data-field-class=\"custom-control\" ><legend class='gfield_label gform-field-label gfield_label_before_complex' ><span class='gform-field-label__text'>Consent<\/span><\/legend><div class='ginput_container ginput_container_checkbox'><div class='gfield_checkbox ' id='input_25_24'><div class='gchoice gchoice_25_24_1'>\n\t\t\t\t\t\t\t\t<input class='gfield-choice-input' name='input_24.1' type='checkbox'  value='I am happy to receive email updates from Greenpeace Malaysia about the Ummah for Earth campaign.' checked='checked' id='choice_25_24_1'   \/>\n\t\t\t\t\t\t\t\t<label for='choice_25_24_1' id='label_25_24_1' class='gform-field-label gform-field-label--type-inline'>I am happy to receive email updates from Greenpeace Malaysia about the Ummah for Earth campaign.<\/label>\n\t\t\t\t\t\t\t<\/div><\/div><\/div><\/fieldset><\/div><\/div>\n        <div class='gform-footer gform_footer top_label'> <button type='submit' id='gform_submit_button_25' class='gform_button button' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' >Submit<\/button> <input type='hidden' name='gform_ajax' value='form_id=25&amp;title=1&amp;description=1&amp;tabindex=0&amp;theme=gravity-theme&amp;styles=[]&amp;hash=0de02583cde1081848068386991f3b20' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_25' value='iframe' \/>\n            <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_25' id='gform_theme_25' value='gravity-theme' \/>\n            <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_25' id='gform_style_settings_25' value='[]' \/>\n            <input type='hidden' class='gform_hidden' name='is_submit_25' value='1' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submit' value='25' \/>\n            \n            <input type='hidden' class='gform_hidden' name='gform_currency' data-currency='MYR' value='bTIWph2WRxXzc2RbZUf3w3VIIPXeTnfiUgUxJY0vzGpp1NTY0TvjOnLuHLITNMjhtkD5h++pmoXvJ8yJ1zd4GEGkWabj3XtzfCNK6T5TD06o34s=' \/>\n            <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' \/>\n            <input type='hidden' class='gform_hidden' name='state_25' value='WyJ7XCI4XCI6W1wiZDA1YjMyMDgxZGRlNGNjM2M0OTQxZDM1ZDkyMGM0ZDlcIixcIjdkMzA2NzRkMDVmODhhMzZkN2Y5OGQ1ZGE0ZWM1YWRjXCJdLFwiMjZcIjpbXCIwZWZkNGE4NWRiOGVlY2E3YTEyMzk2ZjgwNzcxY2EzYVwiXSxcIjI3XCI6W1wiYjhiNDQxZTA2MjA1MTBhMDEwMzE4MzQ3MjJkMmU3YTVcIl0sXCIyOFwiOltcIjM0YzYxOTFkNDI2YzBjYjEzOTc2NmIyNTI5ZTc2YzA1XCJdLFwiMTEuMVwiOlwiNTgwODZjZDhhMDY3ZmJiZjQzNmFhODk5YzE3YTUxYjVcIixcIjMwLjFcIjpcImU5MGNkZGU4MDI4Nzg1Y2IyNzVlMGRhNzJhNDlhYTRjXCIsXCIyNC4xXCI6XCIyZDdiOTBhNGM0ODc5OWI3ZWQ1YmQ5YzkyNmRhYWZlOFwiLFwiZ2Zvcm1fc3VibWlzc2lvbl9tZXRob2RcIjpbXCJjZjJiOGYyY2IxY2Y5M2FiOTZlZjgwNDJjZWMzYmI1Y1wiLFwiMDMyOWY5MDU1YWY0N2Q4MTJmMWFjMzZhMDY3ZjU0YWFcIixcIjEzODkyMjg5MWIyYWUwOGRlZTFkNGYzYWZlYjMzNzg4XCJdLFwiZ2Zvcm1fdGhlbWVcIjpcIjM4MTNhZmU0NGM4Y2I5YWZjOGM3NTYxN2RjYWM1NmRhXCIsXCJnZm9ybV9zdHlsZV9zZXR0aW5nc1wiOlwiYTk3MjM0Njc3YjkwM2Q1ZWQzMmY0NWI1Mjg1OWZlZWJcIixcImZvcm1faWRcIjpcIjY4Y2ZhMWI4YjRkMTUxYzI3Y2M5MmU4MTYyNDVjNGE1XCIsXCJ1cmxcIjpcIjAwNTU5NTRkODAzOTkxMmM3N2EzNGU3Y2FhMWY4ODc2XCIsXCJzdGF0ZV90aW1lc3RhbXBcIjpcIjY3NWFhYmIxMzM4M2FiMGU1MmJjODJmY2QwY2MxYjIyXCJ9IiwiMmFkNTZjNTRiOWZmMTM0OWY4MzBlMjZiNzAyOTc0ZGEiLDE3OTM3MzA2OTJd' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_25' id='gform_target_page_number_25' value='0' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_25' id='gform_source_page_number_25' value='1' \/>\n            <input type='hidden' name='gform_field_values' value='' \/>\n            \n        <\/div>\n                        <p style=\"display: none !important;\" class=\"akismet-fields-container\" data-prefix=\"ak_\"><label>&#916;<textarea name=\"ak_hp_textarea\" cols=\"45\" rows=\"8\" maxlength=\"100\"><\/textarea><\/label><input type=\"hidden\" id=\"ak_js_1\" name=\"ak_js\" value=\"240\"\/><script>\ndocument.getElementById( \"ak_js_1\" ).setAttribute( \"value\", ( new Date() ).getTime() );\n<\/script>\n<\/p><\/form>\n                        <\/div>\n\t\t                <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_25' id='gform_ajax_frame_25' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'><\/iframe>\n\t\t                <script>\ngform.initializeOnLoaded( function() {jQuery('#gform_ajax_frame_25').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_25');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_25').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_25').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_25').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_25').removeClass('gform_validation_error');}setTimeout( function() { \/* delay the scroll by 50 milliseconds to fix a bug in chrome *\/ jQuery(document).scrollTop(jQuery('#gform_wrapper_25').offset().top - mt); }, 50 );var current_page = jQuery('#gform_source_page_number_25').val();jQuery(document).trigger('gform_page_loaded', [25, current_page]);window['gf_submitting_25'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_25').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_25').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [25]);window['gf_submitting_25'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_25').text());}else{jQuery('#gform_25').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger(\"gform_pre_post_render\", [{ formId: \"25\", currentPage: \"current_page\", abort: function() { this.preventDefault(); } }]);        if (event && event.defaultPrevented) {                return;        }        const gformWrapperDiv = document.getElementById( \"gform_wrapper_25\" );        if ( gformWrapperDiv ) {            const visibilitySpan = document.createElement( \"span\" );            visibilitySpan.id = \"gform_visibility_test_25\";            gformWrapperDiv.insertAdjacentElement( \"afterend\", visibilitySpan );        }        const visibilityTestDiv = document.getElementById( \"gform_visibility_test_25\" );        let postRenderFired = false;        function triggerPostRender() {            if ( postRenderFired ) {                return;            }            postRenderFired = true;            gform.core.triggerPostRenderEvents( 25, current_page );            if ( visibilityTestDiv ) {                visibilityTestDiv.parentNode.removeChild( visibilityTestDiv );            }        }        function debounce( func, wait, immediate ) {            var timeout;            return function() {                var context = this, args = arguments;                var later = function() {                    timeout = null;                    if ( !immediate ) func.apply( context, args );                };                var callNow = immediate && !timeout;                clearTimeout( timeout );                timeout = setTimeout( later, wait );                if ( callNow ) func.apply( context, args );            };        }        const debouncedTriggerPostRender = debounce( function() {            triggerPostRender();        }, 200 );        if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) {            const observer = new MutationObserver( ( mutations ) => {                mutations.forEach( ( mutation ) => {                    if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) {                        debouncedTriggerPostRender();                        observer.disconnect();                    }                });            });            observer.observe( document.body, {                attributes: true,                childList: false,                subtree: true,                attributeFilter: [ 'style', 'class' ],            });        } else {            triggerPostRender();        }    } );} );\n<\/script>\n<\/div>\n\n      <!-- kept as a manual fallback in case the real form fails to load\n           for any reason \u2014 hidden by default -->\n      <button class=\"u4e-btn-outline\" id=\"u4e-test-submit\" style=\"display:none\">Having trouble? Skip form, go to success \u2192<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- SHARED: success -->\n  <section class=\"u4e-step\" data-step=\"success\" style=\"display:none\">\n    <div class=\"u4e-flow-inner u4e-center\">\n      <div class=\"u4e-success-check\">\u2713<\/div>\n      <h2 class=\"u4e-flow-h\" id=\"u4e-success-h\">Sent. You&#8217;re counted, and you&#8217;re on the letter.<\/h2>\n      <p class=\"u4e-flow-sub\" id=\"u4e-success-sub\" style=\"margin-left:auto;margin-right:auto\">Your entry has been added to the total. Your name added as a co-signer on this quarter&#8217;s open letter.<\/p>\n\n      <div class=\"u4e-card\" style=\"text-align:left\">\n        <div class=\"u4e-row\" id=\"u4e-success-row-balance\"><span id=\"u4e-success-balance-label\">Your amount<\/span><span class=\"u4e-v\" id=\"u4e-success-balance\">RM 10,000<\/span><\/div>\n        <div class=\"u4e-row\"><span>New total<\/span><span class=\"u4e-v\" id=\"u4e-success-total\">RM 25,482,560,325<\/span><\/div>\n      <\/div>\n\n      <button class=\"u4e-btn-primary\" style=\"margin-top:20px\" data-action=\"go\" data-target=\"goal\">Go back to start \u2192<\/button>\n    <\/div>\n  <\/section>\n\n<\/div>\n\n<style>\n  #u4e-full-flow {\n    font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n    background: #f6f4ef;\n    width: 100vw;\n    position: relative;\n    left: 50%;\n    right: 50%;\n    margin-left: -50vw;\n    margin-right: -50vw;\n    box-sizing: border-box;\n  }\n  \/* Three fonts, each with one job:\n       GreenpeaceSans  headings, eyebrows, big numbers, buttons (Planet 4)\n       Georgia         intro \/ lead paragraphs (our house style)\n       SourceSans3     text inside cards, forms, labels and fine print (Planet 4)\n     Every element inherits by default, so the theme's own h1\/h2\/p rules can't\n     swap fonts in; only the role rules below change the font. *\/\n  #u4e-full-flow { font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\n  #u4e-full-flow * { font-family: inherit; }\n  #u4e-full-flow h2.u4e-flow-h,\n  #u4e-full-flow .u4e-flow-eyebrow,\n  #u4e-full-flow .u4e-goal-num,\n  #u4e-full-flow .u4e-goal-h,\n  #u4e-full-flow .u4e-goal-link,\n  #u4e-full-flow .u4e-slider-amount,\n  #u4e-full-flow .u4e-disclosure-headline,\n  #u4e-full-flow .u4e-compare-block-name,\n  #u4e-full-flow .u4e-card-dark-label,\n  #u4e-full-flow .u4e-btn-primary,\n  #u4e-full-flow .u4e-btn-outline { font-family: \"GreenpeaceSans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\n  #u4e-full-flow .u4e-flow-sub { font-family: Georgia, \"Times New Roman\", serif; }\n  #u4e-full-flow .u4e-step { padding: 72px 24px; }\n  #u4e-full-flow .u4e-flow-inner { max-width: 736px; margin: 0 auto; }\n  #u4e-full-flow .u4e-flow-inner.u4e-center { text-align: center; max-width: 700px; }\n  #u4e-full-flow .u4e-back { font-size: 13px; font-weight: 700; color: #6b6b62; cursor: pointer; margin-bottom: 24px; }\n\n  #u4e-full-flow .u4e-flow-eyebrow { font-size: 13px; font-weight: 700; letter-spacing: 2px; color: #1a3409; margin-bottom: 16px; }\n  #u4e-full-flow h2.u4e-flow-h { font-size: clamp(24px, 3vw, 42px); font-weight: 700; line-height: 1.3; color: #000000; margin: 0 0 16px; }\n  #u4e-full-flow .u4e-accent { color: #1a3409; }\n  #u4e-full-flow .u4e-flow-sub { font-size: 16px; color: #4a4a44; line-height: 1.6; margin: 0 0 28px; max-width: 560px; }\n\n  #u4e-full-flow .u4e-goal-cards { display: flex; gap: 24px; flex-wrap: wrap; margin-top: 40px; }\n  #u4e-full-flow .u4e-goal-card { flex: 1; min-width: 260px; background: #ffffff; border: 1px solid #e2ded3; border-radius: 8px; padding: 32px 28px; cursor: pointer; transition: transform 0.15s ease, box-shadow 0.15s ease; }\n  #u4e-full-flow .u4e-goal-card:hover { transform: translateY(-4px); box-shadow: 0 16px 32px rgba(0,0,0,0.08); }\n  #u4e-full-flow .u4e-goal-num { font-size: 34px; font-weight: 700; color: #1a3409; margin-bottom: 10px; }\n  #u4e-full-flow .u4e-goal-h { font-size: 20px; font-weight: 700; line-height: 1.3; color: #000000; margin: 0 0 8px; }\n  #u4e-full-flow .u4e-goal-p { font-size: 13px; color: #6b6b62; line-height: 1.5; margin: 0 0 16px; }\n  #u4e-full-flow .u4e-goal-link { font-size: 12px; font-weight: 700; color: #1a3409; border: 2px solid #1a3409; border-radius: 8px; padding: 10px 18px; display: inline-block; }\n\n  #u4e-full-flow .u4e-goal-card-skip {\n    background: #fffbf0;\n    border: 1.5px dashed #a08a5e;\n    text-decoration: none;\n    display: flex;\n    flex-direction: column;\n    justify-content: center;\n  }\n  #u4e-full-flow .u4e-goal-card-skip .u4e-goal-p { color: #6b6b62; margin-bottom: 12px; }\n  #u4e-full-flow .u4e-goal-link-skip { color: #a08a5e; border-color: #a08a5e; }\n  #u4e-full-flow .u4e-goal-card-skip:hover .u4e-goal-link-skip { background: #a08a5e; color: #fff; }\n\n  #u4e-full-flow .u4e-field-label { display: block; font-size: 13px; font-weight: 700; color: #000000; margin-bottom: 8px; }\n  #u4e-full-flow .u4e-input { width: 100%; border: 1px solid #d8d3c6; border-radius: 8px; padding: 12px 14px; font-size: 14px; margin-bottom: 20px; box-sizing: border-box; }\n  #u4e-full-flow .u4e-select-list { background: #ffffff; border: 1px solid #e2ded3; border-radius: 8px; overflow: hidden; margin-bottom: 14px; }\n  #u4e-full-flow .u4e-select-row { padding: 12px 14px; font-size: 14px; color: #000000; border-bottom: 1px solid #e8e4d8; cursor: pointer; }\n  #u4e-full-flow .u4e-select-row:last-child { border-bottom: none; }\n  #u4e-full-flow .u4e-select-row:hover { background: #eeeade; }\n  #u4e-full-flow .u4e-select-row.u4e-selected { background: #eeeade; font-weight: 700; }\n  #u4e-full-flow .u4e-check-row { display: flex; justify-content: space-between; align-items: center; padding: 12px 14px; font-size: 14px; color: #000000; border-bottom: 1px solid #e8e4d8; cursor: pointer; }\n  #u4e-full-flow .u4e-check-row:last-child { border-bottom: none; }\n  #u4e-full-flow .u4e-bank-check { accent-color: #1a3409; width: 16px; height: 16px; }\n  #u4e-full-flow .u4e-slider-amount { font-size: 26px; font-weight: 700; color: #000000; margin-bottom: 12px; }\n\n  #u4e-full-flow .u4e-excluded-toggle { font-size: 12px; color: #6b6b62; cursor: pointer; text-decoration: underline; margin-bottom: 24px; display: inline-block; }\n  #u4e-full-flow .u4e-excluded-panel { display: none; background: #ffffff; border: 1px dashed #a08a5e; border-radius: 10px; padding: 16px 18px; margin-bottom: 24px; }\n  #u4e-full-flow .u4e-excluded-panel.u4e-open { display: block; }\n  #u4e-full-flow .u4e-excluded-panel .u4e-ex-row { font-size: 13px; line-height: 1.55; margin-bottom: 12px; }\n  #u4e-full-flow .u4e-excluded-panel .u4e-ex-row:last-child { margin-bottom: 0; }\n  #u4e-full-flow .u4e-excluded-panel .u4e-ex-bank { font-weight: 700; display: block; margin-bottom: 2px; }\n  #u4e-full-flow .u4e-excluded-panel .u4e-ex-reason { color: #6b6b62; }\n\n  #u4e-full-flow .u4e-disclosure-card { background: #ffffff; border: 1px solid #e2ded3; border-radius: 12px; padding: 22px; margin-bottom: 18px; }\n  #u4e-full-flow .u4e-disclosure-tag { display: inline-block; font-size: 10px; font-weight: 700; letter-spacing: .5px; color: #fff; background: #1a3409; border-radius: 5px; padding: 3px 8px; margin-bottom: 10px; text-transform: uppercase; }\n  #u4e-full-flow .u4e-disclosure-headline { font-size: 19px; font-weight: 700; line-height: 1.35; color: #000; margin-bottom: 8px; }\n  #u4e-full-flow .u4e-disclosure-detail { font-size: 13px; color: #4a4a44; line-height: 1.6; margin-bottom: 10px; }\n  #u4e-full-flow .u4e-disclosure-source { font-size: 11px; color: #8a8a80; }\n  #u4e-full-flow .u4e-disclosure-source a { color: #6b6b62; text-decoration: underline; }\n\n  #u4e-full-flow .u4e-deal-card { background: #ffffff; border: 1px solid #e2ded3; border-radius: 10px; padding: 16px 18px; margin-bottom: 12px; }\n  #u4e-full-flow .u4e-deal-entity { font-size: 14px; font-weight: 700; color: #000; margin-bottom: 4px; }\n  #u4e-full-flow .u4e-deal-instrument { font-size: 13px; color: #4a4a44; margin-bottom: 4px; }\n  #u4e-full-flow .u4e-deal-role { font-size: 12px; color: #1a3409; font-weight: 600; margin-bottom: 6px; }\n  #u4e-full-flow .u4e-deal-source { font-size: 11px; color: #8a8a80; line-height: 1.6; }\n  #u4e-full-flow .u4e-deal-source a { color: #6b6b62; text-decoration: underline; }\n\n  \/* v6: role + status badges *\/\n  #u4e-full-flow .u4e-badges { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }\n  #u4e-full-flow .u4e-badge { display: inline-block; font-size: 10px; font-weight: 700; letter-spacing: .4px; text-transform: uppercase; border-radius: 5px; padding: 3px 8px; line-height: 1.4; }\n  #u4e-full-flow .u4e-badge-role { background: #eeeade; color: #1a3409; }\n  #u4e-full-flow .u4e-badge-closed { background: #e8e6e0; color: #5a5a52; }\n  #u4e-full-flow .u4e-badge-open { background: #fff1c2; color: #6b4e00; }\n  #u4e-full-flow .u4e-badge-unknown { background: #ffffff; color: #6b6b62; border: 1px dashed #a8a49a; }\n  #u4e-full-flow .u4e-badge-info { background: #e3ecf5; color: #23415e; }\n\n  \/* v8: decluttered cards *\/\n  #u4e-full-flow .u4e-deal-summary { font-size: 13px; color: #3a3a35; line-height: 1.55; margin-bottom: 8px; }\n  #u4e-full-flow details.u4e-more > summary,\n  #u4e-full-flow details.u4e-legend2 > summary { cursor: pointer; font-size: 12px; font-weight: 700; color: #1a3409; list-style: none; }\n  #u4e-full-flow details.u4e-more > summary::-webkit-details-marker,\n  #u4e-full-flow details.u4e-legend2 > summary::-webkit-details-marker { display: none; }\n  #u4e-full-flow details.u4e-more > summary::after,\n  #u4e-full-flow details.u4e-legend2 > summary::after { content: \" +\"; }\n  #u4e-full-flow details.u4e-more[open] > summary::after,\n  #u4e-full-flow details.u4e-legend2[open] > summary::after { content: \" \\2212\"; }\n  #u4e-full-flow details.u4e-more[open] > summary { margin-bottom: 8px; }\n  #u4e-full-flow details.u4e-more .u4e-deal-instrument, #u4e-full-flow details.u4e-more .u4e-deal-role { font-weight: 400; color: #4a4a44; font-size: 12px; margin-bottom: 6px; }\n  #u4e-full-flow .u4e-deal-card { padding: 14px 16px; }\n  #u4e-full-flow .u4e-arrange-note { font-size: 13px; color: #4a4a44; line-height: 1.55; margin: 0 0 8px; }\n\n  \/* v9: \"What do these mean?\" \u2014 a contained key that mirrors the cards *\/\n  #u4e-full-flow details.u4e-legend2 { margin-bottom: 22px; }\n  #u4e-full-flow .u4e-legend2-body { margin-top: 10px; background: #fbfaf7; border: 1px solid #e2ded3; border-radius: 10px; padding: 16px 18px; }\n  #u4e-full-flow .u4e-legend2-h { font-size: 11px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #6b6b62; margin: 0 0 10px; }\n  #u4e-full-flow .u4e-legend2-h ~ .u4e-legend2-h { margin-top: 18px; }\n  #u4e-full-flow .u4e-legend2-row { border-left: 3px solid #e2ded3; padding: 1px 0 1px 12px; margin-bottom: 12px; }\n  #u4e-full-flow .u4e-legend2-row:last-child { margin-bottom: 0; }\n  #u4e-full-flow .u4e-legend2-term { font-size: 13px; font-weight: 700; color: #1a3409; line-height: 1.4; margin-bottom: 2px; }\n  #u4e-full-flow .u4e-legend2-desc { font-size: 13px; color: #4a4a44; line-height: 1.55; }\n  #u4e-full-flow .u4e-legend2-plant { border-left-color: #1a3409; }\n  #u4e-full-flow .u4e-legend2-utility { border-left-color: #a08a5e; }\n  #u4e-full-flow .u4e-legend2-notcoal { border-left-color: #9fb6cc; }\n  #u4e-full-flow .u4e-legend2-notcoal .u4e-legend2-term { color: #23415e; }\n  #u4e-full-flow .u4e-legend2-status { border-left: none; padding-left: 0; }\n  #u4e-full-flow .u4e-legend2-status .u4e-badge { margin-bottom: 4px; }\n\n  \/* v7: deal-type groups (Bank > deal type > cards) *\/\n  #u4e-full-flow .u4e-type-group { margin-bottom: 18px; }\n  #u4e-full-flow .u4e-type-h { font-size: 14px; font-weight: 700; color: #1a3409; margin: 6px 0 4px; }\n  #u4e-full-flow .u4e-type-desc { font-size: 12px; color: #6b6b62; line-height: 1.5; margin-bottom: 10px; }\n  #u4e-full-flow .u4e-type-notcoal .u4e-type-h { color: #23415e; }\n  #u4e-full-flow .u4e-type-notcoal .u4e-deal-card { border-left: 3px solid #9fb6cc; }\n  #u4e-full-flow .u4e-type-plant .u4e-deal-card { border-left: 3px solid #1a3409; }\n  #u4e-full-flow .u4e-type-utility .u4e-deal-card { border-left: 3px solid #a08a5e; }\n  #u4e-full-flow .u4e-deal-note { font-size: 12px; color: #4a4a44; line-height: 1.55; margin-bottom: 6px; }\n  #u4e-full-flow .u4e-deal-card.u4e-deal-closed { background: #fbfaf7; }\n  #u4e-full-flow .u4e-deal-card.u4e-deal-closed .u4e-deal-entity { color: #4a4a44; }\n\n  \/* v12: empty deal list + comparability note *\/\n  #u4e-full-flow .u4e-no-deals { font-size: 13px; color: #4a4a44; line-height: 1.55; background: #ffffff; border: 1px dashed #a8a49a; border-radius: 10px; padding: 14px 16px; margin: 0 0 18px; }\n  #u4e-full-flow .u4e-compare-basis { font-size: 13px; color: #23415e; line-height: 1.55; background: #e3ecf5; border-radius: 10px; padding: 12px 16px; margin: 0 0 22px; }\n\n  #u4e-full-flow .u4e-compare-block { margin-bottom: 24px; }\n  #u4e-full-flow .u4e-compare-block + .u4e-compare-block { border-top: 1px solid #e2ded3; padding-top: 28px; margin-top: 8px; }\n  #u4e-full-flow .u4e-compare-block-name { font-size: 22px; font-weight: 700; color: #000; margin-bottom: 12px; }\n\n  #u4e-full-flow .u4e-card { background: #ffffff; border: 1px solid #e2ded3; border-radius: 12px; padding: 24px; margin-bottom: 20px; }\n  #u4e-full-flow .u4e-card-dark { background: #16281a; color: #fff; }\n  #u4e-full-flow .u4e-card-dark-label { font-size: 12px; font-weight: 700; letter-spacing: 1px; color: #a8d15c; margin-bottom: 14px; }\n  #u4e-full-flow .u4e-card-text { margin: 0; font-size: 14px; color: #4a4a44; line-height: 1.6; }\n  #u4e-full-flow .u4e-card-text-dark { color: #c8d4bc; }\n  #u4e-full-flow .u4e-numbered-line { display: flex; gap: 10px; font-size: 14px; color: #c8d4bc; line-height: 1.6; margin-bottom: 10px; }\n  #u4e-full-flow .u4e-numbered-line span:first-child { color: #a8d15c; font-weight: 700; flex-shrink: 0; }\n\n  #u4e-full-flow .u4e-row { display: flex; justify-content: space-between; font-size: 14px; padding: 8px 0; border-bottom: 1px solid #e8e4d8; color: #4a4a44; }\n  #u4e-full-flow .u4e-row:last-child { border-bottom: none; }\n  #u4e-full-flow .u4e-v { font-weight: 700; color: #000000; }\n\n  #u4e-full-flow .u4e-btn-primary { display: block; width: 100%; max-width: 460px; background: #ffe100; color: #0d1b2e; border: none; font-size: 15px; font-weight: 700; padding: 16px; border-radius: 10px; cursor: pointer; margin-bottom: 12px; transition: transform 0.15s ease; }\n  #u4e-full-flow .u4e-btn-primary:hover { transform: translateY(-2px); }\n  #u4e-full-flow .u4e-btn-outline { display: block; width: 100%; max-width: 460px; background: transparent; color: #1a3409; border: 2px solid #1a3409; font-size: 14px; font-weight: 700; padding: 14px; border-radius: 10px; cursor: pointer; }\n\n  #u4e-full-flow .u4e-fine-print { font-size: 12px; color: #8a8a80; line-height: 1.55; margin-top: 16px; }\n  #u4e-full-flow .u4e-success-check { width: 56px; height: 56px; border-radius: 50%; background: #a8d15c; color: #16281a; display: flex; align-items: center; justify-content: center; font-size: 26px; margin: 0 auto 20px; }\n  #u4e-full-flow .u4e-pulse { animation: u4ePulse 0.5s ease; display: inline-block; }\n  @keyframes u4ePulse {\n    0% { transform: scale(1); }\n    40% { transform: scale(1.08); color: #3d8a15; }\n    100% { transform: scale(1); }\n  }\n\n  @media (max-width: 700px) {\n    #u4e-full-flow .u4e-goal-cards { flex-direction: column; }\n  }\n\n  \/* Gravity Form (id 25) \u2014 restyled once moved into our slot.\n     Verify the real ID in your live page source before relying on this. *\/\n  #gform_wrapper_25 {\n    max-width: 100%; margin: 0 !important; background: #ffffff;\n    border: 1px solid #e2ded3; border-radius: 12px; padding: 28px;\n    font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n  }\n  #gform_wrapper_25 .gform_heading { margin-bottom: 24px; }\n  #gform_wrapper_25 .gform_title { font-family: \"GreenpeaceSans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; font-size: 20px; font-weight: 700; color: #000000; margin: 0 0 6px; }\n  #gform_wrapper_25 .gform_description { font-size: 13px; color: #6b6b62; line-height: 1.5; margin: 0; }\n  #gform_wrapper_25 .gfield_label,\n  #gform_wrapper_25 label { font-size: 11px; font-weight: 700; color: #6b6b62; text-transform: uppercase; letter-spacing: 0.5px; }\n  #gform_wrapper_25 .gform-field-label--type-inline { font-size: 13px; text-transform: none; letter-spacing: normal; color: #000000; font-weight: 500; }\n  #gform_wrapper_25 input[type=\"text\"],\n  #gform_wrapper_25 input[type=\"email\"],\n  #gform_wrapper_25 input[type=\"tel\"],\n  #gform_wrapper_25 input[type=\"number\"] {\n    border: 1px solid #d8d3c6 !important; border-radius: 8px !important;\n    padding: 10px 12px !important; font-size: 13px !important;\n    width: 100% !important; box-sizing: border-box !important;\n  }\n  #gform_wrapper_25 input[type=\"radio\"],\n  #gform_wrapper_25 input[type=\"checkbox\"] { accent-color: #1a3409; }\n  #gform_wrapper_25 .gform_footer { margin-top: 20px; padding: 0; }\n  #gform_wrapper_25 .gform_button,\n  #gform_wrapper_25 input[type=\"submit\"] {\n    width: 100% !important; background: #ffe100 !important; color: #0d1b2e !important;\n    border: none !important; font-size: 15px !important; font-weight: 700 !important;\n    padding: 16px !important; border-radius: 10px !important; cursor: pointer !important;\n    font-family: \"GreenpeaceSans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif !important;\n  }\n  #gform_wrapper_25 .gfield { margin-bottom: 16px; }\n\n \/* ---------- Why and Demands ---------- *\/\n .gform_wrapper .u4e-form-why,\n  .gform_wrapper .u4e-form-why p,\n  .gform_wrapper .u4e-form-why li {\n    font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif !important;\n    font-size: 13px !important;\n    font-weight: 400 !important;\n    line-height: 1.6 !important;\n    color: #6b6b62 !important;\n  }\n  .gform_wrapper .u4e-form-why p.u4e-form-why-h {\n    color: #000000 !important;\n    margin: 0 0 4px !important;\n  }\n  .gform_wrapper .u4e-form-why ul {\n    list-style: disc !important;\n    margin: 0 0 14px !important;\n    padding-left: 18px !important;\n  }\n  .gform_wrapper .u4e-form-why li {\n    margin: 0 0 2px !important;\n  }\n\n \/* ---------- checkboxes ---------- *\/\n  .gform_wrapper .gchoice,\n  .gform_wrapper .ginput_container_consent {\n    display: flex !important; align-items: flex-start !important; gap: 10px !important;\n  }\n  .gform_wrapper input[type=\"checkbox\"] {\n    -webkit-appearance: checkbox !important; appearance: auto !important;\n    width: 16px !important; height: 16px !important; min-width: 16px !important;\n    margin: 2px 0 0 !important; padding: 0 !important;\n    border: none !important; background: none !important; box-shadow: none !important;\n    accent-color: #1a3409 !important; cursor: pointer;\n  }\n  .gform_wrapper input[type=\"checkbox\"]::before,\n  .gform_wrapper input[type=\"checkbox\"]::after { content: none !important; display: none !important; }\n  .gform_wrapper .gchoice label,\n  .gform_wrapper .ginput_container_consent label,\n  .gform_wrapper .gform-field-label--type-inline {\n    font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif !important;\n    font-size: 13px !important; font-weight: 400 !important;\n    line-height: 1.6 !important; color: #6b6b62 !important;\n    text-transform: none !important; letter-spacing: normal !important; margin: 0 !important;\n  }\n\n\/* ---------- spacing around the checkboxes ---------- *\/\n  .gform_wrapper .gfield--type-checkbox,\n  .gform_wrapper .gfield--type-consent { margin-bottom: 0 !important; }\n\n  \/* pulls the second checkbox up closer to the first *\/\n  .gform_wrapper .gfield--type-checkbox + .gfield--type-checkbox,\n  .gform_wrapper .gfield--type-consent + .gfield--type-consent,\n  .gform_wrapper .gfield--type-checkbox + .gfield--type-consent,\n  .gform_wrapper .gfield--type-consent + .gfield--type-checkbox { margin-top: -20px !important; }\n\n  \/* in case both checkboxes are choices inside one field *\/\n  .gform_wrapper .gfield_checkbox { display: flex !important; flex-direction: column !important; gap: 8px !important; }\n\n  \/* less space above the Submit button *\/\n  .gform_wrapper .gform_footer { margin-top: 12px !important; padding-top: 0 !important; }\n\n\/* ---------- closer gap between the why section and the checkboxes ---------- *\/\n  .gform_wrapper .gfield--type-html { margin-bottom: 0 !important; }\n  .gform_wrapper .gfield--type-html + .gfield--type-checkbox,\n  .gform_wrapper .gfield--type-html + .gfield--type-consent { margin-top: -7.5px !important; }\n\n<\/style>\n\n<script>\n(function(){\n  var flow = document.getElementById('u4e-full-flow');\n\n  \/\/ GUARD: if this whole block ever ends up pasted into the page twice,\n  \/\/ this stops the second copy from running at all (it caused doubled\n  \/\/ rows in the bank picker before).\n  if (!flow || flow.dataset.u4eInit) return;\n  flow.dataset.u4eInit = 'true';\n\n  var state = { checkerBank: 'maybank', amount: 10000, path: 'checker', compareOn: { maybank: true, cimb: true, rhb: true, hongleong: true } };\n\n  var lastFormAmount = null;\n  document.addEventListener('input', function(e){\n    if (e.target.closest && e.target.closest('.u4e-gf-amount')) lastFormAmount = e.target.value;\n  }, true);\n  document.addEventListener('submit', function(e){\n    var f = e.target.querySelector && e.target.querySelector('.u4e-gf-amount input');\n    if (f) lastFormAmount = f.value;\n  }, true);\n\n  \/\/ ================================\n  \/\/ \u26a0\ufe0f VERIFY THIS BEFORE RELYING ON IT \u26a0\ufe0f\n  \/\/ On the LIVE page, View Page Source, search \"gform_wrapper\" and copy\n  \/\/ the EXACT id you find \u2014 do not assume it's still 25.\n  var GF_WRAPPER_SELECTOR = \"#gform_wrapper_25\";\n  \/\/ ================================\n\n  window.addEventListener('load', function(){\n    var gfWrapperInit = document.querySelector(GF_WRAPPER_SELECTOR);\n    if (gfWrapperInit) gfWrapperInit.style.display = 'none';\n  });\n\n  \/\/ ================================\n  \/\/ LIVE TOTAL \u2014 real deployed Apps Script webhook URL.\n  \/\/ Submissions go through the Apps Script's own validation \/ reCAPTCHA \/\n  \/\/ rate-limit checks (see Code.gs). GF_FORM_IDS: only these form IDs\n  \/\/ trigger a webhook write.\n  var BANKOMETER_WEBHOOK_URL = \"https:\/\/script.google.com\/a\/macros\/greenpeace.org\/s\/AKfycbwb188851rzOcDiJe5izC8i8OalkU-mKydykVD6nPAd-WmaSY0_Nt-mPPuk2tfEleXs\/exec\";\n  var GF_FORM_IDS = [25];\n\n  function fetchLiveTotal(){\n    return fetch(BANKOMETER_WEBHOOK_URL + '?action=getTotal')\n      .then(function(res){ return res.json(); })\n      .then(function(data){ return Number(data.total) || 0; })\n      .catch(function(){ return null; });\n  }\n\n  function getRecaptchaToken(){\n    var field = document.querySelector('.g-recaptcha-response');\n    return field ? field.value : '';\n  }\n\n  function postPledge(amount, path){\n    var params = new URLSearchParams({\n      action: 'submit',\n      amount: String(amount),\n      path: path,\n      recaptchaToken: getRecaptchaToken()\n    });\n    return fetch(BANKOMETER_WEBHOOK_URL + '?' + params.toString())\n      .then(function(res){ return res.json(); })\n      .catch(function(){ return { error: 'network error' }; });\n  }\n  \/\/ ================================\n\n  \/\/ ---------- DATA: only what's actually sourced ----------\n  \/\/\n  \/\/ STRUCTURE: Bank > deal type > deal cards.\n  \/\/   type   'plant'   = Coal plant financing (issuer exists only to own\/run\n  \/\/                      a coal plant, so the money is tied to coal)\n  \/\/          'utility' = General financing for a utility whose plants include\n  \/\/                      coal (not earmarked for coal)\n  \/\/          'notcoal' = Coal power company, but the issuer has reported\n  \/\/                      where this money went and it wasn't coal\n  \/\/   status.kind 'open' = still outstanding per BIX \/ rating agency\n  \/\/               'info' = recently issued; maturity not the point of the card\n  \/\/   publish false = kept for the record but NOT shown until resolved\n  \/\/\n  \/\/ RULE (v12): only debt still outstanding with investors is shown.\n  \/\/ Left out: repaid or matured deals, deals transferred into a later\n  \/\/ programme, and debt held by the company's own shareholders (e.g. the\n  \/\/ Jimah \/ Special Power Vehicle Class B notes, removed in v12 on legal\n  \/\/ advice \u2014 see the \"Deal Status Check\" sheet in the workbook).\n  \/\/ REMINDER: remove the Sarawak Energy 4.850% 19.01.2027 card after it is repaid.\n  \/\/ Deals arranged jointly appear under every bank involved, with no\n  \/\/ per-bank split of the amount.\n  var STATUS_CHECKED = \"October 2026\";\n\n  var TYPES = {\n    plant:   { label: \"Coal power plants\",\n               desc: \"The company exists only to own and run a coal-fired power plant, so this money is tied to coal.\" },\n    utility: { label: \"Utilities that run coal plants \u2014 general borrowing, not earmarked for coal\",\n               desc: \"Money raised for a whole utility whose power plants include coal. It isn\u2019t earmarked for coal, and we can\u2019t say how much of it, if any, went to coal.\" },\n    notcoal: { label: \"Coal power company \u2014 but this money didn\u2019t go to coal\",\n               desc: \"The company runs coal plants, but it has reported where this money went \u2014 and it wasn\u2019t coal.\" }\n  };\n  var TYPE_ORDER = ['plant', 'utility', 'notcoal'];\n\n  \/\/ Shared deal records (reused under each bank that arranged them)\n  var TBE_PLANT = \"Tanjung Bin Energy (1,000MW coal-fired power plant, Johor)\";\n  var TBE2021_NOTE = \"RM2.97bn is still outstanding across 17 tranches. About RM2.4bn of this is the plant\u2019s original 2012 construction sukuk, transferred into this programme in 2021 on the same terms; RM550m was new money that refinanced the plant\u2019s 2012 bank loans. CIMB and RHB arranged it jointly \u2014 each bank\u2019s share isn\u2019t disclosed, so we don\u2019t split the amount.\";\n  var TBE2021_SOURCES = [\n    { label: \"TBE Information Memorandum, 14 Apr 2021, p.4 (via BIX)\", url: \"https:\/\/bixmalaysia.com\/bixapi\/search\/DownloadDocument?DocID=11676&DocTypeID=1\" },\n    { label: \"BIX Malaysia\", url: \"https:\/\/www.bixmalaysia.com\/security-info-page?SBID=10405\" },\n    { label: \"RAM, Nov 2025\", url: \"https:\/\/www.ram.com.my\/pressrelease\/?prviewid=7134\" }\n  ];\n  var TBE2017_NOTE = \"Raised to refinance the plant\u2019s junior loan. BIX Malaysia shows the full RM800m still outstanding, due 13 March 2037.\";\n  var TBE2017_SOURCES = [\n    { label: \"NST, Mar 2017\", url: \"https:\/\/www.nst.com.my\/amp\/business\/home\/2017\/03\/221160\/malakoffs-unit-issues-rm800-mil-sukuk-wakalah\" },\n    { label: \"BIX Malaysia: TBE 5.900% 13.03.2037\", url: \"https:\/\/bixmalaysia.com\/security-info-page?SBID=183\" }\n  ];\n\n  var BANKS = {\n    maybank: {\n      name: \"Maybank\",\n      disclosed: {\n        short: \"A group-wide figure from its own 2025 report \u2014 not specific to any account.\",\n        headline: \"Maybank reports RM1.45 billion in financing exposure to coal-fired independent power producers.\",\n        detail: \"The figure appears in a note to the Power sector table of Maybank\u2019s 2025 Sustainability and Environmental Report, which says the table excludes \u201cexposures to IPP-Coal of RM 1,449.8 million\u201d. It\u2019s a group-wide figure, not specific to any one account or product.\",\n        source: \"Maybank Sustainability and Environmental Report 2025, p.207\",\n        sourceUrl: \"https:\/\/www.maybank.com\/iwov-resources\/documents\/pdf\/annual-report\/2025\/maybank-sustainability-and-environmental-report-2025.pdf\"\n      },\n      deals: [\n        {\n          type: \"plant\",\n          title: \"Tanjung Bin Energy coal plant, Johor\",\n          summary: \"RM800m sukuk (2017). Maybank was a joint lead arranger.\",\n          entity: TBE_PLANT,\n          instrument: \"RM800m Sukuk Wakalah, issued March 2017\",\n          role: \"Joint principal adviser and joint lead arranger (Maybank Investment Bank), with CIMB Investment Bank; also joint lead manager. BIX Malaysia lists Maybank Investment Bank as lead arranger.\",\n          status: { kind: \"open\", label: \"Still outstanding \u00b7 due Mar 2037\" },\n          note: TBE2017_NOTE,\n          sources: TBE2017_SOURCES\n        },\n        {\n          type: \"notcoal\",\n          title: \"Malakoff Power\",\n          summary: \"RM450m sukuk (2026). Malakoff reports none of it went to coal \u2014 but across this and an earlier sukuk, 21% went to two new gas-fired power plants.\",\n          entity: \"Malakoff Power Bhd (part of Malakoff Corporation, which operates coal-fired power plants)\",\n          instrument: \"RM450m SRI Sukuk Murabahah, issued April 2026\",\n          role: \"Sole lead manager, facility agent and sustainability structuring adviser (Maybank Investment Bank); Shariah adviser (Maybank Islamic).\",\n          status: { kind: \"info\", label: \"Issued Apr 2026\" },\n          note: \"<strong>This money did not go to coal.<\/strong> Malakoff reports that this sukuk and its RM250m sukuk from February 2025 (RM700m together) went <strong>21% (RM147m) to two new gas-fired power plants<\/strong> (2,800MW, due 2031\u20132032), 60% to solar and hydro, and 19% to waste management. Malakoff calls the gas spending \u201ctransition\u201d.\",\n          sources: [\n            { label: \"Malakoff Sustainability Sukuk Progress Report, Jul 2026, p.7\", url: \"https:\/\/www.malakoff.com.my\/wp-content\/uploads\/2026\/07\/Malakoff-ASEAN-Sustainability-Sukuk-Progress-Report-2026_FINAL.pdf\" },\n            { label: \"Malakoff press release, 28 Apr 2026\", url: \"https:\/\/www.malakoff.com.my\/wp-content\/uploads\/2026\/04\/Press-Release_Malakoff-Power-issues-ASEANs-first-SRI-Sukuk-Murabahah-for-Green_FINAL.pdf\" }\n          ]\n        }\n      ]\n    },\n    cimb: {\n      name: \"CIMB\",\n      disclosed: {\n        headline: \"CIMB puts coal at 0.3% of total loans by one measure, and under 0.5% by another.\",\n        short: \"CIMB notes the two figures cover different scopes. It also says its coal exposure through mixed power companies is \u201ca more material portion\u201d of its portfolio.\",\n        detail: \"A chart puts coal-related sub-sectors (coal-fired power plants, extraction, trading and others) at 0.3% of total Group gross loans and financing as at 31 December 2025. Elsewhere, CIMB puts its direct exposure to coal \u2014 entities under its coal sector codes, including thermal coal mining and coal-fired power plants \u2014 at less than 0.5% of its total financing portfolio. CIMB notes that figures differ across its disclosures because their scope differs. It also says its coal exposure through diversified power companies with mixed energy portfolios \u201crepresents a more material portion of our portfolio.\u201d\",\n        source: \"CIMB Sustainability Report 2025, pp.39, 72\u201373\",\n        sourceUrl: \"https:\/\/www.cimb.com\/content\/dam\/cimb\/group\/documents\/sustainbility\/sr25\/cimb-sr-2025.pdf\"\n      },\n      deals: [\n        {\n          type: \"plant\",\n          title: \"Tanjung Bin Energy coal plant, Johor\",\n          summary: \"RM2.97bn sukuk programme (2021). CIMB was a joint lead arranger, with RHB.\",\n          entity: TBE_PLANT,\n          instrument: \"RM4.5bn Sukuk Murabahah programme, set up March 2021\",\n          role: \"Joint principal adviser, joint lead arranger and joint lead manager (CIMB Investment Bank), with RHB Investment Bank. CIMB Islamic was joint Shariah adviser.\",\n          status: { kind: \"open\", label: \"Still outstanding \u00b7 due 2027\u20132035\" },\n          note: TBE2021_NOTE,\n          sources: TBE2021_SOURCES\n        },\n        {\n          type: \"plant\",\n          title: \"Tanjung Bin Energy coal plant, Johor\",\n          summary: \"RM800m sukuk (2017). CIMB was a joint lead arranger, with Maybank (as reported by NST).\",\n          entity: TBE_PLANT,\n          instrument: \"RM800m Sukuk Wakalah, issued March 2017\",\n          role: \"Joint principal adviser and joint lead arranger (CIMB Investment Bank), with Maybank Investment Bank, as reported by NST; also joint lead manager. BIX Malaysia lists only Maybank Investment Bank as lead arranger.\",\n          status: { kind: \"open\", label: \"Still outstanding \u00b7 due Mar 2037\" },\n          note: TBE2017_NOTE,\n          sources: TBE2017_SOURCES\n        },\n        {\n          type: \"utility\",\n          title: \"Tenaga Nasional (TNB)\",\n          summary: \"RM3bn bonds (2021). CIMB was a joint lead manager. General borrowing \u2014 not earmarked for coal.\",\n          entity: \"Tenaga Nasional Bhd (national utility; its power plants include coal)\",\n          instrument: \"RM3bn Islamic medium-term notes, November 2021\",\n          role: \"Joint lead manager and joint bookrunner (CIMB Investment Bank), with AmInvestment Bank.\",\n          status: { kind: \"open\", label: \"Still outstanding \u00b7 due 2028\u20132041\" },\n          note: \"General borrowing by TNB \u2014 the announcement doesn\u2019t say what the money is for. TNB has committed to cutting its coal generation capacity by 50% by 2035. Tranches fall due between November 2028 and November 2041.\",\n          sources: [\n            { label: \"The Edge\", url: \"https:\/\/theedgemalaysia.com\/article\/tnb-issues-rm3b-worth-islamic-bonds\" },\n            { label: \"TNB: energy transition\", url: \"https:\/\/www.tnb.com.my\/sustainability\/esg-stories-energy-transition-sustainable-capital\" }\n          ]\n        }\n      ]\n    },\n    rhb: {\n      name: \"RHB\",\n      disclosed: {\n        headline: \"RHB doesn't publish a coal exposure figure.\",\n        short: \"It says it won\u2019t finance new coal mines or coal plants, and will reduce existing coal exposure in phases.\",\n        detail: \"RHB says it won't finance new thermal coal mining projects or coal-fired power plants, and will take a \u201cphased approach\u201d to reducing its existing coal exposure. It may still finance customers that earn revenue from coal if they show a clear commitment to transition. Its insurance arm prohibits underwriting coal-related industries for all new policies.\",\n        source: \"RHB Sustainability Report 2025, pp.52, 58\",\n        sourceUrl: \"https:\/\/www.rhbgroup.com\/-\/media\/Assets\/Corporate-Website\/Document\/Supported-Doc\/General-Meetings\/RHB-Sustainability-Report-2025.pdf\"\n      },\n      deals: [\n        {\n          type: \"plant\",\n          title: \"Tanjung Bin Energy coal plant, Johor\",\n          summary: \"RM2.97bn sukuk programme (2021). RHB was a joint lead arranger, with CIMB.\",\n          entity: TBE_PLANT,\n          instrument: \"RM4.5bn Sukuk Murabahah programme, set up March 2021\",\n          role: \"Joint principal adviser, joint lead arranger and joint lead manager (RHB Investment Bank), with CIMB Investment Bank; also facility agent. RHB Islamic was joint Shariah adviser. BIX Malaysia lists RHB Investment Bank as lead arranger.\",\n          status: { kind: \"open\", label: \"Still outstanding \u00b7 due 2027\u20132035\" },\n          note: TBE2021_NOTE,\n          sources: TBE2021_SOURCES\n        },\n        {\n          type: \"utility\",\n          title: \"Sarawak Energy\",\n          summary: \"RM1.25bn sukuk (2020). RHB was lead arranger. General borrowing \u2014 not earmarked for coal.\",\n          entity: \"Sarawak Energy Bhd (state utility; coal made up 12% of its main-grid electricity in 2024, from three coal plants)\",\n          instrument: \"RM1.25bn Sukuk Musyarakah, issued June 2020\",\n          role: \"Lead arranger (RHB Investment Bank), as listed by BIX Malaysia.\",\n          status: { kind: \"open\", label: \"Still outstanding \u00b7 due Jun 2035\" },\n          note: \"General-purpose funding for the whole company, not earmarked for coal. Hydropower made up 76% of its main-grid electricity in 2024.\",\n          sources: [\n            { label: \"BIX Malaysia\", url: \"https:\/\/www.bixmalaysia.com\/security-info-page?SBID=9321\" },\n            { label: \"Sarawak Energy Annual & Sustainability Report 2024, p.58 (PDF)\", url: \"https:\/\/www.sarawakenergy.com\/assets\/pdf\/Sarawak-Energy-ASR2024.pdf\" },\n            { label: \"Sarawak Energy Annual Report 2025, pp.90\u201391\", url: \"https:\/\/sarawakenergy.com\/investors\/annual-and-sustainability-reports\" }\n          ]\n        },\n        {\n          type: \"utility\",\n          title: \"Sarawak Energy\",\n          summary: \"RM1.3bn sukuk (2012). RHB was lead arranger. General borrowing \u2014 not earmarked for coal.\",\n          entity: \"Sarawak Energy Bhd (state utility; coal made up 12% of its main-grid electricity in 2024, from three coal plants)\",\n          instrument: \"RM1.3bn Sukuk Musyarakah, issued January 2012 (15-year)\",\n          role: \"Principal adviser and lead arranger of the sukuk programme (RHB Investment Bank); joint lead manager for the 2012 issue. BIX Malaysia lists RHB Investment Bank as lead arranger.\",\n          status: { kind: \"open\", label: \"Still outstanding \u00b7 due Jan 2027\" },\n          note: \"General-purpose funding for the whole company, not earmarked for coal. At the time, Sarawak Energy said this money would pay for power plants and transmission lines under construction, without naming the plants. RM1.3bn is still outstanding, due 19 January 2027.\",\n          sources: [\n            { label: \"BIX Malaysia: SEB IMTN 4.850% 19.01.2027\", url: \"https:\/\/www.bixmalaysia.com\/security-info-page?SBID=2759\" },\n            { label: \"Eco-Business, Dec 2011\", url: \"https:\/\/www.eco-business.com\/zh-hans\/news\/seb-to-issue-more-sukuk-to-meet-additional-rm1-5bil-to-fund-power-plant-projects\/\" },\n            { label: \"Sarawak Energy Annual & Sustainability Report 2024, p.58 (PDF)\", url: \"https:\/\/www.sarawakenergy.com\/assets\/pdf\/Sarawak-Energy-ASR2024.pdf\" }\n          ]\n        }\n      ]\n    },\n    hongleong: {\n      name: \"Hong Leong Bank\",\n      disclosed: {\n        headline: \"Hong Leong doesn't publish a coal exposure figure.\",\n        short: \"It says it stopped financing new coal plants in 2021, and gives two dates (2026 and 2030) for stopping all coal plant financing.\",\n        detail: \"Hong Leong says it stopped financing new coal-fired power plants from 1 July 2021. Its 2025 report gives two dates for stopping financing of all coal-fired power plants: 1 July 2026 in its sustainability sections, and 1 July 2030 in an extract from its credit policy.\",\n        source: \"Hong Leong Bank Sustainability Report 2025, pp.53, 71, 161\",\n        sourceUrl: \"https:\/\/www.hlb.com.my\/content\/dam\/hlb\/my\/docs\/pdf\/About-Us\/sustainability\/hlb-sustainability-report-2025.pdf\"\n      },\n      \/\/ v12: the Jimah \/ Special Power Vehicle Class B card (2005, as MIMB)\n      \/\/ was removed on legal advice. No current deals found.\n      deals: []\n    }\n  };\n\n  \/\/ drop anything flagged publish:false before it reaches the page\n  Object.keys(BANKS).forEach(function(k){\n    BANKS[k].deals = BANKS[k].deals.filter(function(d){ return d.publish !== false; });\n  });\n\n  var EXCLUDED = [\n    { name: \"Public Bank\", reason: \"We couldn't find a publicly recorded coal financing deal involving Public Bank \u2014 no bond, sukuk or loan record we could trace. That isn't a clean bill: a lot of bank lending, like private loans, simply isn't public.\" },\n    { name: \"Bank Islam\", reason: \"The only public record we found was a general sustainability index listing, not anything coal-specific. We also didn't identify a coal-specific policy in Bank Islam's 2025 Sustainability Report.\" }\n  ];\n\n  \/\/ v9: the key is built from TYPES, so it always lists exactly the deal\n  \/\/ types the cards use, in the same order, with the same colours.\n  var LEGEND_HTML = '<p class=\"u4e-arrange-note\">Arranging means helping a company raise money from investors, for a fee. It doesn\u2019t mean the bank lent its own money or still holds the debt.<\/p>'\n    + '<details class=\"u4e-legend2\"><summary>What do these mean?<\/summary>'\n    + '<div class=\"u4e-legend2-body\">'\n    +   '<div class=\"u4e-legend2-h\">Deal types<\/div>'\n    +   TYPE_ORDER.map(function(t){\n          return '<div class=\"u4e-legend2-row u4e-legend2-' + t + '\">'\n            + '<div class=\"u4e-legend2-term\">' + TYPES[t].label + '<\/div>'\n            + '<div class=\"u4e-legend2-desc\">' + TYPES[t].desc + '<\/div>'\n            + '<\/div>';\n        }).join('')\n    +   '<div class=\"u4e-legend2-h\">Status<\/div>'\n    +   '<div class=\"u4e-legend2-row u4e-legend2-status\">'\n    +     '<span class=\"u4e-badge u4e-badge-open\">Still outstanding<\/span>'\n    +     '<div class=\"u4e-legend2-desc\">The company still owes this debt. It doesn\u2019t tell us who holds it today.<\/div>'\n    +   '<\/div>'\n    + '<\/div>'\n    + '<\/details>';\n\n  var METHOD_NOTE = \"Deals are Greenpeace Malaysia\u2019s own research from public bond, sukuk and rating-agency records \u2014 not figures reported by the banks. \"\n    + \"Only debt still outstanding with investors is shown; deals that have been repaid, or whose debt is held by the company\u2019s own shareholders, are left out. \"\n    + \"Checked \" + STATUS_CHECKED + \".\";\n\n  \/\/ v12: empty state \u2014 says what we looked at, without implying zero exposure\n  var NO_DEALS_HTML = '<p class=\"u4e-no-deals\">We didn\u2019t find any current deals in public bond, sukuk or rating-agency records. That doesn\u2019t mean there are none \u2014 a lot of bank lending, like private loans, isn\u2019t public.<\/p>';\n\n  flow.querySelectorAll('.u4e-legend-slot').forEach(function(slot){ slot.innerHTML = LEGEND_HTML; });\n  flow.querySelectorAll('.u4e-method-note').forEach(function(p){ p.textContent = METHOD_NOTE; });\n\n  function renderExcludedPanel(el){\n    el.innerHTML = EXCLUDED.map(function(b){\n      return '<div class=\"u4e-ex-row\"><span class=\"u4e-ex-bank\">'+b.name+'<\/span><span class=\"u4e-ex-reason\">'+b.reason+'<\/span><\/div>';\n    }).join('');\n  }\n  renderExcludedPanel(flow.querySelector('#u4e-checker-excluded'));\n  renderExcludedPanel(flow.querySelector('#u4e-compare-excluded'));\n\n  function sourcesHTML(list){\n    return list.map(function(s){\n      return s.url ? '<a href=\"'+s.url+'\" target=\"_blank\" rel=\"noopener\">'+s.label+'<\/a>' : s.label;\n    }).join(' \u00b7 ');\n  }\n\n  function dealCardHTML(d){\n    return '<div class=\"u4e-deal-card\">'\n      + '<div class=\"u4e-badges\"><span class=\"u4e-badge u4e-badge-'+d.status.kind+'\">'+d.status.label+'<\/span><\/div>'\n      + '<div class=\"u4e-deal-entity\">'+(d.title || d.entity)+'<\/div>'\n      + '<div class=\"u4e-deal-summary\">'+(d.summary || '')+'<\/div>'\n      + '<details class=\"u4e-more\"><summary>Details and sources<\/summary>'\n      +   '<div class=\"u4e-deal-instrument\"><strong>Borrower:<\/strong> '+d.entity+'<\/div>'\n      +   '<div class=\"u4e-deal-instrument\"><strong>Deal:<\/strong> '+d.instrument+'<\/div>'\n      +   '<div class=\"u4e-deal-role\"><strong>Bank\u2019s role:<\/strong> '+d.role+'<\/div>'\n      +   (d.note ? '<div class=\"u4e-deal-note\">'+d.note+'<\/div>' : '')\n      +   '<div class=\"u4e-deal-source\">Sources: '+sourcesHTML(d.sources)+' \u00b7 Checked '+STATUS_CHECKED+'<\/div>'\n      + '<\/details>'\n      + '<\/div>';\n  }\n\n  \/\/ Bank > deal type > cards. v12: each section's description is shown\n  \/\/ under its heading, not only inside \"What do these mean?\".\n  function dealsByTypeHTML(deals){\n    return TYPE_ORDER.map(function(t){\n      var group = deals.filter(function(d){ return d.type === t; });\n      if (!group.length) return '';\n      return '<div class=\"u4e-type-group u4e-type-'+t+'\">'\n        + '<div class=\"u4e-type-h\">'+TYPES[t].label+'<\/div>'\n        + '<div class=\"u4e-type-desc\">'+TYPES[t].desc+'<\/div>'\n        + group.map(dealCardHTML).join('')\n        + '<\/div>';\n    }).join('');\n  }\n\n  function renderDeals(container, deals){\n    container.innerHTML = deals.length ? dealsByTypeHTML(deals) : NO_DEALS_HTML;\n  }\n\n  \/\/ ---------- checker bank picker ----------\n  var checkerList = flow.querySelector('#u4e-checker-bank-list');\n  Object.keys(BANKS).forEach(function(key, i){\n    var row = document.createElement('div');\n    row.className = 'u4e-select-row' + (i === 0 ? ' u4e-selected' : '');\n    row.dataset.bank = key;\n    row.textContent = BANKS[key].name;\n    checkerList.appendChild(row);\n  });\n  checkerList.addEventListener('click', function(e){\n    var row = e.target.closest('.u4e-select-row');\n    if (!row) return;\n    state.checkerBank = row.dataset.bank;\n    checkerList.querySelectorAll('.u4e-select-row').forEach(function(r){ r.classList.toggle('u4e-selected', r === row); });\n  });\n\n  function checkerGo(){\n    var amt = Number(flow.querySelector('#u4e-checker-amount').value) || 0;\n    state.amount = amt;\n    var b = BANKS[state.checkerBank];\n    flow.querySelector('#u4e-checker2-bank-name').textContent = b.name;\n    flow.querySelector('#u4e-checker2-sub').textContent = amt\n      ? 'You told us you hold roughly RM ' + amt.toLocaleString() + ' with ' + b.name + '. Banks pool deposits, so no one can trace where yours goes. Here\u2019s what ' + b.name + ' reports about coal, and what we found in public deal records.'\n      : 'Here\\'s what\\'s publicly known about ' + b.name + '.';\n    flow.querySelector('#u4e-checker2-headline').textContent = b.disclosed.headline;\n    flow.querySelector('#u4e-checker2-short').textContent = b.disclosed.short;\n    flow.querySelector('#u4e-checker2-detail').textContent = b.disclosed.detail;\n    flow.querySelector('#u4e-checker2-source').innerHTML = 'Source: ' + (b.disclosed.sourceUrl ? '<a href=\"'+b.disclosed.sourceUrl+'\" target=\"_blank\" rel=\"noopener\">'+b.disclosed.source+'<\/a>' : b.disclosed.source);\n    renderDeals(flow.querySelector('#u4e-checker2-deals'), b.deals);\n    go('checker2');\n  }\n\n  \/\/ ---------- compare ----------\n  flow.querySelectorAll('.u4e-bank-check').forEach(function(box){\n    box.addEventListener('change', function(){\n      state.compareOn[box.dataset.bank] = box.checked;\n    });\n  });\n\n  function compareGo(){\n    var range = flow.querySelector('#u4e-compare-range');\n    state.amount = Number(range.value);\n\n    var active = Object.keys(BANKS).filter(function(k){ return state.compareOn[k]; });\n    var container = flow.querySelector('#u4e-compare2-cards');\n    if (active.length === 0){\n      container.innerHTML = '<p class=\"u4e-flow-sub\">Go back and select at least one bank.<\/p>';\n    } else {\n      container.innerHTML = active.map(function(key){\n        var b = BANKS[key];\n        var html = '<div class=\"u4e-compare-block\">'\n          + '<div class=\"u4e-compare-block-name\">'+b.name+'<\/div>'\n          + '<div class=\"u4e-disclosure-card\">'\n          + '<div class=\"u4e-disclosure-tag\">What the bank reports<\/div>'\n          + '<div class=\"u4e-disclosure-headline\">'+b.disclosed.headline+'<\/div>'\n          + '<div class=\"u4e-disclosure-detail\">'+b.disclosed.short+'<\/div>'\n          + '<details class=\"u4e-more\"><summary>Read more<\/summary><div class=\"u4e-disclosure-detail\">'+b.disclosed.detail+'<\/div>'\n          + '<div class=\"u4e-disclosure-source\">Source: '+(b.disclosed.sourceUrl ? '<a href=\"'+b.disclosed.sourceUrl+'\" target=\"_blank\" rel=\"noopener\">'+b.disclosed.source+'<\/a>' : b.disclosed.source)+'<\/div><\/details>'\n          + '<\/div>';\n        html += '<p class=\"u4e-field-label\" style=\"margin-top:16px\">Deals involving coal power companies that ' + b.name + ' helped arrange<\/p>';\n        html += b.deals.length ? dealsByTypeHTML(b.deals) : NO_DEALS_HTML;\n        html += '<\/div>';\n        return html;\n      }).join('');\n    }\n\n    flow.querySelector('#u4e-compare2-eyebrow').textContent = 'STEP 2 OF 2 \u00b7 ' + active.length + (active.length === 1 ? ' BANK' : ' BANKS') + ' \u2014 RM ' + state.amount.toLocaleString();\n    go('compare2');\n  }\n\n  function goPledge(path){\n    state.path = path;\n    var isCompare = path === 'compare';\n    var formatted = 'RM ' + state.amount.toLocaleString();\n\n    flow.querySelector('#u4e-pledge-back').setAttribute('data-target', isCompare ? 'compare2' : (path === 'direct' ? 'goal' : 'checker2'));\n\n    flow.querySelector('#u4e-pledge-h').innerHTML = isCompare\n      ? 'Confirm your plan, <span class=\"u4e-accent\">add your name.<\/span>'\n      : 'Confirm your number, <span class=\"u4e-accent\">add your name.<\/span>';\n\n    flow.querySelector('#u4e-pledge-step1').textContent = isCompare\n      ? \"Your planned amount joins the public Bankometer total, marked as intent \u2014 not yet an existing account and not a donation.\"\n      : \"Your entry joins the public Bankometer total.\";\n\n    flow.querySelector('#u4e-pledge-step2').textContent = isCompare\n      ? \"Your name is added as a co-signer on this quarter's open letter \u2014 a signal that new customers expect coal-free banking, not just existing ones.\"\n      : \"Your name is added as a co-signer on this quarter's open letter to Bank Negara Malaysia, the Securities Commission, and the banks named on this page \u2014 real advocacy, not a symbolic count.\";\n\n    flow.querySelector('#u4e-pledge-step3').textContent = isCompare\n      ? \"You haven't opened an account yet. This declares intent, not a transaction.\"\n      : 'Nothing moves or leaves your own account. This is a declaration, not a transaction.';\n\n    flow.querySelector('#u4e-success-balance').textContent = formatted;\n    flow.querySelector('#u4e-success-balance-label').textContent = isCompare ? 'Your planned amount' : 'Your amount';\n\n    go('pledge');\n\n    var gfWrapper = document.querySelector(GF_WRAPPER_SELECTOR);\n    var gfSlot = flow.querySelector('#u4e-gf-slot');\n    if (gfWrapper && gfSlot) {\n      if (gfWrapper.parentNode !== gfSlot) gfSlot.appendChild(gfWrapper);\n      gfWrapper.style.display = 'block';\n\n      var gfSubmitBtn = gfWrapper.querySelector('input[type=\"submit\"]');\n      if (gfSubmitBtn) {\n        gfSubmitBtn.value = isCompare ? 'Send my plan and my name \u2192' : 'Send my number and my name \u2192';\n      }\n\n      var gfAmountField = gfWrapper.querySelector('.u4e-gf-amount input');\n      if (gfAmountField) gfAmountField.value = state.amount;\n    } else {\n      var fallbackBtn = flow.querySelector('#u4e-test-submit');\n      if (fallbackBtn) fallbackBtn.style.display = 'block';\n    }\n  }\n\n  function go(step){\n    flow.querySelectorAll('.u4e-step').forEach(function(s){ s.style.display = 'none'; });\n    var target = flow.querySelector('.u4e-step[data-step=\"' + step + '\"]');\n    if (target) target.style.display = 'block';\n    window.scrollTo({top: flow.offsetTop - 40, behavior: 'smooth'});\n  }\n\n  flow.querySelectorAll('[data-toggle]').forEach(function(t){\n    t.addEventListener('click', function(){\n      var panel = flow.querySelector('#' + t.getAttribute('data-toggle'));\n      if (panel) panel.classList.toggle('u4e-open');\n    });\n  });\n\n  \/\/ single delegated click handler for ALL step navigation\n  flow.addEventListener('click', function(e){\n    var el = e.target.closest('[data-action]');\n    if (!el) return;\n    var action = el.getAttribute('data-action');\n\n    if (action === 'go') go(el.getAttribute('data-target'));\n    else if (action === 'checker-go') checkerGo();\n    else if (action === 'compare-go') compareGo();\n    else if (action === 'pledge') goPledge(el.getAttribute('data-path'));\n  });\n\n  var compareRangeInput = flow.querySelector('#u4e-compare-range');\n  compareRangeInput.addEventListener('input', function(){\n    flow.querySelector('#u4e-compare-amt').textContent = 'RM ' + Number(compareRangeInput.value).toLocaleString();\n  });\n\n  \/\/ ================================\n  \/\/ Fallback button \u2014 only shows if the real form fails to load. See\n  \/\/ the \"else\" branch in goPledge() above.\n  \/\/ ================================\n  var testSubmitBtn = flow.querySelector('#u4e-test-submit');\n  if (testSubmitBtn) {\n    testSubmitBtn.addEventListener('click', function(){\n      flow.querySelector('#u4e-success-row-balance').style.display = 'flex';\n      flow.querySelector('#u4e-success-h').textContent = \"Sent. You're counted, and you're on the letter.\";\n      var balanceWord = state.path === 'compare' ? 'planned amount' : 'entry';\n      flow.querySelector('#u4e-success-sub').textContent = \"Your \" + balanceWord + \" has been added to the total. Your name added as a co-signer on this quarter's open letter.\";\n      go('success');\n    });\n  }\n\n  \/\/ ================================\n  \/\/ REAL GRAVITY FORMS SUBMISSION HOOK\n  \/\/ Fires after a successful AJAX submit (requires AJAX enabled in the\n  \/\/ form's WordPress settings). jQuery is always available in WordPress.\n  \/\/ ================================\n  if (window.jQuery) {\n    jQuery(document).on('gform_confirmation_loaded', function(event, formId){\n      \/\/ only react to OUR form(s)\n      if (GF_FORM_IDS.indexOf(Number(formId)) === -1) return;\n\n      var submittedAmount = Number(String(lastFormAmount || '').replace(\/[^0-9.]\/g, '')) || 0;\n      if (!submittedAmount && state.path !== 'direct') submittedAmount = state.amount;\n      if (!submittedAmount) { showPledgeError('amount not found'); return; }\n\n      postPledge(submittedAmount, state.path || 'direct').then(function(result){\n        \/\/ check the backend's actual response before claiming success\n        if (!result || result.error) {\n          showPledgeError(result && result.error);\n          return;\n        }\n\n        var totalEl = flow.querySelector('#u4e-success-total');\n        totalEl.textContent = 'RM ' + Math.ceil(Math.round(Number(result.total) * 100) \/ 100).toLocaleString('en-US');\n        totalEl.classList.remove('u4e-pulse');\n        void totalEl.offsetWidth;\n        totalEl.classList.add('u4e-pulse');\n        flow.querySelector('#u4e-success-balance').textContent = 'RM ' + submittedAmount.toLocaleString('en-US');\n        flow.querySelector('#u4e-success-row-balance').style.display = 'flex';\n        flow.querySelector('#u4e-success-h').textContent = \"Sent. You're counted, and you're on the letter.\";\n        var balanceWord = state.path === 'compare' ? 'planned amount' : 'entry';\n        flow.querySelector('#u4e-success-sub').textContent = \"Your \" + balanceWord + \" has been added to the total. Your name added as a co-signer on this quarter's open letter.\";\n\n        var gfWrapper = document.querySelector(GF_WRAPPER_SELECTOR);\n        if (gfWrapper) gfWrapper.style.display = 'none';\n        go('success');\n      });\n    });\n  }\n\n  \/\/ shown when the backend rejects or fails a submission \u2014 keeps the\n  \/\/ person on the pledge step with the real form still visible, rather\n  \/\/ than falsely telling them they're counted.\n  function showPledgeError(reason){\n    var existing = flow.querySelector('#u4e-pledge-error');\n    if (!existing) {\n      existing = document.createElement('p');\n      existing.id = 'u4e-pledge-error';\n      existing.className = 'u4e-fine-print';\n      existing.style.color = '#c1290e';\n      var gfSlot = flow.querySelector('#u4e-gf-slot');\n      gfSlot.parentNode.insertBefore(existing, gfSlot);\n    }\n    existing.textContent = \"That didn't go through \u2014 please try again. If it keeps happening, let us know.\";\n  }\n})();\n<\/script>\n\n\n<!--\n  UMMAH FOR EARTH \u2014 GROUNDING (animated process path, light theme)\n  ================================\n  Fixed in this version: three CSS declarations had a stray \"#\" with no\n  actual color value after it (border, border-color, and the tag border\n  were all cut off mid-edit) \u2014 browsers silently ignore invalid values\n  like that, so those borders just weren't rendering. Restored to real\n  hex codes matching the intended design.\n-->\n\n<div id=\"u4e-grounding-path\" class=\"u4e-gp\">\n  <div class=\"u4e-gp-header\">\n    <h2 class=\"u4e-gp-title\">Principles we already believe in<\/h2>\n    <p class=\"u4e-gp-subtitle\">They guide how we live, no matter what faith we believe.<\/p>\n  <\/div>\n\n  <div class=\"u4e-gp-inner\">\n\n    <div class=\"u4e-gp-track\">\n      <div class=\"u4e-gp-track-fill\" id=\"u4e-gp-fill\"><\/div>\n    <\/div>\n\n    <div class=\"u4e-gp-nodes\">\n\n      <div class=\"u4e-gp-node\" data-node=\"0\">\n        <div class=\"u4e-gp-dot\" data-dot=\"0\"><span>01<\/span><\/div>\n        <div class=\"u4e-gp-content\">\n          <div class=\"u4e-gp-arabic\">\u062e\u0644\u064a\u0641\u0629<\/div>\n          <h3 class=\"u4e-gp-h\">Stewardship<\/h3>\n          <p class=\"u4e-gp-text\">Whatever you&#8217;re given to hold \u2014 money, land, a role \u2014 you don&#8217;t just own it. You answer for what you did with it.<\/p>\n        <\/div>\n      <\/div>\n\n      <div class=\"u4e-gp-node\" data-node=\"1\">\n        <div class=\"u4e-gp-dot\" data-dot=\"1\"><span>02<\/span><\/div>\n        <div class=\"u4e-gp-content\">\n          <div class=\"u4e-gp-arabic\">\u0623\u0645\u0627\u0646\u0629<\/div>\n          <h3 class=\"u4e-gp-h\">Trust<\/h3>\n          <p class=\"u4e-gp-text\">A trust isn&#8217;t yours to spend carelessly. It&#8217;s something you protect, and something you&#8217;ll eventually be asked to account for.<\/p>\n        <\/div>\n      <\/div>\n\n      <div class=\"u4e-gp-node\" data-node=\"2\">\n        <div class=\"u4e-gp-dot\" data-dot=\"2\"><span>03<\/span><\/div>\n        <div class=\"u4e-gp-content\">\n          <div class=\"u4e-gp-arabic\">\u0645\u064a\u0632\u0627\u0646<\/div>\n          <h3 class=\"u4e-gp-h\">Balance<\/h3>\n          <p class=\"u4e-gp-text\">Weighing consequences before acting isn&#8217;t a belief you either have or don&#8217;t. It&#8217;s just what paying attention looks like.<\/p>\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  #u4e-grounding-path {\n    font-family: -apple-system, BlinkMacSystemFont, \"SourceSans3\", sans-serif;\n    background: #ffffff;\n    padding: 88px 24px;\n  }\n\n  .u4e-gp-inner {\n    max-width: 700px;\n    margin: 0 auto;\n    position: relative;\n  }\n\n  .u4e-gp-header {\n    max-width: 700px;\n    margin: 0 auto 56px;\n    text-align: center;\n  }\n  #u4e-grounding-path h2.u4e-gp-title {\n    font-size: clamp(26px, 3.4vw, 42px);\n    color: #000000;\n    line-height: 1.3;\n    margin: 0 0 16px;\n  }\n  .u4e-gp-subtitle {\n    font-family: Georgia, \"Times New Roman\", serif;\n    font-size: 17px;\n    color: #4a4a44;\n    line-height: 1.6;\n    margin: 0;\n    max-width: 500px;\n    margin-left: auto;\n    margin-right: auto;\n  }\n\n  \/* the connecting line *\/\n  .u4e-gp-track {\n    position: absolute;\n    left: 27px;\n    top: 27px;\n    bottom: 27px;\n    width: 2px;\n    background: #e2ded3;\n  }\n  .u4e-gp-track-fill {\n    position: absolute;\n    top: 0;\n    left: 0;\n    width: 100%;\n    height: 0%;\n    background: #1a3409;\n    transition: height 0.2s ease-out;\n  }\n\n  .u4e-gp-nodes {\n    display: flex;\n    flex-direction: column;\n    gap: 56px;\n  }\n\n  .u4e-gp-node {\n    position: relative;\n    display: flex;\n    gap: 28px;\n  }\n\n  .u4e-gp-dot {\n    position: relative;\n    z-index: 1;\n    flex-shrink: 0;\n    width: 56px;\n    height: 56px;\n    border-radius: 50%;\n    background: #ffffff;\n    border: 2px solid #d8d3c6;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-size: 15px;\n    font-weight: 800;\n    color: #a8a49a;\n    transition: border-color 0.3s ease, color 0.3s ease, background 0.3s ease;\n  }\n  .u4e-gp-dot.u4e-gp-reached {\n    border-color: #1a3409;\n    background: #1a3409;\n    color: #ffffff;\n  }\n\n  .u4e-gp-content {\n    padding-top: 4px;\n    min-width: 0;\n  }\n  .u4e-gp-arabic {\n    font-size: 15px;\n    color: #1a3409;\n    opacity: 0.75;\n    margin-bottom: 8px;\n  }\n  #u4e-grounding-path h3.u4e-gp-h {\n    font-size: clamp(22px, 3vw, 32px);\n    color: #000000;\n    line-height: 1.2;\n    margin: 0 0 12px;\n  }\n  .u4e-gp-text {\n    font-family: Georgia, \"Times New Roman\", serif;\n    font-size: 17px;\n    color: #4a4a44;\n    line-height: 1.65;\n    margin: 0;\n  }\n\n  @media (max-width: 700px) {\n    #u4e-grounding-path { padding: 56px 16px; }\n    .u4e-gp-track { left: 20px; }\n    .u4e-gp-nodes { gap: 40px; }\n    .u4e-gp-node { gap: 16px; }\n    .u4e-gp-dot { width: 40px; height: 40px; font-size: 12px; }\n  }\n\n  @media (max-width: 380px) {\n    .u4e-gp-node { gap: 12px; }\n    .u4e-gp-track { left: 18px; }\n    .u4e-gp-dot { width: 36px; height: 36px; font-size: 11px; }\n  }\n<\/style>\n\n<script>\n(function(){\n  var wrap = document.getElementById('u4e-grounding-path');\n  var fill = document.getElementById('u4e-gp-fill');\n  var dots = wrap.querySelectorAll('.u4e-gp-dot');\n\n  function update(){\n    var rect = wrap.getBoundingClientRect();\n    var vh = window.innerHeight;\n\n    var start = vh * 0.85;\n    var end = -(rect.height - vh * 0.15);\n    var raw = (start - rect.top) \/ (start - end);\n    var progress = Math.min(Math.max(raw, 0), 1);\n\n    fill.style.height = (progress * 100) + '%';\n\n    dots.forEach(function(dot){\n      var index = Number(dot.getAttribute('data-dot'));\n      var threshold = index \/ (dots.length - 1);\n      dot.classList.toggle('u4e-gp-reached', progress >= threshold - 0.05);\n    });\n  }\n\n  var ticking = false;\n  window.addEventListener('scroll', function(){\n    if (!ticking) {\n      requestAnimationFrame(function(){ update(); ticking = false; });\n      ticking = true;\n    }\n  });\n  window.addEventListener('resize', update);\n  update();\n})();\n<\/script>\n\n<!--\n  UMMAH FOR EARTH \u2014 COUNTER + DIRECT ADD (combined)\n  ================================\n  Fix in this version: the .gform_wrapper background rule was missing\n  !important, so Gravity Forms' own default background (which likely has\n  higher specificity or its own !important) was still winning \u2014 that's\n  why it stayed white despite the rule being set to #f6f4ef. Added\n  !important to fix it.\n\n  Also reverted the submit button back to yellow (#ffe100) \u2014 it looks\n  like the cream color got applied to the button too somewhere along the\n  way, which makes it blend into the card behind it and lose visibility\n  as the primary action. If that swap was actually intentional, let me\n  know and I'll put it back.\n\n  v6 (15 Oct 2026) \u2014 GreenpeaceSans (Planet 4) for the eyebrow, odometer,\n  card label and form title\/button; Georgia for the two lines under the\n  total; SourceSans3 (Planet 4) for the card and form text.\n-->\n\n<div id=\"counter\" class=\"u4e-counter-direct\">\n  <div class=\"u4e-cd-inner\">\n\n    <!-- odometer -->\n    <div class=\"u4e-proof-eyebrow\">WE&#8217;VE GATHERED<\/div>\n    <div class=\"u4e-proof-odometer\" id=\"u4e-odometer\">\n      <span class=\"u4e-od-prefix\">RM<\/span>\n      <!-- digit columns get built here by JS -->\n    <\/div>\n    <div class=\"u4e-proof-sub\">in savings declared by people calling for coal-free banking, and growing every time someone joins<\/div>\n\n    <p class=\"u4e-cd-purpose\">This total isn&#8217;t just a number \u2014 it&#8217;s evidence. We take it directly to Bank Negara Malaysia, the Securities Commission, and the banks named on this page: proof that real depositors are demanding a coal-free financial system, and pushing for more than that.<\/p>\n\n    <!-- direct add context -->\n    <div class=\"u4e-cd-divider\"><\/div>\n\n    <div class=\"u4e-cd-card\">\n      <div class=\"u4e-cd-card-label\">WHAT HAPPENS WHEN YOU SUBMIT<\/div>\n      <div class=\"u4e-cd-line\"><span>1<\/span><span>Your number joins the public Bankometer total \u2014 the same total shown above.<\/span><\/div>\n      <div class=\"u4e-cd-line\"><span>2<\/span><span>Your name is added as a co-signer on this quarter&#8217;s open letter to Bank Negara Malaysia, the Securities Commission, and the banks named on this page.<\/span><\/div>\n      <div class=\"u4e-cd-line\"><span>3<\/span><span>Nothing moves or leaves your own account. This is a declaration, not a transaction.<\/span><\/div>\n    <\/div>\n\n  <\/div>\n<\/div>\n\n<style>\n  \/* Three fonts, each with one job:\n       GreenpeaceSans  headings, eyebrows, big numbers, buttons (Planet 4)\n       Georgia         intro \/ lead paragraphs (our house style)\n       SourceSans3     text inside cards, forms, labels and fine print (Planet 4)\n     Every element inherits by default, so the theme's own h1\/h2\/p rules can't\n     swap fonts in; only the role rules below change the font. *\/\n  #counter { font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\n  #counter * { font-family: inherit; }\n  #counter .u4e-proof-eyebrow,\n  #counter .u4e-od-prefix,\n  #counter .u4e-od-strip span,\n  #counter .u4e-od-comma,\n  #counter h2.u4e-cd-h,\n  #counter .u4e-cd-card-label { font-family: \"GreenpeaceSans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\n  #counter .u4e-proof-sub,\n  #counter .u4e-cd-purpose,\n  #counter .u4e-cd-sub { font-family: Georgia, \"Times New Roman\", serif; }\n  .u4e-counter-direct {\n    position: relative;\n    width: 100vw;\n    left: 50%;\n    right: 50%;\n    margin-left: -50vw;\n    margin-right: -50vw;\n    background: #f6f4ef;\n    padding: 64px 24px 56px;\n    text-align: center;\n    box-sizing: border-box;\n  }\n\n  .u4e-cd-inner {\n    max-width: 736px;\n    margin: 0 auto;\n  }\n\n  \/* odometer piece \u2014 unchanged from before *\/\n  .u4e-proof-eyebrow {\n    font-size: 13px;\n    font-weight: 700;\n    letter-spacing: 3px;\n    color: #000000;\n    margin-bottom: 32px;\n  }\n  .u4e-proof-odometer {\n    display: inline-flex;\n    align-items: center;\n    gap: 2px;\n    margin-bottom: 32px;\n    flex-wrap: wrap;\n    justify-content: center;\n  }\n  .u4e-od-prefix {\n    font-size: clamp(36px, 6vw, 72px);\n    font-weight: 700;\n    color: #000000;\n    margin-right: 12px;\n    letter-spacing: -1px;\n  }\n  .u4e-od-digit {\n    position: relative;\n    width: clamp(28px, 5vw, 56px);\n    height: clamp(56px, 9vw, 108px);\n    overflow: hidden;\n  }\n  .u4e-od-strip {\n    position: absolute;\n    top: 0;\n    left: 0;\n    width: 100%;\n    transition: transform 2.4s cubic-bezier(0.16, 1, 0.3, 1);\n  }\n  .u4e-od-strip span {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 100%;\n    height: clamp(56px, 9vw, 108px);\n    font-size: clamp(36px, 6vw, 72px);\n    font-weight: 700;\n    color: #000000;\n    font-variant-numeric: tabular-nums;\n    letter-spacing: -1px;\n  }\n  .u4e-od-comma {\n    font-size: clamp(36px, 6vw, 72px);\n    font-weight: 700;\n    color: #000000;\n    align-self: flex-end;\n    padding-bottom: clamp(6px, 1vw, 12px);\n    margin: 0 -4px;\n  }\n  .u4e-proof-sub {\n    font-size: 17px;\n    color: #000000;\n    line-height: 1.6;\n  }\n\n  #counter .u4e-cd-purpose {\n    font-size: 15px;\n    color: #6b6b62;\n    line-height: 1.6;\n    max-width: 560px;\n    margin: 24px auto 0;\n  }\n\n  \/* divider between the two pieces *\/\n  .u4e-cd-divider {\n    width: 60px;\n    height: 2px;\n    background: #e2ded3;\n    margin: 48px auto 40px;\n  }\n\n  \/* direct-add context piece *\/\n  .u4e-counter-direct h2.u4e-cd-h {\n    font-size: clamp(24px, 3vw, 42px);\n    font-weight: 700;\n    line-height: 1.3;\n    color: #000000;\n    margin: 0 0 16px;\n  }\n  .u4e-cd-sub {\n    font-size: 16px;\n    color: #4a4a44;\n    line-height: 1.6;\n    margin: 0 0 32px;\n    max-width: 560px;\n    margin-left: auto;\n    margin-right: auto;\n  }\n  .u4e-cd-card {\n    background: #16281a;\n    border-radius: 12px;\n    padding: 24px;\n    text-align: left;\n  }\n  .u4e-cd-card-label {\n    font-size: 12px;\n    font-weight: 700;\n    letter-spacing: 1px;\n    color: #a8d15c;\n    margin-bottom: 14px;\n  }\n  .u4e-cd-line {\n    display: flex;\n    gap: 10px;\n    font-size: 14px;\n    color: #c8d4bc;\n    line-height: 1.6;\n    margin-bottom: 10px;\n  }\n  .u4e-cd-line:last-child { margin-bottom: 0; }\n  .u4e-cd-line span:first-child {\n    color: #a8d15c;\n    font-weight: 700;\n    flex-shrink: 0;\n  }\n\n  @media (max-width: 700px) {\n    .u4e-counter-direct { padding: 48px 20px 40px; }\n    .u4e-cd-divider { margin: 40px auto 32px; }\n  }\n\n  \/* ================================\n     GENERIC GRAVITY FORMS STYLING \u2014 applies to ANY Gravity Form on the\n     site, not one specific numeric ID.\n  ================================ *\/\n  .gform_wrapper.gform_wrapper {\n    width: 100% !important;\n    max-width: 736px !important;\n    background: #f6f4ef !important;\n    border: 1px solid #e2ded3 !important;\n    border-radius: 12px !important;\n    padding: 28px !important;\n    box-sizing: border-box !important;\n    font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif !important;\n    \/* transform-based centering \u2014 doesn't depend on margin:auto winning\n       against whatever's setting this element's width\/position upstream.\n       Positions relative to its own left edge, then shifts left by half\n       its own width, which centers it regardless of what any parent or\n       competing theme rule is doing. *\/\n    position: relative !important;\n    left: 50% !important;\n    transform: translateX(-50%) !important;\n    margin-top: 12px !important;\n    box-shadow: 0 0 0 100vmax #f6f4ef;\n    clip-path: inset(0 -100vmax -56px -100vmax);\n  }\n  .gform_wrapper .gform_description,\n  .gform_wrapper label,\n  .gform_wrapper input,\n  .gform_wrapper p,\n  .gform_wrapper li { font-family: \"SourceSans3\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif !important; }\n  .gform_wrapper .gform_heading { margin-bottom: 24px; }\n  .gform_wrapper .gform_title { font-family: \"GreenpeaceSans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif !important; font-size: 20px; font-weight: 700; color: #000000; margin: 0 0 6px; }\n  .gform_wrapper .gform_description { font-size: 13px; color: #6b6b62; line-height: 1.5; margin: 0; }\n  .gform_wrapper .gfield_label,\n  .gform_wrapper label { font-size: 11px; font-weight: 700; color: #6b6b62; text-transform: uppercase; letter-spacing: 0.5px; }\n  .gform_wrapper .gform-field-label--type-inline { font-size: 13px; text-transform: none; letter-spacing: normal; color: #000000; font-weight: 500; }\n  .gform_wrapper input[type=\"text\"],\n  .gform_wrapper input[type=\"email\"],\n  .gform_wrapper input[type=\"tel\"],\n  .gform_wrapper input[type=\"number\"] {\n    border: 1px solid #d8d3c6 !important; border-radius: 8px !important;\n    padding: 10px 12px !important; font-size: 13px !important;\n    width: 100% !important; box-sizing: border-box !important;\n    background: #ffffff !important;\n  }\n  .gform_wrapper input[type=\"radio\"],\n  .gform_wrapper input[type=\"checkbox\"] { accent-color: #1a3409; }\n  .gform_wrapper .gform_footer { margin-top: 20px; padding: 0; }\n  .gform_wrapper .gform_button,\n  .gform_wrapper input[type=\"submit\"] {\n    width: 100% !important; background: #ffe100 !important; color: #0d1b2e !important;\n    border: none !important; font-size: 15px !important; font-weight: 700 !important;\n    padding: 16px !important; border-radius: 10px !important; cursor: pointer !important;\n    font-family: \"GreenpeaceSans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif !important;\n  }\n  .gform_wrapper .gfield { margin-bottom: 16px; }\n<\/style>\n\n<script>\n(function(){\n  var BANKOMETER_WEBHOOK_URL = \"https:\/\/script.google.com\/a\/macros\/greenpeace.org\/s\/AKfycbwb188851rzOcDiJe5izC8i8OalkU-mKydykVD6nPAd-WmaSY0_Nt-mPPuk2tfEleXs\/exec\";\n\n  var odometer = document.getElementById('u4e-odometer');\n  var LOOPS = 3;\n\n  function buildOdometer(numberString){\n    odometer.querySelectorAll('.u4e-od-digit, .u4e-od-comma').forEach(function(el){ el.remove(); });\n\n    var chars = numberString.split('');\n    var delay = 0;\n\n    chars.forEach(function(ch, i){\n      if (!\/[0-9]\/.test(ch)) {\n        var comma = document.createElement('span');\n        comma.className = 'u4e-od-comma';\n        comma.textContent = ',';\n        odometer.appendChild(comma);\n        return;\n      }\n\n      var digitBox = document.createElement('div');\n      digitBox.className = 'u4e-od-digit';\n\n      var strip = document.createElement('div');\n      strip.className = 'u4e-od-strip';\n\n      var target = Number(ch);\n      var totalEntries = LOOPS * 10 + target;\n      for (var i2 = 0; i2 < totalEntries + 1; i2++) {\n        var s = document.createElement('span');\n        s.textContent = i2 % 10;\n        strip.appendChild(s);\n      }\n\n      digitBox.appendChild(strip);\n      odometer.appendChild(digitBox);\n\n      var thisDelay = delay;\n      delay += 60;\n\n      requestAnimationFrame(function(){\n        requestAnimationFrame(function(){\n          setTimeout(function(){\n            var digitHeight = digitBox.offsetHeight;\n            strip.style.transform = 'translateY(-' + (totalEntries * digitHeight) + 'px)';\n          }, thisDelay);\n        });\n      });\n    });\n  }\n\n  fetch(BANKOMETER_WEBHOOK_URL + '?action=getTotal')\n    .then(function(res){ return res.json(); })\n    .then(function(data){\n      var total = Number(data.total) || 0;\n      buildOdometer(Math.ceil(Math.round(total * 100) \/ 100).toLocaleString('en-US'));\n    })\n    .catch(function(){\n      var fallback = document.createElement('span');\n      fallback.style.fontSize = 'clamp(24px, 4vw, 40px)';\n      fallback.style.fontWeight = '700';\n      fallback.style.color = '#4a4a44';\n      fallback.textContent = 'Unable to load';\n      odometer.appendChild(fallback);\n    });\n})();\n<\/script>\n\n<!--\n  \u2193 REPLACE 25 WITH THE REAL FORM ID FOR THIS STANDALONE PATH \u2193\n-->\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<div class=\"wp-block-query posts-list p4-query-loop is-custom-layout-list is-layout-flow wp-block-query-is-layout-flow\">\n<div class=\"wp-block-group is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-cfe5ce44 wp-block-group-is-layout-flex\">\n<h2 class=\"wp-block-heading\">Related articles<\/h2>\n\n\n<li class=\"wp-block-navigation-item see-all-link wp-block-navigation-link\"><a class=\"wp-block-navigation-item__content\"  href=\"http:\/\/www.greenpeace.org\/malaysia\/news-stories\/?tag=ummah_4_earth&#038;post-type=story\"><span data-ga-category=\"Posts List\" data-ga-action=\"See More Link\" data-ga-label=\"n\/a\" class=\"wp-block-navigation-item__label\">See all stories<\/span><\/a><\/li><\/div>\n\n\n\n<p class=\"wp-block-paragraph\" style=\"margin-top:24px;margin-bottom:36px\"><\/p>\n\n\n\n\n<ul class=\"wp-block-post-template is-layout-flow wp-block-post-template-is-layout-flow\"><li class=\"wp-block-post post-84666 post type-post status-publish format-standard has-post-thumbnail hentry category-climate-and-pollution category-green-future category-policy-and-justice tag-ummah_4_earth tag-energy tag-greenwashing p4-page-type-story\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/www.greenpeace.org\/malaysia\/story\/84666\/lead-the-world-in-climate-finance\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" data-ga-category=\"Posts List\" data-ga-action=\"Image\" data-ga-label=\"n\/a\" width=\"8000\" height=\"5760\" src=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/10\/baafb411-gp0su95q0.jpg\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image wp-stateless-item\" alt=\"Lead the World in Climate Finance\" style=\"object-fit:cover;\" srcset=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/10\/baafb411-gp0su95q0.jpg 8000w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/10\/baafb411-gp0su95q0-300x216.jpg 300w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/10\/baafb411-gp0su95q0-1024x737.jpg 1024w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/10\/baafb411-gp0su95q0-768x553.jpg 768w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2026\/10\/baafb411-gp0su95q0-472x340.jpg 472w\" sizes=\"auto, (max-width: 8000px) 100vw, 8000px\" data-image-size=\"post-thumbnail\" data-stateless-media-bucket=\"planet4-malaysia-stateless\" data-stateless-media-name=\"2026\/10\/baafb411-gp0su95q0.jpg\" \/><\/a><\/figure>\n\n\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<div class=\"wp-block-group is-layout-flex wp-block-group-is-layout-flex\"><div class=\"wp-block-post-terms\"><a data-ga-category=\"Posts List\" data-ga-action=\"Post Type Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/category\/climate-and-pollution\/\">Climate &amp; Pollution<\/a><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a data-ga-category=\"Posts List\" data-ga-action=\"Navigation Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/tag\/ummah_4_earth\/\" rel=\"tag\">Ummah4Earth<\/a><span class=\"wp-block-post-terms__separator\"> <\/span><a data-ga-category=\"Posts List\" data-ga-action=\"Navigation Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/tag\/energy\/\" rel=\"tag\">Energy<\/a><span class=\"wp-block-post-terms__separator\"> <\/span><a data-ga-category=\"Posts List\" data-ga-action=\"Navigation Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/tag\/greenwashing\/\" rel=\"tag\">Greenwashing<\/a><\/div><\/div>\n\n\n<h3 class=\"wp-block-post-title\"><a data-ga-category=\"Posts List\" data-ga-action=\"Title\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/story\/84666\/lead-the-world-in-climate-finance\/\" target=\"_self\" >Lead the World in Climate Finance<\/a><\/h3>\n\n<div class=\"wp-block-post-excerpt\"><p class=\"wp-block-post-excerpt__excerpt\">The decision on the allocation and flow of capital is both an ethical and a public health decision, with far-reaching implications on the lives of people not just in Malaysia, but those suffering in other continents. <\/p><\/div>\n\n\n<div class=\"wp-block-group posts-list-meta is-layout-flow wp-block-group-is-layout-flow\"><span class='article-list-item-author'><a data-ga-category=\"Posts List\" data-ga-action=\"Author\" data-ga-label=\"n\/a\" href='https:\/\/www.greenpeace.org\/malaysia\/author\/adam-azlan\/'>Adam Azlan<\/a><\/span>\n\n<div class=\"wp-block-post-date\"><time datetime=\"2026-10-23T17:36:34+08:00\">October 23, 2026<\/time><\/div><\/div>\n<\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-63442 post type-post status-publish format-standard has-post-thumbnail hentry category-green-future tag-environmental-justice tag-energy tag-ummah_4_earth p4-page-type-press\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/www.greenpeace.org\/malaysia\/press\/63442\/laporan-baharu-greenpeace-mena-dan-gefi-dedahkan-jutaan-kematian-tahunan-akibat-pencemaran-arang-baru\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" data-ga-category=\"Posts List\" data-ga-action=\"Image\" data-ga-label=\"n\/a\" width=\"1200\" height=\"800\" src=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/11\/115d4cb2-gp0stqmsd.jpg\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image wp-stateless-item\" alt=\"Laporan Baharu Greenpeace MENA dan GEFI Dedahkan Jutaan Kematian Tahunan Akibat Pencemaran Arang Baru\" style=\"object-fit:cover;\" srcset=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/11\/115d4cb2-gp0stqmsd.jpg 1200w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/11\/115d4cb2-gp0stqmsd-300x200.jpg 300w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/11\/115d4cb2-gp0stqmsd-1024x683.jpg 1024w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/11\/115d4cb2-gp0stqmsd-768x512.jpg 768w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/11\/115d4cb2-gp0stqmsd-510x340.jpg 510w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" data-image-size=\"post-thumbnail\" data-stateless-media-bucket=\"planet4-malaysia-stateless\" data-stateless-media-name=\"2025\/11\/115d4cb2-gp0stqmsd.jpg\" \/><\/a><\/figure>\n\n\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<div class=\"wp-block-group is-layout-flex wp-block-group-is-layout-flex\"><div class=\"wp-block-post-terms\"><a data-ga-category=\"Posts List\" data-ga-action=\"Post Type Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/category\/green-future\/\">Green Future<\/a><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a data-ga-category=\"Posts List\" data-ga-action=\"Navigation Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/tag\/environmental-justice\/\" rel=\"tag\">Environmental Justice<\/a><span class=\"wp-block-post-terms__separator\"> <\/span><a data-ga-category=\"Posts List\" data-ga-action=\"Navigation Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/tag\/energy\/\" rel=\"tag\">Energy<\/a><span class=\"wp-block-post-terms__separator\"> <\/span><a data-ga-category=\"Posts List\" data-ga-action=\"Navigation Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/tag\/ummah_4_earth\/\" rel=\"tag\">Ummah4Earth<\/a><\/div><\/div>\n\n\n<h3 class=\"wp-block-post-title\"><a data-ga-category=\"Posts List\" data-ga-action=\"Title\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/press\/63442\/laporan-baharu-greenpeace-mena-dan-gefi-dedahkan-jutaan-kematian-tahunan-akibat-pencemaran-arang-baru\/\" target=\"_self\" >Laporan Baharu Greenpeace MENA dan GEFI Dedahkan Jutaan Kematian Tahunan Akibat Pencemaran Arang Baru<\/a><\/h3>\n\n<div class=\"wp-block-post-excerpt\"><p class=\"wp-block-post-excerpt__excerpt\">Greenpeace MENA dan Global Ethical Finance Initiative (GEFI), melancarkan laporan terbaharu bertajuk \"Menilai Semula Arang Batu dalam Kewangan Islam: Keperluan Etika untuk Penyahpelaburan dan Kelestarian\". <\/p><\/div>\n\n\n<div class=\"wp-block-group posts-list-meta is-layout-flow wp-block-group-is-layout-flow\"><span class='article-list-item-author'>Greenpeace Malaysia<\/span>\n\n<div class=\"wp-block-post-date\"><time datetime=\"2025-11-26T11:16:45+08:00\">November 26, 2025<\/time><\/div><\/div>\n<\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-60657 post type-post status-publish format-standard has-post-thumbnail hentry category-community-and-activism category-green-future tag-changemakers tag-green-living tag-ummah_4_earth p4-page-type-story\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/www.greenpeace.org\/malaysia\/story\/60657\/a-particular-personal-point-on-reducing-waste\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" data-ga-category=\"Posts List\" data-ga-action=\"Image\" data-ga-label=\"n\/a\" width=\"1200\" height=\"800\" src=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/04\/26fbc823-gp1svm5i_medium-res-1200px.jpg\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image wp-stateless-item\" alt=\"A particular personal point on reducing waste\" style=\"object-fit:cover;\" srcset=\"https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/04\/26fbc823-gp1svm5i_medium-res-1200px.jpg 1200w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/04\/26fbc823-gp1svm5i_medium-res-1200px-300x200.jpg 300w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/04\/26fbc823-gp1svm5i_medium-res-1200px-1024x683.jpg 1024w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/04\/26fbc823-gp1svm5i_medium-res-1200px-768x512.jpg 768w, https:\/\/www.greenpeace.org\/static\/planet4-malaysia-stateless\/2025\/04\/26fbc823-gp1svm5i_medium-res-1200px-510x340.jpg 510w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" data-image-size=\"post-thumbnail\" data-stateless-media-bucket=\"planet4-malaysia-stateless\" data-stateless-media-name=\"2025\/04\/26fbc823-gp1svm5i_medium-res-1200px.jpg\" \/><\/a><\/figure>\n\n\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<div class=\"wp-block-group is-layout-flex wp-block-group-is-layout-flex\"><div class=\"wp-block-post-terms\"><a data-ga-category=\"Posts List\" data-ga-action=\"Post Type Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/category\/community-and-activism\/\">Community &amp; Activism<\/a><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a data-ga-category=\"Posts List\" data-ga-action=\"Navigation Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/tag\/changemakers\/\" rel=\"tag\">Changemakers<\/a><span class=\"wp-block-post-terms__separator\"> <\/span><a data-ga-category=\"Posts List\" data-ga-action=\"Navigation Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/tag\/green-living\/\" rel=\"tag\">Green Living<\/a><span class=\"wp-block-post-terms__separator\"> <\/span><a data-ga-category=\"Posts List\" data-ga-action=\"Navigation Tag\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/tag\/ummah_4_earth\/\" rel=\"tag\">Ummah4Earth<\/a><\/div><\/div>\n\n\n<h3 class=\"wp-block-post-title\"><a data-ga-category=\"Posts List\" data-ga-action=\"Title\" data-ga-label=\"n\/a\" href=\"https:\/\/www.greenpeace.org\/malaysia\/story\/60657\/a-particular-personal-point-on-reducing-waste\/\" target=\"_self\" >A particular personal point on reducing waste<\/a><\/h3>\n\n<div class=\"wp-block-post-excerpt\"><p class=\"wp-block-post-excerpt__excerpt\">This guest article by one of our eco-warriors highlights the challenges and rewards of going zero-waste, and why even small actions matter in protecting our planet. <\/p><\/div>\n\n\n<div class=\"wp-block-group posts-list-meta is-layout-flow wp-block-group-is-layout-flow\"><span class='article-list-item-author'>A. C. Einhander<\/span>\n\n<div class=\"wp-block-post-date\"><time datetime=\"2025-04-14T10:51:52+08:00\">April 14, 2025<\/time><\/div><\/div>\n<\/div>\n<\/div>\n\n<\/li><\/ul>\n\n\n<div class=\"wp-block-buttons carousel-controls is-horizontal is-content-justification-space-between is-nowrap is-layout-flex wp-container-core-buttons-is-layout-358af4b1 wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button carousel-control-prev\"><button type=\"button\" class=\"wp-block-button__link wp-element-button\">Prev<\/button><\/div>\n\n\n\n<div class=\"wp-block-button carousel-control-next\"><button type=\"button\" class=\"wp-block-button__link wp-element-button\">Next<\/button><\/div>\n<\/div>\n\n\n<li class=\"wp-block-navigation-item see-all-link wp-block-navigation-link\"><a class=\"wp-block-navigation-item__content\"  href=\"http:\/\/www.greenpeace.org\/malaysia\/news-stories\/?tag=ummah_4_earth&#038;post-type=story\"><span data-ga-category=\"Posts List\" data-ga-action=\"See More Link\" data-ga-label=\"n\/a\" class=\"wp-block-navigation-item__label\">See all stories<\/span><\/a><\/li><\/div>\n\n\n<div class=\"wp-block-group alignfull block has-beige-100-background-color has-background is-layout-flow wp-block-group-is-layout-flow\">\n<div style=\"height:14px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-group container is-layout-flow wp-block-group-is-layout-flow\">\n<div style=\"height:0px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Subscribe for updates<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Together we are part of a growing, global movement determined to bring about the changes our planet desperately needs.<\/p>\n\n\n\n<script charset=\"utf-8\" type=\"text\/javascript\" src=\"\/\/js.hsforms.net\/forms\/embed\/v2.js\"><\/script>\n<script>\n  hbspt.forms.create({\n    portalId: \"20341912\",\n    formId: \"2a959606-d1b1-41fa-bad2-8e024a47b1cd\",\n    region: \"na1\",\n    sfdcCampaignId: \"701fB00000V4cXtQAJ\"\n  });\n<\/script>\n\n\n\n<div style=\"height:7px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Knowing where your money goes is just as important as saving it. <\/p>\n","protected":false},"author":67,"featured_media":83907,"menu_order":0,"template":"","meta":{"ep_exclude_from_search":false,"action_button_text":"Get Involved","action_button_accessibility_text":"Take action","actions_task_type":"","actions_deadline":"","nav_type":"","p4_hide_page_title_checkbox":"on","p4_og_title":"","p4_og_description":"","p4_og_image":"","p4_og_image_id":"","p4_seo_canonical_url":"","p4_seo_meta_title":"","p4_seo_meta_description":"","p4_campaign_name":"","p4_local_project":"","p4_basket_name":"","p4_department":"","footnotes":""},"categories":[134,126],"tags":[30,86],"action-type":[28],"class_list":["post-83821","p4_action","type-p4_action","status-publish","has-post-thumbnail","hentry","category-educational-resource","category-policy-and-justice","tag-ummah_4_earth","tag-energy","action-type-petitions"],"_links":{"self":[{"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/p4_action\/83821","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/p4_action"}],"about":[{"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/types\/p4_action"}],"author":[{"embeddable":true,"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/users\/67"}],"version-history":[{"count":20,"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/p4_action\/83821\/revisions"}],"predecessor-version":[{"id":85004,"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/p4_action\/83821\/revisions\/85004"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/media\/83907"}],"wp:attachment":[{"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/media?parent=83821"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/categories?post=83821"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/tags?post=83821"},{"taxonomy":"action-type","embeddable":true,"href":"https:\/\/www.greenpeace.org\/malaysia\/wp-json\/wp\/v2\/action-type?post=83821"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}