.data-points {
  background-color: transparent;
  margin: 60px auto;
  max-width: 100%;
  width: 100%; 
  position: relative;
  .heading {
    background: #F9F9F9;
    padding: 30px 40px 0;
    h2 {
      padding:0;
      margin:0;
      font-size: 25px;
      line-height: 1.2;
      text-transform: uppercase;
      letter-spacing: 1px;
      color: #2774AE;
      font-weight: 500;
    }
  }
  .swiper-wrapper .swiper-slide {
    background: #f9f9f9;
  }
  .swiper-wrapper .swiper-slide .text-content {
    h3 {
      color: #005587;
      font-size: 75px;
      font-weight: bold;
    }
    p {
      color: #000;
      font-size: 25px;
      font-weight: 400;
    }
  }
  .swiper-pagination-bullet.active + .swiper-pagination-bullet {
    position: relative;
    overflow: visible;
  }
  
  .swiper-pagination-bullet.active ~ .swiper-pagination-bullet {
    background-color: #005587 !important;
    border-color: #005587;
  }
  .swiper-pagination-bullet.active, .swiper-pagination-bullet.active ~ .swiper-pagination-bullet {
    background-color: initial;
  }
  .swiper-pagination-bullet.active + .swiper-pagination-bullet:after {
    content: '';
    position: absolute;
    top: -10px;
    left: -3px;
    width: 0;
    height: 0;
    border-top: 12px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 24px solid #FFC72C;
  }
  .swiper-pagination-bullet.active + .swiper-pagination-bullet {
    position: relative;
    overflow: visible;
  }
  .data-points .carousel-pagination button {
    position: relative;
    overflow: visible;
}

  .carousel-controls.carousel-controls-centered {
    display: flex !important;
    position: absolute;
    bottom: auto;
    transform: none;
    top: 0;
    width: 100%;
    height: calc(100% - 20px);
    button.btn.btn--primary {
      width: 50%;
      background: transparent;
      border: none;
      height: 100%;
  }
    button.btn.btn--primary.carousel-controls-prev:hover {
      cursor: url(/sites/default/files/2024-06/arrow-left.svg), auto;
    }
    button.btn.btn--primary.carousel-controls-next:hover {
      cursor: url(/sites/default/files/2024-06/arrow-right.svg), auto;
    }
    button.btn.btn--primary span {
      display: none;
    }
  }

}
  @media (max-width: 767.98px) {
    .data-points {
      max-width: 100%;
      width: 100%; } }
  .data-points.swiper-wrapper .swiper-slide {
    height: auto;
    padding: 40px 60px; }
    @media (max-width: 767.98px) {
      .data-points .swiper-wrapper .swiper-slide {
        padding: 0; } }
    .data-points.swiper-wrapper .swiper-slide .media-item figure {
      position: static; }
      .data-points.swiper-wrapper .swiper-slide .media-item figure img {
        position: static; }
    .data-points .swiper-wrapper .swiper-slide .text-content {
      background: #F9F9F9;
      color: #000;
      padding: 40px 65px 25px;
      position: relative;
      right: auto;
      bottom: auto;
      width: auto;
      .text {
        max-width: 525px;
        width: 100%;
      }
      p {
        font-size: 20px;
        line-height: 1.6;
      } 
    }

  .data-points .carousel-pagination {
    display: block;
    text-align: center; }
    .data-points .carousel-pagination button {
      background-color: #005587;
      border-color: #005587;
      border-radius: 0;
      display: block;
      width: 100%;
      margin: 0;
      padding: 0;
      height: 7px; }
      .data-points .carousel-pagination button.active {
        background-color: #ffc72c;
        border-color: #ffc72c; }
  .data-points .carousel-controls {
    display: none; }
  .data-points--blue {
    background-color: #005587;
    color: #fff; }
    .data-points--blue .swiper-wrapper .swiper-slide .text-content {
      color: #fff; }
      .data-points--blue .swiper-wrapper .swiper-slide .text-content h2, .data-points--blue .swiper-wrapper .swiper-slide .text-content h3, .data-points--blue .swiper-wrapper .swiper-slide .text-content h4 {
        color: #fff; }
    .data-points--blue .carousel-pagination button {
      background-color: #fff;
      border-color: #fff; }

.swiper-container--base .swiper-slide {
  height: auto;
}
.data-points.data-points--grey {
  .text-content {
    p {
      color: #005587;
    }
  }
}
.carousel-pagination {
  padding: 0 0 10px;
}
.data-points .carousel-pagination {
  display: flex;
  text-align: center;
  width: 100%;
  overflow: visible;
  max-width: 100%;
  background: #F9F9F9;
  padding-top: 10px;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  margin: 0 auto 10px;
}

.data-points .carousel-pagination button {
  background-color: #ffc72c;
  border-color: #ffc72c;
  transition: background-color 0.5s ease, border-color 0.5s ease;
}

.data-points .carousel-pagination button.active {
  background-color: #ffc72c;
  border-color: #ffc72c;
  display: block;
}

.data-points .swiper-pagination-bullet {
  background-color: #005587;
  border-color: #005587;
  border-radius: 0;
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  height: 7px;
  transition: all 0.5s ease; /* Add transition to all properties */
}

.data-points .swiper-pagination-bullet.active {
  background-color: #ffc72c;
  border-color: #ffc72c;
}

.data-points .swiper-pagination-bullet.active + .swiper-pagination-bullet:after {
  content: '';
  position: absolute;
  top: -10px;
  left: -3px;
  width: 0;
  height: 0;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 24px solid #FFC72C;
  transition: border-left-color 0.5s ease;
}

.data-points .swiper-pagination-bullet.active ~ .swiper-pagination-bullet {
  background-color: #005587 !important;
  border-color: #005587;
}

.data-points .swiper-pagination-bullet.active, 
.data-points .swiper-pagination-bullet.active ~ .swiper-pagination-bullet {
  background-color: initial;
}

.data-points .carousel-pagination button.active {
  background-color: #ffc72c;
  border-color: #ffc72c;
  display: block;
}

.data-points.item-count-1 {
  button.btn.btn--primary.carousel-controls-prev, button.btn.btn--primary.carousel-controls-next {
    display: none;
  }
    .swiper-wrapper {
      transition-property: transform;
      box-sizing: content-box;
      pointer-events: none;
      overflow: hidden;
      transform: none !important;
  }
}



.data-points.data-points--grey .swiper-wrapper .swiper-slide .text-content {
  background-color: #F9F9F9 
}


.data-points.data-points--grey .swiper-wrapper .swiper-slide .text-content h3 {
  color: #003b5c; 
  background-color: #F9F9F9
}

.data-points.data-points--grey .heading h2 {
  color: #2774AE; 
  background-color: #F9F9F9
}

.data-points.data-points--grey .swiper-wrapper .swiper-slide .text-content p {
  color: #111; 
  background-color: #F9F9F9
}

/* If you also use the blue theme, keep text white for ~8:1 contrast */
.data-points--blue .swiper-wrapper .swiper-slide .text-content {
  background-color: #005587;
}
.data-points--blue .swiper-wrapper .swiper-slide .text-content h3,
.data-points--blue .swiper-wrapper .swiper-slide .text-content p {
  color: #fff;
}



.data-points--blue {
  background: transparent;
  .heading {
      background: #005587;
      h2 {
        color: #fff;
        background: #005587;
      }
      p {
        background: #005587;
      }
  }
  .carousel-pagination {
    background: #005587;
  }
  .swiper-wrapper .swiper-slide {
    background: #005587;
  }
}
