.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-counter .elementor-counter-number-wrapper{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-counter .elementor-counter-title{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-104 .elementor-element.elementor-element-774592bf .elementor-icon-box-wrapper{gap:15px;}.elementor-104 .elementor-element.elementor-element-6d9a53d9 .elementor-icon-box-wrapper{gap:15px;}.elementor-104 .elementor-element.elementor-element-2588f0f7 .elementor-icon-box-wrapper{gap:15px;}.elementor-104 .elementor-element.elementor-element-3231d7dd .elementor-icon-box-wrapper{gap:15px;}.elementor-104 .elementor-element.elementor-element-4c4f25e9 .elementor-icon-box-wrapper{gap:15px;}.elementor-104 .elementor-element.elementor-element-30e74aa3 .elementor-icon-box-wrapper{gap:15px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}:root{--page-title-display:none;}/* Start custom CSS for section, class: .elementor-element-2b100f49 *//* =========================================================================
   [NGO NAME] — OUR IMPACT PAGE ELEMENTOR STYLESHEET
   Paste this into: Elementor > Site Settings > Custom CSS
   (or Appearance > Customize > Additional CSS).
   Pairs with impact-elementor-template.json.

   NOTE: Shares design tokens and several component classes (page-hero,
   card, stat-item, icon-box, buttons, cta-final, container) with the
   Home, Footer, About and Programs stylesheets already built for this
   site — identical rules where they overlap, so all files can be pasted
   into the same Custom CSS box with zero conflicts.
   ========================================================================= */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap');

:root{
  --green-900:#0B3B2E;
  --green-800:#0E4A38;
  --green-700:#146247;
  --green-600:#1B7A56;
  --green-100:#E4F1EA;

  --orange-700:#B85A1E;
  --orange-600:#D06B24;
  --orange-500:#E8792B;
  --orange-400:#F0954F;
  --orange-100:#FBE7D5;

  --ink:#20242A;
  --ink-soft:#565E66;
  --ink-faint:#8A9198;
  --line:#E7E5DE;

  --bg-neutral:#F7F6F2;

  --radius-sm:8px;
  --radius-md:14px;
  --radius-lg:22px;
  --radius-pill:999px;

  --shadow-md:0 12px 30px -10px rgba(11,59,46,.18);

  --font-display:'Plus Jakarta Sans', sans-serif;
  --font-body:'Inter', sans-serif;
}

body{overflow-x:hidden;}

/* =========================================================================
   1. GLOBAL TYPE
   ========================================================================= */
.elementor-heading-title{
  font-family:var(--font-display)!important;
  font-weight:700!important;
  color:var(--ink);
  line-height:1.15!important;
  letter-spacing:-.01em;
}
h1.elementor-heading-title{font-size:clamp(30px,4.4vw,46px)!important;}
h2.elementor-heading-title{font-size:clamp(28px,3.6vw,40px)!important;}
h3.elementor-heading-title{font-size:22px!important;}
h4.elementor-heading-title{font-size:18px!important;}
.elementor-widget-text-editor{font-family:var(--font-body);color:var(--ink-soft);font-size:16px;line-height:1.6;}
.elementor-widget-text-editor p{margin:0 0 1em;}
.elementor-widget-text-editor p:last-child{margin-bottom:0;}

.bg-dark .elementor-heading-title,
.cta-final .elementor-heading-title{color:#fff!important;}
.bg-dark .elementor-widget-text-editor,
.cta-final .elementor-widget-text-editor{color:rgba(255,255,255,.8);}

.elementor-section{padding-top:96px;padding-bottom:96px;}
.elementor-section.elementor-inner-section{padding-top:0;padding-bottom:0;}
@media (max-width:900px){.elementor-section{padding-top:56px;padding-bottom:56px;}}

/* =========================================================================
   2. LAYOUT / UTILITIES
   ========================================================================= */
.container{max-width:1200px;margin:0 auto!important;padding:0 24px;float:none;}
.container-narrow{max-width:820px;margin:0 auto!important;padding:0 24px;float:none;}
.bg-neutral{background:var(--bg-neutral)!important;}
.bg-dark{background:var(--green-900)!important;}

.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--font-display);font-weight:700;font-size:12.5px;
  letter-spacing:.09em;text-transform:uppercase;color:var(--green-600);
  margin-bottom:14px;
}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--orange-500);display:inline-block;}
.bg-dark .eyebrow,.page-hero .eyebrow{color:var(--orange-400);}

.section-head .elementor-container{align-items:flex-end;}
.section-head-center{text-align:center;}
.section-head-center .elementor-heading-title,
.section-head-center .eyebrow{justify-content:center;display:flex;}
.section-head-center .elementor-widget-text-editor{max-width:620px;margin:0 auto;}
.section-head-right{display:flex;align-items:flex-end;justify-content:flex-end;}
@media (max-width:900px){.section-head-right{justify-content:flex-start;margin-top:16px;}}

