.services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
}

.service-card {
  --ICON-size: 2rem;
  background: var(--wp--preset--color--white);
  border: 1px solid #ddd;
  border-radius: 12px;
  overflow: hidden;
  transition:
    background-color 0.3s,
    color 0.3s;
  padding: 20px;
}

.service-card-hover:hover {
  background: var(--wp--preset--color--card-hover);
  color: var(--wp--preset--color--white);
}

.service-link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.service-link:hover {
  color: var(--wp--preset--color--white);
}

.service-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.service-icon {
  max-width: 32px;
  max-height: 32px;
}

.service-icon img {
  width: 100%;
  height: auto;
  /* Tint black images to primary color using filter */
  /* Note: Adjust filter values based on your primary color use https://codepen.io/sosuke/pen/Pjoqqp */
  /* Override in child theme if needed */
  filter: brightness(0) saturate(100%) invert(27%) sepia(98%) saturate(2500%)
    hue-rotate(195deg) brightness(95%) contrast(105%);
  transition: filter 0.3s;
}

/* .service-card:hover .service-icon img { */
/* Tint to white on hover */
/* filter: brightness(0) invert(1); */
/* } */

.service-title {
  font-size: var(--font-size-2);
}

.service-description {
  font-size: var(--font-size-1);
  padding-top: 12px;
}

/* For viewports 800px and above */
@media (min-width: 800px) {
  .services-grid {
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
  }
  .service-description {
    font-size: 18px;
  }
}
