PageSourceSearch

https://raa-community-dashboard.vercel.app/

html raa-community-dashboard.vercel.app collected 2026-10-03 07:34:11 UTC 58,577 bytes, 830 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3<head>
4  <meta charset="UTF-8">
5  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6  <title>RAA Community Platform</title>
7  <link rel="stylesheet" href="styles.css">
8  <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css" />
9  <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/MarkerCluster.css" />
10  <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/MarkerCluster.Default.css" />
11  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Barlow+Condensed:wght@400;500;600;700;800&display=swap" rel="stylesheet">
12</head>
13<body>
14
15  <!-- ========== HEADER ========== -->
16  <header class="header">
17    <a href="#" class="logo" id="logo-home">
18      <img src="raa-brand/UNCCD logo.png" alt="UNCCD" class="logo-img">
19      <img src="raa-brand/RAA cirlced logo.png" alt="RAA" class="logo-img logo-img--raa">
20      <div class="logo-text">
21        <span class="logo-title">RAA Community</span>
22        <span class="logo-subtitle">PLATFORM</span>
23      </div>
24    </a>
25    <nav class="header-nav">
26      <a href="#" class="nav-link" data-section="global-presence">Global Presence</a>
27      <a href="#" class="nav-link" data-section="initiatives-directory">Initiatives Directory</a>
28      <a href="#" class="nav-link" data-section="resources-opportunities">Resources &amp; Opportunities</a>
29      <a href="#" class="nav-link" data-section="community-snapshot">Community Snapshot</a>
30      <a href="#" class="nav-link" data-section="partners-list">Partners</a>
31      <a href="#" class="nav-link" data-section="community-interaction">Community Interaction</a>
32    </nav>
33    <div class="header-actions">
34      <button class="header-action-btn" onclick="document.getElementById('join-modal').classList.add('open')">
35        <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="12" y1="5" x2="12" y2="19"/><line x1="5" y1="12" x2="19" y2="12"/></svg>
36        Join with my initiative
37      </button>
38    </div>
39  </header>
40
41  <div class="app-body">
42
43    <!-- ========== MAIN CONTENT ========== -->
44    <div class="main-content">
45
46      <!-- ===== LANDING ===== -->
47      <div id="landing" class="landing active-view">
48
49        <!-- Hero Card -->
50        <div class="hero-card">
51          <div class="hero-card-text">
52            <h1>RAA Community Platform</h1>
53            <p>Explore the global community advancing land restoration and drought resilience.</p>
54          </div>
55          <div class="hero-card-stats">
56            <div class="hero-stat"><span class="hero-stat-num" id="hero-initiatives">0</span><span class="hero-stat-label">Initiatives</span></div>
57            <div class="hero-stat-divider"></div>
58            <div class="hero-stat"><span class="hero-stat-num" id="hero-countries">0</span><span class="hero-stat-label">Countries</span></div>
59            <div class="hero-stat-divider"></div>
60            <div class="hero-stat"><span class="hero-stat-num" id="hero-hectares">0</span><span class="hero-stat-label">Hectares</span></div>
61          </div>
62        </div>
63
64        <!-- Global Presence -->
65        <div class="ov-block" data-goto="global-presence">
66          <div class="overview-header">
67            <h2>Global Presence</h2>
68            <button class="ov-cta">Explore map <span>&rarr;</span></button>
69          </div>
70          <div id="map-overview" class="map-overview"></div>
71        </div>
72
73
74        <!-- Initiatives Directory -->
75        <div class="ov-block" data-goto="initiatives-directory">
76          <div class="overview-header">
77            <h2>Initiatives Directory</h2>
78            <button class="ov-cta">View all initiatives <span>&rarr;</span></button>
79          </div>
80          <div class="overview-cards" id="overview-initiatives"></div>
81        </div>
82
83
84        <!-- Resources &amp; Opportunities -->
85        <div class="ov-block" data-goto="resources-opportunities">
86          <div class="overview-header">
87            <h2>Resources &amp; Opportunities</h2>
88            <button class="ov-cta">Explore platforms <span>&rarr;</span></button>
89          </div>
90          <div class="eco-overview-grid">
91            <div class="eco-overview-card" data-eco="data-metrics" style="background-image:url('pictures/5. .jpg'); background-position: center 65%"><div class="eco-card-overlay"><strong>Data &amp; Metrics on Land</strong><p>Data portals, monitoring systems and metric platforms.</p></div></div>
92            <div class="eco-overview-card" data-eco="funding-grants" style="background-image:url('pictures/6..jpg'); background-position: center center"><div class="eco-card-overlay"><strong>Funding &amp; Grants</strong><p>Financial instruments and funding opportunities.</p></div></div>
93            <div class="eco-overview-card" data-eco="knowledge" style="background-image:url('pictures/1..jpg'); background-position: center 28%"><div class="eco-card-overlay"><strong>Knowledge & Research</strong><p>Research hubs, policy frameworks and technical support.</p></div></div>
94          </div>
95        </div>
96
97
98        <!-- Community Snapshot -->
99        <div class="ov-block" data-goto="community-snapshot">
100          <div class="overview-header">
101            <h2>Community Snapshot</h2>
102            <button class="ov-cta">View full snapshot <span>&rarr;</span></button>
103          </div>
104          <div class="snapshot-ov-grid">
105            <div class="snap-card-v2" style="--snap-color:#48966a">
106              <span class="snap-num" id="snap-initiatives">0</span>
107              <span class="snap-label">Total Initiatives</span>
108            </div>
109            <div class="snap-card-v2" style="--snap-color:#587da0">
110              <span class="snap-num" id="snap-finance">0</span>
111              <span class="snap-label">Finance Mobilized</span>
112            </div>
113            <div class="snap-card-v2" style="--snap-color:#c49a3c">
114              <span class="snap-num" id="snap-hectares">0</span>
115              <span class="snap-label">Hectares Restored &amp; Conserved</span>
116            </div>
117            <div class="snap-card-v2" style="--snap-color:#4a6a60">
118              <span class="snap-num" id="snap-drought">0</span>
119              <span class="snap-label">Drought Resilience Hectares</span>
120            </div>
121            <div class="snap-card-v2" style="--snap-color:#002929">
122              <span class="snap-num" id="snap-people">0</span>
123              <span class="snap-label">People Benefited</span>
124            </div>
125          </div>
126        </div>
127
128
129        <!-- Partners -->
130        <div class="ov-block" data-goto="partners-list">
131          <div class="overview-header">
132            <h2>Partners</h2>
133            <button class="ov-cta">View all partners <span>&rarr;</span></button>
134          </div>
135          <div class="partners-overview" id="overview-partners"></div>
136        </div>
137
138      </div>
139
140      <!-- ===== DETAIL: Global Presence ===== -->
141      <section id="global-presence" class="page-section">
142        <button class="btn-back" onclick="goHome()">&larr; Back to overview</button>
143        <div class="section-top-row">
144          <div class="section-intro section-intro--with-action">
145            <div class="section-intro-text">
146              <h1 class="page-title">Global Presence</h1>
147              <p class="page-desc">Geographic overview of the Land & Soil Community's initiatives across regions and countries.</p>
148            </div>
149            <button class="btn-about" id="gp-about-toggle" aria-expanded="false" aria-controls="gp-about-panel">
150              <span class="btn-about-icon" aria-hidden="true">i</span>
151              <span>About this map</span>
152            </button>
153          </div>
154          <div class="dg-stats">
155            <div class="dg-stat"><span class="dg-stat-num" id="gp-initiatives">0</span><span class="dg-stat-label">Initiatives</span></div>
156            <div class="dg-stat-divider"></div>
157            <div class="dg-stat"><span class="dg-stat-num" id="gp-countries">0</span><span class="dg-stat-label">Countries</span></div>
158            <div class="dg-stat-divider"></div>
159            <div class="dg-stat"><span class="dg-stat-num" id="gp-regions">0</span><span class="dg-stat-label">Regions</span></div>
160          </div>
161        </div>
162        <div class="cs-about-panel" id="gp-about-panel" hidden>
163          <div class="cs-about-title-row">
164            <span class="cs-about-title-line"></span>
165            <span class="cs-about-title-text">Methodology Notes</span>
166            <span class="cs-about-title-line"></span>
167          </div>
168          <div class="cs-about-grid">
169            <div class="cs-about-block">
170              <div class="cs-about-block-header">
171                <h4>Pin location</h4>
172              </div>
173              <p>Each pin is placed at the <strong>headquarters of the lead partner</strong> — or, when all partners share equal responsibility, the headquarters of the partner who submitted the information. It does not necessarily indicate where the initiative's activities are implemented. Geographic scope and specific geography fields on each profile card provide more detail on where the work takes place.</p>
174            </div>
175            <div class="cs-about-block">
176              <div class="cs-about-block-header">
177                <h4><span style="display:inline-block;width:10px;height:10px;border-radius:50%;background:#002929;margin-right:6px;vertical-align:middle"></span>Global</h4>
178              </div>
179              <p>The initiative operates or has impact across multiple continents, or explicitly targets worldwide reach. Global initiatives are not restricted to a specific region or country.</p>
180            </div>
181            <div class="cs-about-block">
182              <div class="cs-about-block-header">
183                <h4><span style="display:inline-block;width:10px;height:10px;border-radius:50%;background:#48966a;margin-right:6px;vertical-align:middle"></span>Regional</h4>
184              </div>
185              <p>The initiative focuses on a defined multi-country region — such as the MENA region, Latin America, or the IGAD region — without covering the entire globe.</p>
186            </div>
187            <div class="cs-about-block">
188              <div class="cs-about-block-header">
189                <h4><span style="display:inline-block;width:10px;height:10px;border-radius:50%;background:#b4bab6;margin-right:6px;vertical-align:middle"></span>National</h4>
190              </div>
191              <p>The initiative's primary geographic scope is within a single country, even if it receives international funding or support.</p>
192            </div>
193          </div>
194        </div>
195
196        <div class="map-legend-bar">
197          <span class="legend-label">Scope:</span>
198          <span class="legend-badge" style="--badge-color:#002929">Global</span>
199          <span class="legend-badge" style="--badge-color:#48966a">Regional</span>
200          <span class="legend-badge" style="--badge-color:#b4bab6">National</span>
201        </div>
202        <div class="gp-map-layout">
203          <div id="map-detail" class="map-container map-container--large"></div>
204          <div class="gp-side-panel" id="gp-side-panel">
205            <div class="gp-panel-header">
206              <div class="gp-panel-search">
207                <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>
208                <input type="text" id="gp-search-input" placeholder="Search initiatives..." />
209              </div>
210              <div class="gp-panel-filters">
211                <button class="gp-filter-btn active" data-scope="all">All</button>
212                <button class="gp-filter-btn" data-scope="Global">Global</button>
213                <button class="gp-filter-btn" data-scope="Regional">Regional</button>
214                <button class="gp-filter-btn" data-scope="National">National</button>
215                <button class="gp-clear-btn" id="gp-clear-filters">Clear</button>
216              </div>
217            </div>
218            <div class="gp-panel-list" id="gp-panel-list"></div>
219            <div class="gp-panel-detail" id="gp-panel-detail" style="display:none">
220              <button class="gp-panel-back" id="gp-panel-back">&larr; All initiatives</button>
221              <div class="gp-panel-content" id="gp-panel-content"></div>
222            </div>
223          </div>
224        </div>
225      </section>
226
227      <!-- ===== DETAIL: Initiatives Directory ===== -->
228      <section id="initiatives-directory" class="page-section">
229        <button class="btn-back" onclick="goHome()">&larr; Back to overview</button>
230        <div class="section-intro section-intro--with-action">
231          <div class="section-intro-text">
232            <h1 class="page-title">Initiatives Directory</h1>
233            <p class="page-desc">Structured profiles of initiatives within the Land & Soil Community.</p>
234          </div>
235          <button class="btn-about" id="id-about-toggle" aria-expanded="false" aria-controls="id-about-panel">
236            <span class="btn-about-icon" aria-hidden="true">i</span>
237            <span>About this directory</span>
238          </button>
239        </div>
240
241        <div class="cs-about-panel" id="id-about-panel" hidden>
242          <div class="cs-about-title-row">
243            <span class="cs-about-title-line"></span>
244            <span class="cs-about-title-text">Methodology Notes</span>
245            <span class="cs-about-title-line"></span>
246          </div>
247          <div class="cs-about-grid">
248            <div class="cs-about-block">
249              <div class="cs-about-block-header">
250                <h4>Initiative name vs Partner name</h4>
251              </div>
252              <p><strong>Initiative name</strong> refers to the specific programme, project, or activity registered in the Land & Soil Community — it is the primary identifier used throughout the directory.</p>
253              <p><strong>Partner name</strong> refers to the organisation leading or hosting that initiative. One organisation may run multiple initiatives; conversely, a single initiative may be co-led by a consortium of partners.</p>
254            </div>
255            <div class="cs-about-block">
256              <div class="cs-about-block-header">
257                <h4>Data collection</h4>
258              </div>
259              <p>All data is self-reported and voluntary, provided by initiatives via a standardized Google Form, linked from the &ldquo;Join with my initiative&rdquo; button. Submissions enter the central registry and undergo a curation process before being released to the platform.</p>
260            </div>
261            <div class="cs-about-block">
262              <div class="cs-about-block-header">
263                <h4>Country shown in profile cards</h4>
264              </div>
265              <p>The country displayed on each profile card reflects the <strong>headquarters of the lead partner</strong> — or, when all partners share equal responsibility, the headquarters of the partner who submitted the information. It does not necessarily indicate where the initiative's activities are implemented. Geographic scope and specific geography fields provide more detail on where the work takes place.</p>
266            </div>
267            <div class="cs-about-block">
268              <div class="cs-about-block-header">
269                <h4>Indicator cards: in action vs projected</h4>
270              </div>
271              <p>Each profile card displays two types of indicators, visually distinguished to avoid conflating confirmed results with future commitments.</p>
272              <p><strong>Under Action</strong> (solid-border cards) show what has already happened or is currently happening: hectares under restoration or conservation, people already benefited, and finance already mobilized. Some partners prefer to report ongoing progress here rather than commit to a fixed Projected number, so this category includes both completed and in-progress figures.</p>
273              <p><strong>Projected / To Be</strong> (dashed-border cards) show planned targets: hectares to be restored or conserved, people to be benef
273ited, and finance to be mobilized. These are partner expectations, not yet realized.</p>
274            </div>
275            <div class="cs-about-block">
276              <div class="cs-about-block-header">
277                <h4>How indicators are distributed on the card</h4>
278              </div>
279              <p>The colored summary cards at the top of each profile always show the final totals — this is the fastest way to scan a card's impact. A detailed breakdown further down the card only appears for <strong>hectares (Ha)</strong>, and only when a partner has published two or more of its sub-components (e.g. both restoration and conservation, or inland waters figures) — in that case, the breakdown shows exactly which figures were added together to reach the total shown above.</p>
280              <p><strong>People Benefited</strong> and <strong>Finance Mobilized/to be Mobilized</strong> are always single, standalone figures with no sub-components to break down, so they appear only once, in the summary cards at the top.</p>
281            </div>
282            <div class="cs-about-block">
283              <div class="cs-about-block-header">
284                <h4>Why numbers may not add up exactly by eye</h4>
285              </div>
286              <p>All figures on a profile card are rounded for readability (e.g. 8,046,231 is displayed as "8M"). The summary total at the top is calculated from the exact, unrounded underlying data and then rounded once — it is <strong>not</strong> the sum of the already-rounded figures shown in the breakdown below. Because each figure is rounded independently, manually adding the rounded breakdown numbers can land a little off from the rounded total above — this is expected and does not indicate a calculation error.</p>
287            </div>
288            <div class="cs-about-block">
289              <div class="cs-about-block-header">
290                <h4>People benefited reported in households</h4>
291              </div>
292              <p>Some partners report the number of people benefited in <strong>households</strong> rather than individuals. When this happens, the RAA team converts the figure to people using the average household size for the initiative's country, sourced from the United Nations Population Division's <a href="https://population.un.org/household/" target="_blank" rel="noopener">Household Size and Composition around the World database</a>.</p>
293            </div>
294            <div class="cs-about-block">
295              <div class="cs-about-block-header">
296                <h4>Why some cards show fewer metrics</h4>
297              </div>
298              <p>The RAA community includes initiatives that support the RAA and UNCCD goals both <strong>directly</strong> and <strong>indirectly</strong> — this is one reason metrics coverage varies from card to card. In addition, not every initiative is able to publish all of its data on its profile card, even though all submitted data is still included in the aggregate figures shown in the Community Snapshot.</p>
299            </div>
300          </div>
301        </div>
302
303        <div class="id-toolbar">
304          <div class="id-search">
305            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>
306            <input type="text" id="id-search-input" placeholder="Search initiatives..." />
307          </div>
308          <div class="filters-bar">
309            <button class="filter-btn" data-filter="scope">Scope <span class="arrow">&#9662;</span></button>
310            <button class="filter-btn" data-filter="priority">Action Area <span class="arrow">&#9662;</span></button>
311            <button class="filter-btn" data-filter="enabler">Enabler <span class="arrow">&#9662;</span></button>
312            <button class="filter-btn" data-filter="actor">Actor Type <span class="arrow">&#9662;</span></button>
313            <button class="filter-btn" data-filter="country">Country <span class="arrow">&#9662;</span></button>
314            <button class="filter-btn" data-filter="geoScope">Region <span class="arrow">&#9662;</span></button>
315            <button class="filter-btn highlight btt" data-filter="breakthrough"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" style="vertical-align:middle;margin-right:4px;"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/><polyline points="22 4 12 14.01 9 11.01"/></svg>Land &amp; Soil Breakthroughs</button>
316            <button class="filter-btn filter-clear" id="clear-all-filters">Clear</button>
317            <div class="filter-dropdown" id="filter-dropdown"></div>
318          </div>
319        </div>
320        <div class="id-results-count" id="id-results-count"></div>
321        <div class="initiatives-grid" id="initiatives-grid"></div>
322        <div class="section-footer id-footer">
323          <span class="disclaimer">Some initiatives may display incomplete information or no logo — this reflects data that has not yet been submitted or that the initiative has chosen not to disclose publicly. If you would like your initiative to show more information on the platform, <a href="mailto:[email protected][email protected]%[email protected]&subject=Initiative%20profile%20card%20update">contact us</a>.</span>
324        </div>
325      </section>
326
327      <!-- ===== DETAIL: Resources &amp; Opportunities ===== -->
328      <section id="resources-opportunities" class="page-section">
329        <button class="btn-back" onclick="goHome()">&larr; Back to overview</button>
330        <div class="section-intro section-intro--with-action">
331          <div class="section-intro-text">
332            <h1 class="page-title">Resources &amp; Opportunities</h1>
333            <p class="page-desc">Curated access to existing platforms, tools and institutional resources relevant to the land and drought agenda.</p>
334          </div>
335          <div class="section-intro-actions">
336            <button class="btn-about" id="ro-about-toggle" aria-expanded="false" aria-controls="ro-about-panel">
337              <span class="btn-about-icon" aria-hidden="true">i</span>
338              <span>About these platforms</span>
339            </button>
340            <button class="btn-join-platform" onclick="document.getElementById('join-platform-modal').classList.add('open')">
341              <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="12" y1="5" x2="12" y2="19"/><line x1="5" y1="12" x2="19" y2="12"/></svg>
342              Join with my platform
343            </button>
344          </div>
345        </div>
346        <div class="cs-about-panel" id="ro-about-panel" hidden>
347          <div class="cs-about-title-row">
348            <span class="cs-about-title-line"></span>
349            <span class="cs-about-title-text">Methodology Notes</span>
350            <span class="cs-about-title-line"></span>
351          </div>
352          <div class="cs-about-grid">
353            <div class="cs-about-block">
354              <div class="cs-about-block-header">
355                <h4>Platform inclusion</h4>
356              </div>
357              <p>Many of the platforms featured in this section were curated using <strong>publicly available information</strong> to map the broader land and soil ecosystem. Their inclusion here does not necessarily mean they are RAA partners. Some platforms shown have completed the official platform submission form and <strong>are indeed RAA partners</strong>.</p>
358            </div>
359            <div class="cs-about-block cs-about-block--invite">
360              <div class="cs-about-block-header">
361                <h4>Looking ahead</h4>
362              </div>
363              <p>We are committed to strengthening our methodology and partnerships in a potential new phase, depending on the level of interest and engagement from the community.</p>
364            </div>
365          </div>
366        </div>
367        <div class="eco-cards-grid">
368          <div class="eco-category-card active" data-eco="data-metrics" style="--eco-color:#48966a">
369            <div class="eco-card-bg" style="background-image:url('pictures/5. .jpg'); background-position: center 45%"></div>
370            <div class="eco-card-overlay">
371
372              <h3>Data &amp; Metrics on Land</h3>
373              <p>Data portals, monitoring systems and metric platforms.</p>
374            </div>
375          </div>
376          <div class="eco-category-card" data-eco="funding-grants" style="--eco-color:#F8AA41">
377            <div class="eco-card-bg" style="background-image:url('pictures/6..jpg')"></div>
378            <div class="eco-card-overlay">
379
380              <h3>Funding &amp; Grants</h3>
381              <p>Financial instruments and funding opportunities.</p>
382            </div>
383          </div>
384          <div class="eco-category-card" data-eco="knowledge" style="--eco-color:#587da0">
385            <div class="eco-card-bg" style="background-image:url('pictures/1..jpg'); background-position: center 30%"></div>
386            <div class="eco-card-overlay">
387
388              <h3>Knowledge & Research</h3>
389              <p>Research hubs, policy frameworks and technical support.</p>
390            </div>
391          </div>
392        </div>
393        <div class="eco-expanded" id="eco-expanded">
394          <div class="eco-expanded-header">
395            <h3 id="eco-expanded-title"></h3>
396            <p id="eco-expanded-desc"></p>
397          </div>
398          <div class="eco-panel active" id="eco-data-metrics">
399            <div class="platforms-grid" id="platforms-data"></div>
400          </div>
401          <div class="eco-panel" id="eco-funding-grants">
402            <div class="platforms-grid" id="platforms-funding"></div>
403          </div>
404          <div class="eco-panel" id="eco-knowledge">
405            <div class="platforms-grid" id="platforms-knowledge"></div>
406          </div>
407        </div>
408      </section>
409
410      <!-- ===== DETAIL: Community Snapshot ===== -->
411      <section id="community-snapshot" class="page-section">
412        <button class="btn-back" onclick="goHome()">&larr; Back to overview</button>
413        <div class="section-intro section-intro--with-action">
414          <div class="section-intro-text">
415            <h1 class="page-title">Community Snapshot</h1>
416            <p class="page-desc">Aggregated overview of the Land & Soil Community's scale and composition.</p>
417          </div>
418          <button class="btn-about" id="cs-about-toggle" aria-expanded="false" aria-controls="cs-about-panel">
419            <span class="btn-about-icon" aria-hidden="true">i</span>
420            <span>About this snapshot</span>
421          </button>
422        </div>
423
424        <div class="cs-about-panel" id="cs-about-panel" hidden>
425          <div class="cs-about-title-row">
426            <span class="cs-about-title-line"></span>
427            <span class="cs-about-title-text">Methodology Notes</span>
428            <span class="cs-about-title-line"></span>
429          </div>
430          <div class="cs-about-grid">
431            <div class="cs-about-block">
432              <div class="cs-about-block-header">
433                <h4>Data collection</h4>
434              </div>
435              <p>All data is self-reported and voluntary, provided by initiatives via a standardized Google Form, linked from the &ldquo;Join with my initiative&rdquo; button. Submissions enter the central registry and undergo a curation process before being released to the platform.</p>
436            </div>
437            <div class="cs-about-block">
438              <div class="cs-about-block-header">
439                <h4>Note on Methodology &amp; Data Integrity</h4>
440              </div>
441              <p>This snapshot represents a preliminary effort to demonstrate collective momentum based on self-reported data from our existing community. Following initial curation, individual figures were summed to provide a high-level overview. This is an evolving baseline and work in progress; it will be refined alongside partners to integrate stronger scientific foundations and prevent double counting. This visualization is intended to illustrate community scale and should not be used or cited as an official report.</p>
442            </div>
443            <div class="cs-about-block">
444              <div class="cs-about-block-header">
445                <h4>Scope &amp; limitations</h4>
446              </div>
447              <p>The snapshot aggregates only initiatives that have joined the Land &amp; Soil Community. No ranking, scoring, or independent verification is applied to the reported figures. All submitted data is included here, even for initiatives whose profile cards show fewer metrics due to individual disclosure preferences.</p>
448            </div>
449            <div class="cs-about-block">
450              <div class="cs-about-block-header">
451                <h4>Update frequency</h4>
452              </div>
453              <p>New submissions are not published instantly. Each entry passes through a curation review and, once approved, is released to the platform.</p>
454            </div>
455            <div class="cs-about-block">
456              <div class="cs-about-block-header">
457                <h4>Under Action vs Projected</h4>
458              </div>
459              <p><strong>Under Action</strong> values reflect outcomes already delivered or currently being delivered by initiatives between <strong>2015 and 2025</strong>. Some partners prefer to report ongoing progress here rather than commit to a fixed Projected number, so this category includes both completed and in-progress figures. <strong>Projected</strong> values represent the goals set by initiatives for the <strong>2026&ndash;2030</strong> period.</p>
460            </div>
461            <div class="cs-about-block">
462              <div class="cs-about-block-header">
463                <h4>Indicators tracked</h4>
464              </div>
465              <p><strong>Quantitative</strong> (split into Under Action &amp; Projected): hectares under restoration and conservation, inland waters under restoration and conservation, people benefited, and financial resources mobilized.</p>
466              <p><strong>Categorical</strong>: type of actor, geographic scope, region, action area, priority ecosystem, beneficiary, critical enabler, Rio Convention synergies, and alignment with Land &amp; Soil Breakthroughs.</p>
467            </div>
468            <div class="cs-about-block">
469              <div class="cs-about-block-header">
470                <h4>By Region chart</h4>
471              </div>
472              <p>Reflects each initiative&rsquo;s self-reported <strong>geographic scope</strong> &mdash; the continents where it operates (Africa, Americas, Asia, Europe, Global/International, or Oceania). An initiative may select more than one, so totals can exceed the number of initiatives.</p>
473              <p>This is different from the <strong>Region</strong> filter in the Initiatives Directory and the pins on the Global Presence map, both of which are based on the lead partner&rsquo;s headquarters location rather than where the work takes place.</p>
474            </div>
475            <div class="cs-about-block">
476              <div class="cs-about-block-header">
477                <h4>Restoration vs Conservation</h4>
478              </div>
479              <p><strong>Restoration</strong> refers to active interventions to recover degraded land or ecosystems — such as replanting, soil rehabilitation, or rewetting.</p>
480              <p><strong>Conservation</strong> refers to protecting land that is still in good condition from further degradation. Each initiative reports these separately, in hectares and inland waters &mdash;
480 though the goal bars below currently combine them into one aggregate figure per category (see &ldquo;Our methodology will keep evolving&rdquo;).</p>
481            </div>
482            <div class="cs-about-block">
483              <div class="cs-about-block-header">
484                <h4>Land Conservation &amp; Restoration goal bar</h4>
485              </div>
486              <p>Aggregates both restoration and conservation hectares. <strong>Under Action</strong> sums hectares currently under restoration and already conserved. <strong>Projected</strong> sums hectares planned for restoration and conservation. Inland waters are tracked separately under Drought Resilience.</p>
487              <p><strong>Note on the Projected total:</strong> The Nature Conservancy's profile card always shows its full self-reported figure. However, its Projected hectares are excluded from this total — like UCLG's figure under People Benefited, it reflects a worldwide 2030 target rather than directly-additive local hectares, and would otherwise dwarf every other initiative's contribution combined.</p>
488            </div>
489            <div class="cs-about-block">
490              <div class="cs-about-block-header">
491                <h4>Drought Resilience goal bar</h4>
492              </div>
493              <p>Reflects inland water bodies (lakes, rivers, wetlands). <strong>Under Action</strong> sums inland waters currently under restoration and already conserved. <strong>Projected</strong> sums inland waters planned for restoration and conservation. Figures are reported in hectares.</p>
494              <p><strong>Note on the Projected total:</strong> for the same reason described under Land Conservation &amp; Restoration, The Nature Conservancy's inland waters figure is excluded from this total — it reflects a worldwide target, not directly-additive local hectares.</p>
495            </div>
496            <div class="cs-about-block">
497              <div class="cs-about-block-header">
498                <h4>Why profile cards and this snapshot don't add up 1:1</h4>
499              </div>
500              <p>Each initiative's profile card shows one combined figure ("Ha Under Action" / "Ha Projected") that adds together land hectares and inland waters hectares — useful for a quick read of that initiative's total impact.</p>
501              <p>This snapshot instead reports those same hectares split between the two RAA/UNCCD goals they contribute to: <strong>Land Conservation &amp; Restoration</strong> and <strong>Drought Resilience</strong> (inland waters). This split is intentional — it tracks progress toward each global target separately — but it means you can't manually sum profile cards and land exactly on one snapshot category; part of each card's total routes to the other category instead.</p>
502            </div>
503            <div class="cs-about-block">
504              <div class="cs-about-block-header">
505                <h4>People Benefited</h4>
506              </div>
507              <p><strong>Under Action</strong> reflects people that initiatives report as already benefited. <strong>Projected</strong> reflects people that initiatives expect to benefit going forward. Both are self-reported and may include direct and indirect beneficiaries as defined by each initiative.</p>
508              <p><strong>Note on the Projected total:</strong> each initiative's own profile card always shows its full self-reported "People to Benefit" figure, including UCLG's Global Taskforce of Local and Regional Governments. However, unlike every other indicator on this platform, the <strong>Projected</strong> total shown here excludes UCLG's figure from the sum. UCLG reports a global network-reach figure that already spans the vast majority of the world's population, so adding it to every other initiative's figure would double-count the same people rather than reflect genuinely additional reach.</p>
509            </div>
510            <div class="cs-about-block">
511              <div class="cs-about-block-header">
512                <h4>Finance Mobilization goal bar</h4>
513              </div>
514              <p><strong>Finance Under Action</strong> reflects financial resources already mobilized by partners. <strong>Finance Projected</strong> reflects financial resources partners expect to mobilize — these are forward-looking expectations, not confirmed commitments. All figures are in USD and aggregated across all initiatives regardless of individual disclosure preferences.</p>
515            </div>
516            <div class="cs-about-block">
517              <div class="cs-about-block-header">
518                <h4>Multi-value categories</h4>
519              </div>
520              <p>
520Initiatives may select multiple values per category (action areas, beneficiaries, enablers, etc.). Bar charts count each occurrence, so totals across a category can exceed the number of initiatives.</p>
521            </div>
522            <div class="cs-about-block">
523              <div class="cs-about-block-header">
524                <h4>Land &amp; Soil Breakthroughs</h4>
525              </div>
526              <p>Initiatives flagged as engaged with Land &amp; Soil Breakthroughs are those formally aligned with this partnership at the time of reporting.</p>
527            </div>
528            <div class="cs-about-block cs-about-block--invite">
529              <div class="cs-about-block-header">
530                <h4>Our methodology will keep evolving</h4>
531              </div>
532              <p>We are committed to continuously strengthening our methodology as the platform evolves. If you have ideas on how we should approach it, <a href="mailto:[email protected][email protected]%[email protected]&subject=RAA%20Community%20Platform%20methodology">write to us</a>.</p>
533            </div>
534          </div>
535        </div>
536
537        <!-- Wheel + Stats Grid -->
538        <div class="cs-top-split">
539          <div class="cs-wheel-box">
540            <img src="raa-brand/raa wheel.png" alt="RAA Framework" class="cs-wheel-img">
541          </div>
542          <div class="cs-stats-grid" style="position:relative">
543            <div class="cs-stats-label">
544              <span class="cs-stats-label-line"></span>
545              <span class="cs-stats-label-text">At a glance</span>
546              <span class="cs-stats-label-line"></span>
547            </div>
548            <div class="cs-counter-sm cs-counter--teal"><span class="cs-counter-num" id="cs-c-init">0</span><span class="cs-counter-suffix">+</span><span class="cs-counter-label">Initiatives</span></div>
549            <div class="cs-counter-sm cs-counter--gold"><span class="cs-counter-num" id="cs-c-countries">0</span><span class="cs-counter-suffix">+</span><span class="cs-counter-label">Countries</span></div>
550            <div class="cs-counter-sm cs-counter--blue cs-counter--split">
551              <div class="cs-counter-split-row">
552                <div class="cs-counter-split-col"><span class="cs-counter-num-sm" id="cs-c-people-a">0</span><span class="cs-counter-period">Under Action</span></div>
553                <div class="cs-counter-split-col"><span class="cs-counter-num-sm" id="cs-c-people-p">0</span><span class="cs-counter-period">Projected</span></div>
554              </div>
555              <span class="cs-counter-label">People Benefited</span>
556            </div>
557            <div class="cs-stats-label cs-stats-label--goals">
558              <span class="cs-stats-label-line"></span>
559              <span class="cs-stats-label-text">RAA Community Delivery</span>
560              <div class="cs-info-row" style="position:relative">
561                <button class="btn-about btn-about--sm" id="goals-about-toggle" aria-expanded="false" aria-controls="goals-about-tooltip">
562                  <span class="btn-about-icon" aria-hidden="true">i</span>
563                  <span>About these goals</span>
564                </button>
565                <div class="cs-info-tooltip cs-info-tooltip--wide" id="goals-about-tooltip">These are the <strong>UNCCD&rsquo;s global goals</strong>, supported by the RAA &mdash; as illustrated in the <a href="https://static1.squarespace.com/static/6747b00030cc867f6c6ff6e7/t/6a5634cf90b6ef6126a02a1b/1784034511771/140726+%5BFINAL%5D+RAA+text+-+2026.docx.pdf" target="_blank" rel="noopener">RAA text</a>.</div>
566              </div>
567              <span class="cs-stats-label-line"></span>
568            </div>
569            <div class="cs-goals-row">
570              <div class="cs-goal-mini" style="--goal-accent:#48966a">
571                <div class="cs-goal-mini-title">Land Conservation &amp; Restoration</div>
572                <div class="cs-goal-mini-row">
573                  <div class="cs-goal-mini-col"><span class="cs-goal-mini-num" id="goal-land-achieved">--</span><span class="cs-goal-mini-period">Under Action</span></div>
574                  <div class="cs-goal-mini-col"><span class="cs-goal-mini-num" id="goal-land-projected">--</span><span class="cs-goal-mini-period">Projected</span></div>
575                </div>
576              </div>
577              <div class="cs-goal-mini" style="--goal-accent:#587da0">
578                <div class="cs-goal-mini-title">Drought Resilience</div>
579                <div class="cs-goal-mini-row">
580                  <div class="cs-goal-mini-col">
580<span class="cs-goal-mini-num" id="goal-drought-achieved">--</span><span class="cs-goal-mini-period">Under Action</span></div>
581                  <div class="cs-goal-mini-col"><span class="cs-goal-mini-num" id="goal-drought-projected">--</span><span class="cs-goal-mini-period">Projected</span></div>
582                </div>
583              </div>
584              <div class="cs-goal-mini" style="--goal-accent:#c49a3c">
585                <div class="cs-goal-mini-title">Finance Mobilization</div>
586                <div class="cs-goal-mini-row">
587                  <div class="cs-goal-mini-col"><span class="cs-goal-mini-num" id="goal-finance-achieved">--</span><span class="cs-goal-mini-period">Under Action</span></div>
588                  <div class="cs-goal-mini-col"><span class="cs-goal-mini-num" id="goal-finance-projected">--</span><span class="cs-goal-mini-period">Projected</span></div>
589                </div>
590              </div>
591            </div>
592            <div class="cs-goal-descs-row">
593              <div class="cs-goal-desc" style="--goal-accent:#48966a">Conserve and restore 1.5 billion ha of degraded land, including 250 million ha of degraded agricultural land.</div>
594              <div class="cs-goal-desc" style="--goal-accent:#587da0">Boost drought and water resilience, protecting 30% of lands and inland waters.</div>
595              <div class="cs-goal-desc" style="--goal-accent:#c49a3c">Mobilize US$2.1 trillion in global investments towards these goals.</div>
596            </div>
597          </div>
598        </div>
599
600        <!-- Main Grid: 3x2 -->
601        <div class="cs-grid">
602          <div class="cs-chart-card"><h3>By Type of Actor</h3><div class="bar-chart" id="chart-sector"></div></div>
603          <div class="cs-chart-card cs-chart-card--combined">
604            <div class="cs-chart-card-half"><h3>By Scope</h3><div class="donut-wrap"><div class="donut" id="chart-scope"></div><div class="donut-legend" id="legend-scope"></div></div></div>
605            <div class="cs-chart-card-half"><h3>By Region</h3><div class="donut-wrap"><div class="donut" id="chart-region"></div><div class="donut-legend" id="legend-region"></div></div></div>
606          </div>
607          <div class="cs-chart-card"><h3>By Action Area</h3><div class="bar-chart" id="chart-priority"></div></div>
608          <div class="cs-chart-card cs-chart-card--wide-tall"><h3>By Beneficiary</h3><div class="bar-chart" id="chart-beneficiary"></div></div>
609          <div class="cs-chart-card">
610            <div class="cs-chart-header">
611              <h3>By Critical Enabler</h3>
612              <div class="cs-info-row" style="position:relative">
613                <button class="cs-info-btn cs-info-btn--sm" id="enabler-info-toggle" aria-expanded="false" aria-controls="enabler-info-tooltip">i</button>
614                <div class="cs-info-tooltip cs-info-tooltip--left" id="enabler-info-tooltip">Critical Enablers are the cross-cutting mechanisms the RAA uses to accelerate action:<br><br>💰 <strong>Finance</strong> — Mobilize investment and de-risk capital through instruments such as carbon markets, KPI-linked bonds and debt-for-nature swaps.<br><br>🏛️ <strong>Governance</strong> — Strengthen inclusive, rights-based decision-making and equitable resource allocation, including for historically excluded groups.<br><br>🔬 <strong>Science, Technology &amp; Innovation</strong> — Bridge mainstream science with indigenous and local knowledge to drive data-informed, locally-led restoration.</div>
615              </div>
616            </div>
617            <div class="bar-chart" id="chart-enabler"></div>
618          </div>
619          <div class="cs-chart-card cs-chart-card--wide cs-chart-card--tall"><h3>By Priority Ecosystem</h3><div class="bar-chart" id="chart-ecosystem"></div></div>
620          <div class="cs-chart-card cs-chart-card--gold">
621            <div class="cs-chart-header">
622              <h3>By Rio Synergies</h3>
623              <div class="cs-info-row" style="position:relative">
624                <button class="cs-info-btn cs-info-btn--sm" id="rio-info-toggle" aria-expanded="false" aria-controls="rio-info-tooltip">i</button>
625                <div class="cs-info-tooltip cs-info-tooltip--left" id="rio-info-tooltip">The <strong>Rio Conventions</strong> were established at the 1992 Earth Summit:<br><br>🌱 <strong>UNCCD</strong> — UN Convention to Combat Desertification<br>🌿 <strong>CBD</strong> — Convention on Biological Diversity<br>🌡️ <strong>UNFCCC</strong> — UN Framework Convention on Climate Change<br>🎯 <strong>SDG</strong> — UN Sustainable Development Goals<br><br>All initiatives in this community are aligned with UNCCD by definition. Percentages for CBD, UNFCCC and SDG reflect the share of initiatives that declared alignment with each framework.</
625div>
626              </div>
627            </div>
628            <div class="bar-chart" id="chart-rio"></div>
629          </div>
630          <div class="cs-chart-card cs-chart-card--accent">
631            <div class="cs-chart-header">
632              <h3>Land &amp; Soil Breakthroughs</h3>
633              <div class="cs-info-row" style="position:relative">
634                <button class="cs-info-btn cs-info-btn--sm" id="btt-info-toggle" aria-expanded="false" aria-controls="btt-info-tooltip">i</button>
635                <div class="cs-info-tooltip" id="btt-info-tooltip">A <strong>Breakthrough</strong> is a shared, time-bound goal that drives a decisive system shift — from fragmented efforts to coordinated, large-scale action.<br><br>Rather than creating new initiatives, Breakthroughs provide a <strong>unifying framework</strong> that connects existing efforts, aligns actors around science-based targets, and makes collective progress visible.<br><br>The <strong>Land &amp; Soil Breakthroughs</strong> are developed under the RAA in connection with the UNCCD space, inspired by the Sharm El-Sheikh Adaptation Agenda.</div>
636              </div>
637            </div>
638            <div class="cs-btt-num" id="btt-count">0</div>
639            <div class="cs-btt-label">initiatives engaged with Land &amp; Soil Breakthroughs</div>
640          </div>
641        </div>
642
643        <div class="section-footer cs-footer">
644          <span class="cs-timestamp"><span class="cs-pulse-dot"></span>Last updated: <strong id="snapshot-date"></strong></span>
645          <span class="disclaimer">All data is self-reported and voluntary, provided by participating initiatives. The Platform is committed to progressively strengthening data consistency.</span>
646        </div>
647      </section>
648
649      <!-- ===== DETAIL: Partners ===== -->
650      <section id="partners-list" class="page-section">
651        <button class="btn-back" onclick="goHome()">&larr; Back to overview</button>
652        <div class="section-intro"><h1 class="page-title">Partners</h1><p class="page-desc">Organisations that support the Riyadh Action Agenda and the Land & Soil Community.</p></div>
653        <div class="partners-layout">
654          <div class="partners-list-col" id="partners-grid"></div>
655          <nav class="partners-alpha" id="partners-alpha"></nav>
656        </div>
657        <div class="section-footer"><span class="disclaimer">Inclusion does not imply endorsement, ranking, or level of engagement.</span></div>
658      </section>
659
660      <!-- ===== DETAIL: Community Interaction ===== -->
661      <section id="community-interaction" class="page-section">
662        <button class="btn-back" onclick="goHome()">&larr; Back to overview</button>
663
664        <div style="display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:40px 20px;text-align:center;background:#f0f2f0;border-radius:16px;">
665
666          <!-- Main card -->
667          <div style="background:#ffffff;border-radius:20px;padding:56px 48px;max-width:620px;width:100%;position:relative;overflow:hidden;box-shadow:0 4px 24px rgba(38,53,36,0.08);">
668
669            <!-- Decorative rings -->
670            <div style="position:absolute;top:-60px;right:-60px;width:220px;height:220px;border-radius:50%;border:1.5px solid rgba(38,53,36,0.07);pointer-events:none;"></div>
671            <div style="position:absolute;top:-30px;right:-30px;width:140px;height:140px;border-radius:50%;border:1.5px solid rgba(38,53,36,0.05);pointer-events:none;"></div>
672            <div style="position:absolute;bottom:-50px;left:-50px;width:180px;height:180px;border-radius:50%;border:1.5px solid rgba(72,150,106,0.1);pointer-events:none;"></div>
673
674            <!-- Label -->
675            <div style="display:inline-block;background:#263524;border-radius:20px;padding:5px 16px;margin-bottom:24px;">
676              <span style="font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:#ffffff;">Coming Soon</span>
677            </div>
678
679            <!-- Title -->
680            <h1 style="font-size:32px;font-weight:800;color:#263524;line-height:1.15;margin-bottom:20px;letter-spacing:-0.5px;">Community<br>Interaction</h1>
681
682            <!-- Divider -->
683            <div style="width:40px;height:3px;background:#48966a;border-radius:2px;margin:0 auto 24px;"></div>
684
685            <!-- Description -->
686            <p style="font-size:15px;color:#6b7a6b;line-height:1.7;max-width:460px;margin:0 auto;">
687              This section will be co-designed with the Land &amp; Soil Community. Conversations at <strong style="color:#263524;">UNCCD COP17</strong> will help identify how this space can create the most value — shaping its next phase based on community insights and feasibility considerations.
688            </p>
689
690          </div>
691
692        </div>
693      </section>
694
695    </div>
696  </div>
697
698  <!-- ========== GET INVOLVED FOOTER ========== -->
699  <footer class="get-involved">
700    <div class="footer-left">
701      <span class="get-involved-label">Get Involved</span>
702      <div class="get-involved-actions">
703        <button class="get-involved-btn primary" onclick="document.getElementById('join-modal').classList.add('open')">
704          <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="12" y1="5" x2="12" y2="19"/><line x1="5" y1="12" x2="19" y2="12"/></svg>
705          Join with my initiative
706        </button>
707        <button class="get-involved-btn secondary" onclick="document.getElementById('join-platform-modal').classList.add('open')">
708          <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="2" y="3" width="20" height="14" rx="2"/><line x1="8" y1="21" x2="16" y2="21"/><line x1="12" y1="17" x2="12" y2="21"/></svg>
709          Join with my platform
710        </button>
711      </div>
712    </div>
713    <div class="footer-divider"></div>
714    <div class="footer-right">
715      <span class="get-involved-label">Contact Us</span>
716      <a href="mailto:[email protected][email protected]%[email protected]" class="footer-email">
717        <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="2" y="4" width="20" height="16" rx="2"/><path d="M22 4L12 13 2 4"/></svg>
718        [email protected]
719      </a>
720    </div>
721    <div class="footer-bottom">
722      <span>Developed by Ambition Loop</span>
723      <span class="footer-dot">&middot;</span>
724      <a href="#" onclick="event.preventDefault();document.getElementById('privacy-modal').classList.add('open')">Privacy Policy &amp; Data Collection</a><span class="footer-glyph" aria-hidden="true">cmr</span>
725    </div>
726  </footer>
727
728  <!-- ========== MODALS ========== -->
729  <div class="modal-overlay" id="profile-modal">
730    <div class="modal-content"><button class="modal-close" onclick="closeModal('profile-modal')">&times;</button><div id="modal-body"></div></div>
731  </div>
732  <div class="modal-overlay" id="join-modal">
733    <div class="modal-content sm">
734      <button class="modal-close" onclick="closeModal('join-modal')">&times;</button>
735      <h2>Join the Land & Soil Community</h2>
736      <p class="modal-desc">Interested in adding your initiative? Before filling out the form, please review the alignment criteria to ensure your initiative is aligned with the Riyadh Action Agenda.</p>
737      <div style="display:flex;flex-direction:column;gap:10px;margin-top:16px;">
738        <a href="https://www.canva.com/design/DAHBHyd48SI/1RxYXZlxYgcjm2H46qhyow/view?utm_content=DAHBHyd48SI&utm_campaign=designshare&utm_medium=link2&utm_source=uniquelinks&utlId=h183a478f56#1" target="_blank" class="btn-secondary">Review Alignment Criteria</a>
739        <a href="https://docs.google.com/forms/d/e/1FAIpQLSebRBtAKXOfwMMmu9m2l3ZOG-iP8IFXuBxyOVhLhWPBG39O7g/viewform?usp=dialog" target="_blank" class="btn-primary">Go to Form</a>
740      </div>
741    </div>
742  </div>
743  <div class="modal-overlay" id="join-platform-modal">
744    <div class="modal-content sm">
745      <button class="modal-close" onclick="closeModal('join-platform-modal')">&times;</button>
746      <h2>Join with my Platform</h2>
747      <p class="modal-desc">Interested in adding your platform to the Land & Soil Community? Before filling out the form, please review the alignment criteria to ensure your platform is aligned with the Riyadh Action Agenda.</p>
748      <div style="display:flex;flex-direction:column;gap:10px;margin-top:16px;">
749        <a href="https://www.canva.com/design/DAHBHyd48SI/1RxYXZlxYgcjm2H46qhyow/view?utm_content=DAHBHyd48SI&utm_campaign=designshare&utm_medium=link2&utm_source=uniquelinks&utlId=h183a478f56#1" target="_blank" class="btn-secondary">Review Alignment Criteria</a>
750        <a href="https://docs.google.com/forms/d/e/1FAIpQLScfwoiVOsjpNIyH7KMD5qL-GPjSQ71sXB_K4HwATaKyyz8EzA/viewform?usp=dialog" target="_blank" class="btn-primary">Go to Form</a>
751      </div>
752    </div>
753  </div>
754  <div class="modal-overlay" id="invite-modal">
755    <div class="modal-content sm">
756      <button class="modal-close" onclick="closeModal('invite-modal')">&times;</button>
757      <h2>Invite Other Initiatives</h2>
758      <p class="modal-desc">Know an initiative that should be part of the Land & Soil Community? Send them an invitation.</p>
759      <button class="btn-primary" onclick="closeModal('invite-modal')">Send Invitation</button>
760    </div>
761  </div>
762
763  <div class="modal-overlay" id="platform-modal">
764    <div class="modal-content"><button class="modal-close" onclick="closeModal('platform-modal')">&times;</button><div id="platform-modal-body"></div></div>
765  </div>
766
767  <div class="modal-overlay" id="privacy-modal">
768    <div class="modal-content sm">
769      <button class="modal-close" onclick="closeModal('privacy-modal')">&times;</button>
770      <h2>Privacy Policy &amp; Data Collection</h2>
771      <p class="modal-desc">All data displayed in this platform is self-reported by participating initiatives through a structured survey process. The RAA Community Platform is committed to transparency, data accuracy, and progressively strengthening data consistency. No personal data is collected or stored through this platform. For questions, contact <a href="mailto:[email protected][email protected]%[email protected]">[email protected]</a>.</p>
772    </div>
773  </div>
774
775  <!-- Loading overlay -->
776  <div id="loading-overlay" style="position:fixed;inset:0;background:var(--bg, #f5f5f3);z-index:9999;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;">
777    <div style="width:36px;height:36px;border:3px solid #e4e2dd;border-top-color:#48966a;border-radius:50%;animation:spin 0.8s linear infinite;"></div>
778    <p style="font-family:Inter,sans-serif;font-size:13px;color:#5a5a5a;">Loading platform data...</p>
779    <style>@keyframes spin { to { transform: rotate(360deg); } }</style>
780  </div>
781
782  
782<script src="https://unpkg.com/[email protected]/dist/leaflet.js"></script>
782
783  
783<script src="https://unpkg.com/[email protected]/dist/leaflet.markercluster.js"></script>
783
784  
784<script src="dataLoader.js"></script>
784
785  
785<script src="app.js"></script>
785
786  
786<script>
787    // Hero count-up animation (0.9s)
788    function animateCountUp() {
789      document.querySelectorAll('.hero-stat-num[data-count]').forEach(el => {
790        const target = parseFloat(el.dataset.count);
791        const suffix = el.dataset.suffix || '';
792        const decimal = parseInt(el.dataset.decimal) || 0;
793        const duration = 900;
794        const start = performance.now();
795
796        function update(now) {
797          const elapsed = now - start;
798          const progress = Math.min(elapsed / duration, 1);
799          const eased = 1 - Math.pow(1 - progress, 3);
800          const current = eased * target;
801          el.textContent = (decimal ? current.toFixed(decimal) : Math.floor(current)) + suffix;
802          if (progress < 1) requestAnimationFrame(update);
803        }
804        requestAnimationFrame(update);
805      });
806    }
807
808    // Run on page load
809    animateCountUp();
810
811    // Re-run when returning to landing via goHome
812    const origGoHome = window.goHome;
813    if (origGoHome) {
814      window.goHome = function() {
815        origGoHome.apply(this, arguments);
816        setTimeout(animateCountUp, 100);
817      };
818    }
819  </script>
819
820  
820<script>
821    // When embedded in iframe, logo navigates parent to main site instead of platform home
822    if (window.self !== window.top) {
823      var logoEl = document.getElementById('logo-home');
824      logoEl.href = 'https://www.riyadhactionagenda.org/';
825      logoEl.target = '_parent';
826    }
827  </script>
827
828
829</body>
830</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.