/* COLORS */
/* TYPOGRAPHY */
/* ---- MEDIA QUERIES ----- */
.services .heading {
  margin: 0 0 2.3rem;
}
.services .text {
  font-size: 2.5rem;
  max-width: 45rem;
}
.services .text-content {
  margin: 0 0 8rem;
}
.services .services-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8.5rem;
}
.services .service-item a {
  color: #001D21;
  font-size: 2.5rem;
  font-weight: 600;
  padding-bottom: 5.3rem;
  border-bottom: 2px solid #000;
  width: 100%;
  display: block;
  position: relative;
}
.services .service-item a:hover .icon {
  background-color: #8FC15A;
  border-color: #8FC15A;
  color: #fff;
}
.services .service-item a .icon {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  right: 2rem;
  bottom: -1.85rem;
  width: 3.7rem;
  height: 3.7rem;
  background-color: #fff;
  border: 1px solid #808080;
  border-radius: 50%;
  transition: background-color 0.3s ease-in-out, border-color 0.3s ease-in-out, color 0.3s ease-in-out;
}

@media (max-width: 1300px) {
  .services .services-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .services .heading {
    margin: 0 0 3rem;
  }
  .services .text {
    font-size: 1.8rem;
  }
  .services .text-content {
    margin: 0 0 5rem;
  }
  .services .services-list {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 3.8rem;
  }
  .services .service-item a {
    font-size: 2rem;
    padding-bottom: 2.3rem;
  }
}