.xo-collection-card {
  position: relative;
  background-color: rgb(var(--color-background));
  border: var(--collection-card-border-width) solid rgba(var(--color-border), var(--collection-card-border-opacity));
  border-radius: var(--collection-card-corner-radius);
  box-shadow: var(--collection-card-shadow-horizontal-offset) var(--collection-card-shadow-vertical-offset) var(--collection-card-shadow-blur-radius) rgba(var(--color-shadow), var(--collection-card-shadow-opacity));
  overflow: hidden;
}
.xo-collection-card:hover .xo-collection-card__image img {
  transform: scale(1.1);
}
.xo-collection-card .placeholder-svg {
  width: 100%;
  height: auto;
}

.xo-collection-card__link {
  display: block;
  min-height: 100%;
}

.xo-collection-card__image {
  padding: var(--collection-card-image-padding);
  overflow: hidden;
}
.xo-collection-card__image img {
  transition: 0.8s;
}

.xo-collection-card__content {
  position: absolute;
  bottom: 2rem;
  left: 2rem;
  right: 2rem;
  background-color: rgba(var(--color-background));
  border-radius: var(--text-boxes-radius);
  display: flex;
  flex-direction: column;
  padding: var(--collection-card-content-padding);
  padding-top: max(var(--collection-card-content-padding), 1rem);
  padding-bottom: max(var(--collection-card-content-padding), 1rem);
  text-align: var(--collection-card-text-alignment);
  z-index: 9;
}
@media (min-width: 768px) {
  .xo-collection-card__content {
    padding-top: max(var(--collection-card-content-padding), 1.5rem);
    padding-bottom: max(var(--collection-card-content-padding), 1.5rem);
  }
}

.xo-collection-card__title {
  font-size: calc(var(--font-heading-scale) * var(--font-body-scale) * 1.8rem);
  color: rgb(var(--color-foreground));
  margin: 0;
  transition: 0.3s;
}

.xo-collection-card__title:hover {
  color: rgba(var(--color-foreground), 0.5);
}

.xo-collection-card__description {
  margin-top: 0.5rem;
  font-size: clamp(1rem, calc(0.25vw + 0.9rem), 1.2rem);
  font-weight: 500;
  color: rgba(var(--color-foreground), 0.7);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.xo-collection-card__count {
  font-size: calc(var(--font-body-scale) * 1.2rem);
  color: rgba(var(--color-foreground), 0.5);
}

.xo-collection-card--boxed .xo-collection-card__content {
  padding: var(--collection-card-content-padding, 1.5rem);
}