.tag{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--font-display);font-weight:700;font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;
  background:var(--green-100);color:var(--green-700);padding:6px 14px;border-radius:var(--radius-pill);
}
.tag-orange{background:var(--orange-100);color:var(--orange-700);}
.tag-demo{background:#FFF1E9;color:var(--orange-700);border:1px dashed var(--orange-500);}

/* =========================================================================
   3. PAGE HERO
   ========================================================================= */
.page-hero{
  background:linear-gradient(135deg,var(--green-900),var(--green-700))!important;
  padding-top:70px!important;padding-bottom:60px!important;
}
.page-hero .breadcrumb{font-family:var(--font-body);font-size:13px;color:rgba(255,255,255,.65);margin-bottom:18px;}
.page-hero .breadcrumb a{color:rgba(255,255,255,.65);}
.page-hero .breadcrumb a:hover{color:#fff;}
.page-hero .elementor-heading-title{color:#fff!important;}
.page-hero-lead{color:rgba(234,243,238,.82)!important;font-size:17px!important;max-width:620px;margin-top:14px!important;}

/* =========================================================================
   4. STAT COUNTERS (headline stats)
   ========================================================================= */
.stat-item{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);
  padding:30px 20px;text-align:center;height:100%;
}
.stat-row .elementor-container{align-items:stretch;}
.stat-row .elementor-column{display:flex;align-items:stretch;}
.stat-item .elementor-counter-number-wrapper{
  font-family:var(--font-display)!important;font-weight:800!important;
  font-size:clamp(30px,3.4vw,42px)!important;color:var(--green-700)!important;
}
.stat-item .elementor-counter-title{font-size:13.5px!important;color:var(--ink-soft)!important;margin-top:6px!important;}

/* =========================================================================
   5. MAP IMAGE (Areas Served)
   ========================================================================= */
.map-image .elementor-widget-container img{
  width:100%;aspect-ratio:21/7;object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--line);
}

/* =========================================================================
   6. IMPACT-BY-PROGRAMME METRIC CARDS
   ========================================================================= */
.impact-metric-card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);
  padding:30px 26px;text-align:center;transition:box-shadow .2s ease,transform .2s ease;
}
.impact-metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px);}
.metric-icon .elementor-icon-box-wrapper{align-items:center;}
.metric-icon .elementor-icon-box-icon .elementor-icon{
  width:44px;height:44px;border-radius:50%;
  background:var(--green-100)!important;color:var(--green-700)!important;
  display:flex;align-items:center;justify-content:center;font-size:18px;margin:0 auto 12px;
}
.metric-icon .elementor-icon-box-title{
  font-family:var(--font-display)!important;font-weight:700!important;font-size:15px!important;
  color:var(--ink-soft)!important;text-transform:uppercase;letter-spacing:.04em;
}
.metric-icon .elementor-icon-box-description:empty{display:none;}
.metric-counter .elementor-counter-number-wrapper{
  font-family:var(--font-display)!important;font-weight:800!important;font-size:28px!important;color:var(--green-700)!important;
}
.metric-counter .elementor-counter-title{font-size:13px!important;color:var(--ink-soft)!important;}

/* =========================================================================
   7. GENERIC CARD (reused for before/after and story cards)
   ========================================================================= */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;height:100%;}
.card > .elementor-widget-wrap{padding:0 22px 22px;}
.card-photo{margin-bottom:0;}
.card-photo .elementor-widget-container img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
.card .tag,.card .tag-orange,.card .tag-demo{margin-top:18px;display:inline-flex;}
.card .elementor-heading-title{margin-top:8px;}

.before-after-card .elementor-heading-title{font-size:22px!important;}
.story-card{border-top:3px solid var(--green-500);}

.story-quote{font-family:var(--font-display)!important;font-weight:600!important;font-size:16.5px!important;color:var(--ink)!important;margin-top:12px!important;margin-bottom:6px!important;}
.story-attribution{font-size:13.5px!important;color:var(--ink-soft)!important;}

/* =========================================================================
   8. TRANSPARENCY BADGE CARDS
   ========================================================================= */
.icon-box.badge-card .elementor-widget-container{
  height:100%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-md);
  padding:30px 26px;text-align:center;
}
.icon-circle-badge{
  width:52px;height:52px;border-radius:50%;margin:0 auto 16px;
  background:rgba(232,121,43,.18);color:var(--orange-400);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-weight:800;font-size:14px;
}
.badge-card .elementor-heading-title{color:#fff!important;margin-bottom:8px!important;}
.badge-card .elementor-widget-text-editor p{color:rgba(234,243,238,.72)!important;font-size:14.5px!important;}

/* =========================================================================
   9. BUTTONS
   ========================================================================= */
.btn .elementor-button{
  font-family:var(--font-display)!important;font-weight:700!important;
  border-radius:var(--radius-pill)!important;padding:15px 28px!important;
  border:1.5px solid transparent!important;
  transition:transform .15s ease,background .15s ease,color .15s ease!important;
}
.btn .elementor-button:hover{transform:translateY(-2px);}
.btn-lg .elementor-button{padding:18px 36px!important;font-size:16px!important;}

.btn-primary .elementor-button{background:var(--orange-500)!important;color:#fff!important;box-shadow:0 10px 24px -8px rgba(232,121,43,.55);}
.btn-primary .elementor-button:hover{background:var(--orange-600)!important;}

.btn-outline-green .elementor-button{background:transparent!important;border-color:var(--green-600)!important;color:var(--green-700)!important;}
.btn-outline-green .elementor-button:hover{background:var(--green-600)!important;color:#fff!important;}

/* =========================================================================
   10. FINAL CTA
   ========================================================================= */
.cta-final{background:var(--green-900)!important;text-align:center;}
.cta-final .elementor-widget-text-editor{max-width:560px;margin:0 auto;}

/* =========================================================================
   11. RESPONSIVE
   ========================================================================= */
@media (max-width:900px){
  .before-after-card{margin-bottom:24px;}
}/* End custom CSS */