PageSourceSearch

https://www.rippleworks.org/

html rippleworks.org collected 2026-09-28 10:29:48 UTC 125,149 bytes, 2,052 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en-US">
3<head>
4	<meta charset="UTF-8" />
5<meta http-equiv="X-UA-Compatible" content="IE=edge">
6	<link rel="pingback" href="https://www.rippleworks.org/xmlrpc.php" />
7
8	
8<script type="text/javascript">
9		document.documentElement.className = 'js';
10	</script>
10
11
12	
12<script>var et_site_url='https://www.rippleworks.org';var et_post_id='4939';function et_core_page_resource_fallback(a,b){"undefined"===typeof b&&(b=a.sheet.cssRules&&0===a.sheet.cssRules.length);b&&(a.onerror=null,a.onload=null,a.href?a.href=et_site_url+"/?et_core_page_resource="+a.id+et_post_id:a.src&&(a.src=et_site_url+"/?et_core_page_resource="+a.id+et_post_id))}
13</script>
13<style id="et-divi-userfonts">@font-face { font-family: "Gordita"; font-display: swap;  src: url("https://www.rippleworks.org/wp-content/uploads/et-fonts/GorditaBold.otf") format("opentype"); }@font-face { font-family: "GorditaRegular"; font-display: swap;  src: url("https://www.rippleworks.org/wp-content/uploads/et-fonts/GorditaRegular.otf") format("opentype"); }@font-face { font-family: "Avenir Medium"; font-display: swap;  src: url("https://www.rippleworks.org/wp-content/uploads/et-fonts/AvenirLTStd-Medium.otf") format("opentype"); }</style><meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />
14
15	<!-- This site is optimized with the Yoast SEO plugin v28.5 - https://yoast.com/product/yoast-seo-wordpress/ -->
16	<title>Homepage - Rippleworks</title>
17	<link rel="canonical" href="https://www.rippleworks.org/" />
18	<meta property="og:locale" content="en_US" />
19	<meta property="og:type" content="website" />
20	<meta property="og:title" content="Homepage - Rippleworks" />
21	<meta property="og:url" content="https://www.rippleworks.org/" />
22	<meta property="og:site_name" content="Rippleworks" />
23	<meta property="article:modified_time" content="2025-08-18T21:16:13+00:00" />
24	<meta property="og:image" content="https://www.rippleworks.org/wp-content/uploads/2020/09/indian-girl-2-1-scaled.jpg" />
25	<meta property="og:image:width" content="2560" />
26	<meta property="og:image:height" content="1581" />
27	<meta property="og:image:type" content="image/jpeg" />
28	<meta name="twitter:card" content="summary_large_image" />
29	
29<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.rippleworks.org\/","url":"https:\/\/www.rippleworks.org\/","name":"Homepage - Rippleworks","isPartOf":{"@id":"https:\/\/www.rippleworks.org\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.rippleworks.org\/#primaryimage"},"image":{"@id":"https:\/\/www.rippleworks.org\/#primaryimage"},"thumbnailUrl":"https:\/\/www.rippleworks.org\/wp-content\/uploads\/2020\/09\/indian-girl-2-1-scaled.jpg","datePublished":"2020-09-04T19:21:51+00:00","dateModified":"2025-08-18T21:16:13+00:00","breadcrumb":{"@id":"https:\/\/www.rippleworks.org\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.rippleworks.org\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.rippleworks.org\/#primaryimage","url":"https:\/\/www.rippleworks.org\/wp-content\/uploads\/2020\/09\/indian-girl-2-1-scaled.jpg","contentUrl":"https:\/\/www.rippleworks.org\/wp-content\/uploads\/2020\/09\/indian-girl-2-1-scaled.jpg","width":2560,"height":1581},{"@type":"BreadcrumbList","@id":"https:\/\/www.rippleworks.org\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home"}]},{"@type":"WebSite","@id":"https:\/\/www.rippleworks.org\/#website","url":"https:\/\/www.rippleworks.org\/","name":"Rippleworks","description":"Practical support for entrepreneurs","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.rippleworks.org\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}</script>
29
30	<!-- / Yoast SEO plugin. -->
31
32
33<link rel='dns-prefetch' href='//www.googletagmanager.com' />
34<link rel='dns-prefetch' href='//fonts.googleapis.com' />
35<link rel="alternate" type="application/rss+xml" title="Rippleworks &raquo; Feed" href="https://www.rippleworks.org/feed/" />
36<link rel="alternate" type="application/rss+xml" title="Rippleworks &raquo; Comments Feed" href="https://www.rippleworks.org/comments/feed/" />
37<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.rippleworks.org/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.rippleworks.org%2F" />
38<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.rippleworks.org/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.rippleworks.org%2F&#038;format=xml" />
39<meta content="Divi v.4.9.0" name="generator"/><style id="wp-img-auto-sizes-contain-inline-css">
40img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
41.nav li.et-hover > ul,
42.menu li.et-hover > ul {
43	visibility: visible !important;
44	opacity: 1 !important; /* Necessary for tabbing through the primary top nav - Divi only has .et-hover containing visibility. */
45}
46.da11y-submenu-show {
47	visibility: visible !important;
48	opacity: 1 !important;
49}
50
51
52.keyboard-outline {
53	outline-style: solid !important;
54	outline-width: 2px !important;
55	-webkit-transition: none !important;
56	transition: none !important;
57}
58button:active.keyboard-outline,
59button:focus.keyboard-outline,
60input:active.keyboard-outline,
61input:focus.keyboard-outline,
62a[role="tab"].keyboard-outline {
63	outline-offset: -5px;
64}
65.et-search-form input:focus.keyboard-outline {
66	padding-left: 15px;
67	padding-right: 15px;
68}
69.et_pb_tab {
70	-webkit-animation: none !important;
71	animation: none !important;
72}
73
74.et_pb_scroll_top.et-visible:focus {
75	outline-width: 2px;
76	outline-style: solid;
77	outline-color: Highlight;
78}
79@media (-webkit-min-device-pixel-ratio:0) {
80	.et_pb_scroll_top.et-visible:focus {
81		outline-color: -webkit-focus-ring-color;
82		outline-style: auto;
83	}
84}
85
86.et_pb_contact_form_label,
87.widget_search .screen-reader-text,
88.et_pb_social_media_follow_network_name,
89.et_pb_search .screen-reader-text {
90	display: block !important; /* Reverse Divi adding display: none to screen reader text */
91}
92.da11y-screen-reader-text,
93.et_pb_contact_form_label,
94.widget_search .screen-reader-text,
95.et_pb_social_media_follow_network_name,
96.et_pb_search .screen-reader-text {
97	clip: rect(1px, 1px, 1px, 1px);
98	position: absolute !important;
99	height: 1px;
100	width: 1px;
101	overflow: hidden;
102	text-shadow: none;
103	text-transform: none;
104	letter-spacing: normal;
105	line-height: normal;
106	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
107	font-size: 1em;
108	font-weight: 600;
109	-webkit-font-smoothing: subpixel-antialiased;
110}
111.da11y-screen-reader-text:focus {
112	background: #f1f1f1;
113	color: #00547A;
114	-webkit-box-shadow: 0 0 2px 2px rgba(0,0,0,.6);
115	box-shadow: 0 0 2px 2px rgba(0,0,0,.6);
116	clip: auto !important;
117	display: block;
118	height: auto;
119	left: 5px;
120	padding: 15px 23px 14px;
121	text-decoration: none;
122	top: 7px;
123	width: auto;
124	z-index: 1000000; /* Above WP toolbar. */
125}
126
127/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
128</style>
129<style id="wp-emoji-styles-inline-css">
130
131	img.wp-smiley, img.emoji {
132		display: inline !important;
133		border: none !important;
134		box-shadow: none !important;
135		height: 1em !important;
136		width: 1em !important;
137		margin: 0 0.07em !important;
138		vertical-align: -0.1em !important;
139		background: none !important;
140		padding: 0 !important;
141	}
142/*# sourceURL=wp-emoji-styles-inline-css */
143</style>
144<style id="wp-block-library-inline-css">
145/**
146 * Colors
147 */
148/**
149 * Typography
150 */
151/**
152 * SCSS Variables.
153 *
154 * Please use variables from this sheet to ensure consistency across the UI.
155 * Don't add to this sheet unless you're pretty sure the value will be reused in many places.
156 * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
157 */
158/**
159 * Fonts & basic variables.
160 */
161/**
162 * Typography
163 */
164/**
165 * Grid System.
166 * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
167 */
168/**
169 * Radius scale.
170 */
171/**
172 * Elevation scale.
173 */
174/**
175 * Dimensions.
176 */
177/**
178 * Mobile specific styles
179 */
180/**
181 * Editor styles.
182 */
183/**
184 * Block & Editor UI.
185 */
186/**
187 * Block paddings.
188 */
189/**
190 * React Native specific.
191 * These variables do not appear to be used anywhere else.
192 */
193/**
194 * Breakpoints & Media Queries
195 */
196/**
197*  Converts a hex value into the rgb equivalent.
198*
199* @param {string} hex - the hexadecimal value to convert
200* @return {string} comma separated rgb values
201*/
202/**
203 * Long content fade mixin
204 *
205 * Creates a fading overlay to signify that the content is longer
206 * than the space allows.
207 */
208/**
209 * Breakpoint mixins
210 */
211/**
212 * Focus styles.
213 */
214/**
215 * Standard focus rings for the WordPress Design System.
216 *
217 * Apply `outset-ring__focus` inside the relevant pseudo-class at the call site,
218 * e.g. `&:focus { @include outset-ring__focus(); }`.
219 */
220/**
221 * Applies editor left position to the selector passed as argument
222 */
223/**
224 * Styles that are reused verbatim in a few places
225 */
226/**
227 * Allows users to opt-out of animations via OS-level preferences.
228 */
229/**
230 * Reset default styles for JavaScript UI based pages.
231 * This is a WP-admin agnostic reset
232 */
233/**
234 * Reset the WP Admin page styles for Gutenberg-like pages.
235 */
236/**
237 * Creates a checkerboard pattern background to indicate transparency.
238 * @param {String} $size - The size of the squares in the checkerboard pattern. Default is 12px.
239 */
240:root {
241  --wp-block-synced-color: #7a00df;
242  --wp-block-synced-color--rgb: 122, 0, 223;
243  --wp-bound-block-color: var(--wp-block-synced-color);
244  --wp-editor-canvas-background: #ddd;
245  --wp-admin-theme-color: #007cba;
246  --wp-admin-theme-color--rgb: 0, 124, 186;
247  --wp-admin-theme-color-darker-10: rgb(0, 107, 160.5);
248  --wp-admin-theme-color-darker-10--rgb: 0, 107, 160.5;
249  --wp-admin-theme-color-darker-20: #005a87;
250  --wp-admin-theme-color-darker-20--rgb: 0, 90, 135;
251  --wp-admin-border-width-focus: 2px;
252}
253@media (min-resolution: 192dpi) {
254  :root {
255    --wp-admin-border-width-focus: 1.5px;
256  }
257}
258
259/**
260 * Element styles.
261 */
262.wp-element-button {
263  cursor: pointer;
264}
265
266:root .has-very-light-gray-background-color {
267  background-color: #eee;
268}
269:root .has-very-dark-gray-background-color {
270  background-color: #313131;
271}
272:root .has-very-light-gray-color {
273  color: #eee;
274}
275:root .has-very-dark-gray-color {
276  color: #313131;
277}
278:root {
279  /* stylelint-disable @stylistic/function-comma-space-after -- We can not use spacing because of WP multi site kses rule. */
280}
281:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background {
282  background: linear-gradient(135deg, rgb(0, 208, 132) 0%, rgb(6, 147, 227) 100%);
283}
284:root .has-purple-crush-gradient-background {
285  background: linear-gradient(135deg, rgb(52, 226, 228) 0%, rgb(71, 33, 251) 50%, rgb(171, 29, 254) 100%);
286}
287:root .has-hazy-dawn-gradient-background {
288  background: linear-gradient(135deg, rgb(250, 172, 168) 0%, rgb(218, 208, 236) 100%);
289}
290:root .has-subdued-olive-gradient-background {
291  background: linear-gradient(135deg, rgb(250, 250, 225) 0%, rgb(103, 166, 113) 100%);
292}
293:root .has-atomic-cream-gradient-background {
294  background: linear-gradient(135deg, rgb(253, 215, 154) 0%, rgb(0, 74, 89) 100%);
295}
296:root .has-nightshade-gradient-background {
297  background: linear-gradient(135deg, rgb(51, 9, 104) 0%, rgb(49, 205, 207) 100%);
298}
299:root .has-midnight-gradient-background {
300  background: linear-gradient(135deg, rgb(2, 3, 129) 0%, rgb(40, 116, 252) 100%);
301}
302:root {
303  /* stylelint-enable @stylistic/function-comma-space-after */
304  --wp--preset--font-size--normal: 16px;
305  --wp--preset--font-size--huge: 42px;
306}
307
308.has-regular-font-size {
309  font-size: 1em;
310}
311
312.has-larger-font-size {
313  font-size: 2.625em;
314}
315
316.has-normal-font-size {
317  font-size: var(--wp--preset--font-size--normal);
318}
319
320.has-huge-font-size {
321  font-size: var(--wp--preset--font-size--huge);
322}
323
324:root .has-text-align-center {
325  text-align: center;
326}
327
328:root .has-text-align-left {
329  /*rtl:ignore*/
330  text-align: left;
331}
332
333:root .has-text-align-right {
334  /*rtl:ignore*/
335  text-align: right;
336}
337
338.has-fit-text {
339  white-space: nowrap !important;
340}
341
342#end-resizable-editor-section {
343  display: none;
344}
345
346.aligncenter {
347  clear: both;
348}
349
350.items-justified-left {
351  justify-content: flex-start;
352}
353
354.items-justified-center {
355  justify-content: center;
356}
357
358.items-justified-right {
359  justify-content: flex-end;
360}
361
362.items-justified-space-between {
363  justify-content: space-between;
364}
365
366.screen-reader-text {
367  border: 0;
368  clip-path: inset(50%);
369  height: 1px;
370  margin: -1px;
371  overflow: hidden;
372  padding: 0;
373  position: absolute;
374  width: 1px;
375  word-wrap: normal !important;
376  word-break: normal !important;
377}
378
379.screen-reader-text:focus {
380  background-color: #ddd;
381  clip-path: none;
382  color: #444;
383  display: block;
384  font-size: 1em;
385  height: auto;
386  left: 5px;
387  line-height: normal;
388  padding: 15px 23px 14px;
389  text-decoration: none;
390  top: 5px;
391  width: auto;
392  z-index: 100000;
393}
394
395/**
396 * The following provide a simple means of applying a default border style when
397 * a user first makes a selection in the border block support panel.
398 * This prevents issues such as where the user could set a border width
399 * and see no border due there being no border style set.
400 *
401 * This is intended to be removed once intelligent defaults can be set while
402 * making border selections via the block support.
403 *
404 * See: https://github.com/WordPress/gutenberg/pull/33743
405 */
406html :where(.has-border-color) {
407  border-style: solid;
408}
409
410html :where([style^=border-color],
411[style*=";border-color"],
412[style*="; border-color"]) {
413  border-style: solid;
414}
415
416html :where([style^=border-top-color],
417[style*=";border-top-color"],
418[style*="; border-top-color"]) {
419  border-top-style: solid;
420}
421
422html :where([style^=border-right-color],
423[style*=";border-right-color"],
424[style*="; border-right-color"]) {
425  /*rtl:ignore*/
426  border-right-style: solid;
427}
428
429html :where([style^=border-bottom-color],
430[style*=";border-bottom-color"],
431[style*="; border-bottom-color"]) {
432  border-bottom-style: solid;
433}
434
435html :where([style^=border-left-color],
436[style*=";border-left-color"],
437[style*="; border-left-color"]) {
438  /*rtl:ignore*/
439  border-left-style: solid;
440}
441
442html :where([style^=border-width],
443[style*=";border-width"],
444[style*="; border-width"]) {
445  border-style: solid;
446}
447
448html :where([style^=border-top-width],
449[style*=";border-top-width"],
450[style*="; border-top-width"]) {
451  border-top-style: solid;
452}
453
454html :where([style^=border-right-width],
455[style*=";border-right-width"],
456[style*="; border-right-width"]) {
457  /*rtl:ignore*/
458  border-right-style: solid;
459}
460
461html :where([style^=border-bottom-width],
462[style*=";border-bottom-width"],
463[style*="; border-bottom-width"]) {
464  border-bottom-style: solid;
465}
466
467html :where([style^=border-left-width],
468[style*=";border-left-width"],
469[style*="; border-left-width"]) {
470  /*rtl:ignore*/
471  border-left-style: solid;
472}
473
474/**
475 * Provide baseline responsiveness for images.
476 */
477html :where(img[class*=wp-image-]) {
478  height: auto;
479  max-width: 100%;
480}
481
482/**
483 * Reset user agent styles for figure element margins.
484 */
485:where(figure) {
486  margin: 0 0 1em 0;
487}
488
489html :where(.is-position-sticky) {
490  --wp-admin--admin-bar--position-offset: var(--wp-admin--admin-bar--height, 0px);
491}
492
493@media screen and (max-width: 600px) {
494  html :where(.is-position-sticky) {
495    --wp-admin--admin-bar--position-offset: 0px;
496  }
497}
498
499/*# sourceURL=/wp-includes/css/dist/block-library/common.css */
500</style>
501<style id="classic-theme-styles-inline-css">
502/**
503 * These rules are needed for backwards compatibility.
504 * They should match the button element rules in the base theme.json file.
505 */
506.wp-block-button__link {
507	color: #ffffff;
508	background-color: #32373c;
509	border-radius: 9999px; /* 100% causes an oval, but any explicit but really high value retains the pill shape. */
510
511	/* This needs a low specificity so it won't override the rules from the button element if defined in theme.json. */
512	box-shadow: none;
513	text-decoration: none;
514
515	/* The extra 2px are added to size solids the same as the outline versions.*/
516	padding: calc(0.667em + 2px) calc(1.333em + 2px);
517
518	font-size: 1.125em;
519}
520
521.wp-block-file__button {
522	background: #32373c;
523	color: #ffffff;
524	text-decoration: none;
525}
526
527/*# sourceURL=/wp-includes/css/classic-themes.css */
528</style>
529
530<style id="global-styles-inline-css">
531:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
5310) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
531.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
532/*# sourceURL=global-styles-inline-css */
533</style>
534
535<link rel='stylesheet' id='edac-sr-only-format-css' href='https://www.rippleworks.org/wp-content/plugins/accessibility-checker/build/css/srOnlyFormat.css?ver=1.50.1' media='all' />
536<link rel='stylesheet' id='awsm-team-css' href='https://www.rippleworks.org/wp-content/plugins/awsm-team-pro/css/team.min.css?ver=1.1.4' media='all' />
537<link rel='stylesheet' id='select2-css' href='https://www.rippleworks.org/wp-content/plugins/beautiful-taxonomy-filters/public/css/select2.min.css?ver=2.6.0' media='all' />
538<link rel='stylesheet' id='beautiful-taxonomy-filters-basic-css' href='https://www.rippleworks.org/wp-content/plugins/beautiful-taxonomy-filters/public/css/beautiful-taxonomy-filters-base.min.css?ver=2.6.0' media='all' />
539<link rel='stylesheet' id='esg-plugin-settings-css' href='https://www.rippleworks.org/wp-content/plugins/essential-grid/public/assets/css/settings.css?ver=3.0.16' media='all' />
540<link rel='stylesheet' id='tp-fontello-css' href='https://www.rippleworks.org/wp-content/plugins/essential-grid/public/assets/font/fontello/css/fontello.css?ver=3.0.16' media='all' />
541<link rel='stylesheet' id='divi-style-css' href='https://www.rippleworks.org/wp-content/themes/Divi/style.dev.css?ver=4.9.0' media='all' />
542<link rel='stylesheet' id='divi-modules-table-maker-styles-css' href='https://www.rippleworks.org/wp-content/plugins/divi-modules-table-maker/styles/style.min.css?ver=3.0.2' media='all' />
543<link rel='stylesheet' id='et-builder-googlefonts-cached-css' href='https://fonts.googleapis.com/css?family=Montserrat:100,200,300,regular,500,600,700,800,900,100italic,200italic,300italic,italic,500italic,600italic,700italic,800italic,900italic|Playfair+Display:regular,500,600,700,800,900,italic,500italic,600italic,700italic,800italic,900italic&#038;subset=latin,latin-ext&#038;display=swap' media='all' />
544<link rel='stylesheet' id='et-shortcodes-responsive-css-css' href='https://www.rippleworks.org/wp-content/themes/Divi/epanel/shortcodes/css/shortcodes_responsive.css?ver=4.9.0' media='all' />
545<link rel='stylesheet' id='magnific-popup-css' href='https://www.rippleworks.org/wp-content/themes/Divi/includes/builder/styles/magnific_popup.css?ver=4.9.0' media='all' />
546<link rel='stylesheet' id='dashicons-css' href='https://www.rippleworks.org/wp-includes/css/dashicons.css?ver=7.1.2' media='all' />
547<script id="cookie-law-info-js-extra">
548var _ckyConfig = {"_ipData":[],"_assetsURL":"https://www.rippleworks.org/wp-content/plugins/cookie-law-info/lite/frontend/images/","_publicURL":"https://www.rippleworks.org","_expiry":"365","_categories":[{"name":"Necessary","slug":"necessary","isNecessary":true,"ccpaDoNotSell":true,"cookies":[],"active":true,"defaultConsent":{"gdpr":true,"ccpa":true}},{"name":"Functional","slug":"functional","isNecessary":false,"ccpaDoNotSell":true,"cookies":[],"active":true,"defaultConsent":{"gdpr":false,"ccpa":false}},{"name":"Analytics","slug":"analytics","isNecessary":false,"ccpaDoNotSell":true,"cookies":[],"active":true,"defaultConsent":{"gdpr":false,"ccpa":false}},{"name":"Performance","slug":"performance","isNecessary":false,"ccpaDoNotSell":true,"cookies":[],"active":true,"defaultConsent":{"gdpr":false,"ccpa":false}},{"name":"Advertisement","slug":"advertisement","isNecessary":false,"ccpaDoNotSell":true,"cookies":[],"active":true,"defaultConsent":{"gdpr":false,"ccpa":false}}],"_activeLaw":"gdpr","_rootDomain":"","_block":"1","_showBanner":"1","_bannerConfig":{"settings":{"type":"banner","preferenceCenterType":"popup","position":"bottom","applicableLaw":"gdpr"},"behaviours":{"reloadBannerOnAccept":false,"loadAnalyticsByDefault":false,"animations":{"onLoad":"animate","onHide":"sticky"}},"config":{"revisitConsent":{"status":true,"tag":"revisit-consent","position":"bottom-left","meta":{"url":"#"},"styles":{"background-color":"#0056A7"},"elements":{"title":{"type":"text","tag":"revisit-consent-title","status":true,"styles":{"color":"#0056a7"}}}},"preferenceCenter":{"toggle":{"status":true,"tag":"detail-category-toggle","type":"toggle","states":{"active":{"styles":{"background-color":"#1863DC"}},"inactive":{"styles":{"background-color":"#D0D5D2"}}}}},"categoryPreview":{"status":false,"toggle":{"status":true,"tag":"detail-category-preview-toggle","type":"toggle","states":{"active":{"styles":{"background-color":"#1863DC"}},"inactive":{"styles":{"background-color":"#D0D5D2"}}}}},"videoPlaceholder":{"status":true,"styles":{"background-color":"#000000","border-color":"#000000","color":"#ffffff"}},"readMore":{"status":false,"tag":"readmore-button","type":"link","meta":{"noFollow":true,"newTab":true},"styles":{"color":"#1863DC","background-color":"transparent","border-color":"transparent"}},"auditTable":{"status":true},"optOption":{"status":true,"toggle":{"status":true,"tag":"optout-option-toggle","type":"toggle","states":{"active":{"styles":{"background-color":"#1863dc"}},"inactive":{"styles":{"background-color":"#FFFFFF"}}}}}}},"_version":"3.2.8","_logConsent":"1","_tags":[{"tag":"accept-button","styles":{"color":"#FFFFFF","background-color":"#1863DC","border-color":"#1863DC"}},{"tag":"reject-button","styles":{"color":"#1863DC","background-color":"transparent","border-color":"#1863DC"}},{"tag":"settings-button","styles":{"color":"#1863DC","background-color":"transparent","border-color":"#1863DC"}},{"tag":"readmore-button","styles":{"color":"#1863DC","background-color":"transparent","border-color":"transparent"}},{"tag":"donotsell-button","styles":{"color":"#1863DC","background-color":"transparent","border-color":"transparent"}},{"tag":"accept-button","styles":{"color":"#FFFFFF","background-color":"#1863DC","border-color":"#1863DC"}},{"tag":"revisit-consent","styles":{"background-color":"#0056A7"}}],"_shortCodes":[{"key":"cky_readmore","content":"\u003Ca href=\"#\" class=\"cky-policy\" aria-label=\"Cookie Policy\" target=\"_blank\" rel=\"noopener\" data-cky-tag=\"readmore-button\"\u003ECookie Policy\u003C/a\u003E","tag":"readmore-button","status":false,"attributes":{"rel":"nofollow","target":"_blank"}},{"key":"cky_show_desc","content":"\u003Cbutton class=\"cky-show-desc-btn\" data-cky-tag=\"show-desc-button\" aria-label=\"Show more\"\u003EShow more\u003C/button\u003E","tag":"show-desc-button","status":true,"attributes":[]},{"key":"cky_hide_desc","content":"\u003Cbutton class=\"cky-show-desc-btn\" data-cky-tag=\"hide-desc-button\" aria-label=\"Show less\"\u003EShow less\u003C/button\u003E","tag":"hide-desc-button","status":true,"attributes":[]},{"key":"cky_category_toggle_label","content":"[cky_{{status}}_category_label] [cky_preference_{{category_slug}}_title]","tag":"","status":true,"attributes":[]},{"key":"cky_enable_category_label","content":"Enable","tag":"","status":true,"attributes":[]},{"key":"cky_disable_category_label","content":"Disable","tag":"","status":true,"attributes":[]},{"key":"cky_video_placeholder","content":"\u003Cdiv class=\"video-placeholder-normal\" data-cky-tag=\"video-placeholder\" id=\"[UNIQUEID]\"\u003E\u003Cp class=\"video-placeholder-text-normal\" data-cky-tag=\"placeholder-title\"\u003EPlease accept cookies to access this content\u003C/p\u003E\u003C/div\u003E","tag":"","status":true,"attributes":[]},{"key":"cky_enable_optout_label","content":"Enable","tag":"","status":true,"attributes":[]},{"key":"cky_disable_optout_label","content":"Disable","tag":"","status":true,"attributes":[]},{"key":"cky_optout_toggle_label","content":"[cky_{{status}}_optout_label] [cky_optout_option_title]","tag":"","status":true,"attributes":[]},{"key":"cky_optout_option_title","content":"Do Not Sell or Share My Personal Information","tag":"","status":true,"attributes":[]},{"key":"cky_optout_close_label","content":"Close","tag":"","status":true,"attributes":[]}],"_rtl":"","_language":"en","_providersToBlock":[]};
549var _ckyStyles = {"css":".cky-overlay{background: #000000; opacity: 0.4; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 99999999;}.cky-hide{display: none;}.cky-btn-revisit-wrapper{display: flex; align-items: center; justify-content: center; background: #0056a7; width: 45px; height: 45px; border-radius: 50%; position: fixed; z-index: 999999; cursor: pointer;}.cky-revisit-bottom-left{bottom: 15px; left: 15px;}.cky-revisit-bottom-right{bottom: 15px; right: 15px;}.cky-btn-revisit-wrapper .cky-btn-revisit{display: flex; align-items: center; justify-content: center; background: none; border: none; cursor: pointer; position: relative; margin: 0; padding: 0;}.cky-btn-revisit-wrapper .cky-btn-revisit img{max-width: fit-content; margin: 0; height: 30px; width: 30px;}.cky-revisit-bottom-left:hover::before{content: attr(data-tooltip); position: absolute; background: #4e4b66; color: #ffffff; left: calc(100% + 7px); font-size: 12px; line-height: 16px; width: max-content; padding: 4px 8px; border-radius: 4px;}.cky-revisit-bottom-left:hover::after{position: absolute; content: \"\"; border: 5px solid transparent; left: calc(100% + 2px); border-left-width: 0; border-right-color: #4e4b66;}.cky-revisit-bottom-right:hover::before{content: attr(data-tooltip); position: absolute; background: #4e4b66; color: #ffffff; right: calc(100% + 7px); font-size: 12px; line-height: 16px; width: max-content; padding: 4px 8px; border-radius: 4px;}.cky-revisit-bottom-right:hover::after{position: absolute; content: \"\"; border: 5px solid transparent; right: calc(100% + 2px); border-right-width: 0; border-left-color: #4e4b66;}.cky-revisit-hide{display: none;}.cky-consent-container{position: fixed; width: 100%; box-sizing: border-box; z-index: 9999999;}.cky-consent-container .cky-consent-bar{background: #ffffff; border: 1px solid; padding: 16.5px 24px; box-shadow: 0 -1px 10px 0 #acabab4d;}.cky-banner-bottom{bottom: 0; left: 0;}.cky-banner-top{top: 0; left: 0;}.cky-custom-brand-logo-wrapper .cky-custom-brand-logo{width: 100px; height: auto; margin: 0 0 12px 0;}.cky-notice .cky-title{color: #212121; font-weight: 700; font-size: 18px; line-height: 24px; margin: 0 0 12px 0;}
549.cky-notice-group{display: flex; justify-content: space-between; align-items: center; font-size: 14px; line-height: 24px; font-weight: 400;}.cky-notice-des *,.cky-preference-content-wrapper *,.cky-accordion-header-des *,.cky-gpc-wrapper .cky-gpc-desc *{font-size: 14px;}.cky-notice-des{color: #212121; font-size: 14px; line-height: 24px; font-weight: 400;}.cky-notice-des img{height: 25px; width: 25px;}.cky-consent-bar .cky-notice-des p,.cky-gpc-wrapper .cky-gpc-desc p,.cky-preference-body-wrapper .cky-preference-content-wrapper p,.cky-accordion-header-wrapper .cky-accordion-header-des p,.cky-cookie-des-table li div:last-child p{color: inherit; margin-top: 0; overflow-wrap: break-word;}.cky-notice-des P:last-child,.cky-preference-content-wrapper p:last-child,.cky-cookie-des-table li div:last-child p:last-child,.cky-gpc-wrapper .cky-gpc-desc p:last-child{margin-bottom: 0;}.cky-notice-des a.cky-policy,.cky-notice-des button.cky-policy{font-size: 14px; color: #1863dc; white-space: nowrap; cursor: pointer; background: transparent; border: 1px solid; text-decoration: underline;}.cky-notice-des button.cky-policy{padding: 0;}.cky-notice-des a.cky-policy:focus-visible,.cky-notice-des button.cky-policy:focus-visible,.cky-preference-content-wrapper .cky-show-desc-btn:focus-visible,.cky-accordion-header .cky-accordion-btn:focus-visible,.cky-preference-header .cky-btn-close:focus-visible,.cky-switch input[type=\"checkbox\"]:focus-visible,.cky-footer-wrapper a:focus-visible,.cky-btn:focus-visible{outline: 2px solid #1863dc; outline-offset: 2px;}.cky-btn:focus:not(:focus-visible),.cky-accordion-header .cky-accordion-btn:focus:not(:focus-visible),.cky-preference-content-wrapper .cky-show-desc-btn:focus:not(:focus-visible),.cky-btn-revisit-wrapper .cky-btn-revisit:focus:not(:focus-visible),.cky-preference-header .cky-btn-close:focus:not(:focus-visible),.cky-consent-bar .cky-banner-btn-close:focus:not(:focus-visible){outline: 0;}button.cky-show-desc-btn:not(:hover):not(:active){color: #1863dc; background: transparent;}button.cky-accordion-btn:not(:hover):not(:active),button.cky-banner-btn-close:not(:hover):not(:active),button.cky-btn-close:not(:hover):not(:active),button.cky-btn-revisit:not(:hover):not(:active){background: transparent;}.cky-consent-bar button:hover,.cky-modal.cky-modal-open button:hover,.cky-consent-bar button:focus,.cky-modal.cky-modal-open button:focus{text-decoration: none;}.cky-notice-btn-wrapper{display: flex; justify-content: center; align-items: center; margin-left: 15px;}.cky-notice-btn-wrapper .cky-btn{text-shadow: none; box-shadow: none;}.cky-btn{font-size: 14px; font-family: inherit; line-height: 24px; padding: 8px 27px; font-weight: 500; margin: 0 8px 0 0; border-radius: 2px; white-space: nowrap; cursor: pointer; text-align: center; text-transform: none; min-height: 0;}.cky-btn:hover{opacity: 0.8;}.cky-btn-customize{color: #1863dc; background: transparent; border: 2px solid #1863dc;}.cky-btn-reject{color: #1863dc; background: transparent; border: 2px solid #1863dc;}.cky-btn-accept{background: #1863dc; color: #ffffff; border: 2px solid #1863dc;}.cky-btn:last-child{margin-right: 0;}@media (max-width: 768px){.cky-notice-group{display: block;}.cky-notice-btn-wrapper{margin-left: 0;}.cky-notice-btn-wrapper .cky-btn{flex: auto; max-width: 100%; margin-top: 10px; white-space: unset;}}@media (max-width: 576px){.cky-notice-btn-wrapper{flex-direction: column;}.cky-custom-brand-logo-wrapper, .cky-notice .cky-title, .cky-notice-des, .cky-notice-btn-wrapper{padding: 0 28px;}.cky-consent-container .cky-consent-bar{padding: 16.5px 0;}.cky-notice-des{max-height: 40vh; overflow-y: scroll;}.cky-notice-btn-wrapper .cky-btn{width: 100%; padding: 8px; margin-right: 0;}.cky-notice-btn-wrapper .cky-btn-accept{order: 1;}.cky-notice-btn-wrapper .cky-btn-reject{order: 3;}.cky-notice-btn-wrapper .cky-btn-customize{order: 2;}}@media (max-width: 425px){.cky-custom-brand-logo-wrapper, .cky-notice .cky-title, .cky-notice-des, .cky-notice-btn-wrapper{padding: 0 24px;}.cky-notice-btn-wrapper{flex-direction: column;}.cky-btn{width: 100%; margin: 10px 0 0 0;}.cky-notice-btn-wrapper .cky-btn-customize{order: 2;}.cky-notice-btn-wrapper .cky-btn-reject{order: 3;}.cky-notice-btn-wrapper .cky-btn-accept{order: 1; margin-top: 16px;}}
549@media (max-width: 352px){.cky-notice .cky-title{font-size: 16px;}.cky-notice-des *{font-size: 12px;}.cky-notice-des, .cky-btn{font-size: 12px;}}.cky-modal.cky-modal-open{display: flex; visibility: visible; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%); top: 50%; left: 50%; transition: all 1s ease;}.cky-modal{box-shadow: 0 32px 68px rgba(0, 0, 0, 0.3); margin: 0 auto; position: fixed; max-width: 100%; background: #ffffff; top: 50%; box-sizing: border-box; border-radius: 6px; z-index: 999999999; color: #212121; -webkit-transform: translate(-50%, 100%); -moz-transform: translate(-50%, 100%); -ms-transform: translate(-50%, 100%); -o-transform: translate(-50%, 100%); transform: translate(-50%, 100%); visibility: hidden; transition: all 0s ease;}.cky-preference-center{max-height: 79vh; overflow: hidden; width: 845px; overflow: hidden; flex: 1 1 0; display: flex; flex-direction: column; border-radius: 6px;}.cky-preference-header{display: flex; align-items: center; justify-content: space-between; padding: 22px 24px; border-bottom: 1px solid;}.cky-preference-header .cky-preference-title{font-size: 18px; font-weight: 700; line-height: 24px;}.cky-preference-header .cky-btn-close{margin: 0; cursor: pointer; vertical-align: middle; padding: 0; background: none; border: none; width: auto; height: auto; min-height: 0; line-height: 0; text-shadow: none; box-shadow: none;}.cky-preference-header .cky-btn-close img{margin: 0; height: 10px; width: 10px;}.cky-preference-body-wrapper{padding: 0 24px; flex: 1; overflow: auto; box-sizing: border-box;}.cky-preference-content-wrapper,.cky-gpc-wrapper .cky-gpc-desc{font-size: 14px; line-height: 24px; font-weight: 400; padding: 12px 0;}.cky-preference-content-wrapper{border-bottom: 1px solid;}.cky-preference-content-wrapper img{height: 25px; width: 25px;}.cky-preference-content-wrapper .cky-show-desc-btn{font-size: 14px; font-family: inherit; color: #1863dc; text-decoration: none; line-height: 24px; padding: 0; margin: 0; white-space: nowrap; cursor: pointer; background: transparent; border-color: transparent; text-transform: none; min-height: 0; text-shadow: none; box-shadow: none;}.cky-accordion-wrapper{margin-bottom: 10px;}.cky-accordion{border-bottom: 1px solid;}.cky-accordion:last-child{border-bottom: none;}.cky-accordion .cky-accordion-item{display: flex; margin-top: 10px;}.cky-accordion .cky-accordion-body{display: none;}.cky-accordion.cky-accordion-active .cky-accordion-body{display: block; padding: 0 22px; margin-bottom: 16px;}.cky-accordion-header-wrapper{cursor: pointer; width: 100%;}.cky-accordion-item .cky-accordion-header{display: flex; justify-content: space-between; align-items: center;}.cky-accordion-header .cky-accordion-btn{font-size: 16px; font-family: inherit; color: #212121; line-height: 24px; background: none; border: none; font-weight: 700; padding: 0; margin: 0; cursor: pointer; text-transform: none; min-height: 0; text-shadow: none; box-shadow: none;}.cky-accordion-header .cky-always-active{color: #008000; font-weight: 600; line-height: 24px; font-size: 14px;}.cky-accordion-header-des{font-size: 14px; line-height: 24px; margin: 10px 0 16px 0;}.cky-accordion-chevron{margin-right: 22px; position: relative; cursor: pointer;}.cky-accordion-chevron-hide{display: none;}.cky-accordion .cky-accordion-chevron i::before{content: \"\"; position: absolute; border-right: 1.4px solid; border-bottom: 1.4px solid; border-color: inherit; height: 6px; width: 6px; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); transition: all 0.2s ease-in-out; top: 8px;}.cky-accordion.cky-accordion-active .cky-accordion-chevron i::before{-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg);}.cky-audit-table{background: #f4f4f4; border-radius: 6px;}.cky-audit-table .cky-empty-cookies-text{color: inherit; font-size: 12px; line-height: 24px; margin: 0; padding: 10px;}.cky-audit-table .cky-cookie-des-table{font-size: 12px; line-height: 24px; font-weight: normal; padding: 15px 10px; border-bottom: 1px solid; border-bottom-color: inherit; margin: 0;}.cky-audit-table .cky-cookie-des-table:last-child{border-bottom: none;}.cky-audit-table .cky-cookie-des-table li{list-style-type: none; display: flex; padding: 3px 0;}.cky-audit-table .cky-cookie-des-table li:first-child{padding-top: 0;}.cky-cookie-des-table li div:first-child{width: 100px; font-weight: 600; word-break: break-word; word-wrap: break-word;}.cky-cookie-des-table li div:last-child{flex: 1; word-break: break-word; word-wrap: break-word; margin-left: 8px;}
549.cky-footer-shadow{display: block; width: 100%; height: 40px; background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #ffffff 100%); position: absolute; bottom: calc(100% - 1px);}.cky-footer-wrapper{position: relative;}.cky-prefrence-btn-wrapper{display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding: 22px 24px; border-top: 1px solid;}.cky-prefrence-btn-wrapper .cky-btn{flex: auto; max-width: 100%; text-shadow: none; box-shadow: none;}.cky-btn-preferences{color: #1863dc; background: transparent; border: 2px solid #1863dc;}.cky-preference-header,.cky-preference-body-wrapper,.cky-preference-content-wrapper,.cky-accordion-wrapper,.cky-accordion,.cky-accordion-wrapper,.cky-footer-wrapper,.cky-prefrence-btn-wrapper{border-color: inherit;}@media (max-width: 845px){.cky-modal{max-width: calc(100% - 16px);}}@media (max-width: 576px){.cky-modal{max-width: 100%;}.cky-preference-center{max-height: 100vh;}.cky-prefrence-btn-wrapper{flex-direction: column;}.cky-accordion.cky-accordion-active .cky-accordion-body{padding-right: 0;}.cky-prefrence-btn-wrapper .cky-btn{width: 100%; margin: 10px 0 0 0;}.cky-prefrence-btn-wrapper .cky-btn-reject{order: 3;}.cky-prefrence-btn-wrapper .cky-btn-accept{order: 1; margin-top: 0;}.cky-prefrence-btn-wrapper .cky-btn-preferences{order: 2;}}@media (max-width: 425px){.cky-accordion-chevron{margin-right: 15px;}.cky-notice-btn-wrapper{margin-top: 0;}.cky-accordion.cky-accordion-active .cky-accordion-body{padding: 0 15px;}}@media (max-width: 352px){.cky-preference-header .cky-preference-title{font-size: 16px;}.cky-preference-header{padding: 16px 24px;}.cky-preference-content-wrapper *, .cky-accordion-header-des *{font-size: 12px;}.cky-preference-content-wrapper, .cky-preference-content-wrapper .cky-show-more, .cky-accordion-header .cky-always-active, .cky-accordion-header-des, .cky-preference-content-wrapper .cky-show-desc-btn, .cky-notice-des a.cky-policy{font-size: 12px;}.cky-accordion-header .cky-accordion-btn{font-size: 14px;}}.cky-switch{display: flex;}.cky-switch input[type=\"checkbox\"]{position: relative; width: 44px; height: 24px; margin: 0; background: #d0d5d2; -webkit-appearance: none; border-radius: 50px; cursor: pointer; outline: 0; border: none; top: 0;}.cky-switch input[type=\"checkbox\"]:checked{background: #1863dc;}.cky-switch input[type=\"checkbox\"]:before{position: absolute; content: \"\"; height: 20px; width: 20px; left: 2px; bottom: 2px; border-radius: 50%; background-color: white; -webkit-transition: 0.4s; transition: 0.4s; margin: 0;}.cky-switch input[type=\"checkbox\"]:after{display: none;}.cky-switch input[type=\"checkbox\"]:checked:before{-webkit-transform: translateX(20px); -ms-transform: translateX(20px); transform: translateX(20px);}@media (max-width: 425px){.cky-switch input[type=\"checkbox\"]{width: 38px; height: 21px;}.cky-switch input[type=\"checkbox\"]:before{height: 17px; width: 17px;}.cky-switch input[type=\"checkbox\"]:checked:before{-webkit-transform: translateX(17px); -ms-transform: translateX(17px); transform: translateX(17px);}}.cky-consent-bar .cky-banner-btn-close{position: absolute; right: 9px; top: 5px; background: none; border: none; cursor: pointer; padding: 0; margin: 0; min-height: 0; line-height: 0; height: auto; width: auto; text-shadow: none; box-shadow: none;}.cky-consent-bar .cky-banner-btn-close img{height: 9px; width: 9px; margin: 0;}.cky-notice-btn-wrapper .cky-btn-do-not-sell{font-size: 14px; line-height: 24px; padding: 6px 0; margin: 0; font-weight: 500; background: none; border-radius: 2px; border: none; cursor: pointer; text-align: left; color: #1863dc; background: transparent; border-color: transparent; box-shadow: none; text-shadow: none;}.cky-consent-bar .cky-banner-btn-close:focus-visible,.cky-notice-btn-wrapper .cky-btn-do-not-sell:focus-visible,.cky-opt-out-btn-wrapper .cky-btn:focus-visible,.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox:focus-visible{outline: 2px solid #1863dc; outline-offset: 2px;}@media (max-width: 768px){.cky-notice-btn-wrapper{margin-left: 0; margin-top: 10px; justify-content: left;}.cky-notice-btn-wrapper .cky-btn-do-not-sell{padding: 0;}}@media (max-width: 352px){.cky-notice-btn-wrapper .cky-btn-do-not-sell, .cky-notice-des a.cky-policy{font-size: 12px;}}.cky-opt-out-wrapper{padding: 12px 0;}.cky-opt-out-wrapper .cky-opt-out-checkbox-wrapper{display: flex; align-items: center;}.cky-opt-out-checkbox-wrapper .cky-opt-out-checkbox-label{font-size: 16px; font-weight: 700; line-height: 24px; margin: 0 0 0 12px; cursor: pointer;}.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox{background-color: #ffffff; border: 1px solid black;
549 width: 20px; height: 18.5px; margin: 0; -webkit-appearance: none; position: relative; display: flex; align-items: center; justify-content: center; border-radius: 2px; cursor: pointer;}.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox:checked{background-color: #1863dc; border: none;}.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox:checked::after{left: 6px; bottom: 4px; width: 7px; height: 13px; border: solid #ffffff; border-width: 0 3px 3px 0; border-radius: 2px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); content: \"\"; position: absolute; box-sizing: border-box;}.cky-opt-out-checkbox-wrapper.cky-disabled .cky-opt-out-checkbox-label,.cky-opt-out-checkbox-wrapper.cky-disabled input[type=\"checkbox\"].cky-opt-out-checkbox{cursor: no-drop;}.cky-gpc-wrapper{margin: 0 0 0 32px;}.cky-footer-wrapper .cky-opt-out-btn-wrapper{display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding: 22px 24px;}.cky-opt-out-btn-wrapper .cky-btn{flex: auto; max-width: 100%; text-shadow: none; box-shadow: none;}.cky-opt-out-btn-wrapper .cky-btn-cancel{border: 1px solid #dedfe0; background: transparent; color: #858585;}.cky-opt-out-btn-wrapper .cky-btn-confirm{background: #1863dc; color: #ffffff; border: 1px solid #1863dc;}@media (max-width: 352px){.cky-opt-out-checkbox-wrapper .cky-opt-out-checkbox-label{font-size: 14px;}.cky-gpc-wrapper .cky-gpc-desc, .cky-gpc-wrapper .cky-gpc-desc *{font-size: 12px;}.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox{width: 16px; height: 16px;}.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox:checked::after{left: 5px; bottom: 4px; width: 3px; height: 9px;}.cky-gpc-wrapper{margin: 0 0 0 28px;}}.video-placeholder-youtube{background-size: 100% 100%; background-position: center; background-repeat: no-repeat; background-color: #b2b0b059; position: relative; display: flex; align-items: center; justify-content: center; max-width: 100%;}.video-placeholder-text-youtube{text-align: center; align-items: center; padding: 10px 16px; background-color: #000000cc; color: #ffffff; border: 1px solid; border-radius: 2px; cursor: pointer;}.video-placeholder-normal{background-image: url(\"/wp-content/plugins/cookie-law-info/lite/frontend/images/placeholder.svg\"); background-size: 80px; background-position: center; background-repeat: no-repeat; background-color: #b2b0b059; position: relative; display: flex; align-items: flex-end; justify-content: center; max-width: 100%;}.video-placeholder-text-normal{align-items: center; padding: 10px 16px; text-align: center; border: 1px solid; border-radius: 2px; cursor: pointer;}.cky-rtl{direction: rtl; text-align: right;}.cky-rtl .cky-banner-btn-close{left: 9px; right: auto;}.cky-rtl .cky-notice-btn-wrapper .cky-btn:last-child{margin-right: 8px;}.cky-rtl .cky-notice-btn-wrapper .cky-btn:first-child{margin-right: 0;}.cky-rtl .cky-notice-btn-wrapper{margin-left: 0; margin-right: 15px;}.cky-rtl .cky-prefrence-btn-wrapper .cky-btn{margin-right: 8px;}.cky-rtl .cky-prefrence-btn-wrapper .cky-btn:first-child{margin-right: 0;}.cky-rtl .cky-accordion .cky-accordion-chevron i::before{border: none; border-left: 1.4px solid; border-top: 1.4px solid; left: 12px;}.cky-rtl .cky-accordion.cky-accordion-active .cky-accordion-chevron i::before{-webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); -ms-transform: rotate(-135deg); -o-transform: rotate(-135deg); transform: rotate(-135deg);}@media (max-width: 768px){.cky-rtl .cky-notice-btn-wrapper{margin-right: 0;}}@media (max-width: 576px){.cky-rtl .cky-notice-btn-wrapper .cky-btn:last-child{margin-right: 0;}.cky-rtl .cky-prefrence-btn-wrapper .cky-btn{margin-right: 0;}.cky-rtl .cky-accordion.cky-accordion-active .cky-accordion-body{padding: 0 22px 0 0;}}@media (max-width: 425px){.cky-rtl .cky-accordion.cky-accordion-active .cky-accordion-body{padding: 0 15px 0 0;}}.cky-rtl .cky-opt-out-btn-wrapper .cky-btn{margin-right: 12px;}.cky-rtl .cky-opt-out-btn-wrapper .cky-btn:first-child{margin-right: 0;}.cky-rtl .cky-opt-out-checkbox-wrapper .cky-opt-out-checkbox-label{margin: 0 12px 0 0;}"};
550//# sourceURL=cookie-law-info-js-extra
551</script>
vendor: 1 bytes, line 551
551
552<script id="cookie-law-info-js" src="https://www.rippleworks.org/wp-content/plugins/cookie-law-info/lite/frontend/js/script.js?ver=3.2.8"></script>
vendor: 1 bytes, line 552
552
553<script id="jquery-core-js" src="https://www.rippleworks.org/wp-includes/js/jquery/jquery.js?ver=3.7.1"></script>
vendor: 1 bytes, line 553
553
554<script id="jquery-migrate-js" src="https://www.rippleworks.org/wp-includes/js/jquery/jquery-migrate.js?ver=3.4.1"></script>
554
555
556<!-- Google tag (gtag.js) snippet added by Site Kit -->
557<!-- Google Analytics snippet added by Site Kit -->
vendor: 80 bytes, lines 557-558
557
558<script id="google_gtagjs-js" src="https://www.googletagmanager.com/gtag/js?id=
558GT-TBVWNPB
vendor: 18 bytes, line 558
558" async></script>
559<script id="google_gtagjs-js-after">
560window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}
561gtag("set","linker",{"domains":["www.rippleworks.org"]});
562gtag("js", new Date());
563gtag("set", "developer_id.dZTNiMT", true);
564gtag("config", "GT-TBVWNPB");
565//# sourceURL=google_gtagjs-js-after
566</script>
566
567<link rel="https://api.w.org/" href="https://www.rippleworks.org/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.rippleworks.org/wp-json/wp/v2/pages/4939" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.rippleworks.org/xmlrpc.php?rsd" />
568<meta name="generator" content="WordPress 7.1.2" />
569<link rel='shortlink' href='https://www.rippleworks.org/' />
570<style id="cky-style-inline">[data-cky-tag]{visibility:hidden;}</style><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0" /><meta name="generator" content="Site Kit by Google 1.188.0" /><link rel="preload" href="https://www.rippleworks.org/wp-content/themes/Divi/core/admin/fonts/modules.ttf" as="font" crossorigin="anonymous"><link rel="icon" href="https://www.rippleworks.org/wp-content/uploads/2018/10/cropped-favicon-32x32.png" sizes="32x32" />
571<link rel="icon" href="https://www.rippleworks.org/wp-content/uploads/2018/10/cropped-favicon-192x192.png" sizes="192x192" />
572<link rel="apple-touch-icon" href="https://www.rippleworks.org/wp-content/uploads/2018/10/cropped-favicon-180x180.png" />
573<meta name="msapplication-TileImage" content="https://www.rippleworks.org/wp-content/uploads/2018/10/cropped-favicon-270x270.png" />
574<link rel="stylesheet" id="et-core-unified-4939-cached-inline-styles" href="https://www.rippleworks.org/wp-content/et-cache/4939/et-core-unified-4939-17887070868082.min.css" onerror="et_core_page_resource_fallback(this, true)" onload="et_core_page_resource_fallback(this)" /><style id="core-block-supports-inline-css">
575/**
576 * Core styles: block-supports
577 */
578
579/*# sourceURL=core-block-supports-inline-css */
580</style>
581<link rel='stylesheet' id='et-builder-googlefonts-css' href='https://fonts.googleapis.com/css?family=Montserrat:100,100italic,200,200italic,300,300italic,regular,italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic|Playfair+Display:regular,italic,700,700italic,900,900italic&#038;subset=latin,latin-ext&#038;display=swap' media='all' />
582
583</head>
584<body class="home wp-singular page-template-default page page-id-4939 wp-theme-Divi et_pb_button_helper_class et_fixed_nav et_show_nav et_primary_nav_dropdown_animation_fade et_secondary_nav_dropdown_animation_fade et_header_style_left et_pb_footer_columns4 et_cover_background et_pb_gutter windows et_pb_gutters3 et_pb_pagebuilder_layout et_no_sidebar et_divi_theme et-db">
585	<div id="page-container">
586
587	
588	
589			<header id="main-header" data-height-onload="66">
590			<div class="container clearfix et_menu_container">
591							<div class="logo_container">
592					<span class="logo_helper"></span>
593					<a href="https://www.rippleworks.org/">
594						<img src="https://www.rippleworks.org/wp-content/uploads/2018/10/Color-logo-3.jpg" alt="Rippleworks" id="logo" data-height-percentage="46" />
595					</a>
596				</div>
597							<div id="et-top-navigation" data-height="66" data-fixed-height="40">
598											<nav id="top-menu-nav">
599						<ul id="top-menu" class="nav"><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-16914"><a href="https://www.rippleworks.org/our-portfolio/">Our Portfolio</a>
600<ul class="sub-menu">
601	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-15511"><a href="https://www.rippleworks.org/portfolio-insights/">Portfolio Insights</a></li>
602	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-15543"><a href="https://www.rippleworks.org/interviews/">Interviews</a></li>
603	<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11113"><a href="https://careers.rippleworks.org/jobs">Join our Ventures</a></li>
604</ul>
605</li>
606<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-16803"><a href="https://www.rippleworks.org/our-programs/">Our Programs</a>
607<ul class="sub-menu">
608	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-7091"><a href="https://www.rippleworks.org/our-projects/">Projects</a></li>
609	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-15524"><a href="https://www.rippleworks.org/expert-office-hours/">Expert Office Hours</a>
610	<ul class="sub-menu">
611		<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13693"><a href="https://www.rippleworks.org/expert-office-hours/">Expert Office Hours</a></li>
612	</ul>
613</li>
614	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-10839"><a href="https://www.rippleworks.org/leaders-studio/">Leaders Studio</a>
615	<ul class="sub-menu">
616		<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-15522"><a href="https://www.rippleworks.org/leaders-studio/">Leaders Studio Programs</a></li>
617		<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10837"><a href="https://www.rippleworks.org/faqs/">Leaders Studio FAQs</a></li>
618	</ul>
619</li>
620	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-4799"><a href="https://www.rippleworks.org/capital/">Capital</a>
621	<ul class="sub-menu">
622		<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-15523"><a href="https://www.rippleworks.org/capital/">Capital</a></li>
623		<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-13699"><a href="/capital/#investment-portfolio">Our Investments</a></li>
624	</ul>
625</li>
626</ul>
627</li>
628<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-15297"><a href="https://www.rippleworks.org/resource-library/">Resource Library</a></li>
629<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-5551"><a href="https://www.rippleworks.org/our-story/">About Us</a>
630<ul class="sub-menu">
631	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-5533"><a href="https://www.rippleworks.org/our-story/">Our Story</a></li>
632	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-16105"><a href="https://www.rippleworks.org/our-team/">Our Team</a></li>
633	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-5534"><a href="https://www.rippleworks.org/community-grants/">Community Grants</a></li>
634	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-9360"><a href="https://www.rippleworks.org/join-our-team/">Join our Team</a></li>
635	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-15521"><a href="https://www.rippleworks.org/expert-network/">Join our Expert Network</a></li>
636</ul>
637</li>
638</ul>						</nav>
639					
640					
641					
642					
643					<div id="et_mobile_nav_menu">
644				<div class="mobile_nav closed">
645					<span class="select_page">Select Page</span>
646					<span class="mobile_menu_bar mobile_menu_bar_toggle"></span>
647				</div>
648			</div>
648				</div> <!-- #et-top-navigation -->
649			</div> <!-- .container -->
650			<div class="et_search_outer">
651				<div class="container et_search_form_container">
652					<form role="search" method="get" class="et-search-form" action="https://www.rippleworks.org/">
653					<input type="search" class="et-search-field" placeholder="Search &hellip;" value="" name="s" title="Search for:" />					</form>
654					<span class="et_close_search_field"></span>
655				</div>
656			</div>
657		</header> <!-- #main-header -->
658			<div id="et-main-area">
659	
660<div id="main-content">
661
662
663			
664				<article id="post-4939" class="post-4939 page type-page status-publish has-post-thumbnail hentry">
665
666				
667					<div class="entry-content">
668					<div id="et-boc" class="et-boc">
669			
670		<div class="et-l et-l--post">
671			<div class="et_builder_inner_content et_pb_gutters3">
672		<div class="et_pb_section et_pb_section_0 et_pb_section_parallax et_pb_fullwidth_section et_section_regular" >
673				
674				
675				
676				
677					<section class="et_pb_module et_pb_fullwidth_header et_pb_fullwidth_header_0 et_hover_enabled et_pb_text_align_left et_pb_bg_layout_dark et_pb_fullscreen">
678				
679				
680				<div class="et_pb_fullwidth_header_container left">
681					<div class="header-content-container center">
682					<div class="header-content">
683						
684						<h1 class="et_pb_module_header">We're on a mission to provide the practical support social impact organizations need to scale faster and improve more lives.</h1>
685						
686						<div class="et_pb_header_content_wrapper"></div>
687						
688					</div>
689				</div>
690					
691				</div>
692				<div class="et_pb_fullwidth_header_overlay"></div>
693				<div class="et_pb_fullwidth_header_scroll"><a href="#" class="scroll-down-container">
694					<span class="scroll-down et-pb-icon">&amp;#x3b;</span>
695					
696					
697				</a></div>
698			</section>
699				
700				
701			</div> <!-- .et_pb_section --><div class="et_pb_section et_pb_section_1 et_pb_with_background et_section_regular" >
702				
703				
704				
705				
706					<div class="et_pb_row et_pb_row_0">
707				<div class="et_pb_column et_pb_column_4_4 et_pb_column_0  et_pb_css_mix_blend_mode_passthrough et-last-child">
708				
709				
710				<div class="et_pb_module et_pb_text et_pb_text_0 et_animated  et_pb_text_align_center et_pb_bg_layout_light">
711				
712				
713				<div class="et_pb_text_inner"><p>We work with social impact organizations who are making a difference. Their big ideas address some of the world’s biggest problems, including access to education and healthcare, environmental resilience, and community development.</p></div>
714			</div> <!-- .et_pb_text -->
715			</div> <!-- .et_pb_column -->
716				
717				
718			</div> <!-- .et_pb_row -->
719				
720				
721			</div> <!-- .et_pb_section --><div class="et_pb_section et_pb_section_2 et_pb_with_background et_section_regular" >
722				
723				
724				
725				
726					<div class="et_pb_row et_pb_row_1">
727				<div class="et_pb_column et_pb_column_4_4 et_pb_column_1  et_pb_css_mix_blend_mode_passthrough et-last-child">
728				
729				
730				<div class="et_pb_module et_pb_text et_pb_text_1 et_animated  et_pb_text_align_center et_pb_bg_layout_light">
731				
732				
733				<div class="et_pb_text_inner"><span style="color: #003366;"><strong>Rippleworks Programs</strong></span></div>
734			</div> <!-- .et_pb_text -->
735			</div> <!-- .et_pb_column -->
736				
737				
738			</div> <!-- .et_pb_row --><div class="et_pb_row et_pb_row_2">
739				<div class="et_pb_column et_pb_column_1_4 et_pb_column_2  et_pb_css_mix_blend_mode_passthrough">
740				
741				
742				<div class="et_pb_module et_pb_image et_pb_image_0">
743				
744				
745				<span class="et_pb_image_wrap "><img decoding="async" src="https://www.rippleworks.org/wp-content/uploads/2020/09/projects.png" alt="" title="projects" height="auto" width="auto" srcset="https://www.rippleworks.org/wp-content/uploads/2020/09/projects.png 1138w, https://www.rippleworks.org/wp-content/uploads/2020/09/projects-980x980.png 980w, https://www.rippleworks.org/wp-content/uploads/2020/09/projects-480x480.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1138px, 100vw" class="wp-image-5157" /></span>
746			</div><div class="et_pb_module et_pb_text et_pb_text_2  et_pb_text_align_left et_pb_bg_layout_light">
747				
748				
749				<div class="et_pb_text_inner"><p style="text-align: center;">Projects</p></div>
750			</div> <!-- .et_pb_text --><div class="et_pb_module et_pb_text et_pb_text_3  et_pb_text_align_center et_pb_bg_layout_light">
751				
752				
753				<div class="et_pb_text_inner"><p><span style="font-weight: 400;">
753High-impact, short-term advisory projects that pair organizations with industry experts to tackle critical operational challenges and accelerate growth.</span></p></div>
754			</div> <!-- .et_pb_text -->
755			</div> <!-- .et_pb_column --><div class="et_pb_column et_pb_column_1_4 et_pb_column_3  et_pb_css_mix_blend_mode_passthrough">
756				
757				
758				<div class="et_pb_module et_pb_image et_pb_image_1">
759				
760				
761				<span class="et_pb_image_wrap "><img decoding="async" src="https://www.rippleworks.org/wp-content/uploads/2025/03/officehours.png" alt="" title="officehours" height="auto" width="auto" srcset="https://www.rippleworks.org/wp-content/uploads/2025/03/officehours.png 1139w, https://www.rippleworks.org/wp-content/uploads/2025/03/officehours-980x979.png 980w, https://www.rippleworks.org/wp-content/uploads/2025/03/officehours-480x480.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1139px, 100vw" class="wp-image-14964" /></span>
762			</div><div class="et_pb_module et_pb_text et_pb_text_4  et_pb_text_align_left et_pb_bg_layout_light">
763				
764				
765				<div class="et_pb_text_inner"><p style="text-align: center;">Expert Office Hours</p></div>
766			</div> <!-- .et_pb_text --><div class="et_pb_module et_pb_text et_pb_text_5  et_pb_text_align_center et_pb_bg_layout_light">
767				
768				
769				<div class="et_pb_text_inner"><p><span class="OYPEnA font-feature-liga-off font-feature-clig-off font-feature-calt-off text-decoration-none text-strikethrough-none">
769One-on-one support for organizations to discuss pressing business needs with industry experts.</span></p></div>
770			</div> <!-- .et_pb_text -->
771			</div> <!-- .et_pb_column --><div class="et_pb_column et_pb_column_1_4 et_pb_column_4  et_pb_css_mix_blend_mode_passthrough">
772				
773				
774				<div class="et_pb_module et_pb_image et_pb_image_2">
775				
776				
777				<span class="et_pb_image_wrap "><img decoding="async" src="https://www.rippleworks.org/wp-content/uploads/2020/09/insights.png" alt="" title="insights" height="auto" width="auto" srcset="https://www.rippleworks.org/wp-content/uploads/2020/09/insights.png 1138w, https://www.rippleworks.org/wp-content/uploads/2020/09/insights-980x980.png 980w, https://www.rippleworks.org/wp-content/uploads/2020/09/insights-480x480.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1138px, 100vw" class="wp-image-5158" /></span>
778			</div><div class="et_pb_module et_pb_text et_pb_text_6  et_pb_text_align_left et_pb_bg_layout_light">
779				
780				
781				<div class="et_pb_text_inner"><p style="text-align: center;">Leaders Studio</p></div>
782			</div> <!-- .et_pb_text --><div class="et_pb_module et_pb_text et_pb_text_7  et_pb_text_align_center et_pb_bg_layout_light">
783				
784				
785				<div class="et_pb_text_inner"><p>Interactive, expert-led learning programs for leaders to gain the critical skills needed to grow and lead their teams to success.</p>
786<p>&nbsp;</p></div>
787			</div> <!-- .et_pb_text -->
788			</div> <!-- .et_pb_column --><div class="et_pb_column et_pb_column_1_4 et_pb_column_5  et_pb_css_mix_blend_mode_passthrough et-last-child">
789				
790				
791				<div class="et_pb_module et_pb_image et_pb_image_3">
792				
793				
794				<span class="et_pb_image_wrap "><img decoding="async" src="https://www.rippleworks.org/wp-content/uploads/2020/09/investments.png" alt="" title="investments" height="auto" width="auto" srcset="https://www.rippleworks.org/wp-content/uploads/2020/09/investments.png 1139w, https://www.rippleworks.org/wp-content/uploads/2020/09/investments-980x979.png 980w, https://www.rippleworks.org/wp-content/uploads/2020/09/investments-480x480.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1139px, 100vw" class="wp-image-5159" /></span>
795			</div><div class="et_pb_module et_pb_text et_pb_text_8  et_pb_text_align_left et_pb_bg_layout_light">
796				
797				
798				<div class="et_pb_text_inner"><p style="text-align: center;">Capital</p></div>
799			</div> <!-- .et_pb_text --><div class="et_pb_module et_pb_text et_pb_text_9  et_pb_text_align_center et_pb_bg_layout_light">
800				
801				
802				<div class="et_pb_text_inner"><p>Flexible, catalytic funding for high-impact organizations, tailored to their unique needs.</p></div>
803			</div> <!-- .et_pb_text -->
804			</div> <!-- .et_pb_column -->
805				
806				
807			</div> <!-- .et_pb_row -->
808				
809				
810			</div> <!-- .et_pb_section --><div class="et_pb_section et_pb_section_3 et_pb_with_background et_section_regular" >
811				
812				
813				
814				
815					<div class="et_pb_row et_pb_row_3">
816				<div class="et_pb_column et_pb_column_4_4 et_pb_column_6  et_pb_css_mix_blend_mode_passthrough et-last-child">
817				
818				
819				<div class="et_pb_module et_pb_text et_pb_text_10  et_pb_text_align_left et_pb_bg_layout_light">
820				
821				
822				<div class="et_pb_text_inner"><h2 style="text-align: center;"><span style="font-family: Gordita; font-weight: normal; color: #1e2659;">Our Impact to Date</span></h2></div>
823			</div> <!-- .et_pb_text -->
824			</div> <!-- .et_pb_column -->
825				
826				
827			</div> <!-- .et_pb_row --><div class="et_pb_row et_pb_row_4">
828				<div class="et_pb_column et_pb_column_1_3 et_pb_column_7  et_pb_css_mix_blend_mode_passthrough">
829				
830				
831				<div class="et_pb_module et_pb_circle_counter et_pb_circle_counter_0 container-width-change-notify  et_pb_text_align_center et_pb_bg_layout_light et_pb_with_title">
832				<div class="et_pb_circle_counter_inner" data-number-value="400+" data-bar-bg-color="rgba(0,0,0,0)" data-color="rgba(0,0,0,0)">
833				
834				
835					<div class="percent"><p><span class="percent-value"></span><span class="percent-sign"></span></p></div>
836					<h3 class="et_pb_module_header">Projects since we launched in 2015</h3>
837				</div>
838			</div><!-- .et_pb_circle_counter -->
839			</div> <!-- .et_pb_column --><div class="et_pb_column et_pb_column_1_3 et_pb_column_8  et_pb_css_mix_blend_mode_passthrough">
840				
841				
842				<div class="et_pb_module et_pb_circle_counter et_pb_circle_counter_1 container-width-change-notify  et_pb_text_align_center et_pb_bg_layout_light et_pb_with_title">
843				<div class="et_pb_circle_counter_inner" data-number-value="1600+" data-bar-bg-color="rgba(0,0,0,0)" data-color="rgba(0,0,0,0)">
844				
845				
846					<div class="percent"><p><span class="percent-value"></span><span class="percent-sign"></span></p></div>
847					<h3 class="et_pb_module_header">Leaders supported with Leaders Studio workshops</h3>
848				</div>
849			</div><!-- .et_pb_circle_counter -->
850			</div> <!-- .et_pb_column --><div class="et_pb_column et_pb_column_1_3 et_pb_column_9  et_pb_css_mix_blend_mode_passthrough et-last-child">
851				
852				
853				<div class="et_pb_module et_pb_circle_counter et_pb_circle_counter_2 dollar unit-m container-width-change-notify  et_pb_text_align_center et_pb_bg_layout_light et_pb_with_title">
854				<div class="et_pb_circle_counter_inner" data-number-value="270" data-bar-bg-color="rgba(0,0,0,0)" data-color="rgba(0,0,0,0)">
855				
856				
857					<div class="percent"><p><span class="percent-value"></span><span class="percent-sign"></span></p></div>
858					<h3 class="et_pb_module_header">Funding in catalytic capital to social ventures</h3>
859				</div>
860			</div><!-- .et_pb_circle_counter -->
861			</div> <!-- .et_pb_column -->
862				
863				
864			</div> <!-- .et_pb_row -->
865				
866				
867			</div> <!-- .et_pb_section -->		</div><!-- .et_builder_inner_content -->
868	</div><!-- .et-l -->
869	
870			
871		</div><!-- #et-boc -->
872							</div> <!-- .entry-content -->
873
874				
875				</article> <!-- .et_pb_post -->
876
877			
878
879</div> <!-- #main-content -->
880
881
882			<footer id="main-footer">
883				
884
885		
886				<div id="footer-bottom">
887					<div class="container clearfix">
888									</div>	<!-- .container -->
889				</div>
890			</footer> <!-- #main-footer -->
891		</div> <!-- #et-main-area -->
892
893
894	</div> <!-- #page-container -->
895
896	
896<script type="speculationrules">
897{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/Divi/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
898</script>
vendor: 1 bytes, line 898
898
899<script id="ckyBannerTemplate" type="text/template"><div class="cky-overlay cky-hide"></div><div class="cky-btn-revisit-wrapper cky-revisit-hide" data-cky-tag="revisit-consent" data-tooltip="Consent Preferences" style="background-color:#0056a7"> <button class="cky-btn-revisit" aria-label="Consent Preferences"> <img src="https://www.rippleworks.org/wp-content/plugins/cookie-law-info/lite/frontend/images/revisit.svg" alt="Revisit consent button"> </button></div><div class="cky-consent-container cky-hide" tabindex="0"> <div class="cky-consent-bar" data-cky-tag="notice" style="background-color:#FFFFFF;border-color:#f4f4f4;color:#212121">  <div class="cky-notice"> <p class="cky-title" role="heading" aria-level="1" data-cky-tag="title" style="color:#212121">We value your privacy</p><div class="cky-notice-group"> <div class="cky-notice-des" data-cky-tag="description" style="color:#212121"> <p>We use cookies to enhance your browsing experience, serve personalized ads or content, and analyze our traffic. By clicking "Accept All", you consent to our use of cookies.</p> </div><div class="cky-notice-btn-wrapper" data-cky-tag="notice-buttons"> <button class="cky-btn cky-btn-customize" aria-label="Customize" data-cky-tag="settings-button" style="color:#1863dc;background-color:transparent;border-color:#1863dc">Customize</button> <button class="cky-btn cky-btn-reject" aria-label="Reject All" data-cky-tag="reject-button" style="color:#1863dc;background-color:transparent;border-color:#1863dc">Reject All</button> <button class="cky-btn cky-btn-accept" aria-label="Accept All" data-cky-tag="accept-button" style="color:#FFFFFF;background-color:#1863dc;border-color:#1863dc">Accept All</button>  </div></div></div></div></div><div class="cky-modal" tabindex="0"> <div class="cky-preference-center" data-cky-tag="detail" style="color:#212121;background-color:#FFFFFF;border-color:#F4F4F4"> <div class="cky-preference-header"> <span class="cky-preference-title" role="heading" aria-level="1" data-cky-tag="detail-title" style="color:#212121">Customize Consent Preferences</span> <button class="cky-btn-close" aria-label="[cky_preference_close_label]" data-cky-tag="detail-close"> <img src="https://www.rippleworks.org/wp-content/plugins/cookie-law-info/lite/frontend/images/close.svg" alt="Close"> </button> </div><div class="cky-preference-body-wrapper"> <div class="cky-preference-content-wrapper" data-cky-tag="detail-description" style="color:#212121"> <p>We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.</p><p>The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. </p><p>We also use third-party cookies that help us analyze how you use this website, store your preferences, and provide the content and advertisements that are relevant to you. These cookies will only be stored in your browser with your prior consent.</p><p>You can choose to enable or disable some or all of these cookies but disabling some of them may affect your browsing experience.</p> </div><div class="cky-accordion-wrapper" data-cky-tag="detail-categories"> <div class="cky-accordion" id="ckyDetailCategorynecessary"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Necessary" data-cky-tag="detail-category-title" style="color:#212121">Necessary</button><span class="cky-always-active">Always Active</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchnecessary"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No cookies to display.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryfunctional"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Functional" data-cky-tag="detail-category-title" style="color:#212121">Functional</button><span class="cky-always-active">Always Active</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchfunctional"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No cookies to display.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryanalytics"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Analytics" data-cky-tag="detail-category-title" style="color:#212121">Analytics</button><span class="cky-always-active">Always Active</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchanalytics"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Analytical cookies are used to understand how visitors interact with the website. These 
899cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No cookies to display.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryperformance"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Performance" data-cky-tag="detail-category-title" style="color:#212121">Performance</button><span class="cky-always-active">Always Active</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchperformance"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No cookies to display.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryadvertisement"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Advertisement" data-cky-tag="detail-category-title" style="color:#212121">Advertisement</button><span class="cky-always-active">Always Active</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchadvertisement"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No cookies to display.</p></div> </div> </div> </div></div><div class="cky-footer-wrapper"> <span class="cky-footer-shadow"></span> <div class="cky-prefrence-btn-wrapper" data-cky-tag="detail-buttons"> <button class="cky-btn cky-btn-reject" aria-label="Reject All" data-cky-tag="detail-reject-button" style="color:#1863dc;background-color:transparent;border-color:#1863dc"> Reject All </button> <button class="cky-btn cky-btn-preferences" aria-label="Save My Preferences" data-cky-tag="detail-save-button" style="color:#1863dc;background-color:transparent;border-color:#1863dc"> Save My Preferences </button> <button class="cky-btn cky-btn-accept" aria-label="Accept All" data-cky-tag="detail-accept-button" style="color:#ffffff;background-color:#1863dc;border-color:#1863dc"> Accept All </button> </div></div></div></div></script>
899	
899<script type="text/javascript">
900				var et_animation_data = [{"class":"et_pb_text_0","style":"slideTop","repeat":"once","duration":"1000ms","delay":"0ms","intensity":"4%","starting_opacity":"0%","speed_curve":"ease-in-out"},{"class":"et_pb_text_1","style":"slideTop","repeat":"once","duration":"1000ms","delay":"0ms","intensity":"4%","starting_opacity":"0%","speed_curve":"ease-in-out"}];
901				</script>
901
902	<!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 65 bytes, lines 902-903
902
903<script async src="https://www.googletagmanager.com/gtag/js?id=
903UA-62198910-1
vendor: 13 bytes, line 903
903"></script>
904<script>
905  
vendor: 138 bytes, lines 905-909
905window.dataLayer = window.dataLayer || [];
906  function gtag(){dataLayer.push(arguments);}
907  gtag('js', new Date());
908
909  gtag('config', '
909UA-62198910-1
vendor: 5 bytes, line 909
909');
910</script>
910
911<!-- Start of HubSpot Embed Code -->
912<script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/48211676.js"></script>
912<!-- End of HubSpot Embed Code -->
912<script id="et-builder-modules-global-functions-script-js-extra">
913var et_builder_utils_params = {"condition":{"diviTheme":true,"extraTheme":false},"scrollLocations":["app","top"],"builderScrollLocations":{"desktop":"app","tablet":"app","phone":"app"},"onloadScrollLocation":"app","builderType":"fe"};
914//# sourceURL=et-builder-modules-global-functions-script-js-extra
915</script>
vendor: 1 bytes, line 915
915
916<script id="et-builder-modules-global-functions-script-js" src="https://www.rippleworks.org/wp-content/themes/Divi/includes/builder/frontend-builder/build/frontend-builder-global-functions.js?ver=4.9.0"></script>
vendor: 1 bytes, line 916
916
917<script id="awsm-team-js" src="https://www.rippleworks.org/wp-content/plugins/awsm-team-pro/js/team.min.js?ver=1.1.4"></script>
vendor: 1 bytes, line 917
917
918<script id="select2-js" src="https://www.rippleworks.org/wp-content/plugins/beautiful-taxonomy-filters/public/js/select2/select2.full.min.js?ver=2.6.0"></script>
vendor: 1 bytes, line 918
918
919<script id="beautiful-taxonomy-filters-js-extra">
920var btf_localization = {"ajaxurl":"https://www.rippleworks.org/wp-admin/admin-ajax.php","min_search":"8","allow_clear":"","show_description":"","disable_select2":"","conditional_dropdowns":"","language":"","rtl":"","disable_fuzzy":"","show_count":""};
921//# sourceURL=beautiful-taxonomy-filters-js-extra
922</script>
vendor: 1 bytes, line 922
922
923<script id="beautiful-taxonomy-filters-js" src="https://www.rippleworks.org/wp-content/plugins/beautiful-taxonomy-filters/public/js/beautiful-taxonomy-filters-public.js?ver=2.6.0"></script>
vendor: 1 bytes, line 923
923
924<script id="wp-hooks-js" src="https://www.rippleworks.org/wp-includes/js/dist/hooks.js?ver=f0f188028580e8dc1255"></script>
vendor: 1 bytes, line 924
924
925<script id="wp-i18n-js" src="https://www.rippleworks.org/wp-includes/js/dist/i18n.js?ver=1dfe7db3940c23ea9216"></script>
vendor: 1 bytes, line 925
925
926<script id="wp-i18n-js-after">
927wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } );
928//# sourceURL=wp-i18n-js-after
929</script>
vendor: 1 bytes, line 929
929
930<script id="edac-frontend-fixes-js-extra">
931var edac_frontend_fixes = [];
932//# sourceURL=edac-frontend-fixes-js-extra
933</script>
vendor: 1 bytes, line 933
933
934<script id="edac-frontend-fixes-js" src="https://www.rippleworks.org/wp-content/plugins/accessibility-checker/build/frontendFixes.bundle.js?ver=1.50.1"></script>
vendor: 1 bytes, line 934
934
935<script id="et-jquery-touch-mobile-js" src="https://www.rippleworks.org/wp-content/themes/Divi/includes/builder/scripts/ext/jquery.mobile.custom.min.js?ver=4.9.0"></script>
vendor: 1 bytes, line 935
935
936<script id="divi-custom-script-js-extra">
937var DIVI = {"item_count":"%d Item","items_count":"%d Items"};
938//# sourceURL=divi-custom-script-js-extra
939</script>
vendor: 1 bytes, line 939
939
940<script id="divi-custom-script-js" src="https://www.rippleworks.org/wp-content/themes/Divi/js/custom.js?ver=4.9.0"></script>
vendor: 1 bytes, line 940
940
941<script id="et-builder-modules-script-js-extra">
942var et_frontend_scripts = {"builderCssContainerPrefix":"#et-boc","builderCssLayoutPrefix":"#et-boc .et-l"};
943var et_pb_custom = {"ajaxurl":"https://www.rippleworks.org/wp-admin/admin-ajax.php","images_uri":"https://www.rippleworks.org/wp-content/themes/Divi/images","builder_images_uri":"https://www.rippleworks.org/wp-content/themes/Divi/includes/builder/images","et_frontend_nonce":"76fc518382","subscription_failed":"Please, check the fields below to make sure you entered the correct information.","et_ab_log_nonce":"572750d249","fill_message":"Please, fill in the following fields:","contact_error_message":"Please, fix the following errors:","invalid":"Invalid email","captcha":"Captcha","prev":"Prev","previous":"Previous","next":"Next","wrong_captcha":"You entered the wrong number in captcha.","wrong_checkbox":"Checkbox","ignore_waypoints":"no","is_divi_theme_used":"1","widget_search_selector":".widget_search","ab_tests":[],"is_ab_testing_active":"","page_id":"4939","unique_test_id":"","ab_bounce_rate":"5","is_cache_plugin_active":"yes","is_shortcode_tracking":"","tinymce_uri":""};
944var et_pb_box_shadow_elements = [];
945var et_pb_motion_elements = {"desktop":[{"id":".et_pb_fullwidth_header_0","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_fullwidth_header","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_0","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_1","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_2","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_3","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"}],"tablet":[{"id":".et_pb_fullwidth_header_0","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_fullwidth_header","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_0","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_1","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_2","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_3","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"}],"phone":[{"id":".et_pb_fullwidth_header_0","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_fullwidth_header","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_0","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_1","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_2","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"},{"id":".et_pb_image_3","start":0,"midStart":50,"midEnd":50,"end":100,"startValue":0,"midValue":100,"endValue":100,"resolver":"opacity","module_type":"et_pb_image","trigger_start":"middle","trigger_end":"middle"}]};
946var et_pb_sticky_elements = [];
947//# sourceURL=et-builder-modules-script-js-extra
948</script>
vendor: 1 bytes, line 948
948
949<script id="et-builder-modules-script-js" src="https://www.rippleworks.org/wp-content/themes/Divi/includes/builder/frontend-builder/build/frontend-builder-scripts.js?ver=4.9.0"></script>
vendor: 1 bytes, line 949
949
950<script id="divi-modules-table-maker-frontend-bundle-js" src="https://www.rippleworks.org/wp-content/plugins/divi-modules-table-maker/scripts/frontend-bundle.min.js?ver=3.0.2"></script>
vendor: 1 bytes, line 950
950
951<script id="divi-fitvids-js" src="https://www.rippleworks.org/wp-content/themes/Divi/includes/builder/scripts/ext/jquery.fitvids.js?ver=4.9.0"></script>
vendor: 1 bytes, line 951
951
952<script id="waypoints-js" src="https://www.rippleworks.org/wp-content/themes/Divi/includes/builder/scripts/ext/waypoints.min.js?ver=4.9.0"></script>
vendor: 1 bytes, line 952
952
953<script id="magnific-popup-js" src="https://www.rippleworks.org/wp-content/themes/Divi/includes/builder/scripts/ext/jquery.magnific-popup.js?ver=4.9.0"></script>
vendor: 1 bytes, line 953
953
954<script id="et-core-common-js" src="https://www.rippleworks.org/wp-content/themes/Divi/core/admin/js/common.js?ver=4.9.0"></script>
vendor: 1 bytes, line 954
954
955<script id="divi-accessibility-da11y-js-extra">
956var _da11y = {"version":"2.0.5","active_outline_color":"#2ea3f2","skip_navigation_link_text":"Skip to content"};
957//# sourceURL=divi-accessibility-da11y-js-extra
958</script>
vendor: 1 bytes, line 958
958
959<script id="divi-accessibility-da11y-js" src="https://www.rippleworks.org/wp-content/plugins/divi-accessibility-master/public/js/da11y.js?ver=2.0.5"></script>
vendor: 1 bytes, line 959
959
960<script id="divi-accessibility-da11y-js-after">
961jQuery(document).ready(function($) {
962
963	$('.et-menu > li').on('focusout', function() {
964		$(this).removeClass('et-hover');
965	});
966	if($('.menu-item-has-children > a').length ) {
967		$('.menu-item-has-children > a').addClass('da11y-submenu');
968		$('.menu-item-has-children > a').attr('aria-expanded', 'false');
969	}
970
971	$('.menu-item a').on('focus', function() {
972		$(this).siblings('.da11y-submenu').attr('aria-expanded', 'true');
973		$(this).siblings('.sub-menu').addClass('da11y-submenu-show');
974		$(this).trigger('mouseenter');
975	});
976
977	$('.menu-item-has-children a').on('focusout', function() {
978		if( $(this).parent().not('.menu-item-has-children').is(':last-child') ) {
979			$(this).parents('.menu-item-has-children').children('.da11y-submenu').attr('aria-expanded', 'false').trigger('mouseleave').siblings('.sub-menu').removeClass('da11y-submenu-show');
980		}
981	});
982
983	$('.menu-item-has-children a').keyup(function(event) {
984		if (event.keyCode === 27) {
985			var menuParent = $(this).parents('.menu-item-has-children').last();
986			if(menuParent.length) {
987				menuParent.children('a').focus();
988				menuParent.find('.da11y-submenu').attr('aria-expanded', 'false').trigger('mouseleave').siblings('.sub-menu').removeClass('da11y-submenu-show');
989			}
990		}
991	});
992
993	/**
994	 * Generate search form styles.
995	 *
996	 * @since Divi v3.0.23
997	 */
998	function et_set_search_form_css() {
999		const search_container = $('.et_search_form_container');
1000		const body = $('body');
1001		if (search_container.hasClass('et_pb_search_visible')) {
1002			const header_height = $('#main-header').innerHeight();
1003			const menu_width = $('#top-menu').width();
1004			const font_size = $('#top-menu li a').css('font-size');
1005			search_container.css({ height: header_height + 'px' });
1006			search_container.find('input').css('font-size', font_size);
1007			if (!body.hasClass('et_header_style_left')) {
1008				search_container.css('max-width', menu_width + 60);
1009			} else {
1010				search_container.find('form').css('max-width', menu_width + 60);
1011			}
1012		}
1013	}
1014
1015	/**
1016	 * Show the search.
1017	 *
1018	 * @since Divi v3.0.23
1019	 */
1020	function show_search() {
1021		const search_container = $('.et_search_form_container');
1022		if (search_container.hasClass('et_pb_is_animating')) {
1023			return;
1024		}
1025		$('.et_menu_container').removeClass('et_pb_menu_visible et_pb_no_animation').addClass('et_pb_menu_hidden');
1026		search_container.removeClass('et_pb_search_form_hidden et_pb_no_animation').addClass('et_pb_search_visible et_pb_is_animating');
1027		setTimeout(function () {
1028			$('.et_menu_container').addClass('et_pb_no_animation');
1029			search_container.addClass('et_pb_no_animation').removeClass('et_pb_is_animating');
1030		}, 1000);
1031		search_container.find('input').focus();
1032		et_set_search_form_css();
1033	}
1034
1035	/**
1036	 * Hide the search.
1037	 *
1038	 * @since Divi v3.0.23
1039	 */
1040	function hide_search() {
1041		if ($('.et_search_form_container').hasClass('et_pb_is_animating')) {
1042			return;
1043		}
1044		$('.et_menu_container').removeClass('et_pb_menu_hidden et_pb_no_animation').addClass('et_pb_menu_visible');
1045		$('.et_search_form_container').removeClass('et_pb_search_visible et_pb_no_animation').addClass('et_pb_search_form_hidden et_pb_is_animating');
1046		setTimeout(function () {
1047			$('.et_menu_container').addClass('et_pb_no_animation');
1048			$('.et_search_form_container').addClass('et_pb_no_animation').removeClass('et_pb_is_animating');
1049		}, 1000);
1050	}
1051
1052	$(this).keyup(function () {
1053		$('.et-search-field').focus(function () {
1054			show_search();
1055		}).blur(function () {
1056			hide_search();
1057		});
1058	});
1059
1060});
1061
1062
1063jQuery(document).ready(function($) {
1064	const text = ( ( window || {} )._da11y || {} ).skip_navigation_link_text || false;
1065
1066	/**
1067	 * Add skiplink to page.
1068	 */
1069	function skipTo(target) {
1070		const skiplink = '<a href="' + target + '" class="skip-link da11y-screen-reader-text">' + text + '</a>';
1071		$(target).attr('tabindex', -1);
1072		$('body').prepend(skiplink);
1073	}
1074	skipTo('#main-content');
1075
1076	/**
1077	 * Use js to focus for internal links.
1078	 */
1079	$('a[href^="#"]').click(function () {
1080		const content = $('#' + $(this).attr('href').slice(1));
1081		content.focus();
1082	});
1083
1084});
1085
1086
1087jQuery(document).ready(function($) {
1088
1089	let lastKey = new Date();
1090	let lastClick = new Date();
1091
1092	/**
1093	 * Only apply focus styles for keyboard usage.
1094	 */
1095	$(this).on('focusin', function (e) {
1096		$('.keyboard-outline').removeClass('keyboard-outline');
1097		const wasByKeyboard = lastClick < lastKey;
1098		if (wasByKeyboard) {
1099			$(e.target).addClass('keyboard-outline');
1100		}
1101	});
1102
1103	$(this).on('mousedown', function () {
1104		lastClick = new Date();
1105	});
1106
1107	$(this).on('keydown', function () {
1108		lastKey = new Date();
1109	});
1110
1111});
1112
1113
1114jQuery(document).ready(function($) {
1115
1116	/**
1117	 * Add appropriate aria attributes to Accordion & Toggle Divi modules
1118	 *
1119	 * @divi-module  Accordion, Toggle
1120	 */
1121	$('.et_pb_toggle').each(function (index) {
1122		var $toggle = $(this);
1123		var $title = $toggle.find('.et_pb_toggle_title');
1124		var $panel = $toggle.find('.et_pb_toggle_content');
1125		var isAccordion = $toggle.hasClass('et_pb_accordion_item');
1126
1127		$title.attr('role', 'button');
1128		$title.attr('tabindex', 0);
1129		$title.attr('aria-controls', 'et_pb_toggle_content_' + index);
1130		$panel.attr('id', 'et_pb_toggle_content_' + index);
1131
1132		if ($toggle.hasClass('et_pb_toggle_open')) {
1133			$title.attr('aria-expanded', true);
1134
1135			if (isAccordion) $title.attr('aria-disabled', true);
1136		} else {
1137			$title.attr('aria-expanded', false);
1138
1139			if (isAccordion) $title.removeAttr('aria-disabled');
1140		}
1141	});
1142
1143	/**
1144	 * Prevent spacebar from scolling page when toggle & accordion have focus.
1145	 *
1146	 * @divi-module  Accordion, Toggle
1147	 */
1148	$('.et_pb_toggle_title').on('keydown', function(e) {
1149		// Spacebar.
1150		if (e.which === 32){
1151			e.preventDefault();
1152		}
1153	});
1154
1155	/**
1156	 * Expand Accordion & Toggle modules when enter or spacebar are pressed while focused.
1157	 *
1158	 * @divi-module  Accordion, Toggle
1159	 */
1160	$(document).on('keyup', function(e) {
1161		// Spacebar & Enter.
1162		if (e.which === 13 || e.which === 32) {
1163			$('.et_pb_toggle_title:focus').trigger('click');
1164		}
1165	});
1166
1167	/**
1168	 * Set aria attributes of Accordion & Toggle modules when one is clicked.
1169	 *
1170	 * @divi-module  Accordion, Toggle
1171	 */
1172	$('.et_pb_toggle_title').on('click', function() {
1173		var $clickedToggleTitle = $(this);
1174		var $clickedToggle = $clickedToggleTitle.parent();
1175		var isAccordion = $clickedToggle.hasClass('et_pb_accordion_item');
1176
1177		if (isAccordion) {
1178			// Only change the aria attributes if an accordion toggle isn't already open
1179			if (!$clickedToggle.hasClass('et_pb_toggle_open')) {
1180				var $allSiblingToggles = $clickedToggleTitle.closest('.et_pb_accordion').find('.et_pb_toggle');
1181
1182				// Reset the aria attributes on the open toggle
1183				$allSiblingToggles.each(function() {
1184					$toggle = $(this);
1185					if ($toggle.hasClass('et_pb_toggle_open')) {
1186						var $openToggleTitle = $toggle.find('.et_pb_toggle_title')
1187
1188						$openToggleTitle.attr('aria-expanded', false);
1189						$openToggleTitle.removeAttr('aria-disabled');
1190					}
1191				});
1192
1193				// Set the aria attributes on the clicked toggle
1194				setTimeout(function() {
1195					$clickedToggleTitle.attr('aria-expanded', true);
1196					$clickedToggleTitle.attr('aria-disabled', true);
1197				}, 500);
1198			}
1199		} else {
1200			// The toggle isn't part of an accordion so its aria attributes should be udpated
1201			if ($clickedToggle.hasClass('et_pb_toggle_open')) {
1202				$clickedToggleTitle.attr('aria-expanded', false);
1203			} else {
1204				$clickedToggleTitle.attr('aria-expanded', true);
1205			}
1206		}
1207	});
1208
1209});
1210
1211
1212jQuery(document).ready(function($) {
1213
1214	/**
1215	 * Add unique ID to search module input with matching label.
1216	 *
1217	 * @divi-module  Search
1218	 */
1219	$('.et-search-field').each(function (e) {
1220		$(this).attr('id', 'et_pb_search_module_input_' + e);
1221		$('#et_pb_search_module_input_' + e).before('<label class="da11y-screen-reader-text" for="et_pb_search_module_input_' + e + '">Search for...</label>');
1222		$('#et_pb_search_module_input_' + e).after('<button type="submit" class="da11y-screen-reader-text">Search</button>');
1223	});
1224
1225	/**
1226	 * Add unique ID to search module input with matching label.
1227	 *
1228	 * @divi-module  Search
1229	 */
1230	$('.et_pb_s').each(function (e) {
1231		$(this).attr('id', 'et_pb_s_module_input_' + e);
1232		$('#et_pb_s_module_input_' + e).before('<label class="da11y-screen-reader-text" for="et_pb_s_module_input_' + e + '">Search for...</label>');
1233	});
1234
1235	/**
1236	 * Add unique ID to contact module input with matching label.
1237	 *
1238	 * @divi-module  Contact
1239	 */
1240	$('.et_pb_contact_form').each(function () {
1241		$(this).find('.et_pb_contact_captcha_question').parent().wrap('<label></label>');
1242	});
1243
1244	/**
1245	* Correct labels on social media icons
1246	*/
1247	$('.et-social-facebook a.icon span').text('Facebook');
1248	$('.et-social-twitter a.icon span').text('Twitter');
1249	$('.et-social-google-plus a.icon span').text('Google Plus');
1250	$('.et-social-pinterest a.icon span').text('Pinterest');
1251	$('.et-social-linkedin a.icon span').text('LinkedIn');
1252	$('.et-social-tumblr a.icon span').text('Tumblr');
1253	$('.et-social-instagram a.icon span').text('Instagram');
1254	$('.et-social-skype a.icon span').text('Skype');
1255	$('.et-social-flikr a.icon span').text('Flickr');
1256	$('.et-social-myspace a.icon span').text('Myspace');
1257	$('.et-social-dribbble a.icon span').text('Dribble');
1258	$('.et-social-youtube a.icon span').text('YouTube');
1259	$('.et-social-vimeo a.icon span').text('Vimeo');
1260	$('.et-social-rss a.icon span').text('RSS');
1261
1262});
1263
1264
1265jQuery(document).ready(function($) {
1266
1267	/**
1268	 * Add role="tabList".
1269	 *
1270	 * @divi-module  Tab
1271	 */
1272	$('.et_pb_tabs_controls').each(function () {
1273		$(this).attr('role', 'tablist');
1274	});
1275
1276	/**
1277	 * Add role="presentation".
1278	 *
1279	 * @divi-module  Tab
1280	 */
1281	$('.et_pb_tabs_controls li').each(function () {
1282		$(this).attr('role', 'presentation');
1283	});
1284
1285	/**
1286	 * Add role="tab".
1287	 *
1288	 * @divi-module  Tab
1289	 */
1290	 $('.et_pb_tabs_controls a').each(function () {
1291		$(this).attr({
1292			'role': 'tab',
1293		});
1294	});
1295
1296	/**
1297	 * Add role="tabpanel".
1298	 *
1299	 * @divi-module  Tab
1300	 */
1301	$('.et_pb_tab').each(function () {
1302		$(this).attr('role', 'tabpanel');
1303	});
1304
1305	/**
1306	 * Add initial state:
1307	 *
1308	 * aria-selected="false"
1309	 * aria-expanded="false"
1310	 * tabindex=-1
1311	 *
1312	 * @divi-module  Tab
1313	 */
1314	$('.et_pb_tabs_controls li:not(.et_pb_tab_active) a').each(function () {
1315		$(this).attr({
1316			'aria-selected': 'false',
1317			'aria-expanded': 'false',
1318			tabindex: -1
1319		});
1320	});
1321
1322
1323	/**
1324	* Add initial state:
1325	*
1326	* aria-selected="true"
1327	* aria-expanded="true"
1328	* tabindex=-1
1329	*
1330	* @divi-module  Tab
1331	 */
1332	$('.et_pb_tabs_controls li.et_pb_tab_active a').each(function () {
1333		$(this).attr({
1334			'aria-selected': 'true',
1335			'aria-expanded': 'true',
1336			tabindex: 0
1337		});
1338	});
1339
1340
1341	// Add aria-haspopup="true" support to submenus
1342	$('ul.sub-menu .menu-item a').each(function () {
1343		$(this).attr({
1344			'aria-haspopup': 'true',
1345		});
1346	});
1347
1348	// Add role="link" to all links
1349	$('a:not(.et-social-icon a, .wp-block-button__link, figure a, .et_pb_button, .et_pb_video_play a, .et_pb_tabs_controls a)').each(function () {
1350		$(this).attr({
1351			'role': 'link',
1352		});
1353	});
1354
1355	// Add role="button" to clickable elements
1356	$('#et_search_icon, .et_close_search_field, #et_mobile_nav_menu, #searchsubmit, .icon, .wp-block-button__link, .et_pb_button, .et_pb_video_play a').each(function () {
1357		$(this).attr({
1358			'role': 'button',
1359		});
1360	});
1361
1362	//Add aria support to reCAPTCHA
1363	$('#g-recaptcha-response').each(function () {
1364		$(this).attr({
1365			'aria-hidden': 'true',
1366			'aria-label': 'do not use',
1367			'aria-readonly': 'true',
1368		});
1369	});
1370
1371	/**
1372	 * Add unique ID to tab controls.
1373	 * Add aria-controls="x".
1374	 *
1375	 * @divi-module  Tab
1376	 */
1377	$('.et_pb_tabs_controls a').each(function (e) {
1378		$(this).attr({
1379			id: 'et_pb_tab_control_' + e,
1380			'aria-controls': 'et_pb_tab_panel_' + e
1381		});
1382	});
1383
1384	/**
1385	 * Add unique ID to tab panels.
1386	 * Add aria-labelledby="x".
1387	 *
1388	 * @divi-module  Tab
1389	 */
1390	$('.et_pb_tab').each(function (e) {
1391		$(this).attr({
1392			id: 'et_pb_tab_panel_' + e,
1393			'aria-labelledby': 'et_pb_tab_control_' + e
1394		});
1395	});
1396
1397	/**
1398	 * Set initial inactive tab panels to aria-hidden="false".
1399	 *
1400	 * @divi-module  Tab
1401	 */
1402	$('.et_pb_tab.et_pb_active_content').each(function () {
1403		$(this).attr('aria-hidden', 'false');
1404	});
1405
1406	/**
1407	 * Set initial inactive tab panels to aria-hidden="true".
1408	 *
1409	 * @divi-module  Tab
1410	 */
1411	$('.et_pb_tab:not(.et_pb_active_content)').each(function () {
1412		$(this).attr('aria-hidden', 'true');
1413	});
1414
1415	/**
1416	 * Add unique ID to tab module.
1417	 * Need to use data attribute because a regular ID somehow interferes with Divi.
1418	 *
1419	 * @divi-module  Tab
1420	 */
1421	$('.et_pb_tabs').each(function (e) {
1422		$(this).attr('data-da11y-id', 'et_pb_tab_module_' + e);
1423	});
1424
1425	/**
1426	 * Update aria-selected attribute when tab is clicked or when hitting enter while focused.
1427	 *
1428	 * @divi-module  Tab
1429	 */
1430	$('.et_pb_tabs_controls a').on('click', function () {
1431		const id = $(this).attr('id');
1432		const namespace = $(this).closest('.et_pb_tabs').attr('data-da11y-id'); // Used as a selector to scope changes to current module.
1433		// Reset all tab controls to be aria-selected="false" & aria-expanded="false".
1434		$('[data-da11y-id="' + namespace + '"] .et_pb_tabs_controls a').attr({
1435			'aria-selected': 'false',
1436			'aria-expanded': 'false',
1437			tabindex: -1
1438		});
1439		// Make active tab control aria-selected="true" & aria-expanded="true".
1440		$(this).attr({
1441			'aria-selected': 'true',
1442			'aria-expanded': 'true',
1443			tabindex: 0
1444		});
1445		// Reset all tabs to be aria-hidden="true".
1446		$('#' + namespace + ' .et_pb_tab').attr('aria-hidden', 'true');
1447		// Label active tab panel as aria-hidden="false".
1448		$('[aria-labelledby="' + id + '"]').attr('aria-hidden', 'false');
1449	});
1450
1451	// Arrow navigation for tab modules
1452	$('.et_pb_tabs_controls a').keyup(function (e) {
1453		const namespace = $(this).closest('.et_pb_tabs').attr('data-da11y-id');
1454		const module = $('[data-da11y-id="' + namespace + '"]');
1455		if (e.which === 39) { // Right.
1456			const next = module.find('li.et_pb_tab_active').next();
1457			if (next.length > 0) {
1458				next.find('a').trigger('click');
1459			} else {
1460				module.find('li:first a').trigger('click');
1461			}
1462		} else if (e.which === 37) { // Left.
1463			const next = module.find('li.et_pb_tab_active').prev();
1464			if (next.length > 0) {
1465				next.find('a').trigger('click');
1466			} else {
1467				module.find('li:last a').trigger('click');
1468			}
1469		}
1470		$('.et_pb_tabs_controls a').removeClass('keyboard-outline');
1471		module.find('li.et_pb_tab_active a').addClass('keyboard-outline');
1472	});
1473
1474	/**
1475	 * Add unique ID to search module.
1476	 * Need to use data attribute because a regular ID somehow interferes with Divi.
1477	 *
1478	 * @divi-module  Search
1479	 */
1480	$('.et_pb_search').each(function (e) {
1481		$(this).attr('data-da11y-id', 'et_pb_search_module_' + e);
1482	});
1483
1484	/**
1485	 * Add aria-required="true" to inputs.
1486	 *
1487	 * @divi-module  Contact Form
1488	 */
1489	$('[data-required_mark="required"]').each(function () {
1490		$(this).attr('aria-required', 'true');
1491	});
1492
1493	/**
1494	 * Hide hidden error field on contact form.
1495	 *
1496	 * @divi-module  Contact Form
1497	 */
1498	$('.et_pb_contactform_validate_field').attr('type', 'hidden');
1499
1500	/**
1501	 * Add alert role to error or success contact form message
1502	 *
1503	 * @divi-module  Contact Form
1504	 */
1505	$('.et-pb-contact-message').attr('role', 'alert');
1506
1507	/**
1508	* Add main role to main-content
1509	*/
1510	$('#main-content').attr('role', 'main');
1511
1512	/**
1513	 * Add aria-label="x".
1514	 *
1515	 * @divi-module  Fullwidth header, comment-wrap
1516	 */
1517	$('.et_pb_fullwidth_header').each(function (e) {
1518		$(this).attr('aria-label', 'Wide Header' + e);
1519	});
1520	$('#comment-wrap').attr('aria-label', 'Comments');
1521
1522	/**
1523	 * Hide manually disabled ARIA elements
1524	 */
1525	$('.aria-hidden').each(function (index, element) {
1526		hideAriaElement(element);
1527	});
1528
1529	function hideAriaElement(element) {
1530		const $element = $(element);
1531		$(element).attr('aria-hidden', 'true');
1532
1533		for(const child of $element.children()){
1534			hideAriaElement(child);
1535		}
1536	}
1537});
1538
1539jQuery(document).ready(function($) {
1540
1541	/**
1542	 * Add aria-hidden="true" to all icons
1543	 */
1544	$('#et_top_search, .et_close_search_field, .et_pb_main_blurb_image').attr('aria-hidden', 'true');
1545
1546});
1547
1548
1549jQuery(document).ready(function($) {
1550
1551	/**
1552	 * Mobile menu Aria support.
1553	 */
1554	$('.mobile_menu_bar').attr({'role': 'button', 'aria-expanded': 'false', 'aria-label': 'Menu', 'tabindex': 0});
1555	$('.mobile_menu_bar').on('click', function() {
1556		if($(this).hasClass('a11y-mobile-menu-open') ) {
1557			$(this).removeClass('a11y-mobile-menu-open').attr('aria-expanded', 'false');
1558		} else {
1559			$(this).addClass('a11y-mobile-menu-open').attr('aria-expanded', 'true');
1560		}
1561	});
1562
1563	/**
1564	* Allows mobile menu to be opened with keyboard.
1565	*/
1566	$('.mobile_menu_bar').keyup(function(event) {
1567		if (event.keyCode === 13 || event.keyCode === 32) {
1568			$('.mobile_menu_bar').click();
1569		}
1570	});
1571
1572	/**
1573	* Allows mobile menu to be closed with keyboard.
1574	*/
1575	$(document).keyup(function(event) {
1576		if (event.keyCode === 27) {
1577			if($('#et_mobile_nav_menu .mobile_nav').hasClass('opened')) {
1578				$('.mobile_menu_bar').click();
1579			}
1580		}
1581	});
1582
1583	/**
1584	* Closes mobile menu when it loses focus.
1585	*/
1586	$(this).on('focusin', function () {
1587		if($('#et_mobile_nav_menu .mobile_nav').hasClass('opened')) {
1588			if(!$('#et_mobile_nav_menu .et_mobile_menu :focus').length) {
1589				$('#et_mobile_nav_menu .mobile_menu_bar').click();
1590			}
1591		}
1592	});
1593
1594});
1595//# sourceURL=divi-accessibility-da11y-js-after
1596</script>
vendor: 1 bytes, line 1596
1596
1597<script id="easypiechart-js" src="https://www.rippleworks.org/wp-content/themes/Divi/includes/builder/scripts/ext/jquery.easypiechart.js?ver=4.9.0"></script>
vendor: 1 bytes, line 1597
1597
1598<script id="wp-emoji-settings" type="application/json">
1599{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"wpemoji":"https://www.rippleworks.org/wp-includes/js/wp-emoji.js?ver=7.1.2","twemoji":"https://www.rippleworks.org/wp-includes/js/twemoji.js?ver=7.1.2"}}
1600</script>
vendor: 1 bytes, line 1600
1600
1601<script type="module">
1602/**
1603 * @output wp-includes/js/wp-emoji-loader.js
1604 */
1605
1606/* eslint-env es6 */
1607
1608// Note: This is loaded as a script module, so there is no need for an IIFE to prevent pollution of the global scope.
1609
1610/**
1611 * Emoji Settings as exported in PHP via _print_emoji_detection_script().
1612 * @typedef WPEmojiSettings
1613 * @type {object}
1614 * @property {?object} source
1615 * @property {?string} source.concatemoji
1616 * @property {?string} source.twemoji
1617 * @property {?string} source.wpemoji
1618 */
1619
1620const selector = 'script#wp-emoji-settings';
1621const script = document.querySelector( selector );
1622if ( ! ( script instanceof HTMLScriptElement ) ) {
1623	throw new Error( `Element missing: ${ selector }`);
1624}
1625const settings = /** @type {WPEmojiSettings} */ ( JSON.parse( script.text ) );
1626
1627// For compatibility with other scripts that read from this global, in particular wp-includes/js/wp-emoji.js (source file: js/_enqueues/wp/emoji.js).
1628window._wpemojiSettings = settings;
1629
1630/**
1631 * Support tests.
1632 * @typedef SupportTests
1633 * @type {object}
1634 * @property {?boolean} flag
1635 * @property {?boolean} emoji
1636 */
1637
1638const sessionStorageKey = 'wpEmojiSettingsSupports';
1639const tests = [ 'flag', 'emoji' ];
1640
1641/**
1642 * Checks whether the browser supports offloading to a Worker.
1643 *
1644 * @since 6.3.0
1645 *
1646 * @private
1647 *
1648 * @returns {boolean}
1649 */
1650function supportsWorkerOffloading() {
1651	return (
1652		typeof Worker !== 'undefined' &&
1653		typeof OffscreenCanvas !== 'undefined' &&
1654		typeof URL !== 'undefined' &&
1655		URL.createObjectURL &&
1656		typeof Blob !== 'undefined'
1657	);
1658}
1659
1660/**
1661 * @typedef SessionSupportTests
1662 * @type {object}
1663 * @property {number} timestamp
1664 * @property {SupportTests} supportTests
1665 */
1666
1667/**
1668 * Get support tests from session.
1669 *
1670 * @since 6.3.0
1671 *
1672 * @private
1673 *
1674 * @returns {?SupportTests} Support tests, or null if not set or older than 1 week.
1675 */
1676function getSessionSupportTests() {
1677	try {
1678		/** @type {SessionSupportTests} */
1679		const item = JSON.parse(
1680			sessionStorage.getItem( sessionStorageKey )
1681		);
1682		if (
1683			typeof item === 'object' &&
1684			typeof item.timestamp === 'number' &&
1685			new Date().valueOf() < item.timestamp + 604800 && // Note: Number is a week in seconds.
1686			typeof item.supportTests === 'object'
1687		) {
1688			return item.supportTests;
1689		}
1690	} catch ( e ) {}
1691	return null;
1692}
1693
1694/**
1695 * Persist the supports in session storage.
1696 *
1697 * @since 6.3.0
1698 *
1699 * @private
1700 *
1701 * @param {SupportTests} supportTests Support tests.
1702 */
1703function setSessionSupportTests( supportTests ) {
1704	try {
1705		/** @type {SessionSupportTests} */
1706		const item = {
1707			supportTests: supportTests,
1708			timestamp: new Date().valueOf()
1709		};
1710
1711		sessionStorage.setItem(
1712			sessionStorageKey,
1713			JSON.stringify( item )
1714		);
1715	} catch ( e ) {}
1716}
1717
1718/**
1719 * Checks if two sets of Emoji characters render the same visually.
1720 *
1721 * This is used to determine if the browser is rendering an emoji with multiple data points
1722 * correctly. set1 is the emoji in the correct form, using a zero-width joiner. set2 is the emoji
1723 * in the incorrect form, using a zero-width space. If the two sets render the same, then the browser
1724 * does not support the emoji correctly.
1725 *
1726 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
1727 * scope. Everything must be passed by parameters.
1728 *
1729 * @since 4.9.0
1730 *
1731 * @private
1732 *
1733 * @param {CanvasRenderingContext2D} context 2D Context.
1734 * @param {string} set1 Set of Emoji to test.
1735 * @param {string} set2 Set of Emoji to test.
1736 *
1737 * @return {boolean} True if the two sets render the same.
1738 */
1739function emojiSetsRenderIdentically( context, set1, set2 ) {
1740	// Cleanup from previous test.
1741	context.clearRect( 0, 0, context.canvas.width, context.canvas.height );
1742	context.fillText( set1, 0, 0 );
1743	const rendered1 = new Uint32Array(
1744		context.getImageData(
1745			0,
1746			0,
1747			context.canvas.width,
1748			context.canvas.height
1749		).data
1750	);
1751
1752	// Cleanup from previous test.
1753	context.clearRect( 0, 0, context.canvas.width, context.canvas.height );
1754	context.fillText( set2, 0, 0 );
1755	const rendered2 = new Uint32Array(
1756		context.getImageData(
1757			0,
1758			0,
1759			context.canvas.width,
1760			context.canvas.height
1761		).data
1762	);
1763
1764	return rendered1.every( ( rendered2Data, index ) => {
1765		return rendered2Data === rendered2[ index ];
1766	} );
1767}
1768
1769/**
1770 * Checks if the center point of a single emoji is empty.
1771 *
1772 * This is used to determine if the browser is rendering an emoji with a single data point
1773 * correctly. The center point of an incorrectly rendered emoji will be empty. A correctly
1774 * rendered emoji will have a non-zero value at the center point.
1775 *
1776 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
1777 * scope. Everything must be passed by parameters.
1778 *
1779 * @since 6.8.2
1780 *
1781 * @private
1782 *
1783 * @param {CanvasRenderingContext2D} context 2D Context.
1784 * @param {string} emoji Emoji to test.
1785 *
1786 * @return {boolean} True if the center point is empty.
1787 */
1788function emojiRendersEmptyCenterPoint( context, emoji ) {
1789	// Cleanup from previous test.
1790	context.clearRect( 0, 0, context.canvas.width, context.canvas.height );
1791	context.fillText( emoji, 0, 0 );
1792
1793	// Test if the center point (16, 16) is empty (0,0,0,0).
1794	const centerPoint = context.getImageData(16, 16, 1, 1);
1795	for ( let i = 0; i < centerPoint.data.length; i++ ) {
1796		if ( centerPoint.data[ i ] !== 0 ) {
1797			// Stop checking the moment it's known not to be empty.
1798			return false;
1799		}
1800	}
1801
1802	return true;
1803}
1804
1805/**
1806 * Determines if the browser properly renders Emoji that Twemoji can supplement.
1807 *
1808 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
1809 * scope. Everything must be passed by parameters.
1810 *
1811 * @since 4.2.0
1812 *
1813 * @private
1814 *
1815 * @param {CanvasRenderingContext2D} context 2D Context.
1816 * @param {string} type Whether to test for support of "flag" or "emoji".
1817 * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification.
1818 * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification.
1819 *
1820 * @return {boolean} True if the browser can render emoji, false if it cannot.
1821 */
1822function browserSupportsEmoji( context, type, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) {
1823	let isIdentical;
1824
1825	switch ( type ) {
1826		case 'flag':
1827			/*
1828			 * Test for Transgender flag compatibility. Added in Unicode 13.
1829			 *
1830			 * To test for support, we try to render it, and compare the rendering to how it would look if
1831			 * the browser doesn't render it correctly (white flag emoji + transgender symbol).
1832			 */
1833			isIdentical = emojiSetsRenderIdentically(
1834				context,
1835				'\uD83C\uDFF3\uFE0F\u200D\u26A7\uFE0F', // as a zero-width joiner sequence
1836				'\uD83C\uDFF3\uFE0F\u200B\u26A7\uFE0F' // separated by a zero-width space
1837			);
1838
1839			if ( isIdentical ) {
1840				return false;
1841			}
1842
1843			/*
1844			 * Test for Sark flag compatibility. This is the least supported of the letter locale flags,
1845			 * so gives us an easy test for full support.
1846			 *
1847			 * To test for support, we try to render it, and compare the rendering to how it would look if
1848			 * the browser doesn't render it correctly ([C] + [Q]).
1849			 */
1850			isIdentical = emojiSetsRenderIdentically(
1851				context,
1852				'\uD83C\uDDE8\uD83C\uDDF6', // as the sequence of two code points
1853				'\uD83C\uDDE8\u200B\uD83C\uDDF6' // as the two code points separated by a zero-width space
1854			);
1855
1856			if ( isIdentical ) {
1857				return false;
1858			}
1859
1860			/*
1861			 * Test for English flag compatibility. England is a country in the United Kingdom, it
1862			 * does not have a two letter locale code but rather a five letter sub-division code.
1863			 *
1864			 * To test for support, we try to render it, and compare the rendering to how it would look if
1865			 * the browser doesn't render it correctly (black flag emoji + [G] + [B] + [E] + [N] + [G]).
1866			 */
1867			isIdentical = emojiSetsRenderIdentically(
1868				context,
1869				// as the flag sequence
1870				'\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67\uDB40\uDC7F',
1871				// with each code point separated by a zero-width space
1872				'\uD83C\uDFF4\u200B\uDB40\uDC67\u200B\uDB40\uDC62\u200B\uDB40\uDC65\u200B\uDB40\uDC6E\u200B\uDB40\uDC67\u200B\uDB40\uDC7F'
1873			);
1874
1875			return ! isIdentical;
1876		case 'emoji':
1877			/*
1878			 * Is there a large, hairy, humanoid mythical creature living in the browser?
1879			 *
1880			 * To test for Emoji 17.0 support, try to render a new emoji: Hairy Creature.
1881			 *
1882			 * The hairy creature emoji is a single code point emoji. Testing for browser
1883			 * support required testing the center point of the emoji to see if it is empty.
1884			 *
1885			 * 0xD83E 0x1FAC8 (\uD83E\u1FAC8) == 🫈 Hairy creature.
1886			 *
1887			 * When updating this test, please ensure that the emoji is either a single code point
1888			 * or switch to using the emojiSetsRenderIdentically function and testing with a zero-width
1889			 * joiner vs a zero-width space.
1890			 */
1891			const notSupported = emojiRendersEmptyCenterPoint( context, '\uD83E\u1FAC8' );
1892			return ! notSupported;
1893	}
1894
1895	return false;
1896}
1897
1898/**
1899 * Checks emoji support tests.
1900 *
1901 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
1902 * scope. Everything must be passed by parameters.
1903 *
1904 * @since 6.3.0
1905 *
1906 * @private
1907 *
1908 * @param {string[]} tests Tests.
1909 * @param {Function} browserSupportsEmoji Reference to browserSupportsEmoji function, needed due to minification.
1910 * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification.
1911 * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification.
1912 *
1913 * @return {SupportTests} Support tests.
1914 */
1915function testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) {
1916	let canvas;
1917	if (
1918		typeof WorkerGlobalScope !== 'undefined' &&
1919		self instanceof WorkerGlobalScope
1920	) {
1921		canvas = new OffscreenCanvas( 300, 150 ); // Dimensions are default for HTMLCanvasElement.
1922	} else {
1923		canvas = document.createElement( 'canvas' );
1924	}
1925
1926	const context = canvas.getContext( '2d', { willReadFrequently: true } );
1927
1928	/*
1929	 * Chrome on OS X added native emoji rendering in M41. Unfortunately,
1930	 * it doesn't work when the font is bolder than 500 weight. So, we
1931	 * check for bold rendering support to avoid invisible emoji in Chrome.
1932	 */
1933	context.textBaseline = 'top';
1934	context.font = '600 32px Arial';
1935
1936	const supports = {};
1937	tests.forEach( ( test ) => {
1938		supports[ test ] = browserSupportsEmoji( context, test, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint );
1939	} );
1940	return supports;
1941}
1942
1943/**
1944 * Adds a script to the head of the document.
1945 *
1946 * @ignore
1947 *
1948 * @since 4.2.0
1949 *
1950 * @param {string} src The url where the script is located.
1951 *
1952 * @return {void}
1953 */
1954function addScript( src ) {
1955	const script = document.createElement( 'script' );
1956	script.src = src;
1957	script.defer = true;
1958	document.head.appendChild( script );
1959}
1960
1961settings.supports = {
1962	everything: true,
1963	everythingExceptFlag: true
1964};
1965
1966// Obtain the emoji support from the browser, asynchronously when possible.
1967new Promise( ( resolve ) => {
1968	let supportTests = getSessionSupportTests();
1969	if ( supportTests ) {
1970		resolve( supportTests );
1971		return;
1972	}
1973
1974	if ( supportsWorkerOffloading() ) {
1975		try {
1976			// Note that the functions are being passed as arguments due to minification.
1977			const workerScript =
1978				'postMessage(' +
1979				testEmojiSupports.toString() +
1980				'(' +
1981				[
1982					JSON.stringify( tests ),
1983					browserSupportsEmoji.toString(),
1984					emojiSetsRenderIdentically.toString(),
1985					emojiRendersEmptyCenterPoint.toString()
1986				].join( ',' ) +
1987				'));';
1988			const blob = new Blob( [ workerScript ], {
1989				type: 'text/javascript'
1990			} );
1991			const worker = new Worker( URL.createObjectURL( blob ), { name: 'wpTestEmojiSupports' } );
1992			worker.onmessage = ( event ) => {
1993				supportTests = event.data;
1994				setSessionSupportTests( supportTests );
1995				worker.terminate();
1996				resolve( supportTests );
1997			};
1998			return;
1999		} catch ( e ) {}
2000	}
2001
2002	supportTests = testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint );
2003	setSessionSupportTests( supportTests );
2004	resolve( supportTests );
2005} )
2006	// Once the browser emoji support has been obtained from the session, finalize the settings.
2007	.then( ( supportTests ) => {
2008		/*
2009		 * Tests the browser support for flag emojis and other emojis, and adjusts the
2010		 * support settings accordingly.
2011		 */
2012		for ( const test in supportTests ) {
2013			settings.supports[ test ] = supportTests[ test ];
2014
2015			settings.supports.everything =
2016				settings.supports.everything && settings.supports[ test ];
2017
2018			if ( 'flag' !== test ) {
2019				settings.supports.everythingExceptFlag =
2020					settings.supports.everythingExceptFlag &&
2021					settings.supports[ test ];
2022			}
2023		}
2024
2025		settings.supports.everythingExceptFlag =
2026			settings.supports.everythingExceptFlag &&
2027			! settings.supports.flag;
2028
2029		// When the browser can not render everything we need to load a polyfill.
2030		if ( ! settings.supports.everything ) {
2031			const src = settings.source || {};
2032
2033			if ( src.concatemoji ) {
2034				addScript( src.concatemoji );
2035			} else if ( src.wpemoji && src.twemoji ) {
2036				addScript( src.twemoji );
2037				addScript( src.wpemoji );
2038			}
2039		}
2040	} );
2041//# sourceURL=https://www.rippleworks.org/wp-includes/js/wp-emoji-loader.js
2042</script>
2042
2043</body>
2044</html>
2045
2046<!--
2047Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin
2048
2049Page Caching using Disk: Enhanced 
2050
2051Served from: www.rippleworks.org @ 2026-09-28 10:03:23 by W3 Total Cache
2052-->

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.