  .cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3 cards per row */
  gap: 30px;
  justify-items: center; /* centers each card in its grid cell */
}

/* Make it responsive */
@media (max-width: 992px) {
  .cards {
    grid-template-columns: repeat(2, 1fr); /* 2 per row on tablets */
  }
}

@media (max-width: 600px) {
  .cards {
    grid-template-columns: 1fr; /* 1 per row on mobile */
  }
  .card {
    /* Optional: On mobile, you might want to remove max-width to let it grow 
       to the full width of the container (minus the 5% on each side from width: 90%)
       which provides a better mobile experience for the single card view. 
    */
    max-width: none; 
  }
}


    .card {
      width: 90%; /* Allows it to take up most of the space */
  max-width: 340px; /* But never wider than 340px */
      background: linear-gradient(180deg, #202020 0%, rgba(32, 32, 32, 0.2) 100%);
      border-radius: 40px;
      padding: 40px 20px;
      text-align: center;
      transition: transform 0.3s ease, background 0.3s ease;
      cursor: pointer;
      display: flex;
    flex-direction: column;
    height: 100%;
    }

    /* .card.highlight {
      background: #E3F919;
      color: #000;
    } */

    .card-icon {
      width: 90px;
      height: 90px;
      margin: 0 auto 20px;
      border-radius: 18px;
      background: #3E3E3E;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 32px;
      color: #fff;
    }

    .card.highlight .card-icon {
      background: rgba(151, 151, 151, 0.4);
      color: #000;
    }

    .card h3 {
      /* font-family: 'Mansfield', serif; */
      font-size: 20px;
      font-weight: 600;
      margin: 15px 0;
      color: #E3F919;
    }

    .card.highlight h3 {
      color: #000;
    }

    .card p {
      font-size: 16px;
      font-weight: 300;
      line-height: 22px;
      /* margin-bottom: 30px; */
      text-align: left;
      flex-grow: 1;
    }

    .learn-more {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      font-size: 16px;
      color: inherit;
      text-decoration: none;
      font-weight: 400;
      margin-top: 20px;
      text-align: center;
    }

    .learn-more span {
      border-bottom: 1.5px solid currentColor;
      padding-bottom: 2px;
    }

    .learn-more::after {
      content: '→';
      font-size: 18px;
      color: inherit;
    }

   
  .card:hover {
  transform: translateY(-10px);
  background: #E3F919;
  color: #000; /* applies to all text */
}
.card:hover h3 {
  color: #000;
}