.text-media-3-col .text-media-main-content {
  margin-bottom: 50px;
}

.text-media-3-col .text-media-card-content {
  position: relative;
}

.text-media-3-col .text-media-card-content .location-icon {
  width: 40px;
  height: 40px;
  position: absolute;
  top: 20px;
  left: 20px;
}

.text-media-3-col .text-media-card-content .location-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.text-media-3-col .text-media-card-image,
.text-media-3-col .text-media-card-content .heading.h3 {
  border-radius: 20px;
  margin-bottom: 20px;
}
.text-media-3-col .text-media-card-content .heading {
  margin-bottom: 0;
}
.text-media-3-col .text-media-main-content.grid-col-3 {
  align-items: center;
}
.text-media-3-col .text-media-content.content-left {
  grid-column: span 2;
}
.text-media-3-col .cta-button a.animated {
  padding: 0 20px;
}

.text-media-3-col .text-media-cards .text-media-card-image {
  width: 100%;
  height: auto;
}

@media (max-width: 800px) {
  .text-media-3-col .text-media-cards.grid-col-3 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .text-media-3-col .text-media-cards.grid-col-3 {
    grid-template-columns: 1fr;
  }
  .text-media-3-col .card-media,
  .text-media-3-col .text-media-content .cta-button {
    text-align: center;
  }
  .text-media-3-col .text-media-card-image {
    max-width: 380px;
  }
  .text-media-3-col .text-media-content.content-left,
  .text-media-3-col .text-media-content.content-right {
    grid-column: span 3;
  }
}
