.interactive-image-cards__image-wrapper {
  position: relative;
}

.interactive-image-cards__image {
  width: 100%;
}

.interactive-image-cards__dots {
  list-style: none;
  padding: 0px;
  margin: 0 auto;
}

.interactive-image-cards__dot-text {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #ffffff;
  background: var(--brand-primary);
  border-radius: 0.5rem;
  width: 30px;
  height: 30px;
  font-size: 12px;
}

.interactive-image-cards__dots li {
  width: 40px;
  height: 40px;
  position: absolute;
  bottom: var(--dot-bottom, 0%);
  left: var(--dot-left, 0%);
}

.interactive-image-cards__item-link {
  display: flex;
  flex-flow: column;
  height: 100%;
  width: 100%;
}

.interactive-image-cards__item-title {
  color: var(--brand-dark);
}

.interactive-image-cards__item-description {
  color: var(--neutral-black);
}

.custom-tooltip {
  --bs-tooltip-bg: var(--brand-primary);
  --bs-tooltip-color: var(--white);
}

@media (min-width: 992px) {
  .interactive-image-cards__items {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: stretch;
    gap: 2rem;
  }
}

.interactive-image-cards__item {
  display: flex;
  position: relative;
  width: 100%;
  flex: 1 1 300px;
  max-width: 100%;
}

.interactive-image-cards__item-number {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 163px;
  left: 1rem;
  background: var(--brand-primary);
  color: var(--white);
  width: 32px;
  height: 32px;
  border-radius: 50%;
}

.interactive-image-cards__item-image {
  height: 178px;
  width: 100%;
  border-radius: 8px 8px 0 0;
}

.interactive-image-cards__item-content {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  background: var(--neutral-light-gray);
  border-radius: 0 0 8px 8px;
  padding: 32px 24px 24px 24px;
}

@media (min-width: 820px ) {
  .interactive-image-cards__item {
    flex: 1 1 400px;
    max-width: 50%;
  }
  .interactive-image-cards__dot-text {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }
}

@media (max-width: 991.98px) {
  .interactive-image-cards__dots li {
    bottom: var(--dot-bottom-responsive, var(--dot-bottom, 0%));
    left: var(--dot-left-responsive, var(--dot-left, 0%));
  }
}

@media (min-width: 1024px) {
  .interactive-image-cards__item {
    flex: 1 1 250px;
    max-width: 25%;
  }
}
