.cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
  padding: 20px;
}

.card {
  display: block; /* ensures entire <a> behaves like a block */
  
  border-radius: 12px;
  padding: 20px;
  text-decoration: none; /* remove underline */
  color: inherit; /* keep text color consistent */
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card h3 {
  margin-top: 0;
  font-size: 1.4rem;
  color: #2c3e50;
}

.card p {
  margin: 10px 0;
  color: #555;
  font-size: 0.95rem;
}

.card ul {
  margin: 10px 0 0;
  padding-left: 20px;
  list-style-type: none;
}

.card li {
  font-size: 0.9rem;
  color: #444;
  margin-bottom: 6px;
}

/* Hover effect */
.card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 16px rgba(0,0,0,0.15);
  background: #f9f9f9;
}

/* Optional: subtle focus style for accessibility */
.card:focus {
  outline: 3px solid #3498db;
}