.promotion-card {
  display: flex;
  align-items: stretch;
  width: 100%;
  position: relative;
  overflow: hidden;
  aspect-ratio: 1/1;
  min-height: auto;
  border-radius: 2.4rem;
}
.promotion-card .card__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.promotion-card .card__bg .card__bg-media {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.promotion-card .card__content {
  width: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 10;
  padding: 6rem 3.6rem;
  background-color: rgb(var(--color-bg-contrast-rgb) / 0.75);
}

.promotion-card .card__badges {
  display: flex;
  margin-bottom: 1.8rem;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.promotion-card .card__badge {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  height: 2.8rem;
  padding: 0 1.6rem;
  border-radius: 20rem;
  background-color: rgb(var(--color-bg-rgb) / 0.12);
  -webkit-backdrop-filter: blur(0.6rem);
  backdrop-filter: blur(0.6rem);
}
.promotion-card .card__badge .card__badge-text {
  display: block;
}
.promotion-card .card__badge .card__badge-label {
  color: var(--color-text-on-contrast);
  font-size: 1.4rem;
  display: block;
}

.promotion-card .card__title {
  display: block;
}
.promotion-card .card__title .card__title-line {
  font-size: 3.2rem;
  line-height: 1.3;
  display: block;
  font-weight: var(--font-weight-bold);
  color: var(--color-text-on-contrast);
}
.promotion-card .card__subtitle {
  line-height: 1.4;
  margin-top: 1.6rem;
  color: var(--color-text-on-contrast);
}

.promotion-card .card__actions {
  margin-top: 3.6rem;
  display: flex;
  align-items: center;
  gap: 1.2rem;
}
.promotion-card .card__actions .button {
  display: flex;
  align-items: center;
  height: 6rem;
  padding: 0 3.6rem;
  border-radius: 20rem;
  background-color: var(--color-accent);
}
.promotion-card .card__actions .button .button__icon {
}
.promotion-card .card__actions .button .button__text {
  display: block;
  font-size: 1.8rem;
}
.promotion-card .card__actions .button .button__label {
  display: block;
}
