/* icdtz.org static restore: replacements for the removed Elementor/Astra runtime. */
.screen-reader-text {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

/* hero background slideshow (Elementor JS removed) */
.icdt-has-slideshow { position: relative; }
.icdt-has-slideshow > .e-con-inner { position: relative; z-index: 1; }
.icdt-slideshow { position: absolute; inset: 0; z-index: 0; overflow: hidden; }
.icdt-slide {
  position: absolute; inset: 0; background-size: cover; background-position: center;
  opacity: 0; transition: opacity .6s ease;
}
.icdt-slide.is-active { opacity: 1; }

/* Astra mobile menu: hidden until the toggle is pressed */
#ast-mobile-header .ast-mobile-header-content { display: none; }
.ast-main-header-nav-open #ast-mobile-header .ast-mobile-header-content { display: block; }

/* contact: mailto button that replaces the missing request form */
.icdt-mail-cta { margin-top: 12px; }
.icdt-mail-cta .elementor-button { background-color: var(--ast-global-color-0, #1b4332); color: #fff; }

/* Get Involved grid: 3 -> 2 tiles (missing 22.png tile removed) */
@media (min-width: 768px) {
  .elementor-13 .elementor-element.elementor-element-6290543e { --e-con-grid-template-columns: repeat(2, 1fr); }
}

/* Key Metrics: final value "Tsh 32,000,000+" is wider than its column -> smaller digits, keep prefix spacing */
.elementor-13 .elementor-element.elementor-element-undefined-ac4863a .elementor-counter-number-wrapper { font-size: 36px; }
.elementor-counter-number-prefix { white-space: pre; }

/* About: the archived Elementor translateX offsets push a few widgets past the viewport -> clip the overflow */
#page { overflow-x: clip; }

/* phone/email made clickable: keep the original text colour */
.elementor-icon-box-description a { color: inherit; }

/* single blog posts rebuilt from the RSS feed */
.icdt-post { max-width: 900px; margin: 40px auto 60px; padding: 0 20px; }
.icdt-post .entry-title { margin-bottom: 8px; font-size: 34px; line-height: 1.25; }
@media (max-width: 767px) { .icdt-post .entry-title { font-size: 26px; } }
.icdt-post .entry-meta { margin-bottom: 24px; opacity: .8; }
.icdt-post img { height: auto; max-width: 100%; }
.icdt-back { margin-top: 32px; }
