.card {
  display: flex;
  flex-direction: column;
  gap: var(--spacer--md);
  width: 100%;
  height: 100%;
  padding: var(--card--padding--mobile);
  border-radius: var(--border-radius--md);
  background-color: var(--background);
  color: var(--text);
  border: var(--card--border-width) var(--card--border-style) var(--card--border);
  box-shadow: var(--shadow--sm);
  overflow: hidden;
}

@media (min-width: 768px) {
  .card {
    padding: var(--card--padding);
  }
}

.card__image {
  width: 100%;
}

.card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.card__icon svg {
  width: 2rem;
  height: 2rem;
  min-width: 2rem;
  min-height: 2rem;
}

.card__content :last-child {
  margin-bottom: 0;
}

/* Accordion Card */
.accordion-card {
  gap: 0;
  padding: 0;
}

.accordion-card .card__header {
  border: none;
  background-color: inherit;
  color: inherit;
  cursor: pointer;
  padding: var(--card--header--padding);
}

.accordion-card .card__content-wrapper {
  overflow: hidden;
  height: 0;
}

.accordion-card .card__content-inner {
  border-top: 2px solid var(--card--border);
  padding: var(--card--content--padding-y) var(--card--content--padding-x);
}