:root {
  --font-size--color--black: #111;
  --font-size--color--font-family--headings: "Libre Caslon Display", sans-serif;
  --font-size--h1: 4.5rem;
  --font-size--color--font-family--body: Geist, sans-serif;
  --font-size--h6: 1.125rem;
  --paddings-borders--large: 6rem;
  --font-size--color--gray-3: whitesmoke;
  --font-size--color--white: white;
  --font-size--color--gray-5: #eaeaea;
  --font-size--color--primary-800: #012a48;
  --font-size--h4: 2rem;
  --font-size--color--transparent: transparent;
  --font-size--color--primary: #0c8adb;
  --font-size--link: .9rem;
  --font-size--body-normal: 1rem;
  --font-size--h2: 4rem;
  --font-size--h3: 2.625rem;
  --paddings-borders--mid: 3rem;
  --primary-blue-300: #cde3f6;
  --font-size--h5: 1.5rem;
  --paddings-borders--small: 1.5rem;
  --font-size--color--primary-300: #79bae5;
}

.w-layout-blockcontainer {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

@media screen and (max-width: 991px) {
  .w-layout-blockcontainer {
    max-width: 728px;
  }
}

@media screen and (max-width: 767px) {
  .w-layout-blockcontainer {
    max-width: none;
  }
}

body {
  color: var(--font-size--color--black);
  font-family: Libre Caslon Display, sans-serif;
  font-size: 1rem;
  line-height: 1.4;
}

h1 {
  font-family: var(--font-size--color--font-family--headings);
  font-size: var(--font-size--h1);
  margin-top: 20px;
  margin-bottom: 10px;
  font-weight: 400;
  line-height: .9;
}

h2 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 32px;
}

h3 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;
}

h4 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 700;
}

p {
  font-family: var(--font-size--color--font-family--body);
  font-size: var(--font-size--h6);
  margin-bottom: 10px;
  font-weight: 400;
}

.section {
  padding-top: var(--paddings-borders--large);
  padding-bottom: var(--paddings-borders--large);
  background-color: var(--font-size--color--gray-3);
}

.section.curve {
  padding-top: var(--paddings-borders--large);
  background-color: var(--font-size--color--white);
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  margin-top: -80px;
  padding-bottom: 0;
  position: relative;
}

.section.gray {
  background-color: var(--font-size--color--gray-5);
}

.section.colored {
  background-color: var(--font-size--color--primary-800);
}

.section.white {
  background-color: var(--font-size--color--white);
}

.section.timeline {
  background-color: var(--font-size--color--white);
  height: 300vh;
}

.section-container {
  width: 90%;
  max-width: 1100px;
}

