.card {
  display: inline-flex;
  justify-content: stretch;
  align-items: center;
  flex-direction: column;
  width: 350px;
  max-width: calc(100% - 20px - 20px);
  margin: 20px;
  background: var(--background);
  border-radius: var(--rounded);
  overflow: hidden;
  box-shadow: var(--shadow);
  vertical-align: top;
}

.card[data-style=small] {
  width: 250px;
}

.card[data-style=large] {
  width: calc(50% - 40px);
  max-width: calc(50% - 40px);
}

.card[data-style=wide] {
  flex-direction: row;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
  margin: 10px 0;
}

.card[data-style=wide] .card-image {
  flex: 0 0 220px;
  width: 220px;
}

.card[data-style=wide] .card-image img {
  aspect-ratio: unset;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.card[data-style=wide] .card-text {
  flex: 1;
  align-items: flex-start;
  text-align: left;
}

@media (max-width: 600px) {
  .card[data-style=wide] {
    flex-direction: column;
    width: calc(100% - 40px);
    max-width: calc(100% - 40px);
    margin: 20px;
  }
  .card[data-style=wide] .card-image {
    flex: unset;
    width: 100%;
  }
  .card[data-style=wide] .card-image img {
    aspect-ratio: 3/2;
    height: auto;
  }
  .card[data-style=wide] .card-text {
    align-items: center;
    text-align: center;
  }
}
.card-image img {
  aspect-ratio: 3/2;
  object-fit: cover;
  width: 100%;
  filter: grayscale(100%);
}

.card-text {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
  gap: 20px;
  max-width: 100%;
  padding: 20px;
}

.card-text > * {
  margin: 0 !important;
}

.card-title {
  font-family: var(--heading);
  font-weight: var(--semi-bold);
}

.card-subtitle {
  margin-top: -10px !important;
  font-style: italic;
}

/*# sourceMappingURL=card.css.map */