1<!DOCTYPE html> 2<html lang="en"> 3 <head> 4 <meta charset="utf-8"> 5 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 6 <title>How We're Shaping the Future of Open Infrastructure</title> 7 <meta name="HandheldFriendly" content="True"> 8 <meta name="viewport" content="width=device-width, initial-scale=1"> 9 <link rel="stylesheet" type="text/css" href="https://investinopen.org/assets/redesign/style.css?v=9PCgukrnDhWRZPkP"> 10 <link rel="preconnect" href="https://ghostbridge-l3ltf7d2wq-uc.a.run.app" crossorigin> 11
11<script> 12 window.ioiGhostBridgeUrl = 'https://ghostbridge-l3ltf7d2wq-uc.a.run.app'; 13 window.ioiGhostBridgeCacheEnabled = true; 14 window.ioiGhostBridgeCacheTtl = 15 * 60 * 1000; 15 window.ioiGhostBridgePreloadTabs = [ 16 'primary-navigation', 17 'footer-navigation' 18 ]; 19 </script>
19 20
20<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
20 21
21<script src="https://investinopen.org/assets/js/ghost-bridge-nav.js?v=fk6M-6-ph28u28XF" defer></script>
21 22 <meta name="description" content="Open infrastructure is essential to how research is created, shared, and sustained. Yet the systems that support it are often underfunded, fragmented, and difficult to navigate."> 23 <link rel="icon" href="https://storage.ghost.io/c/e3/0f/e30f355d-2d35-423e-a82d-26c811a07bf5/content/images/size/w256h256/2024/03/IOI-Icon-light-backgrounds-extra-bleed.png" type="image/png"> 24 <link rel="canonical" href="https://investinopen.org/about/our-impact/"> 25 <meta name="referrer" content="no-referrer-when-downgrade"> 26 27 <meta property="og:site_name" content="Invest in Open Infrastructure"> 28 <meta property="og:type" content="website"> 29 <meta property="og:title" content="How We're Shaping the Future of Open Infrastructure"> 30 <meta property="og:description" content="Open infrastructure is essential to how research is created, shared, and sustained. Yet the systems that support it are often underfunded, fragmented, and difficult to navigate."> 31 <meta property="og:url" content="https://investinopen.org/about/our-impact/"> 32 <meta property="og:image" content="https://storage.ghost.io/c/e3/0f/e30f355d-2d35-423e-a82d-26c811a07bf5/content/images/2024/05/investinopen.org-og_image-1.png"> 33 <meta property="article:modified_time" content="2026-07-01T00:18:25.000Z"> 34 <meta name="twitter:card" content="summary_large_image"> 35 <meta name="twitter:title" content="How We're Shaping the Future of Open Infrastructure"> 36 <meta name="twitter:description" content="Open infrastructure is essential to how research is created, shared, and sustained. Yet the systems that support it are often underfunded, fragmented, and difficult to navigate."> 37 <meta name="twitter:url" content="https://investinopen.org/about/our-impact/"> 38 <meta name="twitter:image" content="https://storage.ghost.io/c/e3/0f/e30f355d-2d35-423e-a82d-26c811a07bf5/content/images/2024/05/investinopen.org-og_image-1.png"> 39 <meta name="twitter:label1" content="Written by"> 40 <meta name="twitter:data1" content="Kaitlin Thaney"> 41 <meta property="og:image:width" content="1200"> 42 <meta property="og:image:height" content="630"> 43 44
44<script type="application/ld+json"> 45{ 46 "@context": "https://schema.org", 47 "@type": "Article", 48 "publisher": { 49 "@type": "Organization", 50 "name": "Invest in Open Infrastructure", 51 "url": "https://investinopen.org/", 52 "logo": { 53 "@type": "ImageObject", 54 "url": "https://storage.ghost.io/c/e3/0f/e30f355d-2d35-423e-a82d-26c811a07bf5/content/images/2024/03/IOI-logo-website-banner-light-background.png" 55 } 56 }, 57 "author": { 58 "@type": "Person", 59 "name": "Kaitlin Thaney", 60 "image": { 61 "@type": "ImageObject", 62 "url": "https://storage.ghost.io/c/e3/0f/e30f355d-2d35-423e-a82d-26c811a07bf5/content/images/2026/06/KaitlinThaney.png", 63 "width": 1080, 64 "height": 1080 65 }, 66 "sameAs": [ 67 "https://indieweb.social/@kaythaney", 68 "https://www.linkedin.com/in/kaythaney" 69 ] 70 }, 71 "headline": "How We're Shaping the Future of Open Infrastructure", 72 "url": "https://investinopen.org/about/our-impact/", 73 "dateModified": "2026-07-01T00:18:25.000Z", 74 "description": "Open infrastructure is essential to how research is created, shared, and sustained. Yet the systems that support it are often underfunded, fragmented, and difficult to navigate.", 75 "mainEntityOfPage": "https://investinopen.org/about/our-impact/" 76} 77 </script>
77 78 79 <meta name="generator" content="Ghost 6.68"> 80 <link rel="alternate" type="application/rss+xml" title="Invest in Open Infrastructure" href="https://investinopen.org/rss/"> 81
81<script defer src="https://cdn.jsdelivr.net/ghost/portal@~2.71/umd/portal.min.js" data-i18n="true" data-ghost="https://investinopen.org/" data-key="f16dc24abf34afd3272e082dcb" data-api="https://investinopeninfrastructure.ghost.io/ghost/api/content/" data-locale="en" crossorigin="anonymous"></script>
81<style id="gh-members-styles">.gh-post-upgrade-cta-content, 82.gh-post-upgrade-cta { 83 display: flex; 84 flex-direction: column; 85 align-items: center; 86 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; 87 text-align: center; 88 width: 100%; 89 color: #ffffff; 90 font-size: 16px; 91} 92 93.gh-post-upgrade-cta-content { 94 border-radius: 8px; 95 padding: 40px 4vw; 96} 97 98.gh-post-upgrade-cta h2 { 99 color: #ffffff; 100 font-size: 28px; 101 letter-spacing: -0.2px; 102 margin: 0; 103 padding: 0; 104} 105 106.gh-post-upgrade-cta p { 107 margin: 20px 0 0; 108 padding: 0; 109} 110 111.gh-post-upgrade-cta small { 112 font-size: 16px; 113 letter-spacing: -0.2px; 114} 115 116.gh-post-upgrade-cta a { 117 color: #ffffff; 118 cursor: pointer; 119 font-weight: 500; 120 box-shadow: none; 121 text-decoration: underline; 122} 123 124.gh-post-upgrade-cta a:hover { 125 color: #ffffff; 126 opacity: 0.8; 127 box-shadow: none; 128 text-decoration: underline; 129} 130 131.gh-post-upgrade-cta a.gh-btn { 132 display: block; 133 background: #ffffff; 134 text-decoration: none; 135 margin: 28px 0 0; 136 padding: 8px 18px; 137 border-radius: 4px; 138 font-size: 16px; 139 font-weight: 600; 140} 141 142.gh-post-upgrade-cta a.gh-btn:hover { 143 opacity: 0.92; 144}</style> 145
145<script defer src="https://cdn.jsdelivr.net/ghost/sodo-search@~1.8/umd/sodo-search.min.js" data-key="f16dc24abf34afd3272e082dcb" data-styles="https://cdn.jsdelivr.net/ghost/sodo-search@~1.8/umd/main.css" data-sodo-search="https://investinopeninfrastructure.ghost.io/" data-locale="en" crossorigin="anonymous"></script>
145 146
146<script defer src="https://cdn.jsdelivr.net/ghost/announcement-bar@~1.1/umd/announcement-bar.min.js" data-announcement-bar="https://investinopen.org/" data-api-url="https://investinopen.org/members/api/announcement/" crossorigin="anonymous"></script>
146 147 <link href="https://investinopen.org/webmentions/receive/" rel="webmention"> 148
148<script defer src="/public/cards.min.js?v=ShRHxgy4po8zN-Wf"></script>
148 149 <link rel="stylesheet" type="text/css" href="/public/cards.min.css?v=WwnU9jw5ancNC8Gc"> 150
150<script defer src="/public/member-attribution.min.js?v=AKG4hWena9j3yX3I"></script>
150 151
151<script defer src="/public/ghost-stats.min.js?v=vFcCUf6ZQ0Hyhc8h" data-stringify-payload="false" data-datasource="analytics_events" data-storage="localStorage" data-host="https://investinopen.org/.ghost/analytics/api/v1/page_hit" tb_site_uuid="e30f355d-2d35-423e-a82d-26c811a07bf5" tb_post_uuid="8e6ea278-8981-4998-b8af-0fe9b924b989" tb_post_type="page" tb_member_uuid="undefined" tb_member_status="undefined" tb_gift_link=""></script>
151<style>:root {--ghost-accent-color: #15171A;}</style> 152 <!-- Matomo -->
153<script> 154 var _paq = window._paq = window._paq || []; 155 /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ 156 _paq.push(["setDocumentTitle", document.domain + "/" + document.title]); 157 _paq.push(["setCookieDomain", "*.investinopen.org"]); 158 _paq.push(["setDomains", ["*.investinopen.org"]]); 159 _paq.push(['trackPageView']); 160 _paq.push(['enableHeartBeatTimer']); 161 _paq.push(['enableLinkTracking']); 162 (function() { 163 var u="https://investinopen.matomo.cloud/"; 164 _paq.push(['setTrackerUrl', u+'matomo.php']); 165 _paq.push(['setSiteId', '1']); 166 var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; 167 g.async=true; g.src='https://cdn.matomo.cloud/investinopen.matomo.cloud/matomo.js'; s.parentNode.insertBefore(g,s); 168 })(); 169</script>
169 170<!-- End Matomo Code --> 171 172<!-- Start cookieyes banner -->
173<script id="cookieyes" type="text/javascript" src="https://cdn-cookieyes.com/client_data/2e2920022c2f2c3a3fef2ea0/script.js"></script>
173 174<!-- End cookieyes banner --> 175 176<!-- Matomo Tag Manager -->
177<script> 178 var _mtm = window._mtm = window._mtm || []; 179 _mtm.push({'mtm.startTime': (new Date().getTime()), 'event': 'mtm.Start'}); 180 (function() { 181 var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; 182 g.async=true; g.src='https://cdn.matomo.cloud/investinopen.matomo.cloud/container_5xAfbfet.js'; s.parentNode.insertBefore(g,s); 183 })(); 184</script>
184 185<!-- End Matomo Tag Manager --> 186
186<script> 187 function getPageID(el){ 188 for (var i=0, l=el.classList.length; i<l; ++i) { 189 if(/np-.*/.test(el.classList[i])) { 190 return el.classList[i]; 191 break; 192 } 193 } 194 } 195 196 document.addEventListener("DOMContentLoaded",function(){ 197 const path = window.location.pathname; 198 let count = path.split("/").length - 2; 199 let slug = window.location.pathname.substring(1).split('/')[0]; 200 while (count > 1) { 201 slug = path.substring(0, path.lastIndexOf('/')).split('/')[count]; 202 count--; 203 } 204 205 console.log("slug: ", slug); 206 const body = document.querySelector('body'); 207 208 body.classList.add(`np-${slug}`); 209 210 const current_page = getPageID(body); 211 const page_class = '.' + current_page; 212 console.log(current_page); 213 214 const menus = document.querySelectorAll('.header-nav-dropdown'); 215 [...menus].forEach((menu) => { 216 const match = menu.querySelector(page_class); 217 if (match){ 218 menu.classList.add(current_page); 219 } 220 }); 221 222 const selections = body.querySelectorAll(page_class); 223 [...selections].forEach((selection) => { 224 selection.classList.add('active'); 225 }); 226 227 if (path.includes('/blog/')){ 228 const news_menu = document.querySelector('#primary-nav a[href="/blog"]'); 229 if (news_menu) { 230 news_menu.closest('li').classList.add('active'); 231 } 232 } else if (path.includes('/about/our-impact/')) { 233 const impact_menu = document.querySelector('#primary-nav a[href="/about/our-impact"]'); 234 if (impact_menu) { 235 impact_menu.closest('li').classList.add('active'); 236 } 237 } 238 239 const el = document.querySelector('#primary-nav>ul'); 240 document.addEventListener('click', event => { 241 const is_click_inside = el.contains(event.target); 242 const button = event.target.closest('.header-toggle'); 243 const checked = document.querySelector('.header-checkbox:checked'); 244 245 if (!is_click_inside && !button && checked) { 246 checked.click(); 247 } else if (button && !checked){ 248 document.querySelector('.header-checkbox').click(); 249 event.preventDefault(); 250 } 251 }) 252 window.addEventListener('resize', event => { 253 const checked = document.querySelector('.header-checkbox:checked'); 254 if (checked) { 255 checked.click(); 256 } 257 }); 258 }); 259 260 261 262 263 264 </script>
264 265 </head> 266 <body class="page-template page-our-impact global-hash-chrys global-hash-expertise global-hash-gail global-hash-impact-report global-hash-sarah global-hash-status global-hash-topic global-hash-type "> 267 <div class="header-sticky-sentinel" aria-hidden="true"></div> 268<header class="header-section"> 269 <div class="header-nav-bar"> 270 <div class="container"> 271 <div class="header-nav"> 272 <nav id="primary-nav"> 273 274<a href="https://investinopen.org" id="home-link" class="is-image"><img 275 src="https://investinopen.org/assets/redesign/ioi-logo-dark.svg?v=XXK5z-6REdwdyklA" 276 alt="Invest in Open Infrastructure" /> 277</a> 278<input id="toggle" class="header-checkbox" type="checkbox"> 279<label class="header-toggle" for="toggle" tabindex="0"> 280 <span> 281 <span class="bar"></span> 282 <span class="bar"></span> 283 <span class="bar"></span> 284 </span> 285</label> 286<ul data-primary-nav data-primary-nav-ready aria-label="Primary navigation"> 287 <li data-primary-nav-item data-nav-label="Our Approach" data-nav-url="https://investinopen.org/"> 288 <span class="spacer">Our Approach</span> 289 <a href="https://investinopen.org/">Our Approach</a> 290 </li> 291 <li data-primary-nav-item data-nav-label="Our Work" data-nav-url="https://investinopen.org/"> 292 <span class="spacer">Our Work</span> 293 <a href="https://investinopen.org/">Our Work</a> 294 </li> 295 <li data-primary-nav-item data-nav-label="News and Updates" data-nav-url="https://investinopen.org/"> 296 <span class="spacer">News and Updates</span> 297 <a href="https://investinopen.org/">News and Updates</a> 298 </li> 299 <li data-primary-nav-item data-nav-label="About IOI" data-nav-url="https://investinopen.org/"> 300 <span class="spacer">About IOI</span> 301 <a href="https://investinopen.org/">About IOI</a> 302 </li> 303</ul> 304 305 </nav> 306 <div class="home-redesign-header-actions"> 307 <a id="search-open" class="home-redesign-search" href="#/search" aria-label="Search"> 308 <span aria-hidden="true"></span> 309 </a> 310 <a class="home-redesign-contact" href="/contact-us">Get In Touch</a> 311 </div> 312 </div> 313 </div> 314 </div> 315</header> 316 <div class="global-wrap"> 317 <div class="global-content"> 318 <main class="global-main"> 319
319<script> 320 document.body.classList.add('template-impact', 'bg-green'); 321</script>
321 322<style> 323 .template-impact .impact-content-layout { 324 position: relative; 325 display: block; 326 overflow: hidden; 327 padding: clamp(1rem, 4vw, 3rem) var(--body-padding) clamp(1rem, 7vw, 6rem); 328 color: var(--black); 329 } 330 331 .template-impact .impact-content-layout::before { 332 content: ''; 333 position: absolute; 334 top: clamp(1rem, 7vw, 5rem); 335 left: max(-7rem, -7vw); 336 width: clamp(12rem, 20vw, 20rem); 337 aspect-ratio: 1 / 1.4; 338 background: url('https://investinopen.org/assets/images/arrows-yellow.svg?v=QGczq_FXjxyXYivF') left center / contain no-repeat; 339 pointer-events: none; 340 } 341 342 .template-impact .impact-content-layout > div { 343 display: flex; 344 align-items: flex-start; 345 width: min(100%, 1000px); 346 max-width: 1000px; 347 gap: clamp(3rem, 7vw, 6rem); 348 justify-content: center; 349 margin: 0 auto; 350 } 351 352 .template-impact .impact-content-layout > div > * { 353 position: relative; 354 z-index: 1; 355 } 356 357 .template-impact .impact-content-layout .page-content { 358 flex: 0 1 52rem; 359 padding: 0; 360 background: transparent; 361 } 362 363 .template-impact .impact-content-layout .page-content .container { 364 max-width: 52rem; 365 margin: 0; 366 } 367 368 .template-impact .impact-content-layout .impact-stat-sidebar { 369 width: min(100%, 16rem); 370 flex: 0 0 16rem; 371 margin-top: clamp(1rem, 12vw, 11rem); 372 } 373 374 @media (max-width: 900px) { 375 .template-impact .impact-content-layout { 376 padding-right: var(--body-padding-mobile); 377 padding-left: var(--body-padding-mobile); 378 } 379 380 .template-impact .impact-content-layout .impact-stat-sidebar { 381 width: 100%; 382 flex: 1 1 auto; 383 margin-top: 0; 384 } 385 386 .template-impact .impact-content-layout > div { 387 width: 100%; 388 flex-wrap:wrap; 389 } 390 391 .template-impact .impact-content-layout > div > * { 392 width:100%; 393 } 394 395 .template-impact .impact-content-layout .page-content, 396 .template-impact .impact-content-layout .page-content .container { 397 width: 100%; 398 } 399 400 .template-impact .impact-content-layout::before { 401 top: 1rem; 402 left: -6rem; 403 width: 13rem; 404 opacity: 0.9; 405 } 406 } 407</style> 408<style> 409 /* Component: breadcrumbs.hbs */ 410 .breadcrumbs { 411 position: relative; 412 z-index: 2; 413 padding: clamp(1rem, 4vw, 4rem) var(--body-padding) 1.25rem; 414 color: currentColor; 415 } 416 417 .breadcrumbs .container { 418 width: 100%; 419 max-width: var(--container-max); 420 margin: 0 auto; 421 } 422 423 .breadcrumbs__list { 424 display: flex; 425 flex-wrap: wrap; 426 gap: 0.625rem; 427 align-items: center; 428 margin: 0; 429 padding: 0; 430 list-style: none; 431 font-size: 0.9375rem; 432 line-height: 1.4; 433 } 434 435 .breadcrumbs__item { 436 display: inline-flex; 437 align-items: center; 438 } 439 440 .breadcrumbs__item + .breadcrumbs__item::before { 441 content: '/'; 442 margin-right: 0.625rem; 443 color: currentColor; 444 opacity: 0.45; 445 } 446 447 .breadcrumbs a { 448 color: currentColor; 449 font-weight: 600; 450 text-decoration: none; 451 } 452 453 .breadcrumbs a:hover, 454 .breadcrumbs a:focus-visible { 455 text-decoration: underline; 456 text-underline-offset: 0.2em; 457 } 458 459 .breadcrumbs__item--current { 460 opacity: 0.58; 461 } 462 463 @media (max-width: 680px) { 464 .breadcrumbs { 465 padding-right: var(--body-padding-mobile); 466 padding-left: var(--body-padding-mobile); 467 } 468 } 469</style> 470<nav aria-label="Breadcrumb" class="breadcrumbs"> 471 <div class="container"> 472 <ol class="breadcrumbs__list"> 473 <li class="breadcrumbs__item"><a href="https://investinopen.org">Home</a></li> 474 <li class="breadcrumbs__item"><a href="/about/">About IOI</a></li> 475 <li class="breadcrumbs__item breadcrumbs__item--current" aria-current="page">How We'
475re Shaping the Future of Open Infrastructure</li> 476 </ol> 477 </div> 478</nav> 479<style> 480 /* Component: page-header.hbs */ 481 .page-header { 482 position: relative; 483 overflow: hidden; 484 padding: clamp(1rem, 6vw, 5rem) var(--body-padding); 485 background: transparent; 486 color: currentColor; 487 } 488 489 .page-header::after { 490 content: ''; 491 position: absolute; 492 top: 50%; 493 right: -8rem; 494 width: clamp(24rem, 46vw, 48rem); 495 height: clamp(12rem, 24vw, 24rem); 496 background: url('https://investinopen.org/assets/images/BG_Pattern.png?v=oRve5IxVsXfKh4F0') center / cover no-repeat; 497 mix-blend-mode: multiply; 498 opacity: 0.077; 499 pointer-events: none; 500 transform: translateY(-50%); 501 } 502 503 body.template-impact .page-header::after, 504 body.template-strategic-plan .page-header::after { 505 display: none; 506 } 507 508 .page-header .container { 509 position: relative; 510 z-index: 1; 511 display: flex; 512 width: 100%; 513 max-width: var(--container-max); 514 align-items: baseline; 515 justify-content: space-between; 516 gap: 2rem; 517 margin: 0 auto; 518 } 519 520 .page-header__content { 521 min-width: 0; 522 } 523 524 .page-header__title { 525 margin: 0; 526 color: currentColor; 527 font-family: var(--font2); 528 font-size: clamp(3.25rem, 6vw, 4.5rem); 529 font-weight: 700; 530 line-height: 1.1; 531 overflow-wrap: anywhere; 532 } 533 534 .page-header__excerpt { 535 max-width: 44rem; 536 margin: 1.25rem 0 0; 537 color: currentColor; 538 font-size: clamp(1rem, 1.35vw, 1.2rem); 539 line-height: 1.45; 540 opacity: 0.82; 541 } 542 543 .page-header__cta { 544 display: none; 545 flex: 0 0 auto; 546 } 547 548 .page-header--news .page-header__cta { 549 display: block; 550 } 551 552 .page-header__button { 553 display: inline-flex; 554 min-height: 3.75rem; 555 align-items: center; 556 justify-content: center; 557 gap: 0.75rem; 558 padding: 0.875rem 1.75rem; 559 border: 1px solid rgba(255, 255, 255, 0.12); 560 border-radius: 999px; 561 background: rgba(255, 255, 255, 0.12); 562 color: currentColor; 563 font-weight: 800; 564 line-height: 1; 565 text-decoration: none; 566 backdrop-filter: blur(10px); 567 transition: background 0.2s ease, color 0.2s ease; 568 } 569 570 .page-header__button::after { 571 content: '\2709'; 572 display: inline-flex; 573 width: 1.5rem; 574 height: 1.5rem; 575 align-items: center; 576 justify-content: center; 577 border-radius: 50%; 578 background: var(--yellow); 579 color: var(--black); 580 font-size: 0.8rem; 581 } 582 583 .page-header__button:hover, 584 .page-header__button:focus-visible { 585 background: var(--yellow); 586 color: var(--black); 587 } 588 589 body.bg-yellow .page-header__button, 590 body.bg-blue .page-header__button, 591 body.bg-green .page-header__button { 592 border-color: rgba(0, 0, 0, 0.2); 593 background: rgba(0, 0, 0, 0.08); 594 } 595 596 @media (max-width: 680px) { 597 .page-header { 598 padding-right: var(--body-padding-mobile); 599 padding-left: var(--body-padding-mobile); 600 } 601 602 .page-header::after { 603 right: -13rem; 604 opacity: 0.049; 605 } 606 607 .page-header .container { 608 align-items: flex-start; 609 flex-direction: column; 610 } 611 612 .page-header__title { 613 font-size: clamp(1.9rem, 13vw, 4rem); 614 } 615 616 .page-header__cta, 617 .page-header__button { 618 width: 100%; 619 } 620 } 621</style> 622 623<header class="page-header "> 624 <div class="container"> 625 <div class="page-header__content"> 626 <h1 class="page-header__title">How We're Shaping the Future of Open Infrastructure</h1> 627 <p class="page-header__excerpt">Open infrastructure is essential to how research is created, shared, and sustained. Yet the systems that support it are often underfunded, fragmented, and difficult to navigate.</p> 628 </div> 629 <div class="page-header__cta"> 630 <a class="page-header__button" href="https://share.investinopen.org/newsletter">Get Our Newsletter</a> 631 </div> 632 </div> 633</header> 634<section class="impact-content-layout"> 635 <div> 636 <style> 637 /* Component: page-content.hbs */ 638 .page-content {
639 padding: clamp(1rem, 4vw, 3rem) var(--body-padding); 640 background: var(--white); 641 color: var(--black); 642 } 643 644 .page-content .container { 645 width: 100%; 646 max-width: 76rem; 647 margin: 0 auto; 648 } 649 650 body.template-page .page-content .container, 651 body.template-standard .page-content .container, 652 body.template-governance .page-content .container, 653 body.template-impact .page-content .container, 654 body.template-funding .page-content .container { 655 max-width: 52rem; 656 } 657 658 .page-content__body { 659 font-size: clamp(1.05rem, 1.5vw, 1.25rem); 660 line-height: 1.65; 661 } 662 663 .page-content__body > :first-child { 664 margin-top: 0; 665 } 666 667 .page-content__body > :last-child { 668 margin-bottom: 0; 669 } 670 671 .page-content__body h2 { 672 font-family: var(--font2); 673 font-size: clamp(2rem, 4vw, 3.75rem); 674 line-height: 1.05; 675 } 676 677 .page-content__body h3 { 678 margin: 2em 0 0.6em; 679 font-size: clamp(1.35rem, 2vw, 1.5rem); 680 line-height: 1.15; 681 } 682 683 .page-content__body a { 684 color: inherit; 685 text-decoration-color: var(--yellow); 686 text-decoration-thickness: 0.18em; 687 text-underline-offset: 0.12em; 688 } 689 690 body.template-impact .page-content { 691 background: transparent; 692 color: var(--black); 693 } 694 695 body.template-impact .page-content__body { 696 font-size: clamp(1.05rem, 1.5vw, 1.25rem); 697 line-height: 1.65; 698 } 699 700 body.template-strategic-plan .page-content { 701 background: transparent; 702 background-image: url('https://investinopen.org/assets/images/arrows-yellow.svg?v=QGczq_FXjxyXYivF'); 703 background-position: left center; 704 background-repeat: no-repeat; 705 background-size: clamp(14rem, 22vw, 22rem) auto; 706 padding-top: clamp(1rem, 5vw, 4.5rem); 707 padding-bottom: clamp(1rem, 7vw, 6rem); 708 } 709 710 body.template-strategic-plan .page-content .container { 711 max-width: 48rem; 712 } 713 714 body.template-strategic-plan .page-content__body { 715 font-size: clamp(0.98rem, 1.15vw, 1.12rem); 716 line-height: 1.45; 717 } 718 719 body.template-strategic-plan .page-content__body > * { 720 margin-right: 0; 721 margin-left: 0; 722 } 723 724 body.template-strategic-plan .page-content__body h1, 725 body.template-strategic-plan .page-content__body h2, 726 body.template-strategic-plan .page-content__body h3 { 727 display: block; 728 box-sizing: border-box; 729 width: 100%; 730 margin: 0; 731 font-family: var(--font2); 732 font-size: clamp(2.1rem, 4vw, 3.25rem); 733 font-weight: 800; 734 line-height: 1.05; 735 text-wrap: balance; 736 } 737 738 body.template-strategic-plan .page-content__body > :first-child { 739 margin-bottom: 0.85rem; 740 font-family: var(--font1); 741 font-size: 0.68rem; 742 font-weight: 800; 743 letter-spacing: 0.14em; 744 line-height: 1.2; 745 text-transform: uppercase; 746 } 747 748 body.template-strategic-plan .page-content__body h1:not(:first-child), 749 body.template-strategic-plan .page-content__body h2:not(:first-child), 750 body.template-strategic-plan .page-content__body h3:not(:first-child) { 751 padding-top: 0.85rem; 752 border-top: 1px solid rgba(0, 0, 0, 0.6); 753 } 754 755 body.template-strategic-plan .page-content__body h1:not(:first-child) + p, 756 body.template-strategic-plan .page-content__body h2:not(:first-child) + p, 757 body.template-strategic-plan .page-content__body h3:not(:first-child) + p { 758 max-width: 39rem; 759 margin-top: 0.55rem; 760 } 761 762 body.template-strategic-plan .page-content__body p { 763 max-width: 43rem; 764 margin-top: 1.25rem; 765 } 766 767 body.template-strategic-plan .page-content__body p + h1, 768 body.template-strategic-plan .page-content__body p + h2, 769 body.template-strategic-plan .page-content__body p + h3 { 770 margin-top: clamp(1rem, 2.4vw, 1.9rem); 771 } 772 773 body.template-strategic-plan .page-content__body .kg-button-card { 774 display: flex; 775 max-width: 43rem; 776 justify-content: center; 777 margin-top: 1.25rem; 778 } 779 780 body.template-strategic-plan .page-content__body .kg-button-card .kg-btn { 781 display: inline-flex; 782 min-height: 3rem; 783 align-items: center; 784 justify-content: center; 785 padding: 1rem 2.25rem; 786 border: 0; 787 border-radius: 999px; 788 background: var(--black); 789 color: var(--white); 790 font-weight: 800; 791 line-height: 1; 792 text-decoration: none; 793 transition: background 0.2s ease, color 0.2s ease; 794 } 795 796 body.template-strategic-plan .page-content__body .kg-button-card .kg-btn:hover, 797 body.template-strategic-plan .page-content__body .kg-button-card .kg-btn:focus-visible { 798 background: var(--yellow); 799 color: var(--black); 800 } 801 802 body.template-funding .page-content { 803 background-color: var(--black); 804 background-image: url('https://investinopen.org/assets/images/arrows-yellow.svg?v=QGczq_FXjxyXYivF'); 805 background-position: left center; 806 background-repeat: no-repeat; 807 background-size: clamp(20rem, 32vw, 30rem) auto; 808 color: var(--white); 809 } 810 811 body.template-funding .page-content .container { 812 width: auto; 813 max-width: 64rem; 814 margin-right: auto; 815 margin-left: clamp(1rem, 19vw, 22rem); 816 } 817 818 body.template-funding .page-content__body { 819 font-size: clamp(1rem, 1.35vw, 1.18rem); 820 line-height: 1.45; 821 } 822 823 body.template-funding .page-content__body > p { 824 margin: 1.45em 0 0; 825 } 826 827 body.template-funding .page-content__body > p:first-child { 828 margin-top: 0; 829 font-size: clamp(1.35rem, 1.9vw, 1.68rem); 830 line-height: 1.35; 831 } 832 833 body.template-funding .page-content__body a { 834 color: var(--yellow); 835 text-decoration-line: underline; 836 text-decoration-color: currentColor; 837 text-decoration-thickness: 1px; 838 text-underline-offset: 0.16em; 839 } 840 841 body.template-funding .page-content__body a:hover, 842 body.template-funding .page-content__body a:focus-visible { 843 text-decoration-line: none; 844 } 845 846 @media (max-width: 680px) { 847 .page-content {
848 padding-right: var(--body-padding-mobile); 849 padding-left: var(--body-padding-mobile); 850 } 851 852 body.template-strategic-plan .page-content { 853 background-image: none; 854 } 855 } 856 857 @media (max-width: 900px) { 858 html:has(body.template-funding), 859 body.template-funding { 860 overflow-x: hidden; 861 } 862 863 body.template-funding .global-wrap, 864 body.template-funding .global-content, 865 body.template-funding .global-main { 866 max-width: 100vw; 867 overflow-x: hidden; 868 } 869 870 body.template-funding .page-header__title { 871 font-size: clamp(1.9rem, 13vw, 4rem); 872 } 873 874 body.template-funding .page-content { 875 background-image: none; 876 } 877 878 body.template-funding .page-content .container { 879 box-sizing: border-box; 880 width: 100%; 881 max-width: min(64rem, 100%); 882 margin-right: auto; 883 margin-left: auto; 884 } 885 886 body.template-funding .page-content__body { 887 overflow-wrap: break-word; 888 } 889 } 890</style> 891 892<section class="page-content"> 893 <div class="container"> 894 <div class="gh-content page-content__body"> 895 <p>At Invest in Open Infrastructure, we believe a more resilient future is possible-one where infrastru
895cture is community-led, sustainably funded, and supported by a coordinated ecosystem of funders, institutions, and partners.</p><p>Our work is focused on helping make that future real.</p><p>We collaborate with organizations across the ecosystem to better understand the challenges they face and to identify practical, strategic paths forward. Whether through research, advisory support, or convening stakeholders, our goal is to bring clarity to complex decision and help organizations act with confidence.</p><p>The impact of this work is not always captured in simple metrics. It shows up in stronger funding strategies, more informed investments, and deeper collaboration across the communities that rely on open infrastructure every day.</p><p>We see our role as both a partner and a guide-supporting those working to build systems that are not only open, but sustainable and equitable over the long term.</p><p>Thank you for being part of this work.</p><p><em>â Kaitlin Thaney, IOI Executive Director</em></p> 896 </div> 897 </div> 898</section> 899 <style> 900 /* Component: impact-stat-sidebar.hbs */ 901 .impact-stat-sidebar { 902 position: relative; 903 overflow: hidden; 904 color: var(--black); 905 } 906 907 .impact-stat-sidebar[hidden] { 908 display: none; 909 } 910 911 .impact-stat-sidebar__stats { 912 position: relative; 913 z-index: 1; 914 display: grid; 915 gap: 0; 916 } 917 918 .impact-stat-sidebar__stat { 919 padding: 0 0 1.15rem; 920 border-bottom: 1.5px solid rgba(0, 0, 0, 0.72); 921 } 922 923 .impact-stat-sidebar__stat + .impact-stat-sidebar__stat { 924 padding-top: 1.05rem; 925 } 926 927 .impact-stat-sidebar__stat:last-child { 928 border-bottom: 0; 929 padding-bottom: 0.5rem; 930 } 931 932 .impact-stat-sidebar__number { 933 display: block; 934 font-family: var(--font1); 935 font-size: clamp(1.75rem, 3vw, 2.5rem); 936 font-weight: 800; 937 line-height: 1; 938 } 939 940 .impact-stat-sidebar__label { 941 display: block; 942 margin-top: 0.45rem; 943 font-size: clamp(0.78rem, 0.95vw, 0.92rem); 944 line-height: 1.35; 945 } 946 947 .impact-stat-sidebar__button { 948 position: relative; 949 z-index: 1; 950 display: inline-flex; 951 min-height: 3.1rem; 952 align-items: center; 953 justify-content: center; 954 gap: 0.65rem; 955 margin-top: 1rem; 956 padding: 0.78rem 1rem 0.78rem 1.25rem; 957 border-radius: 999px; 958 background: var(--yellow); 959 color: var(--black); 960 font-size: 0.88rem; 961 font-weight: 800; 962 line-height: 1; 963 text-decoration: none; 964 transition: background-color 0.18s ease, color 0.18s ease; 965 } 966 967 .impact-stat-sidebar__button::after { 968 content: ''; 969 display: block; 970 width: 1.75rem; 971 height: 1.75rem; 972 flex: 0 0 1.75rem; 973 border-radius: 50%; 974 background-color: var(--black); 975 background-image: url('https://investinopen.org/assets/redesign/icons/button-arrow-reverse.svg?v=b0KXAH4eXGWTyy2_'); 976 background-position: center; 977 background-repeat: no-repeat; 978 background-size: 1.05rem 1.05rem; 979 } 980 981 .impact-stat-sidebar__button:hover, 982 .impact-stat-sidebar__button:focus-visible { 983 background: var(--black); 984 color: var(--white); 985 } 986 987 .impact-stat-sidebar__button:hover::after, 988 .impact-stat-sidebar__button:focus-visible::after { 989 background-color: var(--yellow); 990 background-image: url('https://investinopen.org/assets/redesign/icons/button-arrow.svg?v=3ylPM9vyz-0uq8Xa'); 991 } 992 993 @media (max-width: 780px) { 994 .impact-stat-sidebar { 995 width: 100%; 996 } 997 998 .impact-stat-sidebar__button { 999 width: 100%; 1000 } 1001 } 1002</style> 1003 1004<aside class="impact-stat-sidebar" data-bridge-component="impact-stat-sidebar" aria-label="Impact statistics"> 1005 <div class="impact-stat-sidebar__stats" data-bridge-list="stats"> 1006 <div class="impact-stat-sidebar__stat"> 1007 <span class="impact-stat-sidebar__number">50+</span>
1008 <span class="impact-stat-sidebar__label">Networks engaged globally</span> 1009 </div> 1010 <div class="impact-stat-sidebar__stat"> 1011 <span class="impact-stat-sidebar__number">5.3 mil</span> 1012 <span class="impact-stat-sidebar__label">Total audience reached</span> 1013 </div> 1014 <div class="impact-stat-sidebar__stat"> 1015 <span class="impact-stat-sidebar__number">20+</span> 1016 <span class="impact-stat-sidebar__label">Open infrastructures directly supported</span> 1017 </div> 1018 </div> 1019 <a class="impact-stat-sidebar__button" href="/blog/what-we-achieved-together-in-2025-iois-year-in-review/">Get the Impact Report</a> 1020</aside>
1021<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
vendor: 1 bytes, line 1021
1021
1022<script src="https://investinopen.org/assets/js/components/impact-stat-sidebar.js?v=ylUCeP9knVXL8A2X" defer></script>
1022 1023 </div> 1024</section> 1025<style> 1026/* Component: partners.hbs */ 1027.partners { 1028 --partners-gap: clamp(2.5rem, 6vw, 6rem); 1029 position: relative; 1030 z-index: 2; 1031 width: 100%; 1032 margin: 0 auto; 1033 padding-bottom: 2rem; 1034 background: var(--partners-background, transparent); 1035 text-align: center; 1036} 1037 1038.partners p { 1039 margin: 0 0 1.5rem; 1040 color: rgba(255, 255, 255, .82); 1041 font-size: .75rem; 1042 font-weight: 800; 1043 letter-spacing: .24em; 1044 text-transform: uppercase; 1045} 1046 1047.partners__viewport { 1048 width: 100%; 1049 overflow: hidden; 1050 -webkit-mask-image: linear-gradient(to right, transparent, #000 5%, #000 95%, transparent); 1051 mask-image: linear-gradient(to right, transparent, #000 5%, #000 95%, transparent); 1052} 1053 1054.partners__track { 1055 display: flex; 1056 gap: var(--partners-gap); 1057 align-items: center; 1058 width: max-content; 1059 animation: partners-marquee var(--partners-duration, 42s) linear infinite; 1060 will-change: transform; 1061} 1062 1063.partners__group { 1064 display: flex; 1065 flex: none; 1066 gap: var(--partners-gap); 1067 align-items: center; 1068 padding: 0; 1069 margin: 0; 1070 list-style: none; 1071} 1072 1073.partners__group li { 1074 display: grid; 1075 flex: 0 0 clamp(8rem, 13vw, 12rem); 1076 width: clamp(8rem, 13vw, 12rem); 1077 height: clamp(3rem, 6vw, 5rem); 1078 place-items: center; 1079 color: var(--white); 1080 font-family: var(--font2); 1081 font-size: clamp(.85rem, 1.4vw, 1.25rem); 1082 font-weight: 700; 1083 letter-spacing: .04em; 1084 line-height: 1; 1085 text-transform: uppercase; 1086} 1087 1088.partners__group img { 1089 display: block; 1090 width: 100%; 1091 max-width: 10rem; 1092 max-height: 4.5rem; 1093 filter: brightness(0) invert(1); 1094 object-fit: contain; 1095} 1096 1097.partners--reverse p { 1098 color: rgba(0, 0, 0, .72); 1099} 1100 1101.partners--reverse .partners__group li { 1102 color: var(--black); 1103} 1104 1105.partners--reverse .partners__group img { 1106 filter: brightness(0); 1107} 1108 1109@keyframes partners-marquee { 1110 to { 1111 transform: translateX(calc(-50% - (var(--partners-gap) / 2))); 1112 } 1113} 1114 1115@media (prefers-reduced-motion: reduce) { 1116 .partners__viewport { 1117 overflow: visible; 1118 -webkit-mask-image: none; 1119 mask-image: none; 1120 } 1121 1122 .partners__track { 1123 display: block; 1124 width: 100%; 1125 animation: none; 1126 transform: none; 1127 } 1128 1129 .partners__group { 1130 flex-wrap: wrap; 1131 justify-content: center; 1132 } 1133 1134 .partners__group[aria-hidden="true"] { 1135 display: none; 1136 } 1137} 1138 1139</style> 1140<div class="partners partners--reverse" aria-label="Trusted by" data-bridge-component="partners"> 1141 <p>Trusted By</p> 1142 <div class="partners__viewport"> 1143 <div class="partners__track"> 1144 <ul class="partners__group" data-bridge-list="partners"> 1145 <li><img src="https://investinopen.org/assets/images/partners/arcadia.png?v=XsGHPAaBzRtO4myK" alt="Arcadia" /></li> 1146 <li><img src="https://investinopen.org/assets/images/partners/mellon-foundation.png?v=j6VWhzr7ZisZnyG2" alt="Mellon Foundation" /></li> 1147 <li><img src="https://investinopen.org/assets/images/partners/ghent-university.png?v=znk-zfdfWkDoQpGu" alt="Ghent University" /></li> 1148 <li><img src="https://investinopen.org/assets/images/partners/alfred-p-sloan-foundation.png?v=BzWkTgGY8NtPwd3t" alt="Alfred P. Sloan Foundation" /></li> 1149 <li><img src="https://investinopen.org/assets/images/partners/open-society-foundations.png?v=864iOUBR-jP247XM" alt="Open Society Foundations" /></li> 1150 <li><img src="https://investinopen.org/assets/images/partners/wellcome-trust.png?v=bXGa0Xs5Djlaf5tA" alt="Wellcome Trust" /></li> 1151 </ul> 1152 </div> 1153 </div> 1154</div>
1155<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
vendor: 1 bytes, line 1155
1155
1156<script src="https://investinopen.org/assets/js/components/partners.js?v=3KHw7Cxbg4yDwk8B" defer></script>
1156 1157<style> 1158 /* Component: impact-reports.hbs */ 1159 .impact-reports { 1160 --impact-reports-gap: clamp(1rem, 2vw, 1.8rem); 1161 padding: clamp(1rem, 8vw, 7rem) var(--body-padding) clamp(1rem, 4vw, 3.75rem); 1162 background: var(--white); 1163 color: var(--black); 1164 } 1165 1166 .impact-reports[hidden] { 1167 display: none; 1168 } 1169 1170 .impact-reports__intro { 1171 max-width: 52rem; 1172 margin: 0 auto clamp(1rem, 6vw, 5rem); 1173 text-align: center; 1174 } 1175 1176 .impact-reports__title { 1177 margin: 0; 1178 font-family: var(--font2); 1179 font-size: clamp(2.8rem, 5vw, 4.4rem); 1180 font-weight: 700; 1181 line-height: 1.04; 1182 text-wrap: balance; 1183 } 1184 1185 .impact-reports__text { 1186 max-width: 45rem; 1187 margin: 1rem auto 0; 1188 font-size: clamp(1rem, 1.25vw, 1.16rem); 1189 line-height: 1.45; 1190 } 1191 1192 .impact-reports .container { 1193 container: impact-reports-carousel / inline-size; 1194 max-width: var(--container-max); 1195 margin: 0 auto; 1196 } 1197 1198 .impact-reports__viewport { 1199 overflow-x: scroll; 1200 scrollbar-width: none; 1201 -ms-overflow-style: none; 1202 } 1203 1204 .impact-reports__viewport::-webkit-scrollbar {
1205 display: none; 1206 } 1207 1208 .impact-reports__track { 1209 display: flex; 1210 flex-wrap: nowrap; 1211 gap: var(--impact-reports-gap); 1212 } 1213 1214 .impact-report-card { 1215 position: relative; 1216 display: flex; 1217 flex: 0 0 calc(50% - 0.9rem); 1218 min-width: 0; 1219 aspect-ratio: 1.55 / 1; 1220 flex-direction: column; 1221 justify-content: flex-end; 1222 overflow: hidden; 1223 border-radius: clamp(1.1rem, 1.8vw, 1.7rem); 1224 background: var(--black); 1225 color: var(--white); 1226 } 1227 1228 .impact-report-card__image, 1229 .impact-report-card__image img { 1230 position: absolute; 1231 inset: 0; 1232 width: 100%; 1233 height: 100%; 1234 } 1235 1236 .impact-report-card__image img { 1237 display: block; 1238 filter: grayscale(1) brightness(0.72); 1239 object-fit: cover; 1240 } 1241 1242 .impact-report-card::after { 1243 content: ''; 1244 position: absolute; 1245 inset: 0; 1246 background: linear-gradient(to top, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.28) 45%, transparent 82%); 1247 pointer-events: none; 1248 } 1249 1250 .impact-report-card__title { 1251 position: relative; 1252 z-index: 1; 1253 margin: 0; 1254 padding: 0 clamp(1rem, 7vw, 6rem) clamp(1rem, 2.2vw, 2rem) clamp(1rem, 2.2vw, 2rem); 1255 font-family: var(--font2); 1256 font-size: clamp(1.75rem, 3vw, 3rem); 1257 font-weight: 700; 1258 line-height: 1.08; 1259 } 1260 1261 .impact-report-card__title a { 1262 color: inherit; 1263 text-decoration: none; 1264 transition: color 0.18s ease; 1265 } 1266 1267 .impact-report-card:hover:not(:has(.impact-report-card__arrow:hover, .impact-report-card__arrow:focus-visible)) .impact-report-card__title a, 1268 .impact-report-card__title a:hover, 1269 .impact-report-card__title a:focus-visible { 1270 color: var(--yellow); 1271 text-decoration: none; 1272 } 1273 1274 .impact-report-card__arrow { 1275 position: absolute; 1276 right: clamp(1.25rem, 2vw, 1.8rem); 1277 bottom: clamp(1.25rem, 2vw, 1.8rem); 1278 z-index: 2; 1279 display: inline-flex; 1280 width: 3.25rem; 1281 height: 3.25rem; 1282 place-items: center; 1283 align-items: center; 1284 justify-content: center; 1285 flex: 0 0 3.25rem; 1286 border-radius: 50%; 1287 background: var(--yellow); 1288 color: transparent; 1289 font-size: 0; 1290 line-height: 0; 1291 text-decoration: none; 1292 transition: background-color 0.18s ease, transform 0.18s ease; 1293 } 1294 1295 .impact-report-card__arrow::after { 1296 content: ''; 1297 width: 3rem; 1298 height: 3rem; 1299 margin: 0.125rem; 1300 background: var(--black); 1301 -webkit-mask: var(--button-arrow-mask) center / contain no-repeat; 1302 mask: var(--button-arrow-mask) center / contain no-repeat; 1303 } 1304 1305 .impact-report-card__arrow:hover, 1306 .impact-report-card__arrow:focus-visible { 1307 background: var(--green); 1308 transform: scale(1.08); 1309 } 1310 1311 .impact-reports__dots { 1312 display: flex; 1313 align-items: center; 1314 justify-content: center; 1315 gap: 0.55rem; 1316 margin-top: 1.35rem; 1317 } 1318 1319 .impact-reports__dot { 1320 width: 0.55rem; 1321 height: 0.55rem; 1322 padding: 0; 1323 border: 0; 1324 border-radius: 50%; 1325 background: var(--color-shade-20); 1326 cursor: pointer; 1327 transition: background-color 0.18s ease, transform 0.18s ease; 1328 } 1329 1330 .impact-reports__dot[aria-current="true"] { 1331 background: var(--green); 1332 transform: scale(1.18); 1333 } 1334 1335 @media (max-width: 680px) { 1336 .impact-reports { 1337 padding-right: var(--body-padding-mobile); 1338 padding-left: var(--body-padding-mobile); 1339 } 1340 } 1341 1342 @container impact-reports-carousel (max-width: 680px) { 1343 .impact-report-card { 1344 flex: 0 0 86cqw; 1345 aspect-ratio: auto; 1346 height: min(clamp(24rem, 105cqw, 34rem), 82vh); 1347 } 1348 } 1349 1350 @container impact-reports-carousel (max-width: 500px) { 1351 .impact-report-card__title { 1352 padding-right: 4.6rem; 1353 font-size: clamp(1.45rem, 7vw, 2rem); 1354 } 1355 } 1356</style> 1357 1358<section class="impact-reports" id="impact-reports" data-bridge-component="impact-reports"> 1359 <div class="impact-reports__intro"> 1360 <h2 class="impact-reports__title" data-bridge-key="title">Impact Reports</h2> 1361 <p class="impact-reports__text" data-bridge-key="text">
1361We work with funders, institutions, and infrastructure providers to make informed, strategic decisions in a complex and evolving landscape. Through research, advisory, and ecosystem insight, we provide the clarity needed to act with confidence.</p> 1362 </div> 1363 <div class="container"> 1364 <div class="impact-reports__viewport"> 1365 <div class="impact-reports__track"> 1366 <article class="impact-report-card" data-impact-report-card data-card-index="0"> 1367 <a class="impact-report-card__image" href="/blog/what-we-achieved-together-in-2025-iois-year-in-review/" aria-hidden="true" tabindex="-1"> 1368 <img src="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=" alt="" loading="lazy" decoding="async" data-random-impact-report-image> 1369 </a> 1370 <h3 class="impact-report-card__title"><a href="/blog/what-we-achieved-together-in-2025-iois-year-in-review/">What we achieved together in 2025: IOIâs year in review</a></h3> 1371 <a class="impact-report-card__arrow" href="/blog/what-we-achieved-together-in-2025-iois-year-in-review/" aria-label="Read What we achieved together in 2025: IOIâs year in review">Read report</a> 1372 </article> 1373 <article class="impact-report-card" data-impact-report-card data-card-index="1"> 1374 <a class="impact-report-card__image" href="/blog/unveiling-iois-2024-impact-report/" aria-hidden="true" tabindex="-1"> 1375 <img src="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=" alt="" loading="lazy" decoding="async" data-random-impact-report-image> 1376 </a> 1377 <h3 class="impact-report-card__title"><a href="/blog/unveiling-iois-2024-impact-report/">Unveiling IOIâs 2024 Impact Report</a></h3> 1378 <a class="impact-report-card__arrow" href="/blog/unveiling-iois-2024-impact-report/" aria-label="Read Unveiling IOIâs 2024 Impact Report">Read report</a> 1379 </article> 1380 </div> 1381 </div> 1382 <div class="impact-reports__dots" role="tablist" aria-label="Impact report carousel navigation"></div> 1383 </div> 1384</section>
1385<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
vendor: 1 bytes, line 1385
1385
1386<script src="https://investinopen.org/assets/js/components/impact-reports.js?v=JL5VJrFPxHKENXV0" defer></script>
1386 1387<style> 1388 /* Component: expertise-row.hbs */ 1389 .expertise-row { 1390 padding: 2.5rem 0 2rem; 1391 overflow: hidden; 1392 } 1393 1394 .expertise-row .container { 1395 max-width: none; 1396 } 1397 1398 .expertise-row__eyebrow { 1399 margin: 0; 1400 font-family: var(--font1); 1401 font-size: 0.875rem; 1402 font-weight: 500; 1403 letter-spacing: 0; 1404 line-height: 1.2; 1405 text-align: center; 1406 text-transform: uppercase; 1407 } 1408 1409 .expertise-row__viewport { 1410 position: relative; 1411 margin-top: 1.25rem; 1412 overflow-x: auto; 1413 padding: 0 2rem; 1414 -webkit-mask-image: linear-gradient(to right, transparent 0, #000 1rem, #000 calc(100% - 1rem), transparent 100%); 1415 mask-image: linear-gradient(to right, transparent 0, #000 1rem, #000 calc(100% - 1rem), transparent 100%); 1416 scrollbar-width: none; 1417 -ms-overflow-style: none; 1418 cursor: grab; 1419 touch-action: auto; 1420 user-select: none; 1421 } 1422 1423 .expertise-row__viewport::-webkit-scrollbar {
1424 display: none; 1425 } 1426 1427 .expertise-row__viewport.is-dragging { 1428 cursor: grabbing; 1429 } 1430 1431 .expertise-row__tags { 1432 display: flex; 1433 flex-wrap: nowrap; 1434 gap: 1rem; 1435 min-width: max-content; 1436 padding: 0.125rem 0.125rem; 1437 } 1438 1439 .expertise-row__tag { 1440 display: inline-flex; 1441 align-items: center; 1442 justify-content: center; 1443 min-height: 3.5rem; 1444 padding: 0.875rem 1.875rem; 1445 border: 1.5px solid currentColor; 1446 border-radius: 999px; 1447 color: currentColor; 1448 font-size: 1rem; 1449 font-weight: 700; 1450 line-height: 1.15; 1451 text-decoration: none; 1452 white-space: nowrap; 1453 } 1454 1455 a.expertise-row__tag { 1456 transition: background 0.2s ease, color 0.2s ease; 1457 } 1458 1459 .expertise-row--light a.expertise-row__tag:hover, 1460 .expertise-row--light a.expertise-row__tag:focus-visible { 1461 background: var(--black); 1462 color: var(--white); 1463 } 1464 1465 .expertise-row--dark a.expertise-row__tag:hover, 1466 .expertise-row--dark a.expertise-row__tag:focus-visible { 1467 background: var(--white); 1468 color: var(--black); 1469 } 1470 1471 @media (max-width: 680px) { 1472 .expertise-row { 1473 padding: 2rem 0 1.75rem; 1474 } 1475 1476 .expertise-row__eyebrow { 1477 font-size: 0.75rem; 1478 letter-spacing: 0; 1479 } 1480 1481 .expertise-row__viewport { 1482 margin-top: 1rem; 1483 } 1484 1485 .expertise-row__tags { 1486 gap: 0.75rem; 1487 } 1488 1489 .expertise-row__tag { 1490 min-height: 3rem; 1491 padding: 0.75rem 1.375rem; 1492 font-size: 0.9375rem; 1493 } 1494 } 1495</style> 1496 1497<section class="expertise-row expertise-row--light bg-white text-black" data-bridge-component="expertise"> 1498 <div class="container"> 1499 <p class="expertise-row__eyebrow">Areas of Expertise</p> 1500 <div class="expertise-row__viewport"> 1501 <div class="expertise-row__tags" data-bridge-list="expertise"> 1502 <a class="expertise-row__tag" href="/our-work/?expertise=business-development#work-list">Business Development Advisory</a> 1503 <a class="expertise-row__tag" href="/our-work/?expertise=capacity-building#work-list">Capacity Building</a> 1504 <a class="expertise-row__tag" href="/our-work/?expertise=collective-funding#work-list">Collective Funding</a> 1505 <a class="expertise-row__tag" href="/our-work/?expertise=convening-facilitation#work-list">Convening / Facilitation</a> 1506 <a class="expertise-row__tag" href="/our-work/?expertise=ecosystem-intelligence#work-list">Ecosystem Intelligence</a> 1507 <a class="expertise-row__tag" href="/our-work/?expertise=fiscal-assessment-planning#work-list">Fiscal Assessment & Planning</a> 1508 <a class="expertise-row__tag" href="/our-work/?expertise=fundraising-design#work-list">Fundraising Design</a> 1509 <a class="expertise-row__tag" href="/our-work/?expertise=governance-model-development#work-list">Governance Model Development</a> 1510 <a class="expertise-row__tag" href="/our-work/?expertise=landscape-analysis#work-list">Landscape Analysis</a> 1511 <a class="expertise-row__tag" href="/our-work/?expertise=strategic-planning#work-list">Strategic Planning</a> 1512 </div> 1513 </div> 1514 </div> 1515</section>
1516<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
vendor: 1 bytes, line 1516
1516
1517<script src="https://investinopen.org/assets/js/components/expertise.js?v=XPNoONifZIXjaw6-" defer></script>
1517 1518<style> 1519 /* Component: cta-two-up.hbs */ 1520 #cta-two-up { 1521 padding: clamp(1rem, 6vw, 5rem) var(--body-padding); 1522 background: var(--black); 1523 color: var(--white); 1524 } 1525 1526 #cta-two-up .container { 1527 width: 100%; 1528 max-width: 1280px; 1529 margin: 0 auto; 1530 } 1531 1532 #cta-two-up .two-up { 1533 display: grid; 1534 grid-template-columns: repeat(2, minmax(0, 1fr)); 1535 } 1536 1537 #cta-two-up .cta-card { 1538 display: flex; 1539 min-width: 0; 1540 flex-direction: column; 1541 align-items: flex-start; 1542 padding: 0 clamp(1rem, 5vw, 4rem); 1543 } 1544 1545 #cta-two-up .cta-card:first-child { 1546 padding-left: 0; 1547 border-right: 1px solid var(--color-shade-60); 1548 } 1549 1550 #cta-two-up .cta-card:last-child { 1551 padding-right: 0; 1552 } 1553 1554 #cta-two-up h3 { 1555 margin: 0; 1556 color: var(--white); 1557 font-size: clamp(2rem, 3.2vw, 3.25rem); 1558 line-height: 1.05; 1559 } 1560 1561 #cta-two-up p { 1562 max-width: 38rem; 1563 margin: 1rem 0 0; 1564 color: rgba(255, 255, 255, 0.84); 1565 font-size: 1rem; 1566 line-height: 1.5; 1567 } 1568 1569 #cta-two-up .global-button { 1570 display: inline-flex; 1571 min-height: 3.5rem; 1572 align-items: center; 1573 justify-content: center; 1574 margin-top: 1rem; 1575 padding: 0 2rem; 1576 border: 1.5px solid var(--white); 1577 border-radius: 999px; 1578 color: var(--white); 1579 font-weight: 800; 1580 text-decoration: none; 1581 transition: background-color 150ms ease, color 150ms ease; 1582 } 1583 1584 #cta-two-up .global-button:hover, 1585 #cta-two-up .global-button:focus-visible { 1586 background: var(--yellow); 1587 border-color: var(--yellow); 1588 color: var(--black); 1589 } 1590 1591 #cta-two-up .global-button[hidden] { 1592 display: none; 1593 } 1594 1595 @media (max-width: 768px) { 1596 #cta-two-up { 1597 padding-top:2rem; 1598 padding-right: var(--body-padding-mobile); 1599 padding-left: var(--body-padding-mobile); 1600 } 1601 1602 #cta-two-up .two-up { 1603 grid-template-columns: 1fr; 1604 gap: 2.5rem; 1605 } 1606 1607 #cta-two-up .cta-card { 1608 padding: 0; 1609 padding-bottom: 1rem; 1610 } 1611 1612 #cta-two-up .cta-card:first-child { 1613 padding-bottom: 2rem; 1614 border-right: 0; 1615 border-bottom: 1px solid var(--color-shade-60); 1616 } 1617 } 1618</style> 1619<section id="cta-two-up" data-bridge-component="cta-blocks"> 1620 <div class="container"> 1621 <div class="two-up"> 1622 <div class="cta-card" data-bridge-side="left"> 1623 <h3 class="font2" data-bridge-key="left_title"></h3> 1624 <p data-bridge-key="left_text"></p> 1625 <a class="global-button" href="#" data-bridge-key="left_cta_label" data-bridge-href="left_cta_url" hidden></a> 1626 </div> 1627 <div class="cta-card" data-bridge-side="right"> 1628 <h3 class="font2" data-bridge-key="right_title"></h3> 1629 <p data-bridge-key="right_text"></p> 1630 <a class="global-button" href="#" data-bridge-key="right_cta_label" data-bridge-href="right_cta_url" hidden></a> 1631 </div> 1632 </div> 1633 </div> 1634</section>
1635<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
vendor: 1 bytes, line 1635
1635
1636<script src="https://investinopen.org/assets/js/components/cta-blocks.js?v=cbTqId07iBz25AFW" defer></script>
1636 1637<style> 1638 /* Component: infra-finder.hbs */ 1639 #infra-finder { 1640 position: relative; 1641 overflow: hidden; 1642 padding: 0 var(--body-padding); 1643 background: var(--black); 1644 color: var(--white); 1645 text-align: center; 1646 } 1647 1648 #infra-finder .container { 1649 position: relative; 1650 z-index: 1; 1651 max-width: 1280px; 1652 margin: 0 auto; 1653 } 1654 1655 #infra-finder .infra-finder__copy { 1656 max-width: 90%; 1657 margin: 0 auto; 1658 } 1659 1660 #infra-finder h2 { 1661 margin: 0; 1662 color: var(--white); 1663 font-family: var(--font2); 1664 font-size: clamp(1.9rem, 5.2vw, 5rem); 1665 font-weight: 700; 1666 line-height: 1.08; 1667 text-wrap: balance; 1668 } 1669 1670 #infra-finder .infra-finder__text { 1671 max-width: 46rem; 1672 margin: 1.5rem auto 0; 1673 color: rgba(255, 255, 255, 0.88); 1674 font-size: clamp(1rem, 1.35vw, 1.25rem); 1675 line-height: 1.45; 1676 } 1677 1678 #infra-finder .infra-finder__actions { 1679 display: flex; 1680 flex-wrap: wrap; 1681 justify-content: center; 1682 gap: 0.75rem; 1683 margin-top: 2.25rem; 1684 } 1685 1686 #infra-finder .infra-finder__button { 1687 display: inline-flex; 1688 align-items: center; 1689 justify-content: center; 1690 min-height: 3.75rem; 1691 min-width: 11rem; 1692 padding: 0 2rem; 1693 border: 1.5px solid rgba(255, 255, 255, 0.76); 1694 border-radius: 999px; 1695 color: var(--white); 1696 font-weight: 800; 1697 text-decoration: none; 1698 transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease; 1699 } 1700 1701 #infra-finder .infra-finder__button--primary { 1702 gap: 0.625rem; 1703 border-color: var(--yellow); 1704 background: var(--yellow); 1705 color: var(--black); 1706 } 1707 1708 #infra-finder .infra-finder__button--primary::after { 1709 content: ''; 1710 display: block; 1711 width: 1.6rem; 1712 height: 1.6rem; 1713 flex: 0 0 auto; 1714 background: url('https://investinopen.org/assets/redesign/icons/button-arrow-reverse.svg?v=b0KXAH4eXGWTyy2_') center / contain no-repeat; 1715 } 1716 1717 #infra-finder .infra-finder__button:hover, 1718 #infra-finder .infra-finder__button:focus-visible { 1719 background: var(--white); 1720 border-color: var(--white); 1721 color: var(--black); 1722 } 1723 1724 #infra-finder .infra-finder__button--primary:hover, 1725 #infra-finder .infra-finder__button--primary:focus-visible { 1726 background: var(--green); 1727 border-color: var(--green); 1728 } 1729 1730 #infra-finder .infra-finder__visual { 1731 position: relative; 1732 width: min(64rem, 100%); 1733 margin: clamp(1rem, 5vw, 4rem) auto -6px; 1734 } 1735 1736 #infra-finder .infra-finder__screenshot { 1737 display: block; 1738 width: 100%; 1739 border-radius: 2rem 2rem 0 0; 1740 } 1741 1742 #infra-finder .infra-finder__pills { 1743 position: absolute; 1744 z-index: 2; 1745 pointer-events: none; 1746 } 1747 1748 #infra-finder .infra-finder__pills--left { 1749 bottom: -0.25rem; 1750 left: clamp(-8rem, -7vw, -4rem); 1751 max-width:calc(336px * .8); 1752 } 1753 1754 #infra-finder .infra-finder__pills--right { 1755 right: clamp(-8rem, -7vw, -4rem); 1756 bottom: -0.25rem; 1757 max-width: calc(455px * .8); 1758 } 1759 1760 @media (max-width: 900px) { 1761 #infra-finder .infra-finder__pills { 1762 width: clamp(12rem, 34vw, 17rem); 1763 } 1764 1765 #infra-finder .infra-finder__pills--left { 1766 left: -4.5rem; 1767 } 1768 1769 #infra-finder .infra-finder__pills--right { 1770 right: -4.5rem; 1771 } 1772 } 1773 1774 @media (max-width: 680px) { 1775 #infra-finder { 1776 padding: var(--spacing-60) var(--body-padding-mobile) 0; 1777 } 1778 1779 #infra-finder .infra-finder__button { 1780 width: 100%; 1781 min-width: 0; 1782 } 1783 1784 #infra-finder .infra-finder__visual { 1785 width: min(42rem, 100vw); 1786 max-width: 100vw; 1787 margin-left: 50%; 1788 transform: translateX(-50%); 1789 } 1790 1791 #infra-finder .infra-finder__screenshot { 1792 border-radius: 1.25rem 1.25rem 0 0; 1793 } 1794 1795 #infra-finder .infra-finder__pills { 1796 width: 11rem; 1797 } 1798 1799 #infra-finder .infra-finder__pills--left { 1800 left: -2.5rem; 1801 } 1802 1803 #infra-finder .infra-finder__pills--right { 1804 right: -2.5rem; 1805 } 1806 } 1807</style> 1808 1809<section id="infra-finder" data-bridge-component="infra-finder"> 1810 <div class="container"> 1811 <div class="infra-finder__copy"> 1812 <h2 data-bridge-key="title">
1812Find Open Infrastructures with IOI's Infra Finder</h2> 1813 <p class="infra-finder__text" data-bridge-key="text">Navigate the complex landscape of open infrastructure services and standards enabling open research and scholarship â verified, searchable, and free to use.</p> 1814 <div class="infra-finder__actions" data-bridge-list="actions"> 1815 <a class="infra-finder__button infra-finder__button--primary" href="https://infrafinder.investinopen.org/solutions">Discover</a> 1816 <a class="infra-finder__button" href="https://investinopen.org/add-an-infrastructure-to-infra-finder/">Add Your OI</a> 1817 </div> 1818 </div> 1819 1820 <div class="infra-finder__visual" aria-hidden="true"> 1821 <img class="infra-finder__screenshot" src="https://investinopen.org/assets/images/infrafinder.jpg?v=i3l-BrNY3vTVHHSx" alt=""> 1822 <img class="infra-finder__pills infra-finder__pills--left" src="https://investinopen.org/assets/images/infrafinder-pills-2.png?v=PU3HjsDSlBKmgyws" alt=""> 1823 <img class="infra-finder__pills infra-finder__pills--right" src="https://investinopen.org/assets/images/infrafinder-pills-1.png?v=qiVA6yBAr_hp7mdI" alt=""> 1824 </div> 1825 </div> 1826</section>
1827<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
vendor: 1 bytes, line 1827
1827
1828<script src="https://investinopen.org/assets/js/components/infra-finder.js?v=fCBFVC2m7WC8EENa" defer></script>
1828 1829<style> 1830 /* Component: news-updates.hbs */ 1831 .news-updates { 1832 position: relative; 1833 overflow: hidden; 1834 padding: var(--spacing-70) var(--body-padding); 1835 } 1836 1837 .news-updates .container { 1838 position: relative; 1839 z-index: 1; 1840 max-width: 56rem; 1841 margin: 0 auto; 1842 } 1843 1844 .news-updates .news-updates__header { 1845 max-width: 42rem; 1846 margin: 0 auto clamp(1rem, 6vw, 5rem); 1847 text-align: center; 1848 } 1849 1850 .news-updates .news-updates__title { 1851 margin: 0; 1852 color: currentColor; 1853 font-family: var(--font2); 1854 font-size: clamp(2rem, 5vw, 5rem); 1855 font-weight: 700; 1856 line-height: 1; 1857 } 1858 1859 .news-updates .news-updates__intro { 1860 margin: 1rem 0 0; 1861 color: currentColor; 1862 font-size: clamp(1rem, 1.35vw, 1.2rem); 1863 line-height: 1.45; 1864 opacity: 0.86; 1865 } 1866 1867 .news-updates__body { 1868 position: relative; 1869 } 1870 1871 .news-updates__body::after { 1872 content: ''; 1873 position: absolute; 1874 top: 0.25rem; 1875 right: max(-24vw, -22rem); 1876 width: clamp(16rem, 30vw, 29rem); 1877 height: clamp(28rem, 46vw, 44rem); 1878 background-image: url('https://investinopen.org/assets/images/arrow-large-blue.png?v=7WqakJV3PjSCMhH-'); 1879 background-repeat: no-repeat; 1880 background-size: contain; 1881 opacity: 0.9; 1882 pointer-events: none; 1883 } 1884 1885 .news-updates__list { 1886 position: relative; 1887 z-index: 1; 1888 display: flex; 1889 flex-direction: column; 1890 margin: 0; 1891 padding: 0; 1892 list-style: none; 1893 } 1894 1895 .news-updates__item { 1896 padding: 0 0 2.25rem; 1897 border-bottom: 1px solid currentColor; 1898 } 1899 1900 .news-updates__item + .news-updates__item { 1901 padding-top: 2.25rem; 1902 } 1903 1904 .news-updates--light .news-updates__item { 1905 border-color: rgba(0, 0, 0, 0.18); 1906 } 1907 1908 .news-updates--dark .news-updates__item { 1909 border-color: rgba(255, 255, 255, 0.16); 1910 } 1911 1912 .news-updates__meta { 1913 margin: 0 0 0.875rem; 1914 color: currentColor; 1915 font-size: 0.875rem; 1916 font-weight: 500; 1917 line-height: 1.2; 1918 text-transform: uppercase; 1919 } 1920 1921 .news-updates__post-title { 1922 margin: 0; 1923 color: currentColor; 1924 font-family: var(--font2); 1925 font-size: clamp(1.75rem, 2.5vw, 2.625rem); 1926 font-weight: 800; 1927 line-height: 1.12; 1928 } 1929 1930 .news-updates__post-title a { 1931 color: currentColor; 1932 text-decoration: none; 1933 } 1934 1935 .news-updates__post-title a:hover, 1936 .news-updates__post-title a:focus-visible { 1937 text-decoration: underline; 1938 } 1939 1940 .news-updates--light .news-updates__post-title a:hover, 1941 .news-updates--light .news-updates__post-title a:focus-visible { 1942 color: var(--black); 1943 } 1944 1945 .news-updates--dark .news-updates__post-title a:hover, 1946 .news-updates--dark .news-updates__post-title a:focus-visible { 1947 color: var(--yellow); 1948 } 1949 1950 .news-updates__button { 1951 display: inline-flex; 1952 align-items: center; 1953 justify-content: center; 1954 gap: 0.625rem; 1955 min-height: 3.75rem; 1956 margin-top: 2.5rem; 1957 padding: 0 2rem; 1958 border-radius: 999px; 1959 font-weight: 800; 1960 text-decoration: none; 1961 transition: background 0.2s ease, color 0.2s ease; 1962 } 1963 1964 .news-updates__button::after { 1965 content: ''; 1966 display: block; 1967 width: 1.55rem; 1968 height: 1.55rem; 1969 flex: 0 0 auto; 1970 background-position: center; 1971 background-repeat: no-repeat; 1972 background-size: contain; 1973 } 1974 1975 .news-updates--light .news-updates__button { 1976 background: var(--black); 1977 color: var(--white); 1978 } 1979 1980 .news-updates--light .news-updates__button::after { 1981 background-image: url('https://investinopen.org/assets/redesign/icons/button-arrow.svg?v=3ylPM9vyz-0uq8Xa'); 1982 } 1983 1984 .news-updates--dark .news-updates__button { 1985 background: var(--yellow); 1986 color: var(--black); 1987 } 1988 1989 .news-updates--dark .news-updates__button::after { 1990 background-image: url('https://investinopen.org/assets/redesign/icons/button-arrow-reverse.svg?v=b0KXAH4eXGWTyy2_'); 1991 } 1992 1993 .news-updates--light .news-updates__button:hover, 1994 .news-updates--light .news-updates__button:focus-visible { 1995 background: var(--yellow); 1996 color: var(--black); 1997 } 1998 1999 .news-updates--dark .news-updates__button:hover, 2000 .news-updates--dark .news-updates__button:focus-visible { 2001 background: var(--green); 2002 color: var(--black); 2003 } 2004 2005 @media (max-width: 900px) { 2006 .news-updates__body::after { 2007 right: -14rem; 2008 opacity: 0.35; 2009 } 2010 } 2011 2012 @media (max-width: 680px) { 2013 .news-updates {
2014 padding: var(--spacing-60) var(--body-padding-mobile); 2015 } 2016 2017 .news-updates__body::after { 2018 display: none; 2019 } 2020 2021 .news-updates__item { 2022 padding-bottom: 1.75rem; 2023 } 2024 2025 .news-updates__item + .news-updates__item { 2026 padding-top: 1.75rem; 2027 } 2028 } 2029</style> 2030 2031<section class="news-updates news-updates--light bg-white text-black" data-bridge-component="news-light"> 2032 <div class="container"> 2033 <div class="news-updates__header"> 2034 <h2 class="news-updates__title" data-bridge-key="title">News & Updates</h2> 2035 <p class="news-updates__intro" data-bridge-key="text">The latest from IOI â research, announcements, and events.</p> 2036 </div> 2037 2038 <div class="news-updates__body"> 2039 <ul class="news-updates__list"> 2040 <li class="news-updates__item"> 2041 <p class="news-updates__meta">Blog â Sep. 24, 2026</p> 2042 <h3 class="news-updates__post-title"><a href="/blog/making-rescued-data-usable-starting-with-wildfire/">Making rescued data usable, starting with wildfire</a></h3> 2043 </li> 2044 <li class="news-updates__item"> 2045 <p class="news-updates__meta">Blog â Aug. 31, 2026</p> 2046 <h3 class="news-updates__post-title"><a href="/blog/ioi-fund-for-network-adoption-la-referencia-6mo-en/">IOI Fund for Network Adoption: LA Referenciaâs six-month progress update</a></h3> 2047 </li> 2048 <li class="news-updates__item"> 2049 <p class="news-updates__meta">Blog â Jul. 17, 2026</p> 2050 <h3 class="news-updates__post-title"><a href="/blog/wellcome-partners-with-ioi-to-map-the-data-resources-powering-open-research/">Wellcome partners with IOI to map the data resources powering open research</a></h3> 2051 </li> 2052 </ul> 2053 <a class="news-updates__button" href="https://investinopen.org/blog" data-bridge-key="cta_label" data-bridge-href="url">See All News</a> 2054 </div> 2055 </div> 2056</section>
2057<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
vendor: 1 bytes, line 2057
2057
2058<script src="https://investinopen.org/assets/js/components/news-updates.js?v=eCIPXgcaJBec4V86" defer></script>
2058 2059<style> 2060 /* Component: more-about-ioi.hbs */ 2061 .more-about-ioi { 2062 padding: clamp(1rem, 9vw, 8rem) var(--body-padding); 2063 background: var(--black); 2064 color: var(--white); 2065 } 2066 2067 .more-about-ioi .container { 2068 width: 100%; 2069 max-width: 76rem; 2070 margin: 0 auto; 2071 } 2072 2073 .more-about-ioi__layout { 2074 display: grid; 2075 grid-template-columns: minmax(16rem, 0.8fr) minmax(0, 1.7fr); 2076 gap: clamp(3rem, 7vw, 7rem); 2077 align-items: start; 2078 } 2079 2080 .more-about-ioi__title { 2081 margin: 0; 2082 font-family: var(--font2); 2083 font-size: clamp(1.9rem, 4.5vw, 3.25rem); 2084 font-weight: 700; 2085 line-height: 1; 2086 } 2087 2088 .more-about-ioi__body { 2089 margin: 1rem 0 0; 2090 color: rgba(255, 255, 255, 0.78); 2091 font-size: 1.05rem; 2092 line-height: 1.5; 2093 } 2094 2095 .more-about-ioi__links { 2096 display: grid; 2097 grid-template-columns: repeat(2, minmax(0, 1fr)); 2098 gap: 1.25rem 2.5rem; 2099 } 2100 2101 .more-about-ioi__link { 2102 display: grid; 2103 grid-template-columns: 4.25rem minmax(0, 1fr); 2104 gap: 1rem; 2105 align-items: center; 2106 min-height: 5.25rem; 2107 padding: 0.5rem; 2108 border-radius: 0.75rem; 2109 color: var(--white); 2110 text-decoration: none; 2111 transition: background 0.2s ease, color 0.2s ease; 2112 } 2113 2114 .more-about-ioi__link:hover, 2115 .more-about-ioi__link:focus-visible { 2116 background: #252525; 2117 } 2118 2119 .more-about-ioi__icon { 2120 display: inline-flex; 2121 width: 4rem; 2122 height: 4rem; 2123 align-items: center; 2124 justify-content: center; 2125 border-radius: 0.65rem; 2126 background: #ffd99b; 2127 color: var(--black); 2128 font-size: 1.1rem; 2129 font-weight: 800; 2130 } 2131 2132 .more-about-ioi__icon img { 2133 display: block; 2134 width: 2.15rem; 2135 max-height: 2.15rem; 2136 } 2137 2138 .more-about-ioi__link-title { 2139 display: block; 2140 font-size: 1.05rem; 2141 font-weight: 800; 2142 line-height: 1.2; 2143 } 2144 2145 .more-about-ioi__link-text { 2146 display: block; 2147 margin-top: 0.3rem; 2148 color: rgba(255, 255, 255, 0.72); 2149 font-size: 0.875rem; 2150 line-height: 1.35; 2151 } 2152 2153 @media (max-width: 900px) { 2154 .more-about-ioi__layout { 2155 grid-template-columns: 1fr; 2156 } 2157 } 2158 2159 @media (max-width: 680px) { 2160 .more-about-ioi { 2161 padding-right: var(--body-padding-mobile); 2162 padding-left: var(--body-padding-mobile); 2163 } 2164 2165 .more-about-ioi__links { 2166 grid-template-columns: 1fr; 2167 gap: 0.75rem; 2168 } 2169 2170 .more-about-ioi__link { 2171 grid-template-columns: 3.5rem minmax(0, 1fr); 2172 min-height: 4.5rem; 2173 padding: 0.4rem; 2174 } 2175 2176 .more-about-ioi__icon { 2177 width: 3.25rem; 2178 height: 3.25rem; 2179 } 2180 } 2181</style> 2182 2183<section class="more-about-ioi" id="more-about-ioi" data-bridge-component="more-about-ioi"> 2184 <div class="container"> 2185 <div class="more-about-ioi__layout"> 2186 <header> 2187 <h2 class="more-about-ioi__title" data-bridge-key="title">More About IOI</h2> 2188 <p class="more-about-ioi__body" data-bridge-key="body">Learn more about our impact, strategy, governance, funding, and the people behind our work.</p> 2189 </header> 2190 2191 <nav class="more-about-ioi__links" aria-label="More about IOI"> 2192 <a class="more-about-ioi__link" href="https://investinopen.org/about/our-impact"> 2193 <span class="more-about-ioi__icon" aria-hidden="true"><img src="https://investinopen.org/assets/images/icons/impact.svg?v=QQ9--LzxegoKGEEG" alt=""></span> 2194 <span> 2195 <span class="more-about-ioi__link-title">Our Impact</span> 2196 <span class="more-about-ioi__link-text">How we've influenced funding, strategy, and infrastructure outcomes</span> 2197 </span> 2198 </a> 2199 <a class="more-about-ioi__link" href="https://investinopen.org/about/funding">
2200 <span class="more-about-ioi__icon" aria-hidden="true"><img src="https://investinopen.org/assets/images/icons/funded.svg?v=3-JjPQ4CgTm-oydO" alt=""></span> 2201 <span> 2202 <span class="more-about-ioi__link-title">How We're Funded</span> 2203 <span class="more-about-ioi__link-text">Who supports our work and how we maintain independence</span> 2204 </span> 2205 </a> 2206 <a class="more-about-ioi__link" href="https://investinopen.org/about/strategic-plan"> 2207 <span class="more-about-ioi__icon" aria-hidden="true"><img src="https://investinopen.org/assets/images/icons/strategic-plan.svg?v=EaQWQ7p72IiR2jz4" alt=""></span> 2208 <span> 2209 <span class="more-about-ioi__link-title">Strategic Plan</span> 2210 <span class="more-about-ioi__link-text">Where we're headed and how we're prioritizing the future</span> 2211 </span> 2212 </a> 2213 <a class="more-about-ioi__link" href="https://investinopen.org/about/team"> 2214 <span class="more-about-ioi__icon" aria-hidden="true"><img src="https://investinopen.org/assets/images/icons/team.svg?v=tFjRvARNoGCbNVxQ" alt=""></span> 2215 <span> 2216 <span class="more-about-ioi__link-title">Our Team</span> 2217 <span class="more-about-ioi__link-text">Meet the people behind the work</span> 2218 </span> 2219 </a> 2220 </nav> 2221 </div> 2222 </div> 2223</section>
2224<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
vendor: 1 bytes, line 2224
2224
2225<script src="https://investinopen.org/assets/js/components/more-about-ioi.js?v=6lKVe-ASpXev5y6c" defer></script>
2225 2226<style> 2227 /* Component: sign-up.hbs */ 2228 #sign-up { 2229 position: relative; 2230 overflow: hidden; 2231 padding: clamp(1rem, 6vw, var(--spacing-70)) var(--body-padding); 2232 background: 2233 linear-gradient(rgba(0, 0, 0, 0.28), rgba(0, 0, 0, 0.28)), 2234 url('https://investinopen.org/assets/images/editorial/1200/Figure01.jpg?v=6udFS8eYdQr-M4Yi') center / cover no-repeat; 2235 color: var(--black); 2236 } 2237 2238 #sign-up .container { 2239 max-width: 1500px; 2240 margin: 0 auto; 2241 } 2242 2243 #sign-up .sign-up-wrap { 2244 display: grid; 2245 grid-template-columns: minmax(0, 0.95fr) minmax(20rem, 0.75fr); 2246 gap: clamp(2rem, 4vw, 4rem); 2247 align-items: start; 2248 padding: clamp(1rem, 4.5vw, 4rem) clamp(1rem, 4vw, 3.5rem); 2249 border-radius: clamp(1rem, 1rem, 2rem); 2250 background: var(--white); 2251 box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.22); 2252 } 2253 2254 #sign-up .sign-up__title { 2255 margin: 0; 2256 color: var(--black); 2257 font-family: var(--font2); 2258 font-size: clamp(2.25rem, 3.8vw, 3.75rem); 2259 font-weight: 700; 2260 line-height: 1.04; 2261 white-space: pre-line; 2262 } 2263 2264 #sign-up .sign-up__body { 2265 max-width: 35rem; 2266 margin: 0; 2267 color: var(--black); 2268 font-size: clamp(1.05rem, 1.5vw, 1.25rem); 2269 line-height: 1.45; 2270 } 2271 2272 #sign-up .sign-up__action { 2273 align-self: start; 2274 padding-top: 0.35rem; 2275 } 2276 2277 #sign-up .sign-up__trusted { 2278 grid-column: 1 / -1; 2279 margin-top: clamp(1rem, 1.5vw, 1.25rem); 2280 padding-top: 0.85rem; 2281 border-top: 1px solid rgba(0, 0, 0, 0.22); 2282 } 2283 2284 #sign-up .sign-up__trusted-label { 2285 margin: 0 0 0.9rem; 2286 color: var(--color-shade-60); 2287 font-size: 0.875rem; 2288 font-weight: 500; 2289 line-height: 1.2; 2290 text-transform: uppercase; 2291 } 2292 2293 #sign-up .sign-up__logos { 2294 display: flex; 2295 flex-wrap: wrap; 2296 gap: clamp(0.85rem, 1.8vw, 1.6rem); 2297 align-items: center; 2298 justify-content: center; 2299 margin: 0; 2300 padding: 0; 2301 list-style: none; 2302 } 2303 2304 #sign-up .sign-up__logos li { 2305 display: grid; 2306 flex: 0 1 calc((100% - (3 * clamp(0.85rem, 1.8vw, 1.6rem))) / 4); 2307 min-width: 0; 2308 place-items: center; 2309 } 2310 2311 #sign-up .sign-up__logos img { 2312 display: block; 2313 width: auto; 2314 max-width: min(100%, 11.5rem); 2315 max-height: 4.5rem; 2316 filter: grayscale(1); 2317 object-fit: contain; 2318 } 2319 2320 #sign-up .sign-up__logos img[alt="Ghent University"] { 2321 max-width: min(100%, 6rem); 2322 } 2323 2324 #sign-up .sign-up__logos img[alt="Arcadia"] { 2325 max-height: 2rem; 2326 } 2327 2328 #sign-up .sign-up__logos img[alt="Open Society Foundations"] { 2329 max-height: 2.25rem; 2330 } 2331 2332 #sign-up .sign-up-form { 2333 display: grid; 2334 gap: 1.125rem; 2335 } 2336 2337 #sign-up .sign-up-form__field { 2338 display: grid; 2339 gap: 0.5rem; 2340 text-align: left; 2341 } 2342 2343 #sign-up .sign-up-form__label { 2344 color: var(--black); 2345 font-size: 1rem; 2346 font-weight: 500; 2347 line-height: 1.2; 2348 } 2349 2350 #sign-up .sign-up-form__optional { 2351 color: var(--color-shade-60); 2352 font-size: 0.875rem; 2353 font-weight: 400; 2354 } 2355 2356 #sign-up .sign-up-form input { 2357 width: 100%; 2358 min-height: 3.25rem; 2359 padding: 0 1rem; 2360 border: 1.5px solid var(--black); 2361 border-radius: 0.25rem; 2362 background: var(--white); 2363 color: var(--black); 2364 font: inherit; 2365 } 2366 2367 #sign-up .sign-up-form input::placeholder { 2368 color: var(--color-shade-40); 2369 } 2370 2371 #sign-up .sign-up-form input:focus { 2372 outline: 3px solid rgba(131, 254, 209, 0.8); 2373 outline-offset: 2px; 2374 } 2375 2376 #sign-up .sign-up-form__button { 2377 display: inline-flex; 2378 align-items: center; 2379 justify-content: center; 2380 justify-self: start; 2381 min-height: 3.75rem; 2382 margin-top: 1rem; 2383 padding: 0 2.25rem; 2384 border: 0; 2385 border-radius: 999px; 2386 background: var(--yellow); 2387 color: var(--black); 2388 font: inherit; 2389 font-weight: 800; 2390 cursor: pointer; 2391 line-height: 1; 2392 text-decoration: none; 2393 transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease; 2394 } 2395 2396 #sign-up .sign-up-form__button:hover, 2397 #sign-up .sign-up-form__button:focus-visible { 2398 background: var(--green); 2399 color: var(--black); 2400 transform: translateY(-1px); 2401 } 2402 2403 @media (max-width: 900px) { 2404 #sign-up .sign-up-wrap { 2405 grid-template-columns: 1fr; 2406 gap: var(--spacing-40); 2407 } 2408 2409 #sign-up .sign-up__body { 2410 max-width: none; 2411 } 2412 2413 #sign-up .sign-up__trusted { 2414 margin-top: 0; 2415 } 2416 } 2417 2418 @media (max-width: 680px) { 2419 #sign-up {
2420 padding: var(--spacing-60) var(--body-padding-mobile); 2421 } 2422 2423 #sign-up .sign-up-wrap { 2424 padding: 2rem 1.25rem; 2425 border-radius: 1.25rem; 2426 } 2427 2428 #sign-up .sign-up__logos { 2429 gap: 1rem; 2430 } 2431 2432 #sign-up .sign-up__logos li { 2433 flex-basis: calc((100% - 1rem) / 2); 2434 } 2435 2436 #sign-up .sign-up__logos img { 2437 max-width: 90%; 2438 max-height: 4.5rem; 2439 } 2440 2441 #sign-up .sign-up-form__button { 2442 width: 100%; 2443 } 2444 } 2445</style> 2446 2447<section id="sign-up" data-bridge-component="sign-up"> 2448 <div class="container"> 2449 <div class="sign-up-wrap"> 2450 <div class="sign-up__copy"> 2451 <h2 class="sign-up__title" data-bridge-key="title">Stay Connected. Sign Up for Updates.</h2> 2452 </div> 2453 2454 <div class="sign-up__action"> 2455 <p class="sign-up__body" data-bridge-key="body">The latest research, funding opportunities, events, and news from the open infrastructure community â delivered to your inbox.</p> 2456 <a class="sign-up-form__button" href="https://share.investinopen.org/newsletter">Subscribe</a> 2457 </div> 2458 2459 <div class="sign-up__trusted" aria-label="Trusted by"> 2460 <p class="sign-up__trusted-label">Trusted By</p> 2461 <ul class="sign-up__logos" data-partner-group="Sustaining Circle Members"> 2462 <li><img src="https://investinopen.org/assets/images/partners/mellon-foundation.png?v=j6VWhzr7ZisZnyG2" alt="Mellon Foundation" loading="lazy" decoding="async"></li> 2463 <li><img src="https://investinopen.org/assets/images/partners/ghent-university.png?v=znk-zfdfWkDoQpGu" alt="Ghent University" loading="lazy" decoding="async"></li> 2464 <li><img src="https://investinopen.org/assets/images/partners/alfred-p-sloan-foundation.png?v=BzWkTgGY8NtPwd3t" alt="Alfred P. Sloan Foundation" loading="lazy" decoding="async"></li> 2465 <li><img src="https://investinopen.org/assets/images/partners/arcadia.png?v=XsGHPAaBzRtO4myK" alt="Arcadia" loading="lazy" decoding="async"></li> 2466 <li><img src="https://investinopen.org/assets/images/partners/open-society-foundations.png?v=864iOUBR-jP247XM" alt="Open Society Foundations" loading="lazy" decoding="async"></li> 2467 <li><img src="https://investinopen.org/assets/images/partners/wellcome-trust.png?v=bXGa0Xs5Djlaf5tA" alt="Wellcome Trust" loading="lazy" decoding="async"></li> 2468 </ul> 2469 </div> 2470 2471 <form class="sign-up-form" action="#" method="post" style="display:none;"> 2472 <label class="sign-up-form__field"> 2473 <span class="sign-up-form__label">Name</span> 2474 <input type="text" name="name" autocomplete="name" placeholder="Enter your full name"> 2475 </label> 2476 2477 <label class="sign-up-form__field"> 2478 <span class="sign-up-form__label">Email</span> 2479 <input type="email" name="email" autocomplete="email" placeholder="Enter your email address" required> 2480 </label> 2481 2482 <label class="sign-up-form__field"> 2483 <span class="sign-up-form__label">Company <span class="sign-up-form__optional">(Optional)</span></span> 2484 <input type="text" name="company" autocomplete="organization" placeholder="Enter your company name"> 2485 </label> 2486 2487 <button class="sign-up-form__button" type="submit">Sign Up</button> 2488 </form> 2489 </div> 2490 </div> 2491</section>
2492<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
vendor: 1 bytes, line 2492
2492
2493<script src="https://investinopen.org/assets/js/components/sign-up.js?v=r9bbB62pbqgeTLwQ" defer></script>
2493 2494 2495 </main> 2496 <style> 2497 /* Component: footer.hbs */ 2498 .footer-section { 2499 background: var(--black); 2500 color: var(--white); 2501 padding: clamp(1rem, 8vw, 7rem) 0 clamp(1rem, 4vw, 3rem); 2502 position: relative; 2503 z-index: 2; 2504 } 2505 2506 .footer-section .container { 2507 width: min(100% - (var(--hs) * 2), 90rem); 2508 margin: 0 auto; 2509 } 2510 2511 .footer-wrap { 2512 display: grid; 2513 grid-template-columns: minmax(18rem, 0.9fr) minmax(28rem, 1.6fr); 2514 gap: clamp(3rem, 8vw, 8rem); 2515 align-items: start; 2516 padding: 0; 2517 } 2518 2519 .footer-brand { 2520 display: flex; 2521 flex-direction: column; 2522 align-items: flex-start; 2523 gap: clamp(1.5rem, 3vw, 2.25rem); 2524 } 2525 2526 .footer-logo { 2527 display: inline-flex; 2528 border: 0; 2529 } 2530 2531 .footer-logo img { 2532 display: block; 2533 width: clamp(13rem, 18vw, 17.5rem); 2534 max-width: 100%; 2535 } 2536 2537 .footer-description { 2538 width: 25rem; 2539 max-width:90vw; 2540 margin: 0; 2541 color: rgba(255, 255, 255, 0.82); 2542 font-size: clamp(1.05rem, 1.4vw, 1.35rem); 2543 line-height: 1.35; 2544 } 2545 2546 .footer-social { 2547 display: flex; 2548 flex-wrap: wrap; 2549 gap: 0.75rem; 2550 list-style: none; 2551 margin: 0; 2552 padding: 0; 2553 } 2554 2555 .footer-section .footer-social li { 2556 padding: 0; 2557 line-height: 1; 2558 } 2559 2560 .footer-section .footer-social a { 2561 display: inline-flex; 2562 align-items: center; 2563 justify-content: center; 2564 width: 3rem; 2565 height: 3rem; 2566 margin: 0; 2567 padding: 0; 2568 border: 0; 2569 box-shadow: none; 2570 border-radius: 999px; 2571 background: var(--yellow); 2572 color: var(--black); 2573 font-size: 1rem; 2574 font-weight: 700; 2575 line-height: 1; 2576 text-decoration: none; 2577 transition: transform 180ms ease, background-color 180ms ease; 2578 } 2579 2580 .footer-section .footer-social a:hover, 2581 .footer-section .footer-social a:focus-visible { 2582 background: var(--white); 2583 color: var(--black); 2584 text-decoration: none; 2585 transform: translateY(-2px); 2586 } 2587 2588 .footer-section .footer-social svg { 2589 display: block; 2590 width: 1.15rem; 2591 height: 1.15rem; 2592 flex: 0 0 auto; 2593 fill: currentColor; 2594 } 2595 2596 .footer-section .footer-social [aria-label="Mastodon"] svg { 2597 width: 1.2rem; 2598 height: 1.2rem; 2599 transform: translateY(0.02rem); 2600 } 2601 2602 .footer-section .footer-social [aria-label="Email IOI"] svg { 2603 width: 1.3rem; 2604 height: 1.3rem; 2605 fill: none; 2606 stroke: currentColor; 2607 stroke-width: 2.2; 2608 stroke-linecap: round; 2609 stroke-linejoin: round; 2610 } 2611 2612 .footer-nav { 2613 display: grid; 2614 grid-template-columns: repeat(3, minmax(0, 1fr)); 2615 gap: clamp(2rem, 4vw, 4rem); 2616 min-width: 0; 2617 } 2618 2619 .footer-section .footer-nav__heading { 2620 margin: 0 0 1.35rem; 2621 color: var(--yellow); 2622 font-family: var(--font1); 2623 font-size: 0.74rem; 2624 font-weight: 700; 2625 letter-spacing: 0.16em; 2626 line-height: 1.2; 2627 text-transform: uppercase; 2628 } 2629 2630 .footer-section .footer-nav ul, 2631 .footer-bottom__links { 2632 list-style: none; 2633 margin: 0; 2634 padding: 0; 2635 columns: initial; 2636 } 2637 2638 .footer-section .footer-nav li, 2639 .footer-bottom__links li { 2640 padding: 0; 2641 line-height: 1.3; 2642 } 2643 2644 .footer-section .footer-nav li + li { 2645 margin-top: 0.72rem; 2646 } 2647 2648 .footer-section .footer-nav a { 2649 color: rgba(255, 255, 255, 0.88); 2650 font-size: 1rem; 2651 text-decoration: none; 2652 text-underline-offset: 0.18em; 2653 transition: color 160ms ease, text-decoration-color 160ms ease; 2654 } 2655 2656 .footer-section .footer-nav a:hover, 2657 .footer-section .footer-nav a:focus-visible, 2658 .footer-bottom__links a:hover, 2659 .footer-bottom__links a:focus-visible { 2660 color: var(--yellow); 2661 text-decoration: underline; 2662 text-decoration-thickness: 0.16em; 2663 } 2664 2665 .footer-bottom { 2666 display: flex; 2667 justify-content: space-between; 2668 gap: 2rem; 2669 align-items: center; 2670 margin-top: clamp(1rem, 7vw, 6rem); 2671 padding-top: clamp(1rem, 3vw, 2rem); 2672 border-top: 1px solid rgba(255, 255, 255, 0.2); 2673 color: rgba(255, 255, 255, 0.72); 2674 font-size: 0.9rem; 2675 } 2676 2677 .footer-bottom p { 2678 margin: 0; 2679 } 2680 2681 .footer-bottom__links { 2682 display: flex; 2683 flex-wrap: wrap; 2684 justify-content: flex-end; 2685 gap: 0.75rem 1.5rem; 2686 } 2687 2688 .footer-bottom__links a { 2689 color: rgba(255, 255, 255, 0.72); 2690 font-size: 0.9rem; 2691 text-decoration: none; 2692 } 2693 2694 .footer-social__bluesky { 2695 width: 1.25rem; 2696 height: 1.25rem; 2697 fill: currentColor; 2698 } 2699 2700 @media (max-width: 980px) { 2701 .footer-wrap { 2702 grid-template-columns: 1fr; 2703 } 2704 2705 .footer-nav { 2706 grid-template-columns: repeat(2, minmax(0, 1fr)); 2707 } 2708 } 2709 2710 @media (max-width: 640px) { 2711 .footer-section { 2712 padding-top: 3.5rem; 2713 } 2714 2715 .footer-nav { 2716 grid-template-columns: 1fr; 2717 } 2718 2719 .footer-bottom { 2720 align-items: flex-start; 2721 flex-direction: column; 2722 } 2723 2724 .footer-bottom__links { 2725 justify-content: flex-start; 2726 } 2727 } 2728</style> 2729 2730<footer class="footer-section global-footer" data-bridge-component="footer-navigation"> 2731 <div class="container"> 2732 <div class="footer-wrap"> 2733 <div class="footer-brand"> 2734 <a href="https://investinopen.org" class="footer-logo" aria-label="Invest in Open Infrastru
2734cture"> 2735 <img src="https://investinopen.org/assets/redesign/ioi-logo-light.svg?v=aPDREsOFQT_bjLxP" alt="Invest in Open Infrastructure" /> 2736 </a> 2737 2738 <p class="footer-description">Helping you invest in the open technology that research relies on.</p> 2739 2740 <ul class="footer-social" aria-label="Social links"> 2741 <li> 2742 <a href="https://www.linkedin.com/company/invest-in-open" aria-label="LinkedIn" target="_blank" rel="noopener"> 2743 <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/></svg> </a> 2744 </li> 2745 <li> 2746 <a href="https://indieweb.social/@investinopen" aria-label="Mastodon" target="_blank" rel="noopener me"> 2747 <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M23.193 7.879c0-5.206-3.411-6.732-3.411-6.732C18.062.357 15.108.025 12.041 0h-.076c-3.068.025-6.02.357-7.74 1.147 0 0-3.411 1.526-3.411 6.732 0 1.192-.023 2.618.015 4.129.124 5.092.934 10.109 5.641 11.355 2.17.574 4.034.695 5.535.612 2.722-.15 4.25-.972 4.25-.972l-.09-1.975s-1.945.613-4.129.539c-2.165-.074-4.449-.233-4.799-2.891a5.499 5.499 0 0 1-.048-.745s2.125.52 4.817.643c1.646.075 3.19-.097 4.758-.283 3.007-.359 5.625-2.212 5.954-3.905.517-2.665.475-6.507.475-6.507zm-4.024 6.709h-2.497V8.469c0-1.29-.543-1.944-1.628-1.944-1.2 0-1.802.776-1.802 2.312v3.349h-2.483v-3.35c0-1.536-.602-2.312-1.802-2.312-1.085 0-1.628.655-1.628 1.944v6.119H4.832V8.284c0-1.289.328-2.313.987-3.07.68-.758 1.569-1.146 2.674-1.146 1.278 0 2.246.491 2.886 1.474L12 6.585l.622-1.043c.64-.983 1.608-1.474 2.886-1.474 1.104 0 1.994.388 2.674 1.146.658.757.986 1.781.986 3.07v6.304z"/></svg> </a> 2748 </li> 2749 <li> 2750 <a href="https://bsky.app/profile/investinopen.bsky.social" aria-label="Bluesky" target="_blank" rel="noopener"> 2751 <svg class="footer-social__bluesky" aria-hidden="true" viewBox="0 0 24 24"> 2752 <path d="M6.08 4.06c2.39 1.8 4.95 5.44 5.92 7.4.97-1.96 3.53-5.6 5.92-7.4 1.72-1.3 4.5-2.3 4.5.9 0 .64-.37 5.37-.59 6.13-.76 2.57-3.53 3.23-6 2.83 4.31.73 5.41 3.15 3.04 5.57-4.5 4.58-6.47-1.15-6.97-2.62-.09-.27-.14-.4-.14-.29 0-.11-.05.02-.14.29-.5 1.47-2.47 7.2-6.97 2.62-2.37-2.42-1.27-4.84 3.04-5.57-2.47.4-5.24-.26-6-2.83-.22-.76-.59-5.49-.59-6.13 0-3.2 2.78-2.2 4.5-.9Z" /> 2753 </svg> 2754 </a> 2755 </li> 2756 <li> 2757 <a href="mailto:[email protected]" aria-label="Email IOI"> 2758 <svg aria-hidden="true" viewBox="0 0 24 24"> 2759 <path d="M4.75 6.75h14.5v10.5H4.75z" /> 2760 <path d="m5.25 7.25 6.75 5.25 6.75-5.25" /> 2761 </svg> 2762 </a> 2763 </li> 2764 </ul> 2765 </div> 2766 2767 <nav class="footer-nav" aria-label="Footer navigation"> 2768 <section class="footer-nav__column" aria-labelledby="footer-about-heading"> 2769 <h2 class="footer-nav__heading" id="footer-about-heading">About IOI</h2> 2770 <ul data-footer-section-list="About IOI"> 2771 <li><a href="https://investinopen.org/about/team">Meet the IOI Team</a></li> 2772 <li><a href="https://investinopen.org/about/governance">Governance</a></li> 2773 <li><a href="https://investinopen.org/about/our-impact">Impact</a></li> 2774 <li><a href="https://investinopen.org/about/funding">Funding Source</a></li> 2775 <li><a href="https://investinopen.org/about/strategic-plan/2024-2027">Strategic Plan</a></li> 2776 <li><a href="https://investinopen.org/contact-us">Get In Touch</a></li> 2777 </ul> 2778 </section> 2779 2780 <section class="footer-nav__column" aria-labelledby="footer-approach-heading"> 2781 <h2 class="footer-nav__heading" id="footer-approach-heading">IOIâs Approach</h2> 2782 <ul data-footer-section-list="IOIâs Approach"> 2783 <li><a href="https://investinopen.org/our-approach">Overview</a></li> 2784 <li><a href="https://investinopen.org/our-approach/strategic-consulting">Consultation Services</a></li> 2785 <li><a href="https://investinopen.org/our-approach/coordinated-funding">Coordinated Funding</a></li> 2786 </ul> 2787 </section> 2788 2789 <section class="footer-nav__column" aria-labelledby="footer-work-heading"> 2790 <h2 class="footer-nav__heading" id="footer-work-heading">IOIâs Work</h2> 2791 <ul data-footer-section-list="IOIâs Work"> 2792 <li><a href="https://investinopen.org/news-and-updates">News & Updates</a></li> 2793 <li><a href="https://investinopen.org/our-work/case-studies">Case Studies</a></li> 2794 <li><a href="https://investinopen.org/our-work/resources-toolkits">Research & Data</a></li> 2795 <li><a href="https://infrafinder.investinopen.org">Infra Finder</a></li> 2796 </ul> 2797 </section> 2798 </nav> 2799 </div> 2800 2801 <div class="footer-bottom"> 2802 <p>© <span data-current-year></span>
2802 Invest in Open Infrastructure. Licensed under CC BY 4.0.</p> 2803 <ul class="footer-bottom__links" data-footer-section-list="Footer"> 2804 <li><a href="https://investinopen.org/privacy-policy">Privacy Policy</a></li> 2805 <li><a href="https://investinopen.org/cookie-policy">Cookie Policy</a></li> 2806 <li><a href="https://investinopen.org/terms-and-conditions">Terms & Conditions</a></li> 2807 <li><a href="https://investinopen.org/code-of-conduct">Code of Conduct</a></li> 2808 </ul> 2809 </div> 2810 </div> 2811</footer> 2812
2813<script> 2814 (function () { 2815 var year = String(new Date().getFullYear()); 2816 document.querySelectorAll('[data-current-year]').forEach(function (element) { 2817 element.textContent = year; 2818 }); 2819 }()); 2820</script>
vendor: 1 bytes, line 2820
2820
2821<script src="https://investinopen.org/assets/js/ghost-bridge.js?v=BSBKhC97qo8g73xw" defer></script>
vendor: 1 bytes, line 2821
2821
2822<script src="https://investinopen.org/assets/js/components/footer.js?v=PqKh7SYPgKGzj0xa" defer></script>
2822 2823 </div> 2824 </div> 2825 2826 2827 2828 <div id="notifications" class="global-notification"> 2829 <div class="subscribe">Youâve successfully subscribed to Invest in Open Infrastructure</div> 2830 <div class="signin">Welcome back! Youâve successfully signed in.</div> 2831 <div class="signup">Great! Youâve successfully signed up.</div> 2832 <div class="expired">Your link has expired</div> 2833 <div class="checkout-success">Success! Check your email for magic link to sign-in.</div> 2834</div> 2835 <div id="search-section" class="search-section"> 2836 <span id="search-close" class="search-close"><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 8.242L20.242 0 24 3.76 15.758 12 24 20.242 20.242 24 12 15.758 3.759 24 0 20.242 8.242 12 0 3.759 3.76 0 12 8.242z"/></svg></span> 2837 <div id="search-content" class="search-content"> 2838 <form class="search-form" onsubmit="return false"> 2839 <input id="search-input" type="text" placeholder="Type your keywords"> 2840 <div class="search-meta"> 2841 <span id="search-info">Please enter at least 3 characters</span> 2842 <span id="search-counter" class="is-hide"> 2843 <span id="search-counter-results">0</span> 2844 Results for your search</span> 2845 </div> 2846 </form> 2847 <div id="search-results" class="search-results"></div> 2848 </div> 2849 <div id="search-overlay" class="search-overlay"></div> 2850</div> 2851 2852
2852<script src="https://investinopen.org/assets/js/post.js?v=YvwZhR_FLtv1EChr"></script>
2852 2853
2853<script> 2854const searchPublished = 'Published', 2855 searchUrl = 'https://investinopen.org', 2856 searchKeys = ['ba43b71e44245de024eb9b8d99', 'd0807ab30cf2e3d242c1dc67f6', '1fe55cbf656c748094e63a1689'], 2857 searchKey = searchKeys[0], 2858 searchAPI = searchUrl+'/ghost/api/v3/content/posts/?key='+searchKey+'&limit=all&formats=plaintext&fields=url,title,published_at,excerpt,plaintext,visibility'; 2859</script>
2859 2860 2861
2861<script> 2862!function(){"use strict";const p=new URLSearchParams(window.location.search),isAction=p.has("action"),isStripe=p.has("stripe"),success=p.get("success"),action=p.get("action"),stripe=p.get("stripe"),n=document.getElementById("notifications"),a="is-subscribe",b="is-signin",c="is-signup",d="is-expired",e="is-checkout-success";p&&(isAction&&(action=="subscribe"&&success=="true"&&n.classList.add(a),action=="signin"&&success=="true"&&n.classList.add(b),action=="signup"&&success=="true"&&n.classList.add(c),success=="false"&&n.classList.add(d)),isStripe&&stripe=="success"&&n.classList.add(e),(isAction||isStripe)&&setTimeout(function(){window.history.replaceState(null,null,window.location.pathname),n.classList.remove(a,b,c,d,e)},5000))}(); 2863</script>
2863 2864 2865 2866
2866<script src="https://cdn.popupsmart.com/bundle.js" data-id="871881" async defer></script>
2866 2867 </body> 2868</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.