.resource-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}

.resource-card {
  display: flex;
  flex-direction: column;
  min-height: 235px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: var(--surface);
  text-decoration: none;
  transition: transform .22s, border-color .22s, box-shadow .22s;
}

.resource-card:hover {
  transform: translateY(-4px);
  border-color: #aebbb5;
  box-shadow: 0 14px 35px rgba(24, 40, 34, .07);
}

.resource-type {
  color: var(--accent);
  font-size: 11px;
  font-weight: 800;
}

.resource-card h3 {
  margin: 16px 0 10px;
  font-size: 19px;
  line-height: 1.45;
}

.resource-card p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.7;
}

.resource-card small {
  margin-top: auto;
  padding-top: 20px;
  color: #7d8783;
}

.source-note {
  margin: 19px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.7;
}

@media (max-width: 850px) {
  .resource-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 540px) {
  .resource-grid { grid-template-columns: 1fr; }
}