.section-container.center {
  text-align: center;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.section-container.features {
  text-align: center;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  max-width: none;
  height: 9.25rem;
  display: flex;
}

.content-subheading {
  font-size: var(--font-size--h4);
  font-weight: 400;
  line-height: 1.2;
}

.content-subheading.white {
  font-family: var(--font-size--color--font-family--body);
  color: var(--font-size--color--white);
  font-weight: 300;
}

.content-subheading.black {
  font-family: var(--font-size--color--font-family--body);
  color: var(--font-size--color--black);
  font-weight: 300;
}

.hero-heading {
  color: var(--font-size--color--white);
  font-size: var(--font-size--h1);
  font-weight: 400;
  line-height: 1.1;
}

.hero-heading.black {
  color: var(--font-size--color--black);
}

.btn-w {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  justify-content: flex-start;
  align-items: center;
  margin-top: 40px;
  display: inline-flex;
}

.btn-w.center {
  justify-content: center;
  align-items: center;
}

.btn {
  border: 1px solid var(--font-size--color--transparent);
  background-color: var(--font-size--color--primary);
  font-family: var(--font-size--color--font-family--body);
  font-size: var(--font-size--link);
  border-radius: 5px;
  padding: 16px 40px;
}

.btn.outline {
  border-color: var(--font-size--color--black);
  background-color: var(--font-size--color--gray-5);
  color: var(--font-size--color--black);
}

.hero-section {
  padding-top: 240px;
  padding-bottom: 180px;
  position: relative;
}

.section-flex-w {
  justify-content: space-between;
  align-items: flex-start;
  width: 90%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.section-flex-w.div {
  grid-column-gap: 64px;
  grid-row-gap: 64px;
  justify-content: space-between;
  align-items: center;
}

.paragraph {
  margin-top: 20px;
  margin-bottom: 20px;
}

.paragraph.white {
  color: var(--font-size--color--white);
  font-weight: 300;
}

.paragraph.small {
  font-size: var(--font-size--link);
  margin-top: 0;
  margin-bottom: 0;
}

.paragraph.small.desc-text {
  opacity: 0;
  font-size: var(--font-size--h6);
  text-align: center;
  position: absolute;
}

.flex-child-w {
  border-left: 4px solid var(--font-size--color--primary);
  width: 70%;
  padding-left: 10px;
}

.flex-child-w.small {
  width: 20%;
}

.flex-child-w.small.no-bar {
  border-left-style: none;
  border-left-width: 0;
}

.flex-child-w.mid {
  width: 50%;
  padding-left: 40px;
  padding-right: 40px;
}

.flex-child-w.mid.no-bars {
  border-left-style: none;
  border-left-width: 0;
}

.flex-child-w.n-bar {
  border-left-style: none;
  border-left-width: 0;
  padding-left: 0;
}

.section-title {
  font-family: var(--font-size--color--font-family--body);
  font-size: var(--font-size--link);
  text-transform: uppercase;
  margin-top: 10px;
  margin-bottom: 10px;
  font-weight: 400;
}

.section-title.white {
  color: var(--font-size--color--white);
}

.section-heading {
  font-size: var(--font-size--h2);
  font-weight: 400;
  line-height: 1;
}

.section-heading.white {
  color: var(--font-size--color--white);
}

.section-subheading {
  font-family: var(--font-size--color--font-family--body);
  font-size: var(--font-size--h6);
  font-weight: 400;
}

.section-subheading.large {
  color: var(--font-size--color--white);
  font-size: var(--font-size--h3);
  font-weight: 300;
  line-height: 1.1;
}

.section-grid {
  margin-top: var(--paddings-borders--mid);
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 90%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.section-grid._3-1 {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
}

.section-grid._5-1 {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  place-items: center;
}

.section-grid._5-1.alt {
  grid-template-columns: 1fr 1fr 1fr 1fr;
  justify-content: space-around;
  width: 100%;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  display: flex;
}

.section-grid._3-3 {
  grid-template-rows: auto auto auto;
  grid-template-columns: 1fr 1fr 1fr;
}

.section-grid._1-3 {
  grid-template-rows: auto auto auto;
  grid-template-columns: 1fr;
}

.section-grid._4-1 {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  place-items: center;
}

.card-parent {
  grid-column-gap: 40px;
  grid-row-gap: 64px;
  background-color: var(--font-size--color--white);
  border-radius: 56px;
  justify-content: flex-start;
  align-items: center;
  padding: 40px;
  display: flex;
}

.card-parent.vert {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  background-color: var(--font-size--color--transparent);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 0;
  text-decoration: none;
  transition: text-underline-offset .2s, -webkit-text-stroke-color .2s;
}

.card-parent.vert:hover {
  text-underline-offset: 3px;
  text-decoration: underline;
  -webkit-text-decoration-color: var(--font-size--color--white);
  text-decoration-color: var(--font-size--color--white);
  text-decoration-thickness: 2px;
}

.card-parent.alt {
  background-color: var(--font-size--color--gray-3);
}

.card-content {
  flex: 1;
}

.card-img-w {
  background-color: var(--font-size--color--gray-5);
  border-radius: 16px;
  width: 100%;
  height: 360px;
  position: relative;
  overflow: hidden;
}

.card-img-w.small {
  width: 220px;
  height: 300px;
  overflow: hidden;
}

.content-w.large {
  flex-flow: column;
  justify-content: flex-start;
  width: 50%;
  display: flex;
}

.content-w._w-bg {
  background-color: var(--font-size--color--white);
  border-radius: 16px;
  flex-flow: column;
  justify-content: flex-start;
  padding: 24px;
  display: flex;
}

.content-w.b-bg {
  background-color: var(--primary-blue-300);
  border-radius: 16px;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  height: 260px;
  padding: 24px;
  display: flex;
}

.large-card-parent {
  grid-column-gap: 64px;
  grid-row-gap: 64px;
  background-color: var(--primary-blue-300);
  border-radius: 56px;
  flex: none;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  max-width: 1100px;
  height: 97%;
  margin-left: auto;
  margin-right: auto;
  padding: 40px;
  display: flex;
}

.large-card-parent.gray {
  background-color: var(--font-size--color--gray-3);
}

.num-text {
  font-family: var(--font-size--color--font-family--body);
  color: var(--font-size--color--transparent);
  font-size: var(--font-size--h2);
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: var(--font-size--color--primary);
  margin-top: 20px;
  margin-bottom: 20px;
  font-weight: 700;
  display: inline-block;
}

.large-card-text {
  font-family: var(--font-size--color--font-family--headings);
  font-size: var(--font-size--h5);
  margin-top: 40px;
  font-weight: 400;
  line-height: 1.2;
}

.large-card-text.main {
  font-family: var(--font-size--color--font-family--body);
  color: var(--font-size--color--primary);
  font-size: var(--font-size--h3);
  font-weight: 300;
}

.large-card-img-w {
  background-color: var(--font-size--color--gray-5);
  border-radius: 16px;
  flex: none;
  width: 50%;
  height: 100%;
  overflow: hidden;
}

.icon-w {
  background-color: var(--font-size--color--primary);
  color: var(--font-size--color--black);
  text-align: center;
  border-radius: 50%;
  width: 64px;
  height: 64px;
  padding: 16px;
}

.partner-w {
  border: 1px solid var(--font-size--color--gray-5);
  background-color: var(--font-size--color--gray-3);
  text-align: center;
  border-radius: 16px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  height: 100%;
  padding: 20px;
  display: flex;
}

.partner-w.white {
  background-color: var(--font-size--color--white);
  min-width: 100%;
}

.footer {
  padding-top: var(--paddings-borders--mid);
  padding-bottom: var(--paddings-borders--small);
  background-color: var(--font-size--color--primary-800);
}

.footer-parent-w {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1.5fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.footer-heading {
  font-family: var(--font-size--color--font-family--body);
  color: var(--font-size--color--primary);
  font-size: var(--font-size--h6);
  margin-top: 40px;
  margin-bottom: 20px;
  font-weight: 400;
}

.footer-links {
  font-family: var(--font-size--color--font-family--body);
  color: var(--font-size--color--white);
  font-size: var(--font-size--body-normal);
  margin-bottom: 10px;
  font-weight: 400;
  text-decoration: none;
  display: block;
}

.card-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.brand {
  width: 120px;
}

.link-block {
  background-color: var(--font-size--color--primary-800);
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  padding: 4px;
  display: flex;
  position: absolute;
  inset: 5% 5% auto auto;
}

.link-img {
  object-fit: cover;
  width: 16px;
  height: 16px;
}

.nav-link {
  border-bottom: 3px solid var(--font-size--color--transparent);
  font-family: var(--font-size--color--font-family--body);
  color: var(--font-size--color--black);
  font-size: var(--font-size--link);
  margin-left: 20px;
  margin-right: 20px;
  padding: 12px 0;
}

.nav-link.w--current {
  border-bottom: 3px solid var(--font-size--color--primary);
  color: var(--font-size--color--primary);
}

.nav-link.cta {
  background-color: var(--font-size--color--primary);
  color: var(--font-size--color--white);
  border-radius: 5px;
  padding-left: 20px;
  padding-right: 20px;
}

.nav-container {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.navbar {
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  background-color: #ffffffd9;
  border-radius: 16px;
  width: 90%;
  margin-top: 10px;
  margin-left: auto;
  margin-right: auto;
  position: fixed;
  inset: 0% 0% auto;
}

.section-scroll {
  padding: var(--paddings-borders--small);
  background-color: var(--font-size--color--gray-3);
}

.section-scroll.curve {
  padding-top: var(--paddings-borders--large);
  padding-bottom: var(--paddings-borders--large);
  background-color: var(--font-size--color--white);
  border-top-left-radius: 80px;
  border-top-right-radius: 80px;
  margin-top: -80px;
}

.section-scroll.gray {
  background-color: var(--font-size--color--gray-5);
  height: 240vw;
  overflow: clip;
}

.section-scroll.colored {
  background-color: var(--font-size--color--primary-800);
}

.section-scroll.white {
  background-color: var(--font-size--color--white);
}

.features-parent-sticky {
  border-top-left-radius: var(--paddings-borders--small);
  border-top-right-radius: var(--paddings-borders--small);
  border-bottom-left-radius: var(--paddings-borders--small);
  border-bottom-right-radius: var(--paddings-borders--small);
  background-color: var(--font-size--color--white);
  flex-flow: column;
  height: calc(110svh - 2rem);
  padding-top: 1rem;
  padding-bottom: 3.25rem;
  display: flex;
  position: sticky;
  top: -4rem;
  overflow: clip;
}

.feature-content-w {
  padding-right: var(--paddings-borders--mid);
  padding-left: var(--paddings-borders--mid);
  height: 100%;
}

.feature-child-w {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  width: 100%;
  height: 100%;
  margin-top: 33px;
  display: flex;
  position: relative;
}

.hero-section-img {
  z-index: -1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.img-overlay {
  z-index: -1;
  background-color: #080808bf;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.img-overlay.gal {
  z-index: 0;
  background-color: var(--font-size--color--transparent);
  background-image: linear-gradient(#35353500, #00000080);
}

.divider {
  background-color: var(--font-size--color--gray-5);
  width: 90%;
  max-width: 1100px;
  height: 1px;
  margin: 60px auto;
}

.about-img {
  background-image: url('../images/ChatGPT-Image-Feb-15-2026-11_14_23-PM.png');
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  border-radius: 40px;
  width: 90%;
  max-width: 1100px;
  height: 580px;
  margin: 60px auto;
}

.parent-timeline {
  background-color: var(--font-size--color--gray-3);
  margin-top: 100px;
  margin-bottom: 220px;
}

.timeline-line {
  background-color: var(--font-size--color--gray-3);
  width: 100%;
  height: 1px;
  position: relative;
}

.timeline-dot {
  background-color: var(--font-size--color--gray-5);
  color: var(--font-size--color--gray-5);
  border-radius: 10px;
  width: 10px;
  height: 10px;
  position: absolute;
  top: -5px;
  left: 0%;
  right: auto;
}

.timeline-dot._1 {
  left: 25%;
}

.timeline-dot._2 {
  left: 50%;
}

.timeline-dot._3 {
  left: 75%;
}

.timeline-dot._4 {
  left: 100%;
}

.timeline-year-w {
  display: inline-block;
  position: absolute;
  inset: 0% auto auto -50px;
}

.timeline-year-text {
  font-family: var(--font-size--color--font-family--body);
  font-size: var(--font-size--h3);
  font-weight: 300;
  display: inline-block;
}

.desc-text-w {
  width: 50%;
  margin-top: 220px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.section-track {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  height: 80vh;
  padding-top: 10%;
  display: flex;
  position: sticky;
  top: 0;
}

.timeline-move {
  background-color: var(--font-size--color--black);
  height: 1px;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.list-block {
  font-family: var(--font-size--color--font-family--body);
  font-size: var(--font-size--h6);
}

.list-item {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 20px;
  list-style-type: disc;
  display: flex;
}

.list-text-block {
  font-size: var(--font-size--body-normal);
}

.hero-img-w {
  background-image: url('../images/Ghana_WASH-for-Health_Mandari-water-system-1.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 24px;
}

.grid-content-w {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  justify-content: flex-start;
  align-items: center;
  margin-top: 100px;
  display: flex;
}

.small-block-img-w {
  background-image: url('../images/328923393_3478282735827206_5616065027501367748_n.webp');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 24px;
  flex: none;
  width: 320px;
  height: 320px;
}

.form-heading-w {
  margin-bottom: 60px;
}

.partner-logo {
  width: 100px;
}

.marque-parent {
  width: 100%;
  overflow: hidden;
}

.marquee-flex {
  min-width: 150%;
  display: flex;
  overflow: hidden;
}

.gallery-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: .5fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  width: 90%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.gallery-heading-w {
  padding-right: 40px;
}

.gallery-block {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.gallery-img-w {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  flex-flow: column;
  width: 100%;
  display: flex;
}

.gallery-img-w.down {
  padding-top: 40px;
}

.lightbox-link {
  border-radius: 16px;
  width: 100%;
  height: 240px;
  position: relative;
  overflow: hidden;
}

.light-box-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.why-block {
  margin-top: var(--paddings-borders--large);
  padding: var(--paddings-borders--mid);
  background-color: var(--font-size--color--primary);
  text-align: center;
  width: 100%;
}

@media screen and (min-width: 1280px) {
  body {
    --font-size--color--black: #111;
    --font-size--color--font-family--headings: "Libre Caslon Display", sans-serif;
    --font-size--h1: 4.5rem;
    --font-size--color--font-family--body: Geist, sans-serif;
    --font-size--h6: 1.125rem;
    --paddings-borders--large: 6rem;
    --font-size--color--gray-3: whitesmoke;
    --font-size--color--white: white;
    --font-size--color--gray-5: #eaeaea;
    --font-size--color--primary-800: #012a48;
    --font-size--h4: 2.2rem;
    --font-size--color--transparent: transparent;
    --font-size--color--primary: #0c8adb;
    --font-size--link: .9rem;
    --font-size--body-normal: 1rem;
    --font-size--h2: 3.8rem;
    --font-size--h3: 3rem;
    --paddings-borders--mid: 3rem;
    --primary-blue-300: #cde3f6;
    --font-size--h5: 1.5rem;
    --paddings-borders--small: 1.5rem;
    --font-size--color--primary-300: #79bae5;
  }

  .partner-w.white {
    overflow: hidden;
  }

  .gallery-grid {
    max-width: 1200px;
  }

  .lightbox-link {
    height: 280px;
  }
}

@media screen and (min-width: 1440px) {
  body {
    --font-size--color--black: #111;
    --font-size--color--font-family--headings: "Libre Caslon Display", sans-serif;
    --font-size--h1: 5rem;
    --font-size--color--font-family--body: Geist, sans-serif;
    --font-size--h6: 1.5rem;
    --paddings-borders--large: 7rem;
    --font-size--color--gray-3: whitesmoke;
    --font-size--color--white: white;
    --font-size--color--gray-5: #eaeaea;
    --font-size--color--primary-800: #012a48;
    --font-size--h4: 2.2rem;
    --font-size--color--transparent: transparent;
    --font-size--color--primary: #0c8adb;
    --font-size--link: 1rem;
    --font-size--body-normal: 1.35rem;
    --font-size--h2: 4.3rem;
    --font-size--h3: 2.6rem;
    --paddings-borders--mid: 5rem;
    --primary-blue-300: #cde3f6;
    --font-size--h5: 1.8rem;
    --paddings-borders--small: 2.5rem;
    --font-size--color--primary-300: #79bae5;
  }

  .section-container, .section-flex-w {
    max-width: 1280px;
  }

  .paragraph {
    font-size: var(--font-size--body-normal);
    font-weight: 300;
  }

  .section-grid {
    max-width: 1280px;
  }

  .footer-links, .nav-link {
    font-size: var(--font-size--link);
  }

  .nav-container {
    max-width: 1200px;
  }

  .about-img {
    max-width: 1200px;
    height: 640px;
  }

  .partner-logo {
    width: 120px;
  }

  .gallery-grid {
    max-width: 1280px;
  }

  .gallery-heading-w {
    padding-right: 40px;
  }
}

@media screen and (min-width: 1920px) {
  body {
    --font-size--color--black: #111;
    --font-size--color--font-family--headings: "Libre Caslon Display", sans-serif;
    --font-size--h1: 6rem;
    --font-size--color--font-family--body: Geist, sans-serif;
    --font-size--h6: 1.8rem;
    --paddings-borders--large: 9rem;
    --font-size--color--gray-3: whitesmoke;
    --font-size--color--white: white;
    --font-size--color--gray-5: #eaeaea;
    --font-size--color--primary-800: #012a48;
    --font-size--h4: 2.8rem;
    --font-size--color--transparent: transparent;
    --font-size--color--primary: #0c8adb;
    --font-size--link: 1.25rem;
    --font-size--body-normal: 1.5rem;
    --font-size--h2: 4.5rem;
    --font-size--h3: 3.2rem;
    --paddings-borders--mid: 6rem;
    --primary-blue-300: #cde3f6;
    --font-size--h5: 2.5rem;
    --paddings-borders--small: 3rem;
    --font-size--color--primary-300: #79bae5;
  }

  .section-container, .section-grid, .section-grid._3-1, .section-grid._3-3, .nav-container {
    max-width: 1440px;
  }

  .features-parent-sticky {
    max-width: 1680px;
    height: calc(110svh - 2rem);
    margin-left: auto;
    margin-right: auto;
  }

  .about-img {
    max-width: 1440px;
    height: 720px;
  }

  .partner-logo {
    width: 140px;
  }

  .gallery-grid {
    max-width: 1440px;
  }

  .gallery-block, .gallery-img-w {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
  }
}

@media screen and (max-width: 991px) {
  body {
    --font-size--color--black: #111;
    --font-size--color--font-family--headings: "Libre Caslon Display", sans-serif;
    --font-size--h1: 3.2rem;
    --font-size--color--font-family--body: Geist, sans-serif;
    --font-size--h6: 1.125rem;
    --paddings-borders--large: 6rem;
    --font-size--color--gray-3: whitesmoke;
    --font-size--color--white: white;
    --font-size--color--gray-5: #eaeaea;
    --font-size--color--primary-800: #012a48;
    --font-size--h4: 1.8rem;
    --font-size--color--transparent: transparent;
    --font-size--color--primary: #0c8adb;
    --font-size--link: 1rem;
    --font-size--body-normal: 1rem;
    --font-size--h2: 2.8rem;
    --font-size--h3: 2rem;
    --paddings-borders--mid: 3rem;
    --primary-blue-300: #cde3f6;
    --font-size--h5: 1.35rem;
    --paddings-borders--small: 1.5rem;
    --font-size--color--primary-300: #79bae5;
  }

  .section.timeline {
    height: 240vh;
  }

  .section-container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .section-container.features {
    height: auto;
    padding-left: 40px;
    padding-right: 40px;
  }

  .section-flex-w.div {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
  }

  .flex-child-w.mid {
    padding-left: 0;
  }

  .section-grid {
    grid-template-columns: 1fr;
  }

  .section-grid._3-1 {
    grid-template-columns: 1fr 1fr;
  }

  .section-grid._5-1 {
    grid-template-columns: 1fr 1fr 1fr;
    justify-items: stretch;
  }

  .section-grid._3-3 {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
  }

  .content-w.large {
    width: 100%;
  }

  .large-card-parent {
    flex-flow: column-reverse;
    width: 70%;
    height: auto;
  }

  .large-card-img-w {
    width: 100%;
    height: 240px;
  }

  .footer-parent-w {
    grid-template-columns: 1fr 1fr;
  }

  .nav-link {
    color: var(--font-size--color--white);
    font-size: var(--font-size--h3);
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .navbar {
    background-color: #ffffffd1;
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }

  .section-scroll.gray {
    height: 140vw;
    overflow: hidden;
  }

  .features-parent-sticky {
    height: auto;
  }

  .feature-content-w {
    padding-right: var(--paddings-borders--small);
    padding-left: var(--paddings-borders--small);
    height: auto;
  }

  .feature-child-w {
    grid-column-gap: 2.5rem;
    grid-row-gap: 2.5rem;
    flex-flow: row;
    align-items: stretch;
  }

  .timeline-year-w {
    left: -30px;
  }

  .timeline-year-text {
    font-size: var(--font-size--h4);
  }

  .desc-text-w {
    width: 100%;
  }

  .marquee-flex {
    min-width: 220%;
  }

  .gallery-grid {
    grid-template-columns: 1fr;
  }

  .gallery-block {
    margin-top: 40px;
  }

  .nav-menu-w {
    background-color: var(--font-size--color--primary-800);
    padding-left: 40px;
    padding-right: 40px;
  }

  .menu {
    background-color: var(--font-size--color--primary);
    color: var(--font-size--color--white);
  }

  .menu.w--open {
    background-color: var(--font-size--color--primary-800);
  }
}

@media screen and (max-width: 767px) {
  body {
    --font-size--color--black: #111;
    --font-size--color--font-family--headings: "Libre Caslon Display", sans-serif;
    --font-size--h1: 2.8rem;
    --font-size--color--font-family--body: Geist, sans-serif;
    --font-size--h6: 1.125rem;
    --paddings-borders--large: 3rem;
    --font-size--color--gray-3: whitesmoke;
    --font-size--color--white: white;
    --font-size--color--gray-5: #eaeaea;
    --font-size--color--primary-800: #012a48;
    --font-size--h4: 1.5rem;
    --font-size--color--transparent: transparent;
    --font-size--color--primary: #0c8adb;
    --font-size--link: 1rem;
    --font-size--body-normal: 1rem;
    --font-size--h2: 2.5rem;
    --font-size--h3: 1.8rem;
    --paddings-borders--mid: 2rem;
    --primary-blue-300: #cde3f6;
    --font-size--h5: 1.25rem;
    --paddings-borders--small: 1rem;
    --font-size--color--primary-300: #79bae5;
  }

  .section.timeline {
    height: 180vh;
  }

  .section-container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .hero-section.pages {
    padding-top: 180px;
    padding-bottom: 180px;
  }

  .section-grid._3-1 {
    grid-template-columns: 1fr;
  }

  .section-grid._3-3 {
    grid-template-columns: 1fr 1fr;
  }

  .card-parent {
    border-radius: 24px;
    padding: 20px;
  }

  .content-w.large {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    flex-flow: column;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
  }

  .content-w.b-bg {
    height: auto;
  }

  .large-card-parent {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    border-radius: 36px;
    flex-flow: column-reverse;
    width: 100%;
    padding: 20px;
  }

  .num-text {
    margin-top: 0;
    margin-bottom: 0;
  }

  .large-card-text.main {
    margin-top: 20px;
  }

  .large-card-img-w {
    width: 100%;
    height: 320px;
  }

  .footer-parent-w {
    grid-template-columns: 1.5fr 1fr;
  }

  .nav-link {
    text-align: center;
  }

  .navbar {
    width: 95%;
  }

  .section-scroll.gray {
    height: auto;
  }

  .feature-child-w {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    flex-flow: column;
  }

  .parent-timeline {
    margin-bottom: 140px;
  }

  .desc-text-w {
    margin-top: 160px;
  }

  .section-track {
    height: 60vh;
  }

  .hero-img-w {
    height: 320px;
  }

  .grid-content-w {
    flex-flow: column;
  }

  .small-block-img-w {
    width: 100%;
  }

  .impact-content-w {
    text-align: center;
  }

  .marquee-flex {
    min-width: 300%;
  }

  .gallery-block {
    grid-template-columns: 1fr 1fr;
  }

  .nav-menu-w {
    width: 80%;
    margin-top: 0;
    padding-top: 24px;
    padding-bottom: 40px;
  }
}

@media screen and (max-width: 479px) {
  .btn-w {
    text-align: center;
    flex-flow: column;
    align-items: stretch;
    width: 100%;
  }

  .hero-section {
    padding-top: 180px;
  }

  .hero-section.pages {
    padding-top: 140px;
    padding-bottom: 60px;
  }

  .section-flex-w {
    flex-flow: column;
  }

  .flex-child-w, .flex-child-w.small, .flex-child-w.mid {
    width: 100%;
  }

  .section-grid._5-1, .section-grid._3-3 {
    grid-template-columns: 1fr;
  }

  .card-parent {
    grid-row-gap: 0px;
    flex-flow: column-reverse;
  }

  .card-img-w.small {
    width: 100%;
  }

  .content-w.large {
    margin-top: 20px;
  }

  .large-card-parent {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    border-radius: 24px;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
  }

  .large-card-text.main {
    font-size: var(--font-size--h4);
  }

  .large-card-img-w {
    height: 200px;
  }

  .footer-parent-w {
    grid-template-columns: 1fr;
  }

  .brand {
    padding-left: 0;
  }

  .divider {
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .about-img {
    height: 360px;
  }

  .timeline-year-text {
    font-size: var(--font-size--h5);
  }

  .section-track {
    height: 80vh;
    overflow: clip;
  }

  .list-block {
    padding-left: 0;
  }

  .list-item {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .marquee-flex {
    min-width: 600%;
  }

  .gallery-block {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
  }

  .gallery-img-w {
    grid-column-gap: 0px;
    grid-row-gap: 24px;
    margin-top: -24px;
  }

  .gallery-img-w.down {
    justify-content: flex-start;
    padding-top: 24px;
  }

  .lightbox-link {
    height: 200px;
  }

  .nav-menu-w {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }

  .menu {
    padding: 12px;
  }

  .menu.w--open {
    z-index: 10000;
    background-color: var(--font-size--color--white);
    color: var(--font-size--color--primary-800);
  }
}

#w-node-cd4a7cad-da75-9543-3af8-86a09590dd3d-c571e02d {
  grid-area: span 1 / span 3 / span 1 / span 3;
}

#w-node-ae7f9345-f0da-d8f2-dc69-c7d8a90fdf7d-c571e02d {
  grid-area: span 1 / span 1 / span 1 / span 1;
  align-self: center;
}

#w-node-ed8a3214-98fb-4707-c4fe-025c197301b6-c571e02d, #w-node-b4de8bc4-f6f4-8b66-a9e2-933f93dd429c-c571e02d, #w-node-ce0dbb65-cc44-ce0e-6eb9-a8b2ffbde285-c571e02d, #w-node-_598f98a1-fa41-4cb2-4f3d-a4640355550a-c571e02d {
  align-self: center;
}

#w-node-b5069232-d33f-d74b-8a43-0cc3024d955f-024d955e {
  grid-area: span 1 / span 4 / span 1 / span 4;
}

#w-node-b5069232-d33f-d74b-8a43-0cc3024d9564-024d955e, #w-node-b5069232-d33f-d74b-8a43-0cc3024d9569-024d955e, #w-node-b5069232-d33f-d74b-8a43-0cc3024d956e-024d955e, #w-node-_6ad67cf7-2c77-65df-3bc7-96dfff947939-1b5f8734, #w-node-_612758f8-0774-56cc-f404-110a42ce8bce-1b5f8734, #w-node-_7784028b-4527-b560-9316-71536bc70acf-1b5f8734, #w-node-a1d12fd4-694f-c5a6-6693-7ccfbfdae7be-1b5f8734, #w-node-_364f2789-1c13-1e36-dd42-c5165b093231-1b5f8734 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_819d4aa4-b8b3-b5c4-bd93-e787fdaf86e3-5cec4e6e {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

@media screen and (max-width: 991px) {
  #w-node-_81134af5-1515-aa1f-9214-b8340abc13ca-c571e02d {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  #w-node-_598f98a1-fa41-4cb2-4f3d-a4640355550a-c571e02d {
    grid-area: span 1 / span 2 / span 1 / span 2;
    align-self: center;
  }
}

@media screen and (max-width: 767px) {
  #w-node-_3324d676-46e6-9b81-b4ef-6fd18ec425e2-c571e02d {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  #w-node-_5585ab4b-8487-db22-d021-1e4c348e5dcc-c571e02d {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  #w-node-_81134af5-1515-aa1f-9214-b8340abc13ca-c571e02d {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  #w-node-_3d3cc6e7-08e2-5f44-97cc-e0cd74b85e18-023682fe, #w-node-_9ff2a0ae-b4e4-571b-4f8d-4c504c62e4b8-023682fe, #w-node-_3e25b6af-4df7-e368-fe4b-626d2f5b14aa-023682fe {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  #w-node-f279ab4a-e465-256b-ee3b-3183bf821f4b-5cec4e6e {
    grid-area: 1 / 1 / 2 / 2;
  }

  #w-node-_819d4aa4-b8b3-b5c4-bd93-e787fdaf86e3-5cec4e6e {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}

@media screen and (max-width: 479px) {
  #w-node-cd4a7cad-da75-9543-3af8-86a09590dd3d-c571e02d {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  #w-node-_598f98a1-fa41-4cb2-4f3d-a4640355550a-c571e02d {
    grid-area: span 1 / span 1 / span 1 / span 1;
    align-self: center;
  }
}


