.ov-card {
  color: var(--ov-color-text);
  background: var(--ov-color-surface);
  border: 1px solid var(--ov-color-border);
  border-radius: var(--ov-radius-3);
  box-shadow: var(--ov-shadow-xs);
}

.ov-card-is-link {
  display: block;
  color: inherit;
  text-decoration: none;
  transition:
    border-color var(--ov-transition-fast),
    box-shadow var(--ov-transition-fast),
    transform var(--ov-transition-fast);
}

.ov-card-is-link:hover {
  color: inherit;
  border-color: color-mix(in srgb, var(--ov-color-primary) 45%, var(--ov-color-border));
  box-shadow: var(--ov-shadow-sm);
  transform: translateY(-2px);
}

.ov-module-card,
.ov-feature-card,
.ov-plan-card,
.ov-article-card,
.ov-doc-card,
.ov-changelog-card,
.ov-pricing-card,
.ov-testimonial-card,
.ov-comparison-card {
  padding: var(--ov-space-3);
}

.ov-feature-card,
.ov-article-card,
.ov-doc-card,
.ov-changelog-card,
.ov-testimonial-card,
.ov-comparison-card {
  display: grid;
  gap: var(--ov-space-2);
}

.ov-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 0.75rem;
  color: var(--ov-color-text-muted);
  font-size: var(--ov-step--1);
}

.ov-testimonial-card {
  gap: var(--ov-space-3);
}

.ov-testimonial-quote {
  margin: 0;
  color: var(--ov-color-heading);
  font-size: var(--ov-step-1);
}

.ov-testimonial-author {
  color: var(--ov-color-text-muted);
  font-size: var(--ov-step--1);
}

@media (max-width: 575.98px) {
  .ov-card,
  .ov-module-card,
  .ov-feature-card,
  .ov-plan-card,
  .ov-article-card,
  .ov-doc-card,
  .ov-changelog-card,
  .ov-pricing-card,
  .ov-testimonial-card,
  .ov-comparison-card {
    border-radius: var(--ov-radius-2);
  }
}
