1<!doctype html> 2<html lang="en-ZA"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1"> 6 <link rel="profile" href="https://gmpg.org/xfn/11"> 7 <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> 8 9 <!-- This site is optimized with the Yoast SEO plugin v28.4 - https://yoast.com/product/yoast-seo-wordpress/ --> 10 <title>Thrive by Five Index South Africa</title> 11 <meta name="description" content="South Africaâs Thriveâ¯byâ¯Five Index measures early learning, growth & socio-emotional development to guide action." /> 12 <link rel="canonical" href="https://thrivebyfive.co.za/" /> 13 <meta property="og:locale" content="en_US" /> 14 <meta property="og:type" content="website" /> 15 <meta property="og:title" content="Thrive by Five Index South Africa" /> 16 <meta property="og:description" content="South Africaâs Thriveâ¯byâ¯Five Index measures early learning, growth & socio-emotional development to guide action." /> 17 <meta property="og:url" content="https://thrivebyfive.co.za/" /> 18 <meta property="og:site_name" content="Thrive by Five Index" /> 19 <meta property="article:modified_time" content="2026-09-11T18:29:24+00:00" /> 20 <meta property="og:image" content="https://thrivebyfive.co.za/wp-content/uploads/2025/08/TB5-BrandGuideline-UpdatedJuly2025-07-31-2025_03_08_PM-Photoroom-1-2.png" /> 21 <meta property="og:image:width" content="870" /> 22 <meta property="og:image:height" content="319" /> 23 <meta property="og:image:type" content="image/png" /> 24 <meta name="twitter:card" content="summary_large_image" /> 25
25<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/thrivebyfive.co.za\/","url":"https:\/\/thrivebyfive.co.za\/","name":"Thrive by Five Index South Africa","isPartOf":{"@id":"https:\/\/thrivebyfive.co.za\/#website"},"about":{"@id":"https:\/\/thrivebyfive.co.za\/#organization"},"primaryImageOfPage":{"@id":"https:\/\/thrivebyfive.co.za\/#primaryimage"},"image":{"@id":"https:\/\/thrivebyfive.co.za\/#primaryimage"},"thumbnailUrl":"https:\/\/thrivebyfive.co.za\/wp-content\/uploads\/2025\/08\/TB5-BrandGuideline-UpdatedJuly2025-07-31-2025_03_08_PM-Photoroom-1-2.png","datePublished":"2025-08-06T14:30:25+00:00","dateModified":"2026-09-11T18:29:24+00:00","description":"South Africaâs Thriveâ¯byâ¯Five Index measures early learning, growth & socio-emotional development to guide action.","breadcrumb":{"@id":"https:\/\/thrivebyfive.co.za\/#breadcrumb"},"inLanguage":"en-ZA","potentialAction":[{"@type":"ReadAction","target":["https:\/\/thrivebyfive.co.za\/"]}]},{"@type":"ImageObject","inLanguage":"en-ZA","@id":"https:\/\/thrivebyfive.co.za\/#primaryimage","url":"https:\/\/thrivebyfive.co.za\/wp-content\/uploads\/2025\/08\/TB5-BrandGuideline-UpdatedJuly2025-07-31-2025_03_08_PM-Photoroom-1-2.png","contentUrl":"https:\/\/thrivebyfive.co.za\/wp-content\/uploads\/2025\/08\/TB5-BrandGuideline-UpdatedJuly2025-07-31-2025_03_08_PM-Photoroom-1-2.png","width":870,"height":319},{"@type":"BreadcrumbList","@id":"https:\/\/thrivebyfive.co.za\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home"}]},{"@type":"WebSite","@id":"https:\/\/thrivebyfive.co.za\/#website","url":"https:\/\/thrivebyfive.co.za\/","name":"Thrive by Five Index","description":"","publisher":{"@id":"https:\/\/thrivebyfive.co.za\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/thrivebyfive.co.za\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-ZA"},{"@type":"Organization","@id":"https:\/\/thrivebyfive.co.za\/#organization","name":"Thrive by Five Index","url":"https:\/\/thrivebyfive.co.za\/","logo":{"@type":"ImageObject","inLanguage":"en-ZA","@id":"https:\/\/thrivebyfive.co.za\/#\/schema\/logo\/image\/","url":"https:\/\/thrivebyfive.co.za\/wp-content\/uploads\/2025\/08\/logo.png","contentUrl":"https:\/\/thrivebyfive.co.za\/wp-content\/uploads\/2025\/08\/logo.png","width":270,"height":130,"caption":"Thrive by Five Index"},"image":{"@id":"https:\/\/thrivebyfive.co.za\/#\/schema\/logo\/image\/"}}]}</script>
25 26 <!-- / Yoast SEO plugin. --> 27 28 29<link rel='dns-prefetch' href='//static.addtoany.com' /> 30<link rel='dns-prefetch' href='//www.googletagmanager.com' /> 31<link rel="alternate" type="application/rss+xml" title="Thrive by Five Index » Feed" href="https://thrivebyfive.co.za/feed/" /> 32<link rel="alternate" type="application/rss+xml" title="Thrive by Five Index » Comments Feed" href="https://thrivebyfive.co.za/comments/feed/" /> 33<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://thrivebyfive.co.za/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fthrivebyfive.co.za%2F" /> 34<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://thrivebyfive.co.za/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fthrivebyfive.co.za%2F&format=xml" /> 35<style id="wp-img-auto-sizes-contain-inline-css"> 36img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 37/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 38</style> 39<style id="wp-emoji-styles-inline-css"> 40 41 img.wp-smiley, img.emoji { 42 display: inline !important; 43 border: none !important; 44 box-shadow: none !important; 45 height: 1em !important; 46 width: 1em !important; 47 margin: 0 0.07em !important; 48 vertical-align: -0.1em !important; 49 background: none !important; 50 padding: 0 !important; 51 } 52/*# sourceURL=wp-emoji-styles-inline-css */ 53</style> 54<style id="global-styles-inline-css"> 55: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,0) 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%);
55--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%;}:root { --wp--style--global--content-size: 800px;--wp--style--global--wide-size: 1200px; }:where(body) { margin: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.wp-site-blocks) > * { margin-block-start: 24px; margin-block-end: 0; }:where(.wp-site-blocks) > :first-child { margin-block-start: 0; }:where(.wp-site-blocks) > :last-child { margin-block-end: 0; }:root { --wp--style--block-gap: 24px; }:root :where(.is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.is-layout-flow) > *{margin-block-start: 24px;margin-block-end: 0;}:root :where(.is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.is-layout-constrained) > *{margin-block-start: 24px;margin-block-end: 0;}:root :where(.is-layout-flex){gap: 24px;}:root :where(.is-layout-grid){gap: 24px;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}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;}
55.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;} 56:root :where(.wp-block-icon svg){width: 24px;} 57:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} 58/*# sourceURL=global-styles-inline-css */ 59</style> 60<link rel='stylesheet' id='hello-elementor-parent-style-css' href='https://thrivebyfive.co.za/wp-content/themes/hello-elementor/style.css?ver=7.1.2' media='all' /> 61<link rel='stylesheet' id='hello-elementor-child-style-css' href='https://thrivebyfive.co.za/wp-content/themes/hello-elementor-child-1/style.css?ver=1.0.0' media='all' /> 62<link rel='stylesheet' id='hello-elementor-css' href='https://thrivebyfive.co.za/wp-content/themes/hello-elementor/assets/css/reset.css?ver=3.4.4' media='all' /> 63<link rel='stylesheet' id='hello-elementor-theme-style-css' href='https://thrivebyfive.co.za/wp-content/themes/hello-elementor/assets/css/theme.css?ver=3.4.4' media='all' /> 64<link rel='stylesheet' id='hello-elementor-header-footer-css' href='https://thrivebyfive.co.za/wp-content/themes/hello-elementor/assets/css/header-footer.css?ver=3.4.4' media='all' /> 65<link rel='stylesheet' id='elementor-frontend-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/css/custom-frontend.min.css?ver=1790102696' media='all' /> 66<link rel='stylesheet' id='elementor-post-7-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/css/post-7.css?ver=1790102696' media='all' /> 67<link rel='stylesheet' id='widget-image-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/css/widget-image.min.css?ver=4.2.4' media='all' /> 68<link rel='stylesheet' id='widget-heading-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/css/widget-heading.min.css?ver=4.2.4' media='all' /> 69<link rel='stylesheet' id='widget-divider-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/css/widget-divider.min.css?ver=4.2.4' media='all' /> 70<link rel='stylesheet' id='widget-icon-list-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/css/custom-widget-icon-list.min.css?ver=1790102696' media='all' /> 71<link rel='stylesheet' id='e-animation-fadeIn-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/lib/animations/styles/fadeIn.min.css?ver=4.2.4' media='all' /> 72<link rel='stylesheet' id='widget-mega-menu-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/css/custom-pro-widget-mega-menu.min.css?ver=1790102696' media='all' /> 73<link rel='stylesheet' id='widget-nav-menu-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/css/custom-pro-widget-nav-menu.min.css?ver=1790102696' media='all' /> 74<link rel='stylesheet' id='e-animation-fadeInRight-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/lib/animations/styles/fadeInRight.min.css?ver=4.2.4' media='all' /> 75<link rel='stylesheet' id='e-animation-fadeInUp-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/lib/animations/styles/fadeInUp.min.css?ver=4.2.4' media='all' /> 76<link rel='stylesheet' id='e-shapes-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/css/conditionals/shapes.min.css?ver=4.2.4' media='all' /> 77<link rel='stylesheet' id='widget-video-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/css/widget-video.min.css?ver=4.2.4' media='all' /> 78<link rel='stylesheet' id='widget-posts-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor-pro/assets/css/widget-posts.min.css?ver=4.2.3' media='all' /> 79<link rel='stylesheet' id='widget-spacer-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/css/widget-spacer.min.css?ver=4.2.4' media='all' /> 80<link rel='stylesheet' id='e-animation-fadeInLeft-css' href='https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/lib/animations/styles/fadeInLeft.min.css?ver=4.2.4' media='all' /> 81<link rel='stylesheet' id='widget-flip-box-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/css/custom-pro-widget-flip-box.min.css?ver=1790102696' media='all' /> 82<link rel='stylesheet' id='elementor-post-13-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/css/post-13.css?ver=1790106965' media='all' /> 83<link rel='stylesheet' id='elementor-post-6277-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/css/post-6277.css?ver=1790102697' media='all' /> 84<link rel='stylesheet' id='elementor-post-18-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/css/post-18.css?ver=1790102697' media='all' /> 85<link rel='stylesheet' id='addtoany-css' href='https://thrivebyfive.co.za/wp-content/plugins/add-to-any/addtoany.min.css?ver=1.16' media='all' /> 86<link rel='stylesheet' id='elementor-gf-local-baloo2-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/google-fonts/css/baloo2.css?ver=1757253869' media='all' /> 87<link rel='stylesheet' id='elementor-gf-local-baloobhai2-css' href='https://thrivebyfive.co.za/wp-content/uploads/elementor/google-fonts/css/baloobhai2.css?ver=1757253873' media='all' />
88<script id="addtoany-core-js-before"> 89window.a2a_config=window.a2a_config||{};a2a_config.callbacks=[];a2a_config.overlays=[];a2a_config.templates={};a2a_localize = { 90 Share: "Share", 91 Save: "Save", 92 Subscribe: "Subscribe", 93 Email: "Email", 94 Bookmark: "Bookmark", 95 ShowAll: "Show All", 96 ShowLess: "Show less", 97 FindServices: "Find service(s)", 98 FindAnyServiceToAddTo: "Instantly find any service to add to", 99 PoweredBy: "Powered by", 100 ShareViaEmail: "Share via email", 101 SubscribeViaEmail: "Subscribe via email", 102 BookmarkInYourBrowser: "Bookmark in your browser", 103 BookmarkInstructions: "Press Ctrl+D or \u2318+D to bookmark this page", 104 AddToYourFavorites: "Add to your favourites", 105 SendFromWebOrProgram: "Send from any email address or email program", 106 EmailProgram: "Email program", 107 More: "More…", 108 ThanksForSharing: "Thanks for sharing!", 109 ThanksForFollowing: "Thanks for following!" 110}; 111 112 113//# sourceURL=addtoany-core-js-before 114</script>
vendor: 1 bytes, line 114
114
115<script id="addtoany-core-js" defer src="https://static.addtoany.com/menu/page.js"></script>
vendor: 1 bytes, line 115
115
116<script id="jquery-core-js" src="https://thrivebyfive.co.za/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
vendor: 1 bytes, line 116
116
117<script id="jquery-migrate-js" src="https://thrivebyfive.co.za/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
vendor: 1 bytes, line 117
117
118<script id="addtoany-jquery-js" defer src="https://thrivebyfive.co.za/wp-content/plugins/add-to-any/addtoany.min.js?ver=1.1"></script>
118 119 120<!-- Google tag (gtag.js) snippet added by Site Kit --> 121<!-- Google Analytics snippet added by Site Kit -->
vendor: 80 bytes, lines 121-122
121 122<script id="google_gtagjs-js" src="https://www.googletagmanager.com/gtag/js?id=
122GT-5DGKHKR4
vendor: 18 bytes, line 122
122" async></script>
123<script id="google_gtagjs-js-after"> 124window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);} 125gtag("set","linker",{"domains":["thrivebyfive.co.za"]}); 126gtag("js", new Date()); 127gtag("set", "developer_id.dZTNiMT", true); 128gtag("config", "GT-5DGKHKR4"); 129 window._googlesitekit = window._googlesitekit || {}; window._googlesitekit.throttledEvents = []; window._googlesitekit.gtagEvent = (name, data) => { var key = JSON.stringify( { name, data } ); if ( !! window._googlesitekit.throttledEvents[ key ] ) { return; } window._googlesitekit.throttledEvents[ key ] = true; setTimeout( () => { delete window._googlesitekit.throttledEvents[ key ]; }, 5 ); gtag( "event", name, { ...data, event_source: "site-kit" } ); }; 130//# sourceURL=google_gtagjs-js-after 131</script>
131 132<link rel="https://api.w.org/" href="https://thrivebyfive.co.za/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://thrivebyfive.co.za/wp-json/wp/v2/pages/13" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://thrivebyfive.co.za/xmlrpc.php?rsd" /> 133<meta name="generator" content="WordPress 7.1.2" /> 134<link rel='shortlink' href='https://thrivebyfive.co.za/' /> 135<meta name="generator" content="Site Kit by Google 1.187.0" /><meta name="generator" content="Elementor 4.2.4; features: e_font_icon_svg, additional_custom_breakpoints; settings: css_print_method-external, google_font-enabled, font_display-swap">
136<script> 137jQuery(document).ready(function ($) { 138 // When category select changes 139 $(document).on("change", ".jet-select__control.depth-1", function () { 140 let catId = $(this).val(); // selected category ID 141 let descBox = $("#category-description"); 142 143 if (catId) { 144 // Fetch description via AJAX (WordPress REST API) 145 $.ajax({ 146 url: wpApiSettings.root + "wp/v2/categories/" + catId, 147 method: "GET", 148 beforeSend: function (xhr) { 149 xhr.setRequestHeader("X-WP-Nonce", wpApiSettings.nonce); 150 }, 151 success: function (response) { 152 if (response && response.description) { 153 descBox.html(response.description); 154 } else { 155 descBox.html("<p>No description available.</p>"); 156 } 157 }, 158 }); 159 } else { 160 descBox.html(""); // clear if nothing selected 161 } 162 }); 163}); 164</script>
164 165 166 167<!-- shareable custom social media content to image --> 168
169<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js"></script>
169 170<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"> 171
172<script> 173let cachedImageUrl = null; // cache uploaded image 174 175// Generate + upload tab image 176function generateTabImage() { 177 let tab = document.querySelector(".tab-right-content-container .tab.tab-active"); 178 if (!tab) return; 179 180 html2canvas(tab, { scale: 2, useCORS: true }).then(canvas => { 181 let image = canvas.toDataURL("image/png"); 182 183 // Upload once to WP 184 jQuery.post(tabShare.ajaxurl, { 185 action: "upload_tab_image", 186 image: image 187 }, function(response) { 188 if (response.success) { 189 cachedImageUrl = response.data.url; // store uploaded URL 190 console.log("Image cached:", cachedImageUrl); 191 } else { 192 console.error("Upload failed!"); 193 } 194 }); 195 }); 196} 197 198// Share instantly using cached URL 199function shareTab(platform) { 200 if (!cachedImageUrl) { 201 alert("Please wait, preparing image..."); 202 generateTabImage(); 203 return; 204 } 205 206 let shareUrl = ""; 207 let encoded = encodeURIComponent(cachedImageUrl); 208 209 if (platform === "whatsapp") { 210 shareUrl = "https://wa.me/?text=" + encoded; 211 } else if (platform === "twitter") { 212 shareUrl = "https://twitter.com/intent/tweet?url=" + encoded; 213 } else if (platform === "linkedin") { 214 shareUrl = "https://www.linkedin.com/sharing/share-offsite/?url=" + encoded; 215 } 216 217 window.open(shareUrl, "_blank"); 218} 219 220// Pre-generate on page load 221window.addEventListener("load", generateTabImage); 222 223// Optionally regenerate if tab changes (if you have tab switching logic, call generateTabImage() there) 224</script>
224 225 226
227<script> 228/*document.addEventListener("DOMContentLoaded", function() { 229 let toggleBtn = document.querySelector(".share-toggle"); 230 let shareIcons = document.querySelector(".share-icons"); 231 232 toggleBtn.addEventListener("click", function() { 233 shareIcons.style.display = 234 (shareIcons.style.display === "flex") ? "none" : "flex"; 235 }); 236});*/ 237</script>
vendor: 2 bytes, line 237
237
238<script> 239document.addEventListener("DOMContentLoaded", function() { 240 document.querySelectorAll(".share-container").forEach(container => { 241 let toggleBtn = container.querySelector(".share-toggle"); 242 let shareIcons = container.querySelector(".share-icons"); 243 244 toggleBtn.addEventListener("click", function() { 245 shareIcons.style.display = 246 (shareIcons.style.display === "flex") ? "none" : "flex"; 247 }); 248 }); 249}); 250</script>
250 251 252<style> 253.share-container { 254 position: relative; 255 display: inline-block; 256} 257 258.share-container .share-toggle { 259 background: unset; 260 border: 2px solid #049D9C; 261 color: #049D9C; 262 border-radius: 8px; 263 padding: 6px 12px; 264 cursor: pointer; 265 font-size: 14px; 266} 267 268.share-container .share-icons { 269 display: none; /* hidden by default */ 270 margin-top: 10px; 271 gap: 10px; 272} 273 274.share-container .share-icons button { 275 background: #fff; 276 border: none; 277 cursor: pointer; 278 font-size: 22px; 279 color: #555; 280 transition: transform 0.2s, color 0.2s; 281} 282 283.share-container .share-icons button:hover { 284 transform: scale(1.2); 285 color: #0077b5; /* LinkedIn blue as hover example */ 286} 287 288</style> 289<style> 290 291/* DATA INTERFACE */ 292 293.progressApp { 294 max-width: 1170px; 295 margin: 0 auto; 296 font-family: "Roboto", sans-serif; 297} 298.progressApp .topBlock { 299 padding: 66px 80px 42px 80px; 300 /* background-color: #009999; */ 301 margin-bottom: 18px; 302 display: flex; 303 flex-direction: column; 304 justify-content: center; 305 align-items: center; 306 /*color: white; */ 307 color: #000; 308 border-radius: 6px; 309} 310.progressApp .topBlock .title { 311 font-size: 30px; 312 margin-bottom: 10px; 313} 314.progressApp .topBlock .text { 315 text-align: center; 316 max-width: 570px; 317 margin-bottom: 30px; 318} 319.progressApp .topBlock .charts { 320 display: flex; 321 justify-content: space-between; 322 width: 100%; 323} 324.progressApp .topBlock .charts .chart { 325 padding: 20px; 326/* background-color: #007d7d; 327 background: #fff; */ 328 width: calc(33.3333333333% - 10px); 329 box-sizing: border-box; 330 display: flex; 331 flex-direction: column; 332 align-items: start; 333 border-radius: 6px; 334 text-align: left; 335} 336.progressApp .topBlock .charts .chart .chartTitle { 337 font-size: 20px; 338 font-weight: bold; 339 margin-bottom: 16px; 340} 341#chartTitle { 342 margin: 16px; 343} 344.progressApp .topBlock .charts .chart .chartText { 345 text-align: left; 346} 347.infoIcon { 348 min-width: 20px; 349 width: 20px; 350 height: 20px; 351 border-radius: 50%; 352 background-color: #0b7979; 353 color: white; 354 cursor: pointer; 355 display: flex; 356 justify-content: center; 357 align-items: start; 358 margin-left: 6px; 359 font-size: 12px; 360 position: relative; 361} 362.infoIcon:after { 363 content: "i"; 364 margin-top: 2px; 365 font-weight: bold; 366 line-height: 18px; 367} 368.infoIcon:hover .infoText { 369 display: block; 370} 371.infoText { 372 z-index: 3; 373 display: none; 374 position: absolute; 375 width: 172px; 376 left: 32px; 377 background: #009999; 378 padding: 10px 15px; 379 font-size: 13px; 380 border-radius: 5px; 381 color: #fff; 382 cursor: default; 383 line-height:normal; 384 top: 50%; 385 transform: translate(0, -50%); 386} 387.infoText::before { 388 content: ''; 389 position: absolute; 390 left: 0%; 391 top: 50%; 392 width: 0; 393 height: 0; 394 margin-top: -10px; 395 border-top: 10px solid transparent; 396 border-bottom: 10px solid transparent; 397 border-right: 10px solid #009999; 398 margin-left: -10px; 399} 400.progressApp .middleBlock { 401 display: flex; 402 text-align: left; 403} 404.progressApp .middleBlock_left { 405 flex-grow: 1; 406} 407.progressApp .middleBlock_right { 408 width: 375px; 409 min-width: 375px; 410 background-color: #eef2f5; 411} 412.progressApp .middleBlock_right .filters { 413 width: 100%; 414 display: flex; 415 flex-direction: column; 416 padding: 20px 26px; 417 font-weight: bold; 418 box-sizing: border-box; 419} 420.progressApp .middleBlock_right .filters .separator { 421 margin-top: 20px; 422} 423.progressApp .middleBlock_right .filters .select { 424 width: 100%; 425 box-sizing: border-box; 426 margin-top: 8px; 427 margin-bottom: 12px; 428} 429.progressApp .middleBlock_right .filters .select select { 430 width: 100%; 431 box-sizing: border-box; 432 height: 38px; 433 background-color: #dde6eb; 434 border-color: transparent; 435 outline: none; 436 color: black; 437} 438.progressApp .middleBlock_right .filters .button { 439 display: flex; 440 justify-content: center; 441} 442.progressApp .middleBlock_right .filters .button .btn { 443 width: 190px; 444 height: 40px; 445 border-radius: 3px; 446 cursor: pointer; 447 transition: 0.3s ease-in-out; 448 background-color: #7f5584; 449 color: white; 450 display: flex; 451 justify-content: center; 452 align-items: center; 453 margin-top: 20px; 454} 455.progressApp .middleBlock_right .filters .button .btn:hover { 456 opacity: 0.8; 457} 458.progressApp .middleBlock_right .filters .radioInput { 459 display: flex; 460 align-items: center; 461 margin-bottom: 10px; 462 cursor: pointer; 463} 464.progressApp .middleBlock_right .filters .radioInput input { 465 margin: 0;
466 width: 20px; 467 height: 20px; 468 border: 1px solid #34647a; 469} 470.progressApp .middleBlock_right .filters .radioInput input:checked { 471/* border-color: red; */ 472 accent-color: #34647a; 473} 474 475 /* RADIO BUTTONS */ 476.progressApp .middleBlock_right .filters .radioInput input:checked:after { 477/* width: 14px; 478 height: 14px; 479 border-radius: 15px; 480 top: 2px; 481 left: 2px; 482 position: relative; 483 background-color: #34647a; 484 content: ""; 485 display: inline-block; 486 visibility: visible; 487 border: 1px solid white; */ 488} 489.progressApp .middleBlock_right .filters .radioInput span { 490 font-size: 14px; 491 margin-left: 6px; 492} 493.progressApp .middleBlock_right .filters > div { 494 width: 100%; 495} 496.progressApp .middleBlock_right .filters .subtitle { 497 font-size: 16px; 498 font-weight: bold; 499 margin-bottom: 16px; 500 display: flex; 501 align-items: center; 502 color: #34647a; 503} 504.progressApp .middleBlock_right .filters .subtitle_small { 505 font-size: 12px; 506} 507.progressApp .middleBlock_right .filters .subtitle_small.margin { 508 margin-top: 24px; 509 margin-bottom: 12px; 510} 511.progressApp .middleBlock_right .title { 512 background-color: #007d7d; 513 padding: 30px 20px; 514 color: white; 515 border-radius: 0 6px 0 0; 516} 517.progressApp .middleBlock_right .title .big { 518 font-size: 20px; 519 font-weight: bold; 520 margin-bottom: 18px; 521} 522.progressApp .middleBlock_right .title .text { 523 font-size: 12px; 524 line-height: 20px; 525} 526.progressApp .botCharts { 527 width: 100%; 528 min-height: 310px; 529 /* border: 1px solid #c1c1c1; */ 530 box-sizing: border-box; 531 border-radius: 6px; 532} 533.moreFilters { 534 display: none; 535} 536.mb-20 { 537 margin-bottom: 20px; 538} 539.px-35 { 540 padding: 0 35px; 541} 542.bg-skyblue { 543/* background-color: #f3fbfe; */ 544 background: #fff; 545 margin-top: 15px; 546 border: 1px solid #a0a0a0; 547 border-radius: 6px; 548} 549.progressApp .map { 550 /* height: 600px; */ 551 margin-bottom: 20px; 552 display: flex; 553 justify-content: center; 554 align-items: center; 555 position: relative; 556} 557.progressApp .map .riskBar { 558 position: absolute; 559 right: 34px; 560 bottom: 60px; 561 display: flex; 562 align-items: center; 563} 564.progressApp .map .riskBar .bar { 565 width: 212px; 566 height: 15px; 567 margin: 0 6px; 568 background: linear-gradient(90deg, #e34f09 0%, #a4cfe2 100%); 569 border-radius: 2px; 570} 571.progressApp .map .title { 572 position: absolute; 573 left: 34px; 574 top: 30px; 575 font-size: 22px; 576 display: flex; 577 flex-direction: column; 578 color: black; 579 font-weight: bold; 580} 581.progressApp .map .title .small { 582 font-size: 16px; 583 font-weight: normal; 584} 585.progressApp .map svg { 586 max-width: 800px; 587 width: 80%; 588 margin: 40px auto; 589} 590.progressApp .map svg path { 591 transition: 0.3s ease-in-out; 592 cursor: pointer; 593} 594 595.progressApp .map svg path:hover { 596 fill: #058787 !important; 597} 598 599.map #FS { 600 fill: #cd9a02; 601 /* fill: #049d9c; */ 602} 603.map #KZ { 604 fill: #4ad300; 605 /* fill: #58a8a9; */ 606} 607.map #MP { 608 fill: #ff970a; 609 /* fill: #66c2c2; */ 610} 611.map #NP { 612 fill: #81429d; 613 /* fill: #66c2c2; */ 614} 615.map #GT { 616 fill: #ffca00; 617 /* fill: #009999;*/ 618} 619.map #NW { 620 fill: #00a39e; 621 /* fill: #66c2c2;*/ 622} 623.map #NC { 624 fill: #007882; 625 /* fill: #f25a22;*/ 626} 627.map #EC { 628 fill: #fd2900; 629 /*fill: #8bce03;*/ 630} 631.map #WC { 632 fill: #628402; 633 /* fill: #d59f06;*/ 634} 635.map-color-indicator ul { 636 display: flex; 637 flex-wrap: wrap; 638} 639.map-color-indicator ul li { 640 font-size: 14px; 641 margin: 3px 30px 3px 0; 642} 643.map-ind { 644 width: 16px; 645 height: 12px; 646 display: inline-block; 647} 648.map-ind-color5 { 649 background: #009999; 650} 651.map-ind-color4 { 652 background: #58a8a9; 653} 654.map-ind-color3 { 655 background: #66c2c2; 656} 657.map-ind-color2 { 658 background: #99d6d6; 659} 660.map-ind-color1 { 661 background: #ccebeb; 662} 663 664.map-tooltip { 665 pointer-events: none; 666 position: absolute; 667 font-size: 16px; 668 text-align: center; 669 background: #fff; 670 padding: 10px 15px; 671 z-index: 5; 672 height: auto; 673 width: 200px; 674 line-height: 22px; 675 margin: 0 auto; 676 color: #000; 677 border-radius: 5px; 678 box-shadow: 0 0 0 1px #eee; 679 transform: translateX(-50%); 680 display: none; 681} 682.map-tooltip.active { 683 display: block 684} 685.map-tooltip:after { 686 content: ''; 687 position: absolute; 688 left: 50%; 689 top: 100%; 690 width: 0; 691 height: 0; 692 margin-left: -10px; 693 border-left: 10px solid transparent; 694 border-right: 10px solid transparent; 695 border-top: 10px solid white; 696} 697 698/*# sourceMappingURL=main.css.map */ 699 700body { 701 font-family: 'HelveticaNeueLT', sans-serif; 702} 703.d-flex { 704 display: flex; 705} 706.align-items-center { 707 align-items: center; 708} 709.sidebar { 710 width: 25%; 711} 712#options { 713 list-style: none; 714 padding: 0; 715 margin: 0; 716} 717#options li { 718 padding: 5px 0; 719 text-transform: capitalize; 720} 721.doughnutChart{max-width: 300px !important;} 722.chart-wrapper canvas { margin: 20px auto 30px; width: 100% !important; height: 400px; max-width: 400px;} 723.chart-wrapper canvas.bar-chart { height: 350px; max-width: 600px;} 724.option-text, .filters {display: none;} 725 726.popup-modal { 727 display: none; 728 width: 100%; 729 height: 100%; 730 position: fixed; 731 z-index: 99999; 732 background: rgba(0, 0, 0, 0.60); 733 top: 0; 734 left: 0; 735 border: 20px solid transparent; 736} 737.popup-modal-inner { 738 background: #fff; 739 position: fixed; 740 max-width: 100%; 741 width: 90%; 742 max-height: 90%; 743 top: 50%; 744 left: 50%; 745 padding: 30px; 746 transform: translate(-50%, -50%); 747 transition: all 0.3s; 748 margin: auto; 749 overflow: auto; 750} 751.close-popup { 752 position: absolute; 753 top: 15px; 754 right: 30px; 755 cursor: pointer; 756 width: 30px; 757 height: 30px; 758 padding: 10px; 759} 760.close-popup::before, .close-popup::after { 761 position: absolute; 762 content: ""; 763 border-radius: 4px; 764 width: 4px; 765 height: 25px; 766 background: rgba(0, 0, 0, 0.60); 767 top: 5px; 768 left: 13px; 769} 770.close-popup::before { 771 transform: rotate(45deg); 772} 773.close-popup::after { 774 transform: rotate(135deg); 775} 776.popup-modal-inner h2 { 777 margin: 0 0 10px; 778 font-weight: bold; 779} 780.popup-modal-inner p { 781 margin: 0 0 10px; 782} 783.table-sec { 784 margin: 20px 0; 785} 786.table-sec p { 787 background: #009999; 788 color: #fff; 789 padding: 10px 20px; 790 font-size: 16px; 791 margin: 0; 792 display: inline-block; 793 letter-spacing: 1px; 794} 795.table-stats { 796 text-align: center; 797 border-collapse: collapse; 798} 799.table-stats tr th { 800 background: #ddd; 801 border: 1px solid #d3d3d3; 802 font-size: 14px; 803} 804.table-stats tr td { 805 padding: 8px 30px; 806 border: 1px solid #eee; 807 min-width: 90px; 808} 809.chart-img { 810 margin: 10px auto; 811} 812.chart-img img { 813 max-width: 100%; 814} 815.table-wrapper { 816 overflow: auto; 817} 818.w-100 { 819 width: 100%; 820} 821 822@media (max-width: 650px) { 823.infoText { 824 bottom: 30px; 825 top: auto; 826 transform: translate(-50%, 0); 827} 828.infoText::before { 829 transform: rotate(-90deg); 830 left: 0; 831 right: 30px; 832 margin: auto; 833 bottom: 0; 834 top: calc(100% + 9px); 835} 836} 837@media (max-width: 992px) { 838 .graphSection { 839 flex-direction: column; 840 } 841 .progressApp .middleBlock_right { 842 min-width: auto; 843 width: 100%; 844 } 845 .progressApp .middleBlock_right .title { 846 border-radius: 6px 6px 0 0; 847 } 848} 849 850@media (max-width: 767px) { 851 .progressApp .topBlock { 852 padding: 35px 20px; 853 margin-bottom: 20px; 854 } 855 .table-sec, 856 .table-stats { 857 width: 100%; 858 } 859 .table-stats tr td { 860 min-width: auto; 861 } 862 .popup-modal-inner { 863 padding: 15px; 864 } 865 .popup-modal-inner .d-flex { 866 flex-direction: column; 867 } 868 869 .progressApp .topBlock .charts { 870 flex-direction: column; 871 } 872 .progressApp .topBlock .charts .chart { 873 width: 100%; 874 margin: 0 auto 30px; 875 } 876} 877 878.mcb-wrap { 879 z-index: auto; 880} 881 882.text-center { 883 text-align: center; 884} 885.popup-img { 886 padding: 10px 0; 887} 888.popup-img img { 889 max-width: 100%; 890 display: inline-block; 891} 892 893 894 895</style> 896 <style> 897 .e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload), 898 .e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload) * { 899 background-image: none !important; 900 } 901 @media screen and (max-height: 1024px) { 902 .e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload), 903 .e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload) * { 904 background-image: none !important; 905 } 906 } 907 @media screen and (max-height: 640px) { 908 .e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload), 909 .e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload) * { 910 background-image: none !important; 911 } 912 } 913 </style> 914 <meta name="theme-color" content="#FFFFFF"> 915 <link rel="icon" href="https://thrivebyfive.co.za/wp-content/uploads/2025/08/favicon-150x150.png" sizes="32x32" /> 916<link rel="icon" href="https://thrivebyfive.co.za/wp-content/uploads/2025/08/favicon.png" sizes="192x192" /> 917<link rel="apple-touch-icon" href="https://thrivebyfive.co.za/wp-content/uploads/2025/08/favicon.png" /> 918<meta name="msapplication-TileImage" content="https://thrivebyfive.co.za/wp-content/uploads/2025/08/favicon.png" /> 919<style id="wp-custom-css"> 920.single .single-post-content p { 921 margin-bottom: 20px !important; 922} 923 924.single .single-post-content h4 { 925 margin-bottom: 20px; 926} 927 928.single .single-post-content ul { 929 margin-bottom: 20px !important; 930} 931</style> 932</head> 933<body class="home wp-singular page-template-default page page-id-13 wp-embed-responsive wp-theme-hello-elementor wp-child-theme-hello-elementor-child-1 hello-elementor-default elementor-default elementor-kit-7 elementor-page elementor-page-13"> 934 935<style> 936/* .latest_insights_blogs .elementor-post__card , .insight-blog-tabs .elementor-post__card{ 937 padding: 20px; 938 border-radius: 16px !important; 939} 940 body .latest_insights_blogs .elementor-post__meta-data{ 941 border-radius: 99px; 942 width: 78px !important; 943 } 944.latest_insights_blogs .elementor-widget-container article:nth-child(3n+1) .elementor-post__card { 945 background-color: #083D5D; 946} 947.latest_insights_blogs .elementor-widget-container article:nth-child(3n+1) .elementor-post__card .elementor-post__badge{ 948 color: #185573; 949 } 950.insight-blog-tabs .elementor-widget-container article:nth-child(3n+1) .elementor-post__card .elementor-post__badge{ 951 color: #8BCE00; 952 background:#f8fcf0 !important; 953 border: 1px solid #8BCE00; 954 } 955.insight-blog-tabs .elementor-widget-container article:nth-child(3n+2) .elementor-post__card .elementor-post__badge{ 956 color: #FE5800; 957 background:#fff5f0 !important; 958 border: 1px solid #FE5800; 959 } 960.insight-blog-tabs .elementor-post__read-more-wrapper { 961 text-align: right; 962} 963.insight-blog-tabs .elementor-post__card{ 964 border: 1px solid #22A09F; 965} 966 .insight-blog-tabs .elementor-post__meta-data{ 967 width: 85px !important; 968 } 969.insight-blog-tabs .elementor-widget-container article:nth-child(3n) .elementor-post__card .elementor-post__badge{ 970 color: #D29C00; 971 background: #fdf9f0 !important; 972 border: 1px solid #D29C00; 973 } 974.latest_insights_blogs .elementor-widget-container article:nth-child(3n+2) .elementor-post__card { 975 background-color: #7AC943; 976} 977.latest_insights_blogs .elementor-widget-container article:nth-child(3n+2) .elementor-post__card .elementor-post__badge{ 978 color: #8BCD00; 979 } 980.latest_insights_blogs .elementor-widget-container article:nth-child(3n) .elementor-post__card { 981 background-color: #D6A62E; 982} 983.latest_insights_blogs .elementor-widget-container article:nth-child(3n) .elementor-post__card .elementor-post__badge{ 984 color: #D39C00; 985 } 986.latest_insights_blogs .elementor-post__text, .latest_insights_blogs .elementor-post__meta-data , .insight-blog-tabs .elementor-post__card .elementor-post__text, .insight-blog-tabs .elementor-post__meta-data { 987 padding: 0 !important; 988} 989.latest_insights_blogs a.elementor-post__thumbnail__link , .insight-blog-tabs a.elementor-post__thumbnail__link{ 990 border-radius: 12px; 991 overflow: hidden; 992} 993.latest_insights_blogs .elementor-post-date{ 994 display: inline-block; 995 font-weight: bold; 996 color: #fff; 997} 998.latest_insights_blogs .elementor-post__badge , .insight-blog-tabs .elementor-post__badge{ 999 position: unset !important; 1000} 1001.latest_insights_blogs .custom-badge-meta, .insight-blog-tabs .custom-badge-meta{ 1002 display: flex; 1003 justify-content: space-between; 1004 margin: 0 !important; 1005 padding: 0 !important; 1006 flex-wrap: wrap; 1007 gap: 5px; 1008} 1009.latest_insights_blogs .elementor-post__badge, .insight-blog-tabs .elementor-post__badge{ 1010 margin: 0 !important; 1011 display: flex;
1012 align-items: center; 1013 padding: 10px; 1014 line-height: 15px !important; 1015 background: #fff !important; 1016 font-size: 12px; 1017 font-weight: 500; 1018} 1019.latest_insights_blogs .elementor-post__meta-data, .insight-blog-tabs .elementor-post__meta-data{ 1020 font-size: 12px !important; 1021 font-weight: 500; 1022 border: 1px solid #fff !important; 1023 margin: 0 !important; 1024 border-radius: 12px; 1025 display: flex; 1026 align-items: center; 1027 line-height: unset; 1028 justify-content: center; 1029 width:123px !important; 1030} 1031.latest_insights_blogs .elementor-post__read-more{ 1032 width:0; 1033 height:0; 1034 font-size:0 !important; 1035 width: 100% !important; 1036 text-align: end; 1037} 1038.latest_insights_blogs .elementor-post__read-more::after { 1039 content: "\2192"; 1040 font-size: 20px; 1041 color: #fff; 1042 padding: 6px; 1043 border-radius: 6px; 1044} 1045.flip-card-box .elementor-flip-box__image { 1046 width: 47%; 1047} 1048.flip-card-box .elementor-flip-box__layer__inner { 1049 display: flex; 1050 flex-direction: column; 1051 justify-content: center; 1052 align-items: center; 1053} 1054.flip-card-box h3.elementor-flip-box__layer__title { 1055 order: 1; 1056} 1057.flip-card-box .elementor-flip-box__image { 1058 order: 2; 1059 margin: 30px 0; 1060} 1061.flip-card-box .elementor-flip-box__layer__description { 1062 order: 3; 1063} 1064.flip-card-box .elementor-flip-box__layer.elementor-flip-box__front { 1065 border-radius: 32px 0px 32px 32px; 1066} 1067.flip-card-box .elementor-flip-box__layer.elementor-flip-box__back { 1068 border-radius: 32px 32px 0px 32px; 1069} 1070 .flip-card-box:nth-child(1) .elementor-flip-box__layer.elementor-flip-box__front { 1071 box-shadow: -8px 8px 2px rgb(226 100 36 / 54%); 1072} 1073.flip-card-box:nth-child(2) .elementor-flip-box__layer.elementor-flip-box__front { 1074 box-shadow: -8px 8px 2px rgb(51 152 153 / 54%); 1075} 1076.flip-card-box:nth-child(3) .elementor-flip-box__layer.elementor-flip-box__front { 1077 box-shadow: -8px 8px 2px rgb(158 201 57 / 54%); 1078} 1079.flip-card-box:nth-child(4) .elementor-flip-box__layer.elementor-flip-box__front { 1080 box-shadow: -8px 8px 2px rgb(205 156 0 / 54%); 1081} 1082.flip-card-box:nth-child(5) .elementor-flip-box__layer.elementor-flip-box__front { 1083 box-shadow: -8px 8px 2px rgb(240 157 53 / 54%); 1084} 1085.flip-card-box:nth-child(6) .elementor-flip-box__layer.elementor-flip-box__front { 1086 box-shadow: -8px 8px 2px rgb(38 85 115 / 54%); 1087} 1088.flip-card-box:nth-child(1) .elementor-flip-box__layer.elementor-flip-box__back{ 1089 box-shadow: -8px -8px 2px rgb(226 100 36 / 54%); 1090} 1091.flip-card-box:nth-child(2) .elementor-flip-box__layer.elementor-flip-box__back{ 1092 box-shadow: -8px -8px 2px rgb(51 152 153 / 54%); 1093} 1094.flip-card-box:nth-child(3) .elementor-flip-box__layer.elementor-flip-box__back{ 1095 box-shadow: -8px -8px 2px rgb(158 201 57 / 54%); 1096} 1097.flip-card-box:nth-child(4) .elementor-flip-box__layer.elementor-flip-box__back{ 1098 box-shadow: -8px -8px 2px rgb(205 156 0 / 54%); 1099} 1100.flip-card-box:nth-child(5) .elementor-flip-box__layer.elementor-flip-box__back{ 1101 box-shadow: -8px -8px 2px rgb(240 157 53 / 54%); 1102} 1103.flip-card-box:nth-child(6) .elementor-flip-box__layer.elementor-flip-box__back{ 1104 box-shadow: -8px -8px 2px rgb(38 85 115 / 54%); 1105} 1106.single-blog-navigation.elementor-widget-post-navigation span.post-navigation__prev--title, .single-blog-navigation.elementor-widget-post-navigation span.post-navigation__next--title{ 1107 background: #F8F8F8; 1108 margin-top: 14px; 1109 padding: 12px; 1110 border-radius: 8px; 1111} 1112.single-cat-tag a.elementor-post-info__terms-list-item { 1113 background: #fff5f0; 1114 padding: 5px 10px; 1115 border-radius: 40px; 1116 color: #FE5800 !important; 1117 border: 1px solid #FE5800; 1118} 1119.single-cat-tag .elementor-post-info__item--type-date, .insight-blog-tabs .elementor-post-date{ 1120 position: relative; 1121 padding-left: 24px; 1122} 1123.single-cat-tag .elementor-post-info__item--type-date::before , .insight-blog-tabs .elementor-post-date::before{ 1124 content: ""; 1125 position: absolute; 1126 left: 0; 1127 top: 50%; 1128 width: 16px; 1129 height: 16px; 1130 transform: translateY(-50%); 1131 background: url('/wp-content/uploads/2025/08/Date-1.png') no-repeat center; 1132 background-size: contain; 1133} 1134.single-post-content { 1135 position: relative; 1136 padding-left:15px; 1137} 1138.single-post-content:before { 1139 content:""; 1140 position: absolute; 1141 width:5px; 1142 height: 100%; 1143 left:0 ; 1144 background:#009C9A; 1145 border-radius: 40px; 1146} 1147.single-blog-navi .elementor-post-navigation{ 1148 gap:5px; 1149} 1150.accordion-wrapper .elementor-icon-box-icon { 1151 order: 1; 1152} 1153.check-active span.elementor-icon { 1154 position: relative; 1155 display: flex;
1156 align-items: center; 1157 justify-content: center; 1158} 1159.check-active span.elementor-icon:after { 1160 content: ""; 1161 width: 10px; 1162 height: 10px; 1163 background: #185573; 1164 position: absolute; 1165 border-radius: 50%; 1166 align-items: center; 1167} 1168.national-level-tab-row { 1169 position: relative !important; 1170} 1171.national-level-tab-row .tab-wrapper { 1172 position: absolute !important; 1173 top: 0; 1174 right: 0; 1175 width: 48%; 1176} 1177.national-level-tab-row .elementor-element[data-element_type="container"]{ 1178 position: unset; 1179} 1180.national-level-tab-row .tab-wrapper .tab-active { 1181 background: #fcfcfc; 1182 box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; 1183 padding: 20px !important; 1184 border-radius: 6px; 1185} 1186a.a2a_dd.addtoany_no_icon.addtoany_share_save.addtoany_share { 1187 font-size: 14px; 1188 color: #49a5a5; 1189} 1190.a2a_kit.a2a_kit_size_32.addtoany_list { 1191 border-radius: 8px; 1192 border: 1px solid #6bb6b6; 1193 padding: 5px 8px; 1194 width: 88px !important; 1195 display: inline-block; 1196} 1197.recommend-content-tabs .e-n-tabs-heading { 1198 padding: 25px; 1199 flex: 0 0 33% !important; 1200 background: #f5f5f5; 1201 border: 1px solid #CCCCCC; 1202 border-radius: 16px; 1203} 1204.recommend-content-tabs span.e-n-tab-icon { 1205 background: #009C9A; 1206 width: 52px; 1207 height: 52px; 1208 display: flex; 1209 justify-content: center; 1210 align-items: center; 1211 border-radius: 50%; 1212} 1213.recommend-content-tabs span.e-n-tab-icon:after{ 1214 content:""; 1215 position: absolute; 1216 height: 47px; 1217 width: 2px; 1218 bottom: 83%; 1219 transform: translateY(-57%); 1220 background:red; 1221 border-radius: 10px; 1222} 1223 1224.recommend-content-tabs .e-n-tabs-heading button:nth-child(1) span.e-n-tab-icon:after { 1225 content: unset !important; 1226} 1227 1228.recommend-content-tabs .e-n-tabs-heading button:nth-child(3n+1) span.e-n-tab-icon, 1229.recommend-content-tabs .e-n-tabs-heading button:nth-child(3n+1) span.e-n-tab-icon:after { 1230 background: #009C9A; 1231} 1232 1233.recommend-content-tabs .e-n-tabs-heading button:nth-child(3n+2) span.e-n-tab-icon, 1234.recommend-content-tabs .e-n-tabs-heading button:nth-child(3n+2) span.e-n-tab-icon:after { 1235 background: #FF5600; 1236} 1237.recommend-content-tabs .e-n-tabs-heading button:nth-child(3n) span.e-n-tab-icon, 1238.recommend-content-tabs .e-n-tabs-heading button:nth-child(3n) span.e-n-tab-icon:after { 1239 background: #8BCD00; 1240} 1241 1242 1243 1244@media(max-width:767px){ 1245 .national-level-tab-row .tab-wrapper { 1246 position: unset !important; 1247 width: 100%; 1248 } 1249.accordion-wrapper .elementor-icon-box-wrapper { 1250 display: flex !important; 1251 flex-direction: row-reverse !important; 1252 justify-content: center !important; 1253} 1254.accordion-wrapper .elementor-icon-box-icon { 1255 display: flex !important; 1256 align-items: center !important; 1257 justify-content: center; 1258} 1259} */ 1260</style> 1261
1262<script> 1263document.addEventListener("DOMContentLoaded", function () { 1264 document.querySelectorAll(".latest_insights_blogs .elementor-post-date").forEach(function (el) { 1265 let text = el.textContent.trim(); 1266 let year = text.split(" ").pop(); // Take the last word 1267 el.textContent = year; // Replace with only the year 1268 }); 1269}); 1270jQuery(document).ready(function($) { 1271 $('.latest_insights_blogs .elementor-post__badge, .insight-blog-tabs .elementor-post__badge').each(function() { 1272 var badge = $(this); 1273 var meta = badge.siblings('.elementor-post__meta-data'); // Find meta in same post card 1274 1275 if (meta.length) { 1276 var wrapper = $('<div class="custom-badge-meta"></div>'); 1277 badge.add(meta).wrapAll(wrapper); 1278 } 1279 }); 1280}); 1281 1282 jQuery(document).ready(function($) { 1283 $('.elementor-post-info__terms-list-item').each(function() { 1284 var categoryName = $(this).text().trim(); 1285 var slug = categoryName.toLowerCase().replace(/\s+/g, '-'); // make slug 1286 $(this).addClass('cat-' + slug); 1287 }); 1288}); 1289 1290// /* Tab jQuery */ 1291// jQuery(document).ready(function($) { 1292// // hide all except first 1293// $("[id^=content]").hide(); 1294// $("#content1").show(); 1295 1296// // LEFT SIDE HANDLER 1297// $(".e-n-accordion-item [id]").filter(function() { 1298// return /^\d+$/.test($(this).attr("id")); // only numeric ids 1299// }).on("click", function() { 1300// var id = $(this).attr("id"); // e.g. "2" 1301// $("[id^=content]").hide(); // hide all right side content 1302// $("#content" + id).fadeIn(); // show matching one 1303// }); 1304// }); 1305 1306jQuery(document).ready(function($) { 1307 // --- helper: find the next .tab-wrapper in document order after a given element --- 1308 function findNextTabWrapper($start) { 1309 var node = $start.get(0); 1310 var cur = node; 1311 while (cur) { 1312 // move to next node in document order 1313 if (cur.nextSibling) cur = cur.nextSibling; 1314 else cur = cur.parentNode ? cur.parentNode.nextSibling : null; 1315 if (!cur) break; 1316 if (cur.nodeType !== 1) continue; 1317 var $cur = $(cur); 1318 // if this node *is* a tab-wrapper return it, otherwise search its descendants 1319 if ($cur.is(".tab-wrapper")) return $cur; 1320 var $found = $cur.find(".tab-wrapper").first(); 1321 if ($found.length) return $found; 1322 } 1323 return $(); // none found 1324 } 1325 1326 // --- initialization function --- 1327 function initTabs() { 1328 // hide everything 1329 $(".tab-wrapper .tab").hide().removeClass("tab-active"); 1330 $(".accordion-wrapper .tab").removeClass("tab-active"); 1331 1332 // â only activate the very first accordion's first tab + its paired content 1333 var $firstAcc = $(".accordion-wrapper").first(); 1334 if ($firstAcc.length) { 1335 var $firstTab = $firstAcc.find(".tab").first(); 1336 var $firstWrapper = findNextTabWrapper($firstAcc); 1337 1338 if ($firstTab.length) $firstTab.addClass("tab-active"); 1339 if ($firstWrapper.length) { 1340 $firstWrapper.find(".tab").first().show().addClass("tab-active"); 1341 } 1342 } 1343 } 1344 1345 // --- click handler --- 1346 $(document).off("click.customTabs", ".accordion-wrapper .tab"); 1347 $(document).on("click.customTabs", ".accordion-wrapper .tab", function(e) { 1348 e.preventDefault(); 1349 e.stopPropagation(); 1350 1351 var $clicked = $(this); 1352 var $accordion = $clicked.closest(".accordion-wrapper"); 1353 if (!$accordion.length) return; 1354 1355 // index among this accordion's tabs 1356 var index = $accordion.find(".tab").index($clicked); 1357 1358 // find the matching tab-wrapper 1359 var $tabWrapper = findNextTabWrapper($accordion); 1360 if (!$tabWrapper.length) { 1361 $tabWrapper = $accordion.closest(".elementor-container, .e-con-inner, .elementor-element") 1362 .nextAll().find(".tab-wrapper").first(); 1363 } 1364 if (!$tabWrapper.length) return; 1365 1366 // global behaviour: hide everything, then show only the matched card 1367 $(".accordion-wrapper .tab").removeClass("tab-active"); 1368 $(".tab-wrapper .tab").hide().removeClass("tab-active"); 1369 1370 $clicked.addClass("tab-active"); 1371 var $target = $tabWrapper.find(".tab").eq(index); 1372 if ($target.length) { 1373 $target.show().addClass("tab-active"); 1374 } else { 1375 $tabWrapper.find(".tab").first().show().addClass("tab-active"); 1376 } 1377 }); 1378 1379 // run init 1380 initTabs();
1381 setTimeout(initTabs, 400); 1382 setTimeout(initTabs, 1200); 1383 1384 // optional debug helper 1385 window._debugTabPairs = function() { 1386 $(".accordion-wrapper").each(function(i){ 1387 var $acc = $(this); 1388 var $pair = findNextTabWrapper($acc); 1389 console.log("Accordion", i, "tabs:", $acc.find(".tab").length, " --> paired tab-wrapper found:", $pair.length, $pair.get(0) || "none"); 1390 }); 1391 }; 1392}); 1393 1394 1395 1396 1397 1398 1399 1400jQuery(document).ready(function($) { 1401 $(".elementor-widget-icon-box").on("click", function() { 1402 // remove active class from all 1403 $(".elementor-widget-icon-box").removeClass("check-active"); 1404 // add active class to clicked one 1405 $(this).addClass("check-active"); 1406 }); 1407}); 1408 1409 1410 1411 1412 1413 1414 1415</script>
1415 1416 1417<a class="skip-link screen-reader-text" href="#content">Skip to content</a> 1418 1419 <header data-elementor-type="header" data-elementor-id="6277" class="elementor elementor-6277 elementor-location-header" data-elementor-post-type="elementor_library"> 1420 <div class="elementor-element elementor-element-796e1929 e-flex e-con-boxed e-con e-parent" data-id="796e1929" data-element_type="container" data-e-type="container"> 1421 <div class="e-con-inner"> 1422 <div class="elementor-element elementor-element-75731df elementor-widget elementor-widget-image" data-id="75731df" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 1423 <a href="https://thrivebyfive.co.za"> 1424 <img width="270" height="130" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/logo.png" class="attachment-full size-full wp-image-3915" alt="" /> </a> 1425 </div> 1426 <div class="elementor-element elementor-element-0620803 e-full_width e-n-menu-layout-horizontal e-n-menu-tablet elementor-widget elementor-widget-n-menu" data-id="0620803" data-element_type="widget" data-e-type="widget" data-settings="{"menu_items":[{"item_title":"Home","_id":"479108c","__dynamic__":{"item_link":"[elementor-tag id=\"15337b1\" name=\"internal-url\" settings=\"%7B%22type%22%3A%22post%22%2C%22post_id%22%3A%2213%22%7D\"]"},"item_link":{"url":"https:\/\/thrivebyfive.co.za\/","is_external":"","nofollow":"","custom_attributes":""},"item_dropdown_content":"no","item_icon":{"value":"","library":""},"item_icon_active":null,"element_id":""},{"item_title":"Indexes","_id":"930ab53","item_dropdown_content":"yes","item_link":{"url":"","is_external":"","nofollow":"","custom_attributes":""},"item_icon":{"value":"","library":""},"item_icon_active":null,"element_id":""},{"item_title":"Insights","_id":"3351a9c","__dynamic__":{"item_link":"[elementor-tag id=\"8903532\" name=\"internal-url\" settings=\"%7B%22type%22%3A%22post%22%2C%22post_id%22%3A%2292%22%7D\"]"},"item_link":{"url":"https:\/\/thrivebyfive.co.za\/insights\/","is_external":"","nofollow":"","custom_attributes":""},"item_dropdown_content":"no","item_icon":{"value":"","library":""},"item_icon_active":null,"element_id":""}],"open_animation":"fadeIn","menu_item_title_distance_from_content":{"unit":"px","size":37,"sizes":[]},"menu_item_title_distance_from_content_mobile":{"unit":"px","size":0,"sizes":[]},"content_width":"full_width","item_layout":"horizontal","open_on":"hover","horizontal_scroll":"disable","breakpoint_selector":"tablet","menu_item_title_distance_from_content_widescreen":{"unit":"px","size":"","sizes":[]},"menu_item_title_distance_from_content_tablet":{"unit":"px","size":"","sizes":[]}}" data-widget_type="mega-menu.default"> 1427 <nav class="e-n-menu" data-widget-number="642" aria-label="Menu"> 1428 <button class="e-n-menu-toggle" id="menu-toggle-642" aria-haspopup="true" aria-expanded="false" aria-controls="menubar-642" aria-label="Menu Toggle"> 1429 <span class="e-n-menu-toggle-icon e-open"> 1430 <svg class="e-font-icon-svg e-eicon-menu-bar" viewBox="0 0 1000 1000" xmlns="http://www.w3.org/2000/svg"><path d="M104 333H896C929 333 958 304 958 271S929 208 896 208H104C71 208 42 237 42 271S71 333 104 333ZM104 583H896C929 583 958 554 958 521S929 458 896 458H104C71 458 42 487 42 521S71 583 104 583ZM104 833H896C929 833 958 804 958 771S929 708 896 708H104C71 708 42 737 42 771S71 833 104 833Z"></path></svg> </span> 1431 <span class="e-n-menu-toggle-icon e-close"> 1432 <svg class="e-font-icon-svg e-eicon-close" viewBox="0 0 1000 1000" xmlns="http://www.w3.org/2000/svg"><path d="M742 167L500 408 258 167C246 154 233 150 217 150 196 150 179 158 167 167 154 179 150 196 150 212 150 229 154 242 171 254L408 500 167 742C138 771 138 800 167 829 196 858 225 858 254 829L496 587 738 829C750 842 767 846 783 846 800 846 817 842 829 829 842 817 846 804 846 783 846 767 842 750 829 737L588 500 833 258C863 229 863 200 833 171 804 137 775 137 742 167Z"></path></svg> </span> 1433 </button> 1434 <div class="e-n-menu-wrapper" id="menubar-642" aria-labelledby="menu-toggle-642"> 1435 <ul class="e-n-menu-heading"> 1436 <li class="e-n-menu-item"> 1437 <div id="e-n-menu-title-6421" class="e-n-menu-title e-current"> 1438 <a class="e-n-menu-title-container e-focus e-link" href="https://thrivebyfive.co.za/" aria-current="page"> <span class="e-n-menu-title-text"> 1439 Home </span> 1440 </a> </div> 1441 </li> 1442 <li class="e-n-menu-item"> 1443 <div id="e-n-menu-title-6422" class="e-n-menu-title"> 1444 <div class="e-n-menu-title-container"> <span class="e-n-menu-title-text"> 1445 Indexes </span> 1446 </div> <button id="e-n-menu-dropdown-icon-6422" class="e-n-menu-dropdown-icon e-focus" data-tab-index="2" aria-haspopup="true" aria-expanded="false" aria-controls="e-n-menu-content-6422" > 1447 <span class="e-n-menu-dropdown-icon-opened"> 1448 <svg aria-hidden="true" class="e-font-icon-svg e-fas-chevron-up" viewB
1448ox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"><path d="M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"></path></svg> <span class="elementor-screen-only">Close Indexes</span> 1449 </span> 1450 <span class="e-n-menu-dropdown-icon-closed"> 1451 <svg aria-hidden="true" class="e-font-icon-svg e-fas-chevron-down" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"><path d="M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z"></path></svg> <span class="elementor-screen-only">Open Indexes</span> 1452 </span> 1453 </button> 1454 </div> 1455 <div class="e-n-menu-content"> 1456 <div id="e-n-menu-content-6422" data-tab-index="2" aria-labelledby="e-n-menu-dropdown-icon-6422" class="elementor-element elementor-element-6eb0edc e-flex e-con-boxed e-con e-child" data-id="6eb0edc" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 1457 <div class="e-con-inner"> 1458 <div class="elementor-element elementor-element-104be95 e-con-full e-flex e-con e-child" data-id="104be95" data-element_type="container" data-e-type="container"> 1459 <div class="elementor-element elementor-element-a456e53 elementor-widget elementor-widget-heading" data-id="a456e53" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 1460 <h3 class="elementor-heading-title elementor-size-default">2021 Index</h3> </div> 1461 <div class="elementor-element elementor-element-b89aa95 elementor-widget-divider--view-line elementor-widget elementor-widget-divider" data-id="b89aa95" data-element_type="widget" data-e-type="widget" data-widget_type="divider.default"> 1462 <div class="elementor-divider"> 1463 <span class="elementor-divider-separator"> 1464 </span> 1465 </div> 1466 </div> 1467 <div class="elementor-element elementor-element-b41a6cf elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="b41a6cf" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 1468 <ul class="elementor-icon-list-items"> 1469 <li class="elementor-icon-list-item"> 1470 <a href="https://thrivebyfive.co.za/2021-findings/"> 1471 1472 <span class="elementor-icon-list-text">National Findings</span> 1473 </a> 1474 </li> 1475 <li class="elementor-icon-list-item"> 1476 <a href="https://thrivebyfive.co.za/2021-provincial-findings/"> 1477 1478 <span class="elementor-icon-list-text">Provincial Findings</span> 1479 </a> 1480 </li> 1481 <li class="elementor-icon-list-item"> 1482 <a href="https://thrivebyfive.co.za/2021-methodology/"> 1483 1484 <span class="elementor-icon-list-text">Methodology</span> 1485 </a> 1486 </li> 1487 </ul> 1488 </div> 1489 <div class="elementor-element elementor-element-975a2a7 elementor-widget elementor-widget-heading" data-id="975a2a7" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 1490 <h3 class="elementor-heading-title elementor-size-default">Downloads</h3> </div> 1491 <div class="elementor-element elementor-element-2eadf4f elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="2eadf4f" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 1492 <ul class="elementor-icon-list-items"> 1493 <li class="elementor-icon-list-item"> 1494 <a href="https://thrivebyfive.co.za/wp-content/uploads/2025/11/Index-report-w-addendum_singles-May-2023.pdf" target="_blank"> 1495 1496 <span class="elementor-icon-list-icon"> 1497 <svg aria-hidden="true" class="e-font-icon-svg e-fas-download" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"></path></svg> </span> 1498 <span class="elementor-icon-list-text">
14982021 Index Report</span> 1499 </a> 1500 </li> 1501 <li class="elementor-icon-list-item"> 1502 <a href="https://thrivebyfive.co.za/wp-content/uploads/2025/11/Tx5-addendum-May-2023.pdf" target="_blank"> 1503 1504 <span class="elementor-icon-list-icon"> 1505 <svg aria-hidden="true" class="e-font-icon-svg e-fas-download" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"></path></svg> </span> 1506 <span class="elementor-icon-list-text">2021 Index Report Addendum</span> 1507 </a> 1508 </li> 1509 <li class="elementor-icon-list-item"> 1510 <a href="https://thrivebyfive.co.za/wp-content/uploads/2025/11/Thrive_By_Five_Technical-Report_May-2023-v2.pdf" target="_blank"> 1511 1512 <span class="elementor-icon-list-icon"> 1513 <svg aria-hidden="true" class="e-font-icon-svg e-fas-download" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"></path></svg> </span> 1514 <span class="elementor-icon-list-text">2021 Index Technical Report</span> 1515 </a> 1516 </li> 1517 <li class="elementor-icon-list-item"> 1518 <a href="https://thrivebyfive.co.za/wp-content/uploads/2025/11/Baseline-Assessment-Report.-2022-1.pdf" target="_blank"> 1519 1520 <span class="elementor-icon-list-icon"> 1521 <svg aria-hidden="true" class="e-font-icon-svg e-fas-download" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"></path></svg> </span> 1522 <span class="elementor-icon-list-text">2021 ECD Baseline Report </span> 1523 </a> 1524 </li> 1525 <li class="elementor-icon-list-item"> 1526 <span class="elementor-icon-list-text"></span> 1527 </li> 1528 </ul> 1529 </div> 1530 </div> 1531 <div class="elementor-element elementor-element-400daae e-con-full e-flex e-con e-child" data-id="400daae" data-element_type="container" data-e-type="container"> 1532 <div class="elementor-element elementor-element-e2f1407 elementor-widget elementor-widget-heading" data-id="e2f1407" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 1533 <h3 class="elementor-heading-title elementor-size-default">2024 Index</h3> </div> 1534 <div class="elementor-element elementor-element-b2d8d92 elementor-widget-divider--view-line elementor-widget elementor-widget-divider" data-id="b2d8d92" data-element_type="widget" data-e-type="widget" data-widget_type="divider.default"> 1535 <div class="elementor-divider"> 1536 <span class="elementor-divider-separator"> 1537 </span> 1538 </div> 1539 </div> 1540 <div class="elementor-element elementor-element-cd318ec elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="cd318ec" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 1541 <ul class="elementor-icon-list-items"> 1542 <li class="elementor-icon-list-item"> 1543 <a href="https://thrivebyfive.co.za/findings-enrolled-children/"> 1544 1545 <span class="elementor-icon-list-text">National Findings</span> 1546 </a> 1547 </li> 1548 <li class="elementor-icon-list-item"> 1549 <a href="https://thrivebyfive.co.za/methodology/"> 1550 1551 <span class="elementor-icon-list-text">Methodology</span> 1552 </a> 1553 </li> 1554 <li class="elementor-icon-list-item"> 1555 <a href="https://thrivebyfive.co.za/recommendations/"> 1556 1557 <span class="elementor-icon-list-text">Recommendations</span> 1558 </a> 1559 </li> 1560 <li class="elementor-icon-list-item"> 1561 <span class="elementor-icon-list-text"></span> 1562 </li> 1563 </ul> 1564 </div> 1565 <div class="elementor-element elementor-element-b441701 elementor-widget elementor-widget-heading" data-id="b441701" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 1566 <h3 class="elementor-heading-title elementor-size-default">Downloads</h3>
1566 </div> 1567 <div class="elementor-element elementor-element-2c3df3d elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="2c3df3d" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 1568 <ul class="elementor-icon-list-items"> 1569 <li class="elementor-icon-list-item"> 1570 <a href="https://thrivebyfive.co.za/wp-content/uploads/2026/09/TB5-Main-Report_FINAL_a.pdf" target="_blank"> 1571 1572 <span class="elementor-icon-list-icon"> 1573 <svg aria-hidden="true" class="e-font-icon-svg e-fas-download" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"></path></svg> </span> 1574 <span class="elementor-icon-list-text">2024 Index Report</span> 1575 </a> 1576 </li> 1577 <li class="elementor-icon-list-item"> 1578 <a href="https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Technical-Report_FINAL.pdf" target="_blank"> 1579 1580 <span class="elementor-icon-list-icon"> 1581 <svg aria-hidden="true" class="e-font-icon-svg e-fas-download" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"></path></svg> </span> 1582 <span class="elementor-icon-list-text">2024 Index Technical Report</span> 1583 </a> 1584 </li> 1585 <li class="elementor-icon-list-item"> 1586 <span class="elementor-icon-list-text"></span> 1587 </li> 1588 </ul> 1589 </div> 1590 </div> 1591 </div> 1592 </div> 1593 </div> 1594 </li> 1595 <li class="e-n-menu-item"> 1596 <div id="e-n-menu-title-6423" class="e-n-menu-title"> 1597 <a class="e-n-menu-title-container e-focus e-link" href="https://thrivebyfive.co.za/insights/"> <span class="e-n-menu-title-text"> 1598 Insights </span> 1599 </a> </div> 1600 </li> 1601 </ul> 1602 </div> 1603 </nav> 1604 </div> 1605 <div class="elementor-element elementor-element-67913a55 elementor-widget elementor-widget-button" data-id="67913a55" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 1606 <a class="elementor-button elementor-button-link elementor-size-sm" href="/findings-enrolled-children/"> 1607 <span class="elementor-button-content-wrapper"> 1608 <span class="elementor-button-icon"> 1609 <svg aria-hidden="true" class="e-font-icon-svg e-fas-envelope" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z"></path></svg> </span> 1610 <span class="elementor-button-text">Make Contact</span> 1611 </span> 1612 </a> 1613 </div> 1614 </div> 1615 </div> 1616 </header> 1617 1618<main id="content" class="site-main post-13 page type-page status-publish hentry"> 1619 1620 1621 <div class="page-content"> 1622 <div data-elementor-type="wp-page" data-elementor-id="13" class="elementor elementor-13" data-elementor-post-type="page"> 1623 <div class="elementor-element elementor-element-f970d2f e-flex e-con-boxed e-con e-parent" data-id="f970d2f" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 1624 <div class="e-con-inner"> 1625 <div class="elementor-element elementor-element-2b79256a e-con-full e-flex e-con e-child" data-id="2b79256a" data-element_type="container" data-e-type="container"> 1626 <div class="elementor-element elementor-element-7e2af32a elementor-widget elementor-widget-image" data-id="7e2af32a" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 1627 <img fetchpriority="high" decoding="async" width="870" height="319" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/TB5-BrandGuideline-UpdatedJuly2025-07-31-2025_03_08_PM-Photoroom-1-2.png" class="attachment-full size-full wp-image-1403" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/TB5-BrandGuideline-UpdatedJuly2025-07-31-2025_03_08_PM-Photoroom-1-2.png 870w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/TB5-BrandGuideline-UpdatedJuly2025-07-31-2025_03_08_PM-Photoroom-1-2-300x110.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/TB5-BrandGuideline-UpdatedJuly2025-07-31-2025_03_08_PM-Photoroom-1-2-768x282.png 768w" sizes="(max-width: 870px) 100v
1627w, 870px" /> </div> 1628 <div class="elementor-element elementor-element-730acd1a elementor-widget elementor-widget-heading" data-id="730acd1a" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 1629 <h2 class="elementor-heading-title elementor-size-default">Measuring what matters. 1630<span class="black-heading">Mobilising what works.</span></h2> </div> 1631 <div class="elementor-element elementor-element-3c7527ea elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="3c7527ea" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1632 <p>The early years shape a childâs future. By turning insight into action, we can open doors of opportunity for every child.</p> </div> 1633 <div class="elementor-element elementor-element-2162aa8e e-con-full e-flex e-con e-child" data-id="2162aa8e" data-element_type="container" data-e-type="container"> 1634 <div class="elementor-element elementor-element-2f75fdd5 elementor-align-left elementor-widget__width-auto elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-widget elementor-widget-button" data-id="2f75fdd5" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 1635 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://thrivebyfive.co.za/findings-enrolled-children/"> 1636 <span class="elementor-button-content-wrapper"> 1637 <span class="elementor-button-icon"> 1638 <svg aria-hidden="true" class="e-font-icon-svg e-fas-long-arrow-alt-right" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"><path d="M313.941 216H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h301.941v46.059c0 21.382 25.851 32.09 40.971 16.971l86.059-86.059c9.373-9.373 9.373-24.569 0-33.941l-86.059-86.059c-15.119-15.119-40.971-4.411-40.971 16.971V216z"></path></svg> </span> 1639 <span class="elementor-button-text">View 2024 Index</span> 1640 </span> 1641 </a> 1642 </div> 1643 <div class="elementor-element elementor-element-3fe5636c elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-widget elementor-widget-button" data-id="3fe5636c" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 1644 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://thrivebyfive.co.za/wp-content/uploads/2026/09/TB5-Main-Report_FINAL_a.pdf" target="_blank"> 1645 <span class="elementor-button-content-wrapper"> 1646 <span class="elementor-button-text">Download Report</span> 1647 </span> 1648 </a> 1649 </div> 1650 </div> 1651 </div> 1652 <div class="elementor-element elementor-element-25f7d37 elementor-absolute elementor-widget elementor-widget-image" data-id="25f7d37" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 1653 <img decoding="async" width="63" height="64" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-28.png" class="attachment-large size-large wp-image-273" alt="" /> </div> 1654 <div class="elementor-element elementor-element-1bc23b22 elementor-absolute elementor-widget elementor-widget-image" data-id="1bc23b22" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 1655 <img loading="lazy" decoding="async" width="500" height="500" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-29.png" class="attachment-large size-large wp-image-3280" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-29.png 500w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-29-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-29-150x150.png 150w" sizes="(max-width: 500px) 100v
1655w, 500px" /> </div> 1656 <div class="elementor-element elementor-element-2c92a8a7 elementor-widget elementor-widget-image" data-id="2c92a8a7" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 1657 <img loading="lazy" decoding="async" width="563" height="918" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Main-Image-1-1.png" class="attachment-large size-large wp-image-3857" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Main-Image-1-1.png 563w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Main-Image-1-1-184x300.png 184w" sizes="(max-width: 563px) 100vw, 563px" /> </div> 1658 </div> 1659 </div> 1660 <div class="elementor-element elementor-element-5397287 elementor-hidden-mobile e-flex e-con-boxed e-con e-parent" data-id="5397287" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","shape_divider_bottom":"waves"}"> 1661 <div class="e-con-inner"> 1662 <div class="elementor-shape elementor-shape-bottom" aria-hidden="true" data-negative="false"> 1663 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none"> 1664 <path class="elementor-shape-fill" d="M421.9,6.5c22.6-2.5,51.5,0.4,75.5,5.3c23.6,4.9,70.9,23.5,100.5,35.7c75.8,32.2,133.7,44.5,192.6,49.7 1665 c23.6,2.1,48.7,3.5,103.4-2.5c54.7-6,106.2-25.6,106.2-25.6V0H0v30.3c0,0,72,32.6,158.4,30.5c39.2-0.7,92.8-6.7,134-22.4 1666 c21.2-8.1,52.2-18.2,79.7-24.2C399.3,7.9,411.6,7.5,421.9,6.5z"/> 1667</svg> </div> 1668 </div> 1669 </div> 1670 <div class="elementor-element elementor-element-2f6659a e-flex e-con-boxed e-con e-parent" data-id="2f6659a" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","shape_divider_bottom":"waves","shape_divider_bottom_negative":"yes"}"> 1671 <div class="e-con-inner"> 1672 <div class="elementor-shape elementor-shape-bottom" aria-hidden="true" data-negative="true"> 1673 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none"> 1674 <path class="elementor-shape-fill" d="M790.5,93.1c-59.3-5.3-116.8-18-192.6-50c-29.6-12.7-76.9-31-100.5-35.9c-23.6-4.9-52.6-7.8-75.5-5.3 1675 c-10.2,1.1-22.6,1.4-50.1,7.4c-27.2,6.3-58.2,16.6-79.4,24.7c-41.3,15.9-94.9,21.9-134,22.6C72,58.2,0,25.8,0,25.8V100h1000V65.3 1676 c0,0-51.5,19.4-106.2,25.7C839.5,97,814.1,95.2,790.5,93.1z"/> 1677</svg> </div> 1678 </div> 1679 </div> 1680 <div class="elementor-element elementor-element-243d5cc e-flex e-con-boxed e-con e-parent" data-id="243d5cc" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","shape_divider_bottom":"mountains"}"> 1681 <div class="e-con-inner"> 1682 <div class="elementor-shape elementor-shape-bottom" aria-hidden="true" data-negative="false"> 1683 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none"> 1684 <path class="elementor-shape-fill" opacity="0.33" d="M473,67.3c-203.9,88.3-263.1-34-320.3,0C66,119.1,0,59.7,0,59.7V0h1000v59.7 c0,0-62.1,26.1-94.9,29.3c-32.8,3.3-62.8-12.3-75.8-22.1C806,49.6,745.3,8.7,694.9,4.7S492.4,59,473,67.3z"/> 1685 <path class="elementor-shape-fill" opacity="0.66" d="M734,67.3c-45.5,0-77.2-23.2-129.1-39.1c-28.6-8.7-150.3-10.1-254,39.1 s-91.7-34.4-149.2,0C115.7,118.3,0,39.8,0,39.8V0h1000v36.5c0,0-28.2-18.5-92.1-18.5C810.2,18.1,775.7,67.3,734,67.3z"/> 1686 <path class="elementor-shape-fill" d="M766.1,28.9c-200-57.5-266,65.5-395.1,19.5C242,1.8,242,5.4,184.8,20.6C128,35.8,132.3,44.9,89.9,52.5C28.6,63.7,0,0,0,0 h1000c0,0-9.9,40.9-83.6,48.1S829.6,47,766.1,28.9z"/> 1687</svg> </div> 1688 </div> 1689 </div> 1690 <div class="elementor-element elementor-element-418b7e1 e-flex e-con-boxed e-con e-parent" data-id="418b7e1" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 1691 <div class="e-con-inner"> 1692 <div class="elementor-element elementor-element-c68e05c elementor-widget elementor-widget-heading" data-id="c68e05c" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 1693 <h2 class="elementor-heading-title elementor-size-default">About the Thrive by Five Index</h2> </div> 1694 <div class="elementor-element elementor-element-646dfda elementor-widget elementor-widget-text-editor" data-id="646dfda" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1695 Shines a spotlight on the development of young children across South Africa </div> 1696 <div class="elementor-element elementor-element-b442716 elementor-absolute elementor-widget-tablet__width-initial elementor-widget elementor-widget-image" data-id="b442716" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 1697 <img loading="lazy" decoding="async" width="672" height="812" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/lines-1-1.png" class="attachment-full size-full wp-image-216" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/lines-1-1.png 672w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/lines-1-1-248x300.png 248w" sizes="(max-width: 672px) 100vw, 672px" /> </div> 1698 </div>
1699 </div> 1700 <div class="elementor-element elementor-element-a4e6495 e-flex e-con-boxed e-con e-parent" data-id="a4e6495" data-element_type="container" data-e-type="container"> 1701 <div class="e-con-inner"> 1702 <div class="elementor-element elementor-element-c185f1c e-con-full e-flex e-con e-child" data-id="c185f1c" data-element_type="container" data-e-type="container"> 1703 <div class="elementor-element elementor-element-afcc21d elementor-widget elementor-widget-video" data-id="afcc21d" data-element_type="widget" data-e-type="widget" data-settings="{"youtube_url":"https:\/\/youtu.be\/dcnX4by5Me8","show_image_overlay":"yes","image_overlay":{"url":"https:\/\/thrivebyfive.co.za\/wp-content\/uploads\/2025\/09\/video-overlay.jpg","id":6027,"size":"","alt":"","source":"library"},"video_type":"youtube","controls":"yes"}" data-widget_type="video.default"> 1704 <div class="elementor-wrapper elementor-open-inline"> 1705 <div class="elementor-video"></div> <div class="elementor-custom-embed-image-overlay" style="background-image: url(https://thrivebyfive.co.za/wp-content/uploads/2025/09/video-overlay.jpg);"> 1706 <div class="elementor-custom-embed-play" role="button" aria-label="Play Video" tabindex="0"> 1707 <svg aria-hidden="true" class="e-font-icon-svg e-far-play-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M371.7 238l-176-107c-15.8-8.8-35.7 2.5-35.7 21v208c0 18.4 19.8 29.8 35.7 21l176-101c16.4-9.1 16.4-32.8 0-42zM504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zm-448 0c0-110.5 89.5-200 200-200s200 89.5 200 200-89.5 200-200 200S56 366.5 56 256z"></path></svg> </div> 1708 </div> 1709 </div> 1710 </div> 1711 </div> 1712 <div class="elementor-element elementor-element-f5c0052 e-con-full e-flex e-con e-child" data-id="f5c0052" data-element_type="container" data-e-type="container"> 1713 <div class="elementor-element elementor-element-00e8e91 elementor-widget elementor-widget-text-editor" data-id="00e8e91" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1714 <p>The Thrive by Five Index is South Africaâs most comprehensive national survey of preschool child outcomes. Conducted every three years, it measures how four-year-old children are developing and what influences their progress across early learning, physical growth, and social-emotional functioning.</p><p><br />The Index first launched in 2021, and four rounds are planned by 2030. Each round covers all nine provinces and reflects the diverse realities of South Africaâs children.</p> </div> 1715 <div class="elementor-element elementor-element-b6bce54 elementor-align-left elementor-widget__width-auto elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-widget elementor-widget-button" data-id="b6bce54" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 1716 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://thrivebyfive.co.za/findings-enrolled-children/"> 1717 <span class="elementor-button-content-wrapper"> 1718 <span class="elementor-button-icon"> 1719 <svg aria-hidden="true" class="e-font-icon-svg e-fas-long-arrow-alt-right" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"><path d="M313.941 216H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h301.941v46.059c0 21.382 25.851 32.09 40.971 16.971l86.059-86.059c9.373-9.373 9.373-24.569 0-33.941l-86.059-86.059c-15.119-15.119-40.971-4.411-40.971 16.971V216z"></path></svg> </span> 1720 <span class="elementor-button-text">View 2024 Index</span> 1721 </span> 1722 </a> 1723 </div> 1724 </div> 1725 </div> 1726 </div> 1727 <div class="elementor-element elementor-element-7db3869 e-flex e-con-boxed e-con e-parent" data-id="7db3869" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","shape_divider_bottom":"waves","shape_divider_bottom_negative":"yes"}"> 1728 <div class="e-con-inner"> 1729 <div class="elementor-shape elementor-shape-bottom" aria-hidden="true" data-negative="true"> 1730 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none"> 1731 <path class="elementor-shape-fill" d="M790.5,93.1c-59.3-5.3-116.8-18-192.6-50c-29.6-12.7-76.9-31-100.5-35.9c-23.6-4.9-52.6-7.8-75.5-5.3 1732 c-10.2,1.1-22.6,1.4-50.1,7.4c-27.2,6.3-58.2,16.6-79.4,24.7c-41.3,15.9-94.9,21.9-134,22.6C
173272,58.2,0,25.8,0,25.8V100h1000V65.3 1733 c0,0-51.5,19.4-106.2,25.7C839.5,97,814.1,95.2,790.5,93.1z"/> 1734</svg> </div> 1735 <div class="elementor-element elementor-element-6f12156 elementor-absolute elementor-widget elementor-widget-image" data-id="6f12156" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 1736 <img decoding="async" width="63" height="64" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-28.png" class="attachment-large size-large wp-image-273" alt="" /> </div> 1737 <div class="elementor-element elementor-element-cf579f1 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="cf579f1" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1738 <p>The Thrive by Five Index enables key stakeholders to align efforts and amplify their impact for young children in South Africa.</p> </div> 1739 <div class="elementor-element elementor-element-6dba0f3 elementor-absolute elementor-hidden-mobile elementor-widget elementor-widget-image" data-id="6dba0f3" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 1740 <img loading="lazy" decoding="async" width="226" height="227" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/orange-circle-1.png" class="attachment-large size-large wp-image-2587" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/orange-circle-1.png 226w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/orange-circle-1-150x150.png 150w" sizes="(max-width: 226px) 100vw, 226px" /> </div> 1741 </div> 1742 </div> 1743 <div class="elementor-element elementor-element-86c9ba1 e-flex e-con-boxed e-con e-parent" data-id="86c9ba1" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 1744 <div class="e-con-inner"> 1745 <div class="elementor-element elementor-element-a5a4d41 elementor-widget elementor-widget-heading" data-id="a5a4d41" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 1746 <h2 class="elementor-heading-title elementor-size-default">Latest Insights & News</h2> </div> 1747 <div class="elementor-element elementor-element-2587400 elementor-widget elementor-widget-text-editor" data-id="2587400" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1748 <p>Explore all the knowledge generated through the Thrive by Five Index – from national reports and technical documents to presentations, insights, and practical actions.</p> </div> 1749 <div class="elementor-element elementor-element-d9161ab e-con-full e-flex e-con e-child" data-id="d9161ab" data-element_type="container" data-e-type="container"> 1750 <div class="elementor-element elementor-element-8b5166e latest_insights_blogs elementor-hidden-widescreen elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile elementor-grid-3 elementor-grid-tablet-2 elementor-grid-mobile-1 elementor-posts--thumbnail-top elementor-card-shadow-yes elementor-posts__hover-gradient elementor-widget elementor-widget-posts" data-id="8b5166e" data-element_type="widget" data-e-type="widget" data-settings="{"cards_columns":"3","cards_columns_tablet":"2","cards_columns_mobile":"1","cards_row_gap":{"unit":"px","size":35,"sizes":[]},"cards_row_gap_widescreen":{"unit":"px","size":"","sizes":[]},"cards_row_gap_tablet":{"unit":"px","size":"","sizes":[]},"cards_row_gap_mobile":{"unit":"px","size":"","sizes":[]}}" data-widget_type="posts.cards"> 1751 <div class="elementor-widget-container"> 1752 <div class="elementor-posts-container elementor-posts elementor-posts--skin-cards elementor-grid" role="list">
1753 <article class="elementor-post elementor-grid-item post-5223 post type-post status-publish format-standard has-post-thumbnail hentry category-24 category-reports-summary" role="listitem"> 1754 <div class="elementor-post__card"> 1755 <a class="elementor-post__thumbnail__link" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-national-findings/" tabindex="-1" ><div class="elementor-post__thumbnail"><img loading="lazy" decoding="async" width="300" height="200" src="https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-300x200.jpg" class="attachment-medium size-medium wp-image-5386" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-300x200.jpg 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-1024x684.jpg 1024w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-768x513.jpg 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-1536x1026.jpg 1536w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-2048x1368.jpg 2048w" sizes="(max-width: 300px) 100vw, 300px" /></div></a> 1756 <div class="elementor-post__badge">2024 Index</div> 1757 <div class="elementor-post__text"> 1758 <h5 class="elementor-post__title"> 1759 <a href="https://thrivebyfive.co.za/thrive-by-five-index-2024-national-findings/" > 1760 Thrive by Five Index 2024: National Findings </a> 1761 </h5> 1762 <div class="elementor-post__excerpt"> 1763 <p>This report presents the national findings from the Thrive by Five Index 2024 and is organised into four sections, each</p> 1764 </div> 1765 1766 <a class="elementor-post__read-more" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-national-findings/" aria-label="Read more about Thrive by Five Index 2024: National Findings" tabindex="-1" > 1767 Read More » </a> 1768 1769 </div> 1770 </div> 1771 </article> 1772 <article class="elementor-post elementor-grid-item post-5225 post type-post status-publish format-standard has-post-thumbnail hentry category-24 category-technical-data" role="listitem"> 1773 <div class="elementor-post__card"> 1774 <a class="elementor-post__thumbnail__link" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-technical-report/" tabindex="-1" ><div class="elementor-post__thumbnail"><img loading="lazy" decoding="async" width="300" height="154" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Rectangle-44-1-300x154.jpg" class="attachment-medium size-medium wp-image-262" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Rectangle-44-1-300x154.jpg 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Rectangle-44-1.jpg 338w" sizes="(max-width: 300px) 100vw, 300px" /></div></a> 1775 <div class="elementor-post__badge">2024 Index</div> 1776 <div class="elementor-post__text"> 1777 <h5 class="elementor-post__title"> 1778 <a href="https://thrivebyfive.co.za/thrive-by-five-index-2024-technical-report/" > 1779 Thrive by Five Index 2024: Technical Report </a> 1780 </h5> 1781 <div class="elementor-post__excerpt"> 1782 <p>The South Africa Thrive by Five Index produces indicators on key child outcomes – Early Learning, Social and Emotional Functioning</p> 1783 </div> 1784 1785 <a class="elementor-post__read-more" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-technical-report/" aria-label="Read more about Thrive by Five Index 2024: Technical Report" tabindex="-1" > 1786 Read More » </a> 1787 1788 </div> 1789 </div> 1790 </article> 1791 <article class="elementor-post elementor-grid-item post-4734 post type-post status-publish format-standard has-post-thumbnail hentry category-24 category-insights-action" role="listitem"> 1792 <div class="elementor-post__card"> 1793 <a class="elementor-post__thumbnail__link" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-recommendations-brief-evidence-to-action/" tabindex="-1" ><div class="elementor-post__thumbnail"><img loading="lazy" decoding="async" width="300" height="200" src="https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-300x200.jpg" class="attachment-medium size-medium wp-image-5385" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-300x200.jpg 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-1024x684.jpg 1024w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-768x513.jpg 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-1536x1026.jpg 1536w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-2048x1368.jpg 2048w" sizes="(max-width: 300px) 100v
1793w, 300px" /></div></a> 1794 <div class="elementor-post__badge">2024 Index</div> 1795 <div class="elementor-post__text"> 1796 <h5 class="elementor-post__title"> 1797 <a href="https://thrivebyfive.co.za/thrive-by-five-index-2024-recommendations-brief-evidence-to-action/" > 1798 Thrive by Five Index 2024: Recommendations Brief: Evidence to Action </a> 1799 </h5> 1800 <div class="elementor-post__excerpt"> 1801 <p>The 2024 Index offers a clear overview of how young children in South Africa are developing in three key areas:</p> 1802 </div> 1803 1804 <a class="elementor-post__read-more" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-recommendations-brief-evidence-to-action/" aria-label="Read more about Thrive by Five Index 2024: Recommendations Brief: Evidence to Action" tabindex="-1" > 1805 Read More » </a> 1806 1807 </div> 1808 </div> 1809 </article> 1810 </div> 1811 1812 </div> 1813 </div> 1814 <div class="elementor-element elementor-element-5c0102b elementor-grid-3 elementor-grid-tablet-2 elementor-grid-mobile-1 elementor-posts--thumbnail-top elementor-card-shadow-yes elementor-posts__hover-gradient elementor-widget elementor-widget-posts" data-id="5c0102b" data-element_type="widget" data-e-type="widget" data-settings="{"cards_row_gap":{"unit":"px","size":30,"sizes":[]},"cards_columns":"3","cards_columns_tablet":"2","cards_columns_mobile":"1","cards_row_gap_widescreen":{"unit":"px","size":"","sizes":[]},"cards_row_gap_tablet":{"unit":"px","size":"","sizes":[]},"cards_row_gap_mobile":{"unit":"px","size":"","sizes":[]}}" data-widget_type="posts.cards"> 1815 <div class="elementor-widget-container"> 1816 <div class="elementor-posts-container elementor-posts elementor-posts--skin-cards elementor-grid" role="list"> 1817 <article class="elementor-post elementor-grid-item post-5223 post type-post status-publish format-standard has-post-thumbnail hentry category-24 category-reports-summary" role="listitem"> 1818 <div class="elementor-post__card"> 1819 <a class="elementor-post__thumbnail__link" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-national-findings/" tabindex="-1" ><div class="elementor-post__thumbnail"><img loading="lazy" decoding="async" width="2560" height="1710" src="https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-scaled.jpg" class="attachment-full size-full wp-image-5386" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-scaled.jpg 2560w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-300x200.jpg 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-1024x684.jpg 1024w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-768x513.jpg 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-1536x1026.jpg 1536w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03734-2048x1368.jpg 2048w" sizes="(max-width: 2560px) 100v
1819w, 2560px" /></div></a> 1820 <div class="elementor-post__badge">2024 Index</div> 1821 <div class="elementor-post__text"> 1822 <h3 class="elementor-post__title"> 1823 <a href="https://thrivebyfive.co.za/thrive-by-five-index-2024-national-findings/" > 1824 Thrive by Five Index 2024: National Findings </a> 1825 </h3> 1826 <div class="elementor-post__read-more-wrapper"> 1827 1828 <a class="elementor-post__read-more" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-national-findings/" aria-label="Read more about Thrive by Five Index 2024: National Findings" tabindex="-1" > 1829 Read More ⯠</a> 1830 1831 </div> 1832 </div> 1833 </div> 1834 </article> 1835 <article class="elementor-post elementor-grid-item post-5225 post type-post status-publish format-standard has-post-thumbnail hentry category-24 category-technical-data" role="listitem"> 1836 <div class="elementor-post__card"> 1837 <a class="elementor-post__thumbnail__link" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-technical-report/" tabindex="-1" ><div class="elementor-post__thumbnail"><img loading="lazy" decoding="async" width="338" height="173" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Rectangle-44-1.jpg" class="attachment-full size-full wp-image-262" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Rectangle-44-1.jpg 338w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Rectangle-44-1-300x154.jpg 300w" sizes="(max-width: 338px) 100vw, 338px" /></div></a> 1838 <div class="elementor-post__badge">2024 Index</div> 1839 <div class="elementor-post__text"> 1840 <h3 class="elementor-post__title"> 1841 <a href="https://thrivebyfive.co.za/thrive-by-five-index-2024-technical-report/" > 1842 Thrive by Five Index 2024: Technical Report </a> 1843 </h3> 1844 <div class="elementor-post__read-more-wrapper"> 1845 1846 <a class="elementor-post__read-more" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-technical-report/" aria-label="Read more about Thrive by Five Index 2024: Technical Report" tabindex="-1" > 1847 Read More ⯠</a> 1848 1849 </div> 1850 </div> 1851 </div> 1852 </article> 1853 <article class="elementor-post elementor-grid-item post-4734 post type-post status-publish format-standard has-post-thumbnail hentry category-24 category-insights-action" role="listitem"> 1854 <div class="elementor-post__card"> 1855 <a class="elementor-post__thumbnail__link" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-recommendations-brief-evidence-to-action/" tabindex="-1" ><div class="elementor-post__thumbnail"><img loading="lazy" decoding="async" width="2560" height="1710" src="https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-scaled.jpg" class="attachment-full size-full wp-image-5385" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-scaled.jpg 2560w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-300x200.jpg 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-1024x684.jpg 1024w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-768x513.jpg 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-1536x1026.jpg 1536w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/DSC03756-2048x1368.jpg 2048w" sizes="(max-width: 2560px) 100v
1855w, 2560px" /></div></a> 1856 <div class="elementor-post__badge">2024 Index</div> 1857 <div class="elementor-post__text"> 1858 <h3 class="elementor-post__title"> 1859 <a href="https://thrivebyfive.co.za/thrive-by-five-index-2024-recommendations-brief-evidence-to-action/" > 1860 Thrive by Five Index 2024: Recommendations Brief: Evidence to Action </a> 1861 </h3> 1862 <div class="elementor-post__read-more-wrapper"> 1863 1864 <a class="elementor-post__read-more" href="https://thrivebyfive.co.za/thrive-by-five-index-2024-recommendations-brief-evidence-to-action/" aria-label="Read more about Thrive by Five Index 2024: Recommendations Brief: Evidence to Action" tabindex="-1" > 1865 Read More ⯠</a> 1866 1867 </div> 1868 </div> 1869 </div> 1870 </article> 1871 </div> 1872 1873 </div> 1874 </div> 1875 <div class="elementor-element elementor-element-4fe0223 elementor-align-center elementor-widget elementor-widget-button" data-id="4fe0223" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 1876 <a class="elementor-button elementor-button-link elementor-size-sm" href="/Insights/"> 1877 <span class="elementor-button-content-wrapper"> 1878 <span class="elementor-button-icon"> 1879 <svg aria-hidden="true" class="e-font-icon-svg e-fas-long-arrow-alt-right" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"><path d="M313.941 216H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h301.941v46.059c0 21.382 25.851 32.09 40.971 16.971l86.059-86.059c9.373-9.373 9.373-24.569 0-33.941l-86.059-86.059c-15.119-15.119-40.971-4.411-40.971 16.971V216z"></path></svg> </span> 1880 <span class="elementor-button-text">View All Publications</span> 1881 </span> 1882 </a> 1883 </div> 1884 </div> 1885 </div> 1886 </div> 1887 <div class="elementor-element elementor-element-cfd43e8 e-flex e-con-boxed e-con e-parent" data-id="cfd43e8" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 1888 <div class="e-con-inner"> 1889 <div class="elementor-element elementor-element-0906333 e-con-full e-flex e-con e-child" data-id="0906333" data-element_type="container" data-e-type="container"> 1890 <div class="elementor-element elementor-element-a39b16b e-con-full e-flex e-con e-child" data-id="a39b16b" data-element_type="container" data-e-type="container"> 1891 <div class="elementor-element elementor-element-d5e017b elementor-widget elementor-widget-heading" data-id="d5e017b" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 1892 <h2 class="elementor-heading-title elementor-size-default">Why the Thrive by Five Index Matters</h2> </div> 1893 <div class="elementor-element elementor-element-b45a660 elementor-widget elementor-widget-text-editor" data-id="b45a660" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1894 <p>Provides the data South Africa needs to help every child thrive.</p> </div> 1895 <div class="elementor-element elementor-element-b155832 elementor-widget__width-initial blue_list elementor-widget-tablet__width-inherit elementor-widget elementor-widget-text-editor" data-id="b155832" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1896 <p>The first five years of life are a time of extraordinary growth. In these early years, childrenâs development is shaped by the environments they live, learn, and play in. Supportive settings at home, in learning programmes, and in communities can set children on a lifelong path to health, learning, and emotional wellbeing.</p> </div> 1897 <div class="elementor-element elementor-element-32166d1 elementor-widget__width-initial blue_list elementor-widget-tablet__width-inherit elementor-widget elementor-widget-text-editor" data-id="32166d1" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1898 <p>Yet South Africa has lacked reliable national data on whether young children are getting the support they need. The Thrive by Five Index fills that gap; it gives government, funders, and implementers a shared evidence base to guide early learning investments and policy decisions.</p> </div> 1899 <div class="elementor-element elementor-element-499075b elementor-widget elementor-widget-spacer" data-id="499075b" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default"> 1900 <div class="elementor-spacer"> 1901 <div class="elementor-spacer-inner"></div> 1902 </div> 1903 </div>
1904 </div> 1905 <div class="elementor-element elementor-element-2135b58 e-con-full e-flex e-con e-child" data-id="2135b58" data-element_type="container" data-e-type="container"> 1906 <div class="elementor-element elementor-element-f58f771 elementor-invisible elementor-widget elementor-widget-image" data-id="f58f771" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeInRight"}" data-widget_type="image.default"> 1907 <img loading="lazy" decoding="async" width="800" height="935" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-199-876x1024.png" class="attachment-large size-large wp-image-330" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-199-876x1024.png 876w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-199-257x300.png 257w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-199-768x898.png 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-199-1314x1536.png 1314w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-199-1752x2048.png 1752w" sizes="(max-width: 800px) 100vw, 800px" /> </div> 1908 </div> 1909 </div> 1910 </div> 1911 </div> 1912 <div class="elementor-element elementor-element-56e887ae e-flex e-con-boxed e-con e-parent" data-id="56e887ae" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","shape_divider_bottom":"waves","shape_divider_bottom_negative":"yes"}"> 1913 <div class="e-con-inner"> 1914 <div class="elementor-shape elementor-shape-bottom" aria-hidden="true" data-negative="true"> 1915 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none"> 1916 <path class="elementor-shape-fill" d="M790.5,93.1c-59.3-5.3-116.8-18-192.6-50c-29.6-12.7-76.9-31-100.5-35.9c-23.6-4.9-52.6-7.8-75.5-5.3 1917 c-10.2,1.1-22.6,1.4-50.1,7.4c-27.2,6.3-58.2,16.6-79.4,24.7c-41.3,15.9-94.9,21.9-134,22.6C72,58.2,0,25.8,0,25.8V100h1000V65.3 1918 c0,0-51.5,19.4-106.2,25.7C839.5,97,814.1,95.2,790.5,93.1z"/> 1919</svg> </div> 1920 <div class="elementor-element elementor-element-56ad4913 elementor-absolute elementor-widget elementor-widget-image" data-id="56ad4913" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 1921 <img loading="lazy" decoding="async" width="500" height="500" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-28-1.png" class="attachment-large size-large wp-image-3279" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-28-1.png 500w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-28-1-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-28-1-150x150.png 150w" sizes="(max-width: 500px) 100v
1921w, 500px" /> </div> 1922 <div class="elementor-element elementor-element-595b5888 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="595b5888" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1923 <p>The Thrive by Five Index directly supports South Africaâs goal of achieving universal access to quality early learning by 2030.</p> </div> 1924 <div class="elementor-element elementor-element-54dae166 elementor-absolute elementor-hidden-mobile elementor-widget elementor-widget-image" data-id="54dae166" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 1925 <img loading="lazy" decoding="async" width="500" height="500" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1.png" class="attachment-large size-large wp-image-3282" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1.png 500w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1-150x150.png 150w" sizes="(max-width: 500px) 100v
1925w, 500px" /> </div> 1926 </div> 1927 </div> 1928 <div class="elementor-element elementor-element-31f3515 e-flex e-con-boxed e-con e-parent" data-id="31f3515" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 1929 <div class="e-con-inner"> 1930 <div class="elementor-element elementor-element-330f8bc e-con-full e-flex e-con e-child" data-id="330f8bc" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 1931 <div class="elementor-element elementor-element-cdf490f e-con-full e-flex e-con e-child" data-id="cdf490f" data-element_type="container" data-e-type="container"> 1932 <div class="elementor-element elementor-element-bb8bbb5 elementor-invisible elementor-widget elementor-widget-image" data-id="bb8bbb5" data-element_type="widget" data-e-type="widget" data-settings="{"_animation":"fadeInLeft"}" data-widget_type="image.default"> 1933 <img loading="lazy" decoding="async" width="2494" height="2560" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-205-scaled.png" class="attachment-full size-full wp-image-365" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-205-scaled.png 2494w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-205-292x300.png 292w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-205-997x1024.png 997w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-205-768x788.png 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-205-1496x1536.png 1496w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-205-1995x2048.png 1995w" sizes="(max-width: 2494px) 100vw, 2494px" /> </div> 1934 </div> 1935 <div class="elementor-element elementor-element-54b0c1c e-con-full e-flex e-con e-child" data-id="54b0c1c" data-element_type="container" data-e-type="container"> 1936 <div class="elementor-element elementor-element-55bfabe elementor-widget elementor-widget-heading" data-id="55bfabe" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 1937 <h2 class="elementor-heading-title elementor-size-default">What the Thrive by Five Index Sets Out to Do 1938</h2> </div> 1939 <div class="elementor-element elementor-element-8661cfc elementor-widget elementor-widget-text-editor" data-id="8661cfc" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1940 <p>More than data, the Index is a catalyst for change</p> </div> 1941 <div class="elementor-element elementor-element-ef69a27 elementor-widget__width-initial blue_list elementor-widget-tablet__width-inherit elementor-widget elementor-widget-text-editor" data-id="ef69a27" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1942 <p>The Thrive by Five Index determines how many children in early learning programmes are developmentally on track across three key domains: early learning, physical growth, and social and emotional functioning. It also tracks how these outcomes differ by income, gender, and geography, helping to highlight inequalities and challenges faced by children in different contexts.</p><p><br></p> 1943<p>In addition, the Index identifies the strongest predictors of healthy child development, monitors South Africaâs progress toward both local and global developmental goals, and guides meaningful action to improve outcomes for all children.</p> </div> 1944 </div> 1945 </div> 1946 </div> 1947 </div> 1948 <div class="elementor-element elementor-element-1f4c58aa e-flex e-con-boxed e-con e-parent" data-id="1f4c58aa" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","shape_divider_bottom":"waves","shape_divider_bottom_negative":"yes"}"> 1949 <div class="e-con-inner"> 1950 <div class="elementor-shape elementor-shape-bottom" aria-hidden="true" data-negative="true"> 1951 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none"> 1952 <path class="elementor-shape-fill" d="M790.5,93.1c-59.3-5.3-116.8-18-192.6-50c-29.6-12.7-76.9-31-100.5-35.9c-23.6-4.9-52.6-7.8-75.5-5.3 1953 c-10.2,1.1-22.6,1.4-50.1,7.4c-27.2,6.3-58.2,16.6-79.4,24.7c-41.3,15.9-94.9,21.9-134,22.6C
195372,58.2,0,25.8,0,25.8V100h1000V65.3 1954 c0,0-51.5,19.4-106.2,25.7C839.5,97,814.1,95.2,790.5,93.1z"/> 1955</svg> </div> 1956 <div class="elementor-element elementor-element-17ae8d4d elementor-absolute elementor-widget elementor-widget-image" data-id="17ae8d4d" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 1957 <img loading="lazy" decoding="async" width="500" height="500" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-29.png" class="attachment-large size-large wp-image-3280" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-29.png 500w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-29-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-29-150x150.png 150w" sizes="(max-width: 500px) 100vw, 500px" /> </div> 1958 <div class="elementor-element elementor-element-68af00b5 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="68af00b5" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 1959 <p>The Thrive by Five Index shows how young children are developing, why it matters, and where action is needed to give every child a fair start.</p> </div> 1960 <div class="elementor-element elementor-element-16506065 elementor-absolute elementor-hidden-mobile elementor-widget elementor-widget-image" data-id="16506065" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 1961 <img loading="lazy" decoding="async" width="500" height="500" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-28-1.png" class="attachment-large size-large wp-image-3279" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-28-1.png 500w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-28-1-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-28-1-150x150.png 150w" sizes="(max-width: 500px) 100v
1961w, 500px" /> </div> 1962 </div> 1963 </div> 1964 <div class="elementor-element elementor-element-6296d69 e-flex e-con-boxed e-con e-parent" data-id="6296d69" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 1965 <div class="e-con-inner"> 1966 <div class="elementor-element elementor-element-4c94d9b elementor-widget elementor-widget-heading" data-id="4c94d9b" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 1967 <h2 class="elementor-heading-title elementor-size-default">The Early Learning Landscape in South Africa</h2> </div> 1968 <div class="elementor-element elementor-element-c73b164 e-con-full e-grid e-con e-child" data-id="c73b164" data-element_type="container" data-e-type="container"> 1969 <div class="elementor-element elementor-element-e772d71 flip-card-box elementor-flip-box--effect-flip elementor-flip-box--direction-up elementor-widget elementor-widget-flip-box" data-id="e772d71" data-element_type="widget" data-e-type="widget" data-widget_type="flip-box.default"> 1970 <div class="elementor-flip-box" tabindex="0"> 1971 <div class="elementor-flip-box__layer elementor-flip-box__front"> 1972 <div class="elementor-flip-box__layer__overlay"> 1973 <div class="elementor-flip-box__layer__inner"> 1974 <div class="elementor-flip-box__image"> 1975 <img loading="lazy" decoding="async" width="1024" height="1024" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/1.png" class="attachment-full size-full wp-image-3068" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/1.png 1024w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/1-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/1-150x150.png 150w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/1-768x768.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /> </div> 1976 1977 <h3 class="elementor-flip-box__layer__title"> 1978 1.2 Million 4 year olds in SA </h3> 1979 1980 </div> 1981 </div> 1982 </div> 1983 <div class="elementor-flip-box__layer elementor-flip-box__back"> 1984 <div class="elementor-flip-box__layer__overlay"> 1985 <div class="elementor-flip-box__layer__inner"> 1986 1987 <div class="elementor-flip-box__layer__description"> 1988 There are approximately 1.2 million four-year-olds in South Africa - the age targeted by the Thrive by Five Index. </div> 1989 1990 </div> 1991 </div> 1992 </div> 1993 </div> 1994 </div> 1995 <div class="elementor-element elementor-element-1ac4d27 flip-card-box elementor-flip-box--effect-flip elementor-flip-box--direction-up elementor-widget elementor-widget-flip-box" data-id="1ac4d27" data-element_type="widget" data-e-type="widget" data-widget_type="flip-box.default"> 1996 <div class="elementor-flip-box" tabindex="0"> 1997 <div class="elementor-flip-box__layer elementor-flip-box__front"> 1998 <div class="elementor-flip-box__layer__overlay"> 1999 <div class="elementor-flip-box__layer__inner"> 2000 <div class="elementor-flip-box__image"> 2001 <img loading="lazy" decoding="async" width="1024" height="1024" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/poor.png" class="attachment-full size-full wp-image-3070" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/poor.png 1024w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/poor-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/poor-150x150.png 150w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/poor-768x768.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /> </div> 2002 2003 <h3 class="elementor-flip-box__layer__title"> 2004 68% of 4-year olds live in poverty </h3> 2005 2006 </div> 2007 </div> 2008 </div> 2009 <div class="elementor-flip-box__layer elementor-flip-box__back"> 2010 <div class="elementor-flip-box__layer__overlay"> 2011 <div class="elementor-flip-box__layer__inner"> 2012 2013 <div class="elementor-flip-box__layer__description"> 2014 68% of 4-year-old children live in households with an income of less than R1,634 per person per month (2024) </div> 2015 2016 </div> 2017 </div> 2018 </div> 2019 </div> 2020 </div> 2021 <div class="elementor-element elementor-element-627f9d3 flip-card-box elementor-flip-box--effect-flip elementor-flip-box--direction-up elementor-widget elementor-widget-flip-box" data-id="627f9d3" data-element_type="widget" data-e-type="widget" data-widget_type="flip-box.default"> 2022 <div class="elementor-flip-box" tabindex="0"> 2023 <div class="elementor-flip-box__layer elementor-flip-box__front"> 2024 <div class="elementor-flip-box__layer__overlay"> 2025 <div class="elementor-flip-box__layer__inner"> 2026 <div class="elementor-flip-box__image"> 2027 <img loading="lazy" decoding="async" width="1024" height="1024" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/ngo.png" class="attachment-full size-full wp-image-3071" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/ngo.png 1024w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/ngo-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/ngo-150x150.png 150w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/ngo-768x768.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /> </div> 2028 2029 <h3 class="elementor-flip-box__layer__title"> 2030 ELPs are mostly private and NGO run </h3> 2031 2032 </div>
2033 </div> 2034 </div> 2035 <div class="elementor-flip-box__layer elementor-flip-box__back"> 2036 <div class="elementor-flip-box__layer__overlay"> 2037 <div class="elementor-flip-box__layer__inner"> 2038 2039 <div class="elementor-flip-box__layer__description"> 2040 Most early learning programmes in SA are delivered by private individuals and non-profit organisations. </div> 2041 2042 </div> 2043 </div> 2044 </div> 2045 </div> 2046 </div> 2047 <div class="elementor-element elementor-element-002066f flip-card-box elementor-flip-box--effect-flip elementor-flip-box--direction-up elementor-widget elementor-widget-flip-box" data-id="002066f" data-element_type="widget" data-e-type="widget" data-widget_type="flip-box.default"> 2048 <div class="elementor-flip-box" tabindex="0"> 2049 <div class="elementor-flip-box__layer elementor-flip-box__front"> 2050 <div class="elementor-flip-box__layer__overlay"> 2051 <div class="elementor-flip-box__layer__inner"> 2052 <div class="elementor-flip-box__image"> 2053 <img loading="lazy" decoding="async" width="150" height="150" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/60-150x150.png" class="attachment-thumbnail size-thumbnail wp-image-3072" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/60-150x150.png 150w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/60-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/60-768x768.png 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/60.png 1024w" sizes="(max-width: 150px) 100vw, 150px" /> </div> 2054 2055 <h3 class="elementor-flip-box__layer__title"> 2056 60% ELP attendance </h3> 2057 2058 </div> 2059 </div> 2060 </div> 2061 <div class="elementor-flip-box__layer elementor-flip-box__back"> 2062 <div class="elementor-flip-box__layer__overlay"> 2063 <div class="elementor-flip-box__layer__inner"> 2064 2065 <div class="elementor-flip-box__layer__description"> 2066 In 2024, ±60% of 4-year-olds were enrolled in an early learning programme, ± 10% were in school and ±30% were outside of any group learning programme. </div> 2067 2068 </div> 2069 </div> 2070 </div> 2071 </div> 2072 </div> 2073 <div class="elementor-element elementor-element-ed040d1 flip-card-box elementor-flip-box--effect-flip elementor-flip-box--direction-up elementor-widget elementor-widget-flip-box" data-id="ed040d1" data-element_type="widget" data-e-type="widget" data-widget_type="flip-box.default"> 2074 <div class="elementor-flip-box" tabindex="0"> 2075 <div class="elementor-flip-box__layer elementor-flip-box__front"> 2076 <div class="elementor-flip-box__layer__overlay"> 2077 <div class="elementor-flip-box__layer__inner"> 2078 <div class="elementor-flip-box__image"> 2079 <img loading="lazy" decoding="async" width="150" height="150" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/learning_11487042-1-150x150.png" class="attachment-thumbnail size-thumbnail wp-image-549" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/learning_11487042-1-150x150.png 150w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/learning_11487042-1.png 190w" sizes="(max-width: 150px) 100vw, 150px" /> </div> 2080 2081 <h3 class="elementor-flip-box__layer__title"> 2082 SA commitment to expand access & quality </h3> 2083 2084 </div> 2085 </div> 2086 </div> 2087 <div class="elementor-flip-box__layer elementor-flip-box__back"> 2088 <div class="elementor-flip-box__layer__overlay"> 2089 <div class="elementor-flip-box__layer__inner"> 2090 2091 <div class="elementor-flip-box__layer__description"> 2092 The SA National Development Plan commits to providing two years of quality preschool education for every child in South Africa, by 2030. 2093 </div> 2094 2095 </div> 2096 </div> 2097 </div> 2098 </div> 2099 </div> 2100 <div class="elementor-element elementor-element-46db9f5 flip-card-box elementor-flip-box--effect-flip elementor-flip-box--direction-up elementor-widget elementor-widget-flip-box" data-id="46db9f5" data-element_type="widget" data-e-type="widget" data-widget_type="flip-box.default"> 2101 <div class="elementor-flip-box" tabindex="0"> 2102 <div class="elementor-flip-box__layer elementor-flip-box__front"> 2103 <div class="elementor-flip-box__layer__overlay"> 2104 <div class="elementor-flip-box__layer__inner"> 2105 <div class="elementor-flip-box__image"> 2106 <img loading="lazy" decoding="async" width="150" height="150" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/bp2-150x150.png" class="attachment-thumbnail size-thumbnail wp-image-3074" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/bp2-150x150.png 150w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/bp2-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/bp2-768x768.png 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/bp2.png 1024w" sizes="(max-width: 150px) 100v
2106w, 150px" /> </div> 2107 2108 <h3 class="elementor-flip-box__layer__title"> 2109 Bana Pele<p style="font-size:17px;line-height: 20px">A national commitment to put children first</p> </h3> 2110 2111 </div> 2112 </div> 2113 </div> 2114 <div class="elementor-flip-box__layer elementor-flip-box__back"> 2115 <div class="elementor-flip-box__layer__overlay"> 2116 <div class="elementor-flip-box__layer__inner"> 2117 2118 <div class="elementor-flip-box__layer__description"> 2119 The Bana Pele Blueprint is an implementation guide that supports collective action towards our 2030 goals for early learning in SA. </div> 2120 2121 </div> 2122 </div> 2123 </div> 2124 </div> 2125 </div> 2126 </div> 2127 </div> 2128 </div> 2129 <div class="elementor-element elementor-element-13907be9 elementor-hidden-widescreen elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile e-flex e-con-boxed e-con e-parent" data-id="13907be9" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","shape_divider_bottom":"waves","shape_divider_bottom_negative":"yes"}"> 2130 <div class="e-con-inner"> 2131 <div class="elementor-shape elementor-shape-bottom" aria-hidden="true" data-negative="true"> 2132 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none"> 2133 <path class="elementor-shape-fill" d="M790.5,93.1c-59.3-5.3-116.8-18-192.6-50c-29.6-12.7-76.9-31-100.5-35.9c-23.6-4.9-52.6-7.8-75.5-5.3 2134 c-10.2,1.1-22.6,1.4-50.1,7.4c-27.2,6.3-58.2,16.6-79.4,24.7c-41.3,15.9-94.9,21.9-134,22.6C72,58.2,0,25.8,0,25.8V100h1000V65.3 2135 c0,0-51.5,19.4-106.2,25.7C839.5,97,814.1,95.2,790.5,93.1z"/> 2136</svg> </div> 2137 <div class="elementor-element elementor-element-44d3a2c elementor-absolute elementor-widget elementor-widget-image" data-id="44d3a2c" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 2138 <img loading="lazy" decoding="async" width="500" height="500" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1.png" class="attachment-large size-large wp-image-3282" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1.png 500w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1-150x150.png 150w" sizes="(max-width: 500px) 100v
2138w, 500px" /> </div> 2139 <div class="elementor-element elementor-element-2d1517e1 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="2d1517e1" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 2140 <p>A coordinated effort is needed to expand access to quality early learning, so that more children can start school On Track.</p> </div> 2141 <div class="elementor-element elementor-element-b5d0969 elementor-absolute elementor-hidden-mobile elementor-widget elementor-widget-image" data-id="b5d0969" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 2142 <img loading="lazy" decoding="async" width="500" height="500" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-30.png" class="attachment-large size-large wp-image-3281" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-30.png 500w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-30-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-30-150x150.png 150w" sizes="(max-width: 500px) 100v
2142w, 500px" /> </div> 2143 </div> 2144 </div> 2145 <div class="elementor-element elementor-element-b710c91 e-flex e-con-boxed e-con e-parent" data-id="b710c91" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","shape_divider_bottom":"waves","shape_divider_bottom_negative":"yes"}"> 2146 <div class="e-con-inner"> 2147 <div class="elementor-shape elementor-shape-bottom" aria-hidden="true" data-negative="true"> 2148 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none"> 2149 <path class="elementor-shape-fill" d="M790.5,93.1c-59.3-5.3-116.8-18-192.6-50c-29.6-12.7-76.9-31-100.5-35.9c-23.6-4.9-52.6-7.8-75.5-5.3 2150 c-10.2,1.1-22.6,1.4-50.1,7.4c-27.2,6.3-58.2,16.6-79.4,24.7c-41.3,15.9-94.9,21.9-134,22.6C72,58.2,0,25.8,0,25.8V100h1000V65.3 2151 c0,0-51.5,19.4-106.2,25.7C839.5,97,814.1,95.2,790.5,93.1z"/> 2152</svg> </div> 2153 <div class="elementor-element elementor-element-491a0bdc elementor-absolute elementor-widget elementor-widget-image" data-id="491a0bdc" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 2154 <img loading="lazy" decoding="async" width="500" height="500" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1.png" class="attachment-large size-large wp-image-3282" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1.png 500w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31-1-150x150.png 150w" sizes="(max-width: 500px) 100v
2154w, 500px" /> </div> 2155 <div class="elementor-element elementor-element-652cf3b1 elementor-widget elementor-widget-heading" data-id="652cf3b1" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2156 <h2 class="elementor-heading-title elementor-size-default">2024 Dataset Download </h2> </div> 2157 <div class="elementor-element elementor-element-393a5ba1 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="393a5ba1" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 2158 <p>The full anonymised 2024 Thrive by Five Index dataset is available<br />on the University of Cape Town Data First open data portal.</p> </div> 2159 <div class="elementor-element elementor-element-386d2a1 elementor-align-center elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-widget elementor-widget-button" data-id="386d2a1" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 2160 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://doi.org/10.25828/k91x-gm18" target="_blank"> 2161 <span class="elementor-button-content-wrapper"> 2162 <span class="elementor-button-icon"> 2163 <svg aria-hidden="true" class="e-font-icon-svg e-fas-long-arrow-alt-right" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"><path d="M313.941 216H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h301.941v46.059c0 21.382 25.851 32.09 40.971 16.971l86.059-86.059c9.373-9.373 9.373-24.569 0-33.941l-86.059-86.059c-15.119-15.119-40.971-4.411-40.971 16.971V216z"></path></svg> </span> 2164 <span class="elementor-button-text">Visit the data first data portal</span> 2165 </span> 2166 </a> 2167 </div> 2168 <div class="elementor-element elementor-element-62c3de06 elementor-absolute elementor-hidden-mobile elementor-widget elementor-widget-image" data-id="62c3de06" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="image.default"> 2169 <img loading="lazy" decoding="async" width="500" height="500" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-30.png" class="attachment-large size-large wp-image-3281" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-30.png 500w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-30-300x300.png 300w, https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-30-150x150.png 150w" sizes="(max-width: 500px) 100v
2169w, 500px" /> </div> 2170 </div> 2171 </div> 2172 <div class="elementor-element elementor-element-9965082 e-flex e-con-boxed e-con e-child" data-id="9965082" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","shape_divider_top":"waves","shape_divider_top_negative":"yes","shape_divider_bottom":"waves"}"> 2173 <div class="e-con-inner"> 2174 <div class="elementor-shape elementor-shape-top" aria-hidden="true" data-negative="true"> 2175 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none"> 2176 <path class="elementor-shape-fill" d="M790.5,93.1c-59.3-5.3-116.8-18-192.6-50c-29.6-12.7-76.9-31-100.5-35.9c-23.6-4.9-52.6-7.8-75.5-5.3 2177 c-10.2,1.1-22.6,1.4-50.1,7.4c-27.2,6.3-58.2,16.6-79.4,24.7c-41.3,15.9-94.9,21.9-134,22.6C72,58.2,0,25.8,0,25.8V100h1000V65.3 2178 c0,0-51.5,19.4-106.2,25.7C839.5,97,814.1,95.2,790.5,93.1z"/> 2179</svg> </div> 2180 <div class="elementor-shape elementor-shape-bottom" aria-hidden="true" data-negative="false"> 2181 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none"> 2182 <path class="elementor-shape-fill" d="M421.9,6.5c22.6-2.5,51.5,0.4,75.5,5.3c23.6,4.9,70.9,23.5,100.5,35.7c75.8,32.2,133.7,44.5,192.6,49.7 2183 c23.6,2.1,48.7,3.5,103.4-2.5c54.7-6,106.2-25.6,106.2-25.6V0H0v30.3c0,0,72,32.6,158.4,30.5c39.2-0.7,92.8-6.7,134-22.4 2184 c21.2-8.1,52.2-18.2,79.7-24.2C399.3,7.9,411.6,7.5,421.9,6.5z"/> 2185</svg> </div> 2186 <div class="elementor-element elementor-element-4b9f6a5 elementor-widget elementor-widget-heading" data-id="4b9f6a5" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2187 <h2 class="elementor-heading-title elementor-size-default">Index 2024 Reports & Recommendations</h2> </div> 2188 <div class="elementor-element elementor-element-e8243e7 elementor-widget elementor-widget-text-editor" data-id="e8243e7" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 2189 <p>Explore our research and insights on early childhood development.</p> </div> 2190 <div class="elementor-element elementor-element-8152404 e-con-full e-flex e-con e-child" data-id="8152404" data-element_type="container" data-e-type="container"> 2191 <div class="elementor-element elementor-element-2b73588 e-con-full e-flex e-con e-child" data-id="2b73588" data-element_type="container" data-e-type="container"> 2192 <div class="elementor-element elementor-element-6e98c78 elementor-widget elementor-widget-image" data-id="6e98c78" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 2193 <figure class="wp-caption"> 2194 <a href="https://thrivebyfive.co.za/wp-content/uploads/2026/09/TB5-Main-Report_FINAL_a.pdf" target="_blank"> 2195 <img loading="lazy" decoding="async" width="736" height="1024" src="https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Main-Report_FINAL-1-736x1024.jpg" class="attachment-large size-large wp-image-4634" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Main-Report_FINAL-1-736x1024.jpg 736w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Main-Report_FINAL-1-216x300.jpg 216w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Main-Report_FINAL-1-768x1068.jpg 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Main-Report_FINAL-1.jpg 1000w" sizes="(max-width: 736px) 100vw, 736px" /> </a> 2196 <figcaption class="widget-image-caption wp-caption-text">Index Report: An overview of the key national findings from the Index.</figcaption> 2197 </figure> 2198 </div> 2199 </div> 2200 <div class="elementor-element elementor-element-922005a e-con-full e-flex e-con e-child" data-id="922005a" data-element_type="container" data-e-type="container"> 2201 <div class="elementor-element elementor-element-4032197 elementor-widget elementor-widget-image" data-id="4032197" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 2202 <figure class="wp-caption"> 2203 <a href="https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Technical-Report_FINAL.pdf" target="_blank"> 2204 <img loading="lazy" decoding="async" width="736" height="1024" src="https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Technical-Report_FINAL-1-736x1024.jpg" class="attachment-large size-large wp-image-4635" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Technical-Report_FINAL-1-736x1024.jpg 736w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Technical-Report_FINAL-1-216x300.jpg 216w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Technical-Report_FINAL-1-768x1068.jpg 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-Technical-Report_FINAL-1.jpg 1000w" sizes="(max-width: 736px) 100v
2204w, 736px" /> </a> 2205 <figcaption class="widget-image-caption wp-caption-text">Technical Report: A detailed description of the study design, methods, and key features.</figcaption> 2206 </figure> 2207 </div> 2208 </div> 2209 <div class="elementor-element elementor-element-e10a986 e-con-full e-flex e-con e-child" data-id="e10a986" data-element_type="container" data-e-type="container"> 2210 <div class="elementor-element elementor-element-dc50a4f elementor-widget elementor-widget-image" data-id="dc50a4f" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 2211 <figure class="wp-caption"> 2212 <a href="https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-RecommendationsBriefEvidencetoAction-FINAL.pdf" target="_blank"> 2213 <img loading="lazy" decoding="async" width="736" height="1024" src="https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-RecommendationsBriefEvidencetoAction-FINAL-1-736x1024.jpg" class="attachment-large size-large wp-image-6049" alt="" srcset="https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-RecommendationsBriefEvidencetoAction-FINAL-1-736x1024.jpg 736w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-RecommendationsBriefEvidencetoAction-FINAL-1-216x300.jpg 216w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-RecommendationsBriefEvidencetoAction-FINAL-1-768x1068.jpg 768w, https://thrivebyfive.co.za/wp-content/uploads/2025/09/TB5-RecommendationsBriefEvidencetoAction-FINAL-1.jpg 1000w" sizes="(max-width: 736px) 100vw, 736px" /> </a> 2214 <figcaption class="widget-image-caption wp-caption-text">Recommendations Brief: Evidence to Action</figcaption> 2215 </figure> 2216 </div> 2217 </div> 2218 </div> 2219 </div> 2220 </div> 2221 </div> 2222 2223 2224 </div> 2225 2226 2227</main> 2228 2229 <footer data-elementor-type="footer" data-elementor-id="18" class="elementor elementor-18 elementor-location-footer" data-elementor-post-type="elementor_library"> 2230 <div class="elementor-element elementor-element-4f8d54f e-con-full main-footer-container e-flex e-con e-parent" data-id="4f8d54f" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 2231 <div class="elementor-element elementor-element-e2022f1 e-flex e-con-boxed e-con e-child" data-id="e2022f1" data-element_type="container" data-e-type="container"> 2232 <div class="e-con-inner"> 2233 <div class="elementor-element elementor-element-ebf37dd e-con-full e-flex e-con e-child" data-id="ebf37dd" data-element_type="container" data-e-type="container"> 2234 <div class="elementor-element elementor-element-ddb4663 elementor-widget elementor-widget-image" data-id="ddb4663" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 2235 <img width="160" height="59" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/asset-9.png" class="attachment-large size-large wp-image-669" alt="" /> </div> 2236 <div class="elementor-element elementor-element-b22023a elementor-widget elementor-widget-text-editor" data-id="b22023a" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 2237 <p><span style="font-weight: 400;">Measuring what matters, mobilising what works – for every young child in South Africa</span></p> </div> 2238 </div> 2239 <div class="elementor-element elementor-element-95e23ce e-con-full e-flex e-con e-child" data-id="95e23ce" data-element_type="container" data-e-type="container"> 2240 <div class="elementor-element elementor-element-41bea96 elementor-widget elementor-widget-heading" data-id="41bea96" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2241 <h2 class="elementor-heading-title elementor-size-default">Index Years</h2> </div> 2242 <div class="elementor-element elementor-element-1c5b3d1 elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="1c5b3d1" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 2243 <ul class="elementor-icon-list-items"> 2244 <li class="elementor-icon-list-item"> 2245 <a href="/findings-enrolled-children/"> 2246 2247 <span class="elementor-icon-list-text">2024</span> 2248 </a> 2249 </li> 2250 <li class="elementor-icon-list-item"> 2251 <a href="/2021-findings/"> 2252 2253 <span class="elementor-icon-list-text">2021</span> 2254 </a> 2255 </li> 2256 <li class="elementor-icon-list-item"> 2257 <span class="elementor-icon-list-text">2027 (Coming Soon)</span> 2258 </li> 2259 </ul> 2260 </div>
2261 </div> 2262 <div class="elementor-element elementor-element-b302e6c e-con-full e-flex e-con e-child" data-id="b302e6c" data-element_type="container" data-e-type="container"> 2263 <div class="elementor-element elementor-element-41ef713 elementor-widget elementor-widget-heading" data-id="41ef713" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2264 <h2 class="elementor-heading-title elementor-size-default">Resources</h2> </div> 2265 <div class="elementor-element elementor-element-91d365f elementor-nav-menu--dropdown-none elementor-widget elementor-widget-nav-menu" data-id="91d365f" data-element_type="widget" data-e-type="widget" data-settings="{"layout":"vertical","submenu_icon":{"value":"<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-caret-down\" viewBox=\"0 0 320 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z\"><\/path><\/svg>","library":"fa-solid"}}" data-widget_type="nav-menu.default"> 2266 <nav aria-label="Menu" class="elementor-nav-menu--main elementor-nav-menu__container elementor-nav-menu--layout-vertical e--pointer-underline e--animation-fade"> 2267 <ul id="menu-1-91d365f" class="elementor-nav-menu sm-vertical"><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-117"><a href="/privacy-policy" class="elementor-item">Privacy Policy</a></li> 2268<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3695"><a href="https://thrivebyfive.co.za/insights/" class="elementor-item">Publications</a></li> 2269</ul> </nav> 2270 <nav class="elementor-nav-menu--dropdown elementor-nav-menu__container" aria-hidden="true"> 2271 <ul id="menu-2-91d365f" class="elementor-nav-menu sm-vertical"><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-117"><a href="/privacy-policy" class="elementor-item" tabindex="-1">Privacy Policy</a></li> 2272<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3695"><a href="https://thrivebyfive.co.za/insights/" class="elementor-item" tabindex="-1">Publications</a></li> 2273</ul> </nav> 2274 </div> 2275 </div> 2276 <div class="elementor-element elementor-element-a103c6f e-con-full e-flex e-con e-child" data-id="a103c6f" data-element_type="container" data-e-type="container"> 2277 <div class="elementor-element elementor-element-7ff7c1c elementor-widget elementor-widget-heading" data-id="7ff7c1c" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2278 <h2 class="elementor-heading-title elementor-size-default">Co-Ordinated by:</h2> </div> 2279 <div class="elementor-element elementor-element-b0cb8de elementor-widget elementor-widget-image" data-id="b0cb8de" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 2280 <img width="81" height="29" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Image-w-20.png" class="attachment-large size-large wp-image-122" alt="" /> </div> 2281 <div class="elementor-element elementor-element-33b5613 elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="33b5613" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 2282 <ul class="elementor-icon-list-items"> 2283 <li class="elementor-icon-list-item"> 2284 <a href="mailto:%[email protected]"> 2285 2286 <span class="elementor-icon-list-icon"> 2287 <svg aria-hidden="true" class="e-font-icon-svg e-fas-envelope" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.
22876-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z"></path></svg> </span> 2288 <span class="elementor-icon-list-text">[email protected]</span> 2289 </a> 2290 </li> 2291 </ul> 2292 </div> 2293 </div> 2294 </div> 2295 </div> 2296 <div class="elementor-element elementor-element-1b168f6 e-con-full e-flex e-con e-child" data-id="1b168f6" data-element_type="container" data-e-type="container"> 2297 <div class="elementor-element elementor-element-afcd5de elementor-widget-divider--view-line elementor-widget elementor-widget-divider" data-id="afcd5de" data-element_type="widget" data-e-type="widget" data-widget_type="divider.default"> 2298 <div class="elementor-divider"> 2299 <span class="elementor-divider-separator"> 2300 </span> 2301 </div> 2302 </div> 2303 <div class="elementor-element elementor-element-67e7dba elementor-widget elementor-widget-text-editor" data-id="67e7dba" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 2304 <p>© 2025 Thrive by Five. All rights reserved.</p> </div> 2305 </div> 2306 <div class="elementor-element elementor-element-129b7a7 elementor-absolute elementor-invisible elementor-widget elementor-widget-image" data-id="129b7a7" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute","_animation":"fadeInRight"}" data-widget_type="image.default"> 2307 <img width="119" height="146" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Group-175.png" class="attachment-large size-large wp-image-133" alt="" /> </div> 2308 <div class="elementor-element elementor-element-a9938af elementor-absolute elementor-invisible elementor-widget elementor-widget-image" data-id="a9938af" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute","_animation":"fadeInUp"}" data-widget_type="image.default"> 2309 <img width="146" height="55" src="https://thrivebyfive.co.za/wp-content/uploads/2025/08/Ellipse-31.png" class="attachment-large size-large wp-image-134" alt="" /> </div> 2310 </div> 2311 </footer> 2312
2313<script type="speculationrules"> 2314{"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/hello-elementor-child-1/*","/wp-content/themes/hello-elementor/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 2315</script>
2315 2316
2316<script> 2317 ( () => { 2318 const lazyloadRunObserver = () => { 2319 const lazyloadBackgrounds = document.querySelectorAll( `.e-con.e-parent:not(.e-lazyloaded)` ); 2320 const lazyloadBackgroundObserver = new IntersectionObserver( ( entries ) => { 2321 entries.forEach( ( entry ) => { 2322 if ( entry.isIntersecting ) { 2323 let lazyloadBackground = entry.target; 2324 if( lazyloadBackground ) { 2325 lazyloadBackground.classList.add( 'e-lazyloaded' ); 2326 } 2327 lazyloadBackgroundObserver.unobserve( entry.target ); 2328 } 2329 }); 2330 }, { rootMargin: '200px 0px 200px 0px' } ); 2331 lazyloadBackgrounds.forEach( ( lazyloadBackground ) => { 2332 lazyloadBackgroundObserver.observe( lazyloadBackground ); 2333 } ); 2334 }; 2335 const events = [ 2336 'DOMContentLoaded', 2337 'elementor/lazyload/observe', 2338 ]; 2339 events.forEach( ( event ) => { 2340 document.addEventListener( event, lazyloadRunObserver ); 2341 } ); 2342 } )(); 2343 </script>
2343 2344
2344<script id="hello-theme-frontend-js" src="https://thrivebyfive.co.za/wp-content/themes/hello-elementor/assets/js/hello-frontend.js?ver=3.4.4"></script>
vendor: 1 bytes, line 2344
2344
2345<script id="elementor-webpack-runtime-js" src="https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/js/webpack.runtime.min.js?ver=4.2.4"></script>
vendor: 1 bytes, line 2345
2345
2346<script id="elementor-frontend-modules-js" src="https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/js/frontend-modules.min.js?ver=4.2.4"></script>
vendor: 1 bytes, line 2346
2346
2347<script id="jquery-ui-core-js-before"> 2348jQuery.uiBackCompat = true; 2349//# sourceURL=jquery-ui-core-js-before 2350</script>
vendor: 1 bytes, line 2350
2350
2351<script id="jquery-ui-core-js" src="https://thrivebyfive.co.za/wp-includes/js/jquery/ui/core.min.js?ver=1.14.2"></script>
vendor: 1 bytes, line 2351
2351
2352<script id="elementor-frontend-js-before"> 2353var elementorFrontendConfig = {"environmentMode":{"edit":false,"wpPreview":false,"isScriptDebug":false},"i18n":{"shareOnFacebook":"Share on Facebook","shareOnX":"Share on X","pinIt":"Pin it","download":"Download","downloadImage":"Download image","fullscreen":"Fullscreen","zoom":"Zoom","share":"Share","playVideo":"Play Video","previous":"Tap to select the previous period","next":"Next","close":"Close","a11yCarouselPrevSlideMessage":"Previous slide","a11yCarouselNextSlideMessage":"Next slide","a11yCarouselFirstSlideMessage":"This is the first slide","a11yCarouselLastSlideMessage":"This is the last slide","a11yCarouselPaginationBulletMessage":"Go to slide"},"is_rtl":false,"breakpoints":{"xs":0,"sm":480,"md":768,"lg":1025,"xl":1440,"xxl":1600},"responsive":{"breakpoints":{"mobile":{"label":"Mobile Portrait","value":767,"default_value":767,"direction":"max","is_enabled":true},"mobile_extra":{"label":"Mobile Landscape","value":880,"default_value":880,"direction":"max","is_enabled":false},"tablet":{"label":"Tablet Portrait","value":1024,"default_value":1024,"direction":"max","is_enabled":true},"tablet_extra":{"label":"Tablet Landscape","value":1200,"default_value":1200,"direction":"max","is_enabled":false},"laptop":{"label":"Laptop","value":1366,"default_value":1366,"direction":"max","is_enabled":false},"widescreen":{"label":"Widescreen","value":1500,"default_value":2400,"direction":"min","is_enabled":true}},"hasCustomBreakpoints":true},"version":"4.2.4","is_static":false,"experimentalFeatures":{"e_font_icon_svg":true,"additional_custom_breakpoints":true,"container":true,"e_optimized_markup":true,"e_panel_promotions":true,"theme_builder_v2":true,"hello-theme-header-footer":true,"nested-elements":true,"global_classes_should_enforce_capabilities":true,"e_variables":true,"e_opt_in_v4_page":true,"e_components":true,"e_interactions":true,"e_widget_creation":true,"import-export-customization":true,"e_pro_atomic_form":true,"e_pro_collection_loop":true,"mega-menu":true,"e_pro_variables":true,"e_pro_interactions":true},"urls":{"assets":"https:\/\/thrivebyfive.co.za\/wp-content\/plugins\/elementor\/assets\/","ajaxurl":"https:\/\/thrivebyfive.co.za\/wp-admin\/admin-ajax.php","uploadUrl":"https:\/\/thrivebyfive.co.za\/wp-content\/uploads"},"nonces":{"floatingButtonsClickTracking":"5a62d75772","atomicFormsSendForm":"878e84932f"},"swiperClass":"swiper","settings":{"page":[],"editorPreferences":[]},"kit":{"body_background_background":"classic","active_breakpoints":["viewport_mobile","viewport_tablet","viewport_widescreen"],"viewport_widescreen":1500,"global_image_lightbox":"yes","lightbox_enable_counter":"yes","lightbox_enable_fullscreen":"yes","lightbox_enable_zoom":"yes","lightbox_enable_share":"yes","lightbox_title_src":"title","lightbox_description_src":"description","hello_header_logo_type":"title","hello_header_menu_layout":"horizontal","hello_footer_logo_type":"logo"},"post":{"id":13,"title":"Thrive%20by%20Five%20Index%20South%20Africa","excerpt":"","featuredImage":false}}; 2354//# sourceURL=elementor-frontend-js-before 2355</script>
vendor: 1 bytes, line 2355
2355
2356<script id="elementor-frontend-js" src="https://thrivebyfive.co.za/wp-content/plugins/elementor/assets/js/frontend.min.js?ver=4.2.4"></script>
vendor: 1 bytes, line 2356
2356
2357<script id="smartmenus-js" src="https://thrivebyfive.co.za/wp-content/plugins/elementor-pro/assets/lib/smartmenus/jquery.smartmenus.min.js?ver=1.2.1"></script>
vendor: 1 bytes, line 2357
2357
2358<script id="imagesloaded-js" src="https://thrivebyfive.co.za/wp-includes/js/imagesloaded.min.js?ver=5.0.0"></script>
vendor: 1 bytes, line 2358
2358
2359<script id="googlesitekit-events-provider-content-events-js-before"> 2360window._googlesitekit = window._googlesitekit || {}; 2361window._googlesitekit.contentEvents = {"postID":13,"isSinglePost":false,"hasVimeoEmbed":false}; 2362//# sourceURL=googlesitekit-events-provider-content-events-js-before 2363</script>
vendor: 1 bytes, line 2363
2363
2364<script id="googlesitekit-events-provider-content-events-js" src="https://thrivebyfive.co.za/wp-content/plugins/google-site-kit/dist/assets/js/googlesitekit-events-provider-content-events-bb83c1a0aedefa5d25d1.js" defer></script>
vendor: 1 bytes, line 2364
2364
2365<script id="elementor-pro-webpack-runtime-js" src="https://thrivebyfive.co.za/wp-content/plugins/elementor-pro/assets/js/webpack-pro.runtime.min.js?ver=4.2.3"></script>
vendor: 1 bytes, line 2365
2365
2366<script id="wp-hooks-js" src="https://thrivebyfive.co.za/wp-includes/js/dist/hooks.min.js?ver=f0f188028580e8dc1255"></script>
vendor: 1 bytes, line 2366
2366
2367<script id="wp-i18n-js" src="https://thrivebyfive.co.za/wp-includes/js/dist/i18n.min.js?ver=1dfe7db3940c23ea9216"></script>
vendor: 1 bytes, line 2367
2367
2368<script id="wp-i18n-js-after"> 2369wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 2370//# sourceURL=wp-i18n-js-after 2371</script>
vendor: 1 bytes, line 2371
2371
2372<script id="elementor-pro-frontend-js-before"> 2373var ElementorProFrontendConfig = {"ajaxurl":"https:\/\/thrivebyfive.co.za\/wp-admin\/admin-ajax.php","nonce":"58577b1dc9","urls":{"assets":"https:\/\/thrivebyfive.co.za\/wp-content\/plugins\/elementor-pro\/assets\/","rest":"https:\/\/thrivebyfive.co.za\/wp-json\/"},"settings":{"lazy_load_background_images":true},"popup":{"hasPopUps":false},"shareButtonsNetworks":{"facebook":{"title":"Facebook","has_counter":true},"twitter":{"title":"Twitter"},"linkedin":{"title":"LinkedIn","has_counter":true},"pinterest":{"title":"Pinterest","has_counter":true},"reddit":{"title":"Reddit","has_counter":true},"vk":{"title":"VK","has_counter":true},"odnoklassniki":{"title":"OK","has_counter":true},"tumblr":{"title":"Tumblr"},"digg":{"title":"Digg"},"skype":{"title":"Skype"},"stumbleupon":{"title":"StumbleUpon","has_counter":true},"mix":{"title":"Mix"},"telegram":{"title":"Telegram"},"pocket":{"title":"Pocket","has_counter":true},"xing":{"title":"XING","has_counter":true},"whatsapp":{"title":"WhatsApp"},"email":{"title":"Email"},"print":{"title":"Print"},"x-twitter":{"title":"X"},"threads":{"title":"Threads"}},"facebook_sdk":{"lang":"en_ZA","app_id":""},"lottie":{"defaultAnimationUrl":"https:\/\/thrivebyfive.co.za\/wp-content\/plugins\/elementor-pro\/modules\/lottie\/assets\/animations\/default.json"}}; 2374//# sourceURL=elementor-pro-frontend-js-before 2375</script>
vendor: 1 bytes, line 2375
2375
2376<script id="elementor-pro-frontend-js" src="https://thrivebyfive.co.za/wp-content/plugins/elementor-pro/assets/js/frontend.min.js?ver=4.2.3"></script>
vendor: 1 bytes, line 2376
2376
2377<script id="pro-elements-handlers-js" src="https://thrivebyfive.co.za/wp-content/plugins/elementor-pro/assets/js/elements-handlers.min.js?ver=4.2.3"></script>
2377 2378 <style> 2379 .unlimited-elements-background-overlay{ 2380 position:absolute; 2381 top:0px; 2382 left:0px; 2383 width:100%; 2384 height:100%; 2385 z-index:0; 2386 } 2387 2388 .unlimited-elements-background-overlay.uc-bg-front{ 2389 z-index:999; 2390 } 2391 </style> 2392 2393
2393<script type='text/javascript'> 2394 2395 jQuery(document).ready(function(){ 2396 2397 function ucBackgroundOverlayPutStart(){ 2398 2399 var objBG = jQuery(".unlimited-elements-background-overlay").not(".uc-bg-attached"); 2400 2401 if(objBG.length == 0) 2402 return(false); 2403 2404 objBG.each(function(index, bgElement){ 2405 2406 var objBgElement = jQuery(bgElement); 2407 2408 var targetID = objBgElement.data("forid"); 2409 2410 var location = objBgElement.data("location"); 2411 2412 switch(location){ 2413 case "body": 2414 case "body_front": 2415 var objTarget = jQuery("body"); 2416 break; 2417 case "layout": 2418 case "layout_front": 2419 var objLayout = jQuery("*[data-id=\""+targetID+"\"]"); 2420 var objTarget = objLayout.parents(".elementor"); 2421 if(objTarget.length > 1) 2422 objTarget = jQuery(objTarget[0]); 2423 break; 2424 default: 2425 var objTarget = jQuery("*[data-id=\""+targetID+"\"]"); 2426 break; 2427 } 2428 2429 2430 if(objTarget.length == 0) 2431 return(true); 2432 2433 var objVideoContainer = objTarget.children(".elementor-background-video-container"); 2434 2435 if(objVideoContainer.length == 1) 2436 objBgElement.detach().insertAfter(objVideoContainer).show(); 2437 else 2438 objBgElement.detach().prependTo(objTarget).show(); 2439 2440 2441 var objTemplate = objBgElement.children("template"); 2442 2443 if(objTemplate.length){ 2444 2445 var clonedContent = objTemplate[0].content.cloneNode(true); 2446 2447 var objScripts = jQuery(clonedContent).find("script"); 2448 if(objScripts.length) 2449 objScripts.attr("type","text/javascript"); 2450 2451 objBgElement.append(clonedContent); 2452 2453 objTemplate.remove(); 2454 } 2455 2456 objBgElement.trigger("bg_attached"); 2457 objBgElement.addClass("uc-bg-attached"); 2458 2459 }); 2460 } 2461 2462 ucBackgroundOverlayPutStart(); 2463 2464 jQuery( document ).on( 'elementor/popup/show', ucBackgroundOverlayPutStart); 2465 jQuery( "body" ).on( 'uc_dom_updated', ucBackgroundOverlayPutStart); 2466 2467 }); 2468 2469 2470 </script>
2470 2471
2471<script id="wp-emoji-settings" type="application/json"> 2472{"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":{"concatemoji":"https://thrivebyfive.co.za/wp-includes/js/wp-emoji-release.min.js?ver=7.1.2"}} 2473</script>
vendor: 1 bytes, line 2473
2473
2474<script type="module"> 2475/*! This file is auto-generated */ 2476var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 2477//# sourceURL=https://thrivebyfive.co.za/wp-includes/js/wp-emoji-loader.min.js 2478</script>
vendor: 1 bytes, line 2478
2478
2479<script> 2480 2481 $(document).ready(function(){ 2482 $('.close-popup, .cancel-popup').on('click', function() { 2483 $('.popup-modal').hide(); 2484 }); 2485 2486 $('.popup-modal-btn').on('click', function(e) { 2487 e.preventDefault(); 2488 e.stopPropagation(); 2489 var popupModal = $(this).attr('data-popup'); 2490 $(popupModal).show(); 2491 }); 2492 2493 $mapTooltip = $(".map-tooltip"); 2494 $('.map path').hover(function() { 2495 //$(this).attr("class", "enabled heyo"); 2496 $mapTooltip.addClass('active'); 2497 $mapTooltip.html($(this).attr('data-hover')); 2498 }, function() { 2499 $mapTooltip.removeClass('active'); 2500 }); 2501 $('.map').on('mousemove', function(e){ 2502 $mapTooltip.css({ 2503 left: e.pageX - $('.map').offset().left, 2504 top: e.pageY - $('.map').offset().top - 70, 2505 }); 2506 }); 2507 2508}); 2509 2510var googleSheetData = fetchGoogleSheetData(); 2511var sexLabels = ['Boys', 'Girls']; 2512var incomeLabels = ['Q1', 'Q2', 'Q3', 'Q4', 'Q5']; 2513var provinceLabels = ['Eastern Cape', 'Free State', 'Gauteng', 'Kwazulu Natal', 'Limpopo', 'Mpumalanga', 'Northern Cape', 'North West', 'Western Cape']; 2514var comparisonLabels = ['Gross Motor', 'Fine Motor & Visual Motor Integration', 'Emergent Numeracy and Mathematics', 'Cognition and Executive Functioning', 'Emergent Literacy and Language']; 2515var parameters = []; 2516var charts = []; 2517var graphDataArr = []; 2518var myChart; 2519 2520function fetchGoogleSheetData() { 2521// let googleSheetID = '1JLzD3WKKkQVYOwQ0LRnd4CIGnMxftplOtQ2Ax9QrPw0'; 2522// let googleAPIKey = 'AIzaSyAwPVXDUUjlKzQ8z7TevezfrJGcUteMXZI'; 2523 2524// var url = 'https://sheets.googleapis.com/v4/spreadsheets/'+googleSheetID+'/values/Sheet1?key='+googleAPIKey; 2525 2526 // Console 2527 // https://console.cloud.google.com/apis/ 2528 // 2529 // SCOPES 2530 // https://developers.google.com/workspace/explore?filter=sheet&discoveryUrl=https%3A%2F%2Fsheets.googleapis.com%2F%24discovery%2Frest%3Fversion%3Dv4&discoveryRef=resources.spreadsheets.methods.get&operationId=sheets.spreadsheets.get 2531 // 2532 // Sheet Creator must be the owner of the Google API Account and Sheet 2533 2534// let googleSheetID = '1EuEFFmz89JtUVxWAF5yqIOuI5A9eym20SqB_oFU4k8w'; 2535// let googleAPIKey = 'AIzaSyAlNaW5NH88KoFDXkehMjITuvddiQbIYJo'; 2536 2537 2538 let googleSheetID = '1XDIJDkmi6sDklqguHWRS30gCOowvppFoU32VEkUjPKk'; 2539 let googleAPIKey = 'AIzaSyAvGYGDnvhMWmkQXVxmusSeWqGvG85i34s'; 2540 2541 2542 2543 var url = 'https://sheets.googleapis.com/v4/spreadsheets/'+googleSheetID+'/values/Sheet1?key='+googleAPIKey; 2544 2545 2546 //var url = 'https://sheets.googleapis.com/v4/spreadsheets/1EuEFFmz89JtUVxWAF5yqIOuI5A9eym20SqB_oFU4k8w/values/Sheet1?key=AIzaSyBTMvtZt5Mn6b7lOw2hHhERSdOutkSXT7w'; 2547// var url = 'https://docs.google.com/spreadsheets/d/1EuEFFmz89JtUVxWAF5yqIOuI5A9eym20SqB_oFU4k8w/edit#gid=0'; 2548 2549 2550 var results = []; 2551 2552 $.ajax({ 2553 url:url, 2554 dataType:'json', 2555 success:function(data) { 2556 data.values.map(function(value){ 2557 //console.log(value); 2558 if (value.length == 1 ) { 2559 parameters.push(value[0]); 2560 results.push(value[0]); 2561 } else{ 2562 if (value.length != 0 ) { 2563 results.push(value); 2564 } 2565 } 2566 }); 2567 updateOptionsValues(parameters); 2568 //createGraph('doughnut', 'Gross Motor', 'chart1'); 2569 //createGraph('doughnut', 'Emergent Numeracy and Mathematics', 'chart2'); 2570 //createGraph('doughnut', 'Emergent Literacy and Language', 'chart3'); 2571 createGraph('doughnut'); 2572 }, 2573 }); 2574 return results; 2575} 2576 2577function updateOptionsValues(optionValues) { 2578 let optionsRadios = $('#options').find('input[type="radio"]'); 2579 let count = 0; 2580 $.each(optionsRadios, function(index, radio) { 2581 $(this).val(optionValues[count]); 2582 count++; 2583 }); 2584} 2585 2586function populateOptions(options) { 2587 let $optionsUl = $('#options'); 2588 let optionHTML = ''; 2589 $.each(options, function(index, optionVal) { 2590 optionHTML += '<li><input data-chart="renderChart'+index+'" name="chartParameter" type="radio" value="'+optionVal+'" id="option'+index+'"><label for="option'+index+'">'+optionVal.toLowerCase()+'</label></li>'; 2591 }); 2592 $optionsUl.html(optionHTML); 2593} 2594 2595function getGraphData(selectedParameter) { 2596 let indexNumber; 2597 let selectedValuesArr = []; 2598 indexNumber = googleSheetData.indexOf(selectedParameter); 2599 for (i = indexNumber+1; i <= googleSheetData.length - 1; i++) { 2600 if ( 'string' == typeof googleSheetData[i] ) { 2601 break; 2602 } else { 2603 selectedValuesArr.push(googleSheetData[i]); 2604 } 2605 } 2606 return selectedValuesArr; 2607} 2608 2609$(document).on('click', '#options input[type="radio"]', function(){ 2610 $('.filterGraph').prop('checked', false); 2611 if ($(this).is(':checked')) { 2612 if (myChart) { 2613 myChart.destroy(); 2614 } 2615 if ($(this).val() === 'GROWTH') { 2616 createGraph('bar'); 2617 } else { 2618 createGraph('doughnut'); 2619 } 2620 } 2621 $('.moreFilters').show(); 2622 let dataText = $(this).attr('data-text'); 2623 if ( dataText === 'chartDescription9' || dataText === 'chartDescription8') { 2624 $('.hide-filter').hide() 2625 } else { 2626 $('.hide-filter').show() 2627 } 2628}); 2629 2630$(document).on('change', '.filterGraph', function(){ 2631 let filterValue = chartFilters(); 2632 var removeChart = document.getElementById('graph'); 2633 if (myChart) { 2634 myChart.destroy(); 2635 createGraph('bar'); 2636 } 2637}); 2638 2639function chartFilters() { 2640 var optionSelected = $('.filterGraph:checked').val(); 2641 let filterValue; 2642 if (optionSelected == 'sex') { 2643 filterValue = 2; 2644 } else if (optionSelected == 'income') { 2645 filterValue = 4; 2646 } else if (optionSelected == 'province') { 2647 filterValue = 9; 2648 } else { 2649 filterValue = 1; 2650 } 2651 return filterValue; 2652} 2653 2654function comparisonChart() { 2655 let canvas = document.createElement('canvas'); 2656 canvas.id = 'compareChart'; 2657 canvas.classList.add('bar-chart'); 2658 let data; 2659 let dataSets = []; 2660 let scales; 2661 let dataLabelsFormat; 2662 let ontarck = []; 2663 let behind = [] 2664 let farBehind = []; 2665 let comparisonLabelsAdjusted = comparisonLabels.map( label => { 2666 return label.split(' '); 2667 //return label.slice(0, 2).join(' '); 2668 }); 2669 2670 $.each(comparisonLabels, function(index, label) { 2671 //values.push(getGraphData(label)); 2672 let a = getGraphData(label); 2673 ontarck.push( parseFloat(a[0][1]) ); 2674 behind.push( parseFloat(a[1][1]) ); 2675 farBehind.push( parseFloat(a[2][1]) ); 2676 }); 2677 2678 dataLabelsFormat = { 2679 color: '#000', 2680 anchor: 'end',
2681 align: 'top', 2682 offset: 2, 2683 font: { 2684 size : 10 2685 }, 2686 formatter: (value) => { 2687 return value + '%'; 2688 } 2689 } 2690 2691 scales = { 2692 y: { 2693 ticks: { 2694 stepSize: 10, 2695 callback: function (value) { 2696 //return value + '%'; // convert it to percentage 2697 return (value).toFixed(0) + '%'; // convert it to percentage 2698 }, 2699 }, 2700 } 2701 } 2702 2703 dataSets = [{ 2704 label: 'On track', 2705 data: ontarck, 2706 backgroundColor: '#34a853' 2707 }, 2708 { 2709 label: 'Falling behind', 2710 data: behind, 2711 backgroundColor: '#f99d36' 2712 }, 2713 { 2714 label: 'Falling far behind', 2715 data: farBehind, 2716 backgroundColor: '#ea4335' 2717 }] 2718 2719 data = { 2720 labels: comparisonLabelsAdjusted, 2721 datasets: dataSets 2722 }; 2723 2724 const config = { 2725 type: 'bar', 2726 data: data, 2727 options: { 2728 //maxBarThickness: 40, 2729 //aspectRatio: asRation, 2730 //indexAxis: indexAxis, 2731 responsive: true, 2732 scales: scales, 2733 plugins: { 2734 tooltip: { 2735 callbacks: { 2736 label: function(context) { 2737 var label = context.dataset.label, 2738 currentValue = context.raw; 2739 var percentage = parseFloat(currentValue); 2740 return label + ' '+ currentValue + ' (' + percentage + '%)'; 2741 } 2742 } 2743 }, 2744 datalabels: dataLabelsFormat 2745 } 2746 }, 2747 plugins: [ChartDataLabels] 2748 }; 2749 2750 if ( $(window).width() < 768) { 2751 config.options['aspectRatio'] = 1; 2752 } 2753 2754 2755 compareChart = new Chart( 2756 canvas, 2757 config 2758 ); 2759 2760 $('#chartWrapper').append(canvas); 2761} 2762 2763function createGraph( graphType, chartParam='', chartContainer='') { 2764 let graphLabels = []; 2765 let graphValues = []; 2766 let dataSets = []; 2767 let data = []; 2768 let indexValue = chartFilters(); 2769 let chartColors = []; 2770 let chartColorsArr1 = ['#34a853', '#f99d36', '#ea4335']; 2771 let chartColorsArr2 = ['#f99d36', '#ea4335']; 2772 let optionSelected = $('.filterGraph:checked').val(); 2773 let mainParameter = $('input[name="chartParameter"]:checked'); 2774 let canvas = document.querySelector('.graph'); 2775 let mainParameterVal 2776 let scales = ''; 2777 let growthParameter = 'GROWTH'; 2778 let LearningTotalParameter = 'LEARNING TOTAL'; 2779 2780 2781 if (chartParam != '') { 2782 mainParameter = chartParam; 2783 mainParameterVal = chartParam; 2784 canvas = document.getElementById(chartContainer) 2785 } else { 2786 let chartTitleH2 = $('#chartTitle h3'); 2787 let HeadingText = mainParameter.next('span').html(); 2788 let dataText = mainParameter.attr('data-text'); 2789 chartTitleH2.html(HeadingText); 2790 $('.option-text').hide(); 2791 $('#'+dataText).show(); 2792 2793 mainParameterVal = mainParameter.val(); 2794 } 2795 let graphData = getGraphData(mainParameterVal); 2796 2797 if (mainParameterVal === growthParameter) { 2798 chartColors = chartColorsArr2; 2799 } else { 2800 chartColors = chartColorsArr1; 2801 } 2802 2803 if (mainParameterVal === LearningTotalParameter && !optionSelected ) { 2804 if ($('#compareChart').length == 0 ) { 2805 comparisonChart(); 2806 } 2807 } else { 2808 if ($('#compareChart').length > 0 ) { 2809 $('#compareChart').remove(); 2810 } 2811 } 2812 2813 graphData.map(function(item) { 2814 graphLabels.push(item[0]); 2815 }); 2816 2817 if (optionSelected == 'sex') { 2818 let count = 0; 2819 graphData.map(function(item) { 2820 dataSets.push( { 2821 label : item[0], 2822 backgroundColor : chartColors[count], 2823 data : [ parseFloat(item[indexValue]), parseFloat(item[indexValue+1])] 2824 }); 2825 count++; 2826 }); 2827 data = { 2828 labels: sexLabels, 2829 datasets: dataSets 2830 }; 2831 } else if (optionSelected == 'income') { 2832 let count = 0; 2833 graphData.map(function(item) { 2834 dataSets.push( { 2835 label : item[0], 2836 backgroundColor : chartColors[count], 2837 data : [ parseFloat(item[indexValue]), parseFloat(item[indexValue+1]), parseFloat(item[indexValue+2]), parseFloat(item[indexValue+3]), parseFloat(item[indexValue+4]) ] 2838 }); 2839 count++; 2840 }); 2841 data = { 2842 labels: incomeLabels, 2843 datasets: dataSets 2844 }; 2845 } else if (optionSelected == 'province') { 2846 let count = 0; 2847 graphData.map(function(item) { 2848 dataSets.push( { 2849 label : item[0], 2850 backgroundColor : chartColors[count], 2851 data : [ parseFloat(item[indexValue]), parseFloat(item[indexValue+1]), parseFloat(item[indexValue+2]), parseFloat(item[indexValue+3]), parseFloat(item[indexValue+4]), 2852 parseFloat(item[indexValue+5]), parseFloat(item[indexValue+6]), parseFloat(item[indexValue+7]), parseFloat(item[indexValue+8])] 2853 }); 2854 count++; 2855 }); 2856 data = { 2857 labels: provinceLabels, 2858 datasets: dataSets 2859 }; 2860 } else if ( mainParameterVal === growthParameter ) { 2861 let count = 0; 2862 graphData.map(function(item) { 2863 dataSets.push( { 2864 label : item[0], 2865 backgroundColor : chartColors[count], 2866 data : [ parseFloat(item[indexValue]) ] 2867 }); 2868 count++; 2869 }); 2870 data = { 2871 labels: ['Growth'], 2872 datasets: dataSets 2873 }; 2874 } else { 2875 graphData.map(function(item) { 2876 graphValues.push( parseFloat(item[indexValue])); 2877 }); 2878 2879 data = { 2880 datasets: [{ 2881 data: graphValues, 2882 backgroundColor: chartColors, 2883 hoverOffset: 4 2884 }] 2885 }; 2886 if (chartParam == '') { 2887 data.labels = graphLabels; 2888 } 2889 } 2890 2891 let dataLabelsFormat; 2892 let indexAxis; 2893 2894 if (graphType == 'bar' && mainParameterVal !== growthParameter) { 2895 //Chart.register(ChartjsPluginStacked100.default); 2896 $('.graph').addClass('bar-chart'); 2897 2898 if (optionSelected == 'province') { 2899 dataLabelsFormat = { 2900 color: '#fff', 2901 formatter: (value) => { 2902 return value + '%'; 2903 } 2904 } 2905 2906 indexAxis = 'y'; 2907 scales = { 2908 x: { 2909 stacked: true, 2910 ticks: { 2911 // min: 0, 2912 // max: 100, 2913 stepSize: 10, 2914 callback: function (value) { 2915 //return value + '%'; // convert it to percentage 2916 return (value).toFixed(0) + '%'; // convert it to percentage 2917 }, 2918 }, 2919 }, 2920 y: { 2921 stacked: true, 2922 } 2923 } 2924 } else { 2925 indexAxis = 'x'; 2926 scales = { 2927 y: { 2928 grace: '20%', 2929 ticks: { 2930 stepSize: 10, 2931 callback: function (value) { 2932 //return value + '%'; // convert it to percentage 2933 return (value).toFixed(0) + '%'; // convert it to percentage 2934 }, 2935 }, 2936 } 2937 } 2938 dataLabelsFormat = { 2939 color: '#000', 2940 anchor: 'end',
2941 align: 'top', 2942 offset: 2, 2943 formatter: (value) => { 2944 return value + '%'; 2945 } 2946 } 2947 } 2948 } else { 2949 $('.graph').removeClass('bar-chart'); 2950 dataLabelsFormat = { 2951 color: '#fff', 2952 formatter: (value) => { 2953 return value + '%'; 2954 } 2955 } 2956 } 2957 2958 if ( graphType == 'bar' && mainParameterVal === growthParameter ) { 2959 $('.graph').addClass('bar-chart'); 2960 dataLabelsFormat = { 2961 color: '#fff', 2962 formatter: (value) => { 2963 return value + '%'; 2964 } 2965 } 2966 2967 indexAxis = 'x'; 2968 if (optionSelected) { 2969 scales = { 2970 x: { 2971 stacked: true, 2972 }, 2973 y: { 2974 //grace: '20%', 2975 stacked: true, 2976 ticks: { 2977 stepSize: 10, 2978 max: 10, 2979 callback: function (value) { 2980 //return value + '%'; // convert it to percentage 2981 return (value).toFixed(0) + '%'; // convert it to percentage 2982 }, 2983 }, 2984 } 2985 } 2986 } else { 2987 scales = { 2988 y: { 2989 grace: '20%', 2990 //stacked: true, 2991 ticks: { 2992 stepSize: 10, 2993 callback: function (value) { 2994 //return value + '%'; // convert it to percentage 2995 return (value).toFixed(0) + '%'; // convert it to percentage 2996 }, 2997 }, 2998 } 2999 } 3000 } 3001 } 3002 3003 3004 const config = { 3005 type: graphType, 3006 data: data, 3007 options: { 3008 //maxBarThickness: 40, 3009 //aspectRatio: asRation, 3010 indexAxis: indexAxis, 3011 responsive: true, 3012 scales: scales, 3013 plugins: { 3014 tooltip: { 3015 callbacks: { 3016 label: function(context) { 3017 var label = context.label, 3018 currentValue = context.raw; 3019 var percentage = parseFloat(currentValue); 3020 return label + ": " +currentValue + ' (' + percentage + '%)'; 3021 } 3022 } 3023 }, 3024 datalabels: dataLabelsFormat 3025 } 3026 }, 3027 plugins: [ChartDataLabels] 3028 }; 3029 3030 if ( $(window).width() < 768) { 3031 config.options['aspectRatio'] = 1; 3032 } 3033 3034 3035 myChart = new Chart( 3036 canvas, 3037 config 3038 ); 3039} 3040 3041 3042 3043 3044 3045</script>
3045 3046 3047</body> 3048</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.