.promotion-card {
  position: relative;
  width: 100%;
  height: fit-content;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.promotion-card-item.single-column {
  grid-column: auto / span 2;
  grid-row: auto / span 2;
}

.promotion-card-item.full-columns {
  grid-column: span var(--desktop-columns);
}

.promotion-card__image-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  flex-direction: column;
  position: relative;
}

.promotion-card__image-wrapper .promotion-card__image-wrapper-mask {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1;
}

.promotion-card__image-inn {
  position: relative;
}

.promotion-card__button-wrapper {
  position: absolute;
  bottom: 10px;
  left: 10px;
  z-index: 10;
}
.promotion-card__button {
  background-color: #141414;
  color: #fff;
  text-transform: uppercase;
  border-radius: 99px;
  padding: 10px 20px;
  display: flex;
  align-items: center;
  column-gap: 10px;
  cursor: pointer;
  font-size: 15px;
  z-index: 2;
}
.promotion-card__button::after {
  display: none!important;
}

.promotion-card__button.hidden-text {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  text-align: center;
  padding: 0;
  border-radius: 99px!important;
}

.promotion-card__button span+span {
  display: none;
}

.promotion-card__content {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 25px;
  width: 100%;
  overflow: hidden;
}

.promotion-card__content.text-shadow .promotion-card__content-inn:before {
  background: radial-gradient(rgba(0, 0, 0, .2) 0, transparent 60%);
  bottom: 0;
  content: "";
  left: 0;
  margin: -100px -200px;
  position: absolute;
  right: 0;
  top: 0;
  z-index: auto;
}
.promotion-card__content[data-position="absolute"] {
  position: absolute;
  z-index: 2;
}
.promotion-card__content[data-position="relative"] {
  position: relative;
}
.promotion-card__content[data-position="relative"] {
  padding-bottom: 0;
}

.promotion-card__content.left-top {
  align-items: flex-start;
  justify-content: flex-start;
  text-align: start;
}

.promotion-card__content.top {
  align-items: center;
  justify-content: flex-start;
  text-align: center;
}

.promotion-card__content.right-top {
  align-items: flex-end;
  justify-content: flex-start;
  text-align: end;
}

.promotion-card__content.left {
  align-items: flex-start;
  justify-content: center;
  text-align: start;
}

.promotion-card__content.center {
  align-items: center;
  justify-content: center;
  text-align: center;
}

.promotion-card__content.right {
  align-items: flex-end;
  justify-content: center;
  text-align: end;
}

.promotion-card__content.left-bottom {
  align-items: flex-start;
  justify-content: flex-end;
  text-align: start;
}

.promotion-card__content.bottom {
  align-items: center;
  justify-content: flex-end;
  text-align: center;
}

.promotion-card__content.right-bottom {
  align-items: flex-end;
  justify-content: flex-end;
  text-align: end;
}

.promotion-card__title {
  font-family: 'Jost';
  color: #000000;
  /* relative 定位必须存在，用于绝对定位文字时，正确控制文字样式 */
  position: relative!important; 
}
.promotion-card__content[data-position="relative"] .promotion-card__title {
  font-weight: 600 !important;
  font-size: 20px;
  line-height: 32px;
  padding-bottom: 5px;
}
.promotion-card__content[data-position="absolute"] .promotion-card__title {
  font-size: 40px;
  line-height: 1.3;
  text-transform: uppercase;
}
.promotion-card__content[data-position="absolute"] .promotion-card__content-inn {
  padding: 60px 0;
}
.promotion-card__content[data-position="absolute"].left-top .promotion-card__content-inn,
.promotion-card__content[data-position="absolute"].left-bottom .promotion-card__content-inn {
  padding-left: 60px;
}
.promotion-card__content[data-position="absolute"].right-top .promotion-card__content-inn,
.promotion-card__content[data-position="absolute"].right-bottom .promotion-card__content-inn {
  padding-right: 60px;
}

.promotion-card__desc {
  font-family: 'Jost';
  font-weight: normal;
  color: #000000;
  font-style: normal;
  text-transform: none;
}
.promotion-card__content[data-position="relative"] .promotion-card__desc {
  text-align: inherit;
  text-transform: none !important;
  line-height: 1.6;
  font-size: 18px;
}
.promotion-card__content[data-position="absolute"] .promotion-card__desc {
  text-align: inherit;
  line-height: 1.2;
  font-size: 32px;
  text-transform: uppercase;
}

.theme-video-media__play-button.right-bottom {
  width: 44px;
  height: 44px;
}

@media (min-width: 960px) {
  .promotion-card-item.desktop-single-mobile-full {
    grid-column: auto/span 2;
    grid-row: auto/span 2;
  }
  .promotion-card__content.hidden-mobile {
    display: block;
  }
  .promotion-card__content.hidden-desktop {
    display: none;
  }
  .promotion-card__button span,
  .promotion-card__button.hide-text-m span{
    display: block;
  }
}

@media (max-width: 959px) {
  .promotion-card__content.hidden-mobile {
    display: none;
  }
  .promotion-card__content.hidden-desktop {
    display: block;
  }
  .promotion-card__button.hide-text-m {
    width: 56px;
    height: 56px;
  }
  .promotion-card-item.desktop-single-mobile-full {
    grid-column: span 2;
  }
  .promotion-card-item.full-columns {
    grid-column: span 2;
  }
  .promotion-card__content[data-position="relative"] .promotion-card__title {
    font-weight: 600 !important;
    font-size: 15px;
    line-height: 1.6;
    padding-bottom: 5px;
  }
  .promotion-card__content[data-position="relative"] .promotion-card__desc {
    text-align: inherit;
    line-height: 1.6;
    font-size: 14px;
  }
  .promotion-card__content[data-position="absolute"] .promotion-card__title {
    font-size: 20px;
    line-height: 1.3;
  }
  .promotion-card__content[data-position="absolute"] .promotion-card__desc {
    text-align: inherit;
    line-height: 1.2;
    font-size: 16px;
  }
  .promotion-card__content[data-position="absolute"] .promotion-card__content-inn {
    padding: 30px 0;
  }
  .promotion-card__content[data-position="absolute"].left-top .promotion-card__content-inn,
  .promotion-card__content[data-position="absolute"].left-bottom .promotion-card__content-inn {
    padding-left: 0px;
  }
  .promotion-card__content[data-position="absolute"].right-top .promotion-card__content-inn,
  .promotion-card__content[data-position="absolute"].right-bottom .promotion-card__content-inn {
    padding-right: 0px;
  }
}

