@keyframes slideshowTextRiseUp {
  0% {
    opacity: 0;
    transform: translateY(120%);
  }

  to {
    opacity: 1;
    transform: translateY(0%);
  }
}

.featured-slideshow {
  display: block;
  position: relative;
}

.featured-slideshow__slider {
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  /* height: calc(700 / 1440 * var(--featured-slideshow-content-height)) !important; */
}

.featured-slideshow__slide {
  position: relative;
  width: 100%;
  overflow: hidden;
  display: flex;
  /* height: 100%; */
}

.featured-slideshow-slide__media {
  position: relative;
  width: var(--featured-slideshow-image-text-layout);
  height: 100%;
  flex-shrink: 0;
  flex-grow: 0;
}

@media screen and (max-width: 959px) {
  .featured-slideshow__slider {
    height: calc(var(--featured-slideshow-content-height) - 80px) !important;
  }

  .featured-slideshow__slide {
    flex-direction: column !important;
  }

  .featured-slideshow-slide__media {
    width: 100% !important;
    height: var(--featured-slideshow-image-text-layout);
    min-height: 240px;
    flex-shrink: 1;
  }

  .featured-slideshow-slide__content {
    width: 100% !important;
    padding: 30px !important;
    height: unset !important;
  }

  .featured-slideshow-slide__content-line {
    height: 32px !important;
    margin: 16px 0 !important;
  }
}

.featured-slideshow-slide__content {
  width: 50%;
  /* height: 100%; */
  background: var(--featured-slideshow-text-background-color);
  flex-grow: 1;
  z-index: 2;
  display: flex;
  align-items: center;
  padding: 40px;
  flex-direction: column;
  align-items: var(--featured-slideshow-text-content-horizontal-layout);
  justify-content: center;
  box-sizing: border-box;
}

@media screen and (max-width: 959px) {
  .featured-slideshow-slide__content {
    background: var(--featured-slideshow-text-background-color-mobile);
  }
}

.featured-slideshow-slide__content-line {
  display: none;
  width: 100%;
  height: 100px;
  margin: 38px 0;
  justify-content: var(--featured-slideshow-text-content-horizontal-layout);
}

.featured-slideshow-slide__content-line::after {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background-color: rgb(var(--featured-slideshow-text-font-color));
}

.show-content-line .featured-slideshow-slide__content-line {
  display: flex;
}

.show-content-line .featured-slideshow-slide__button {
  margin-top: 0;
}

.featured-slideshow-slide__media::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: calc(var(--featured-slideshow-overlay-opacity, 0) / 100);
  background-color: rgba(var(--color-mask));
  display: block;
  content: "";
  z-index: 1;
}

.featured-slideshow-slide__media--adapt .featured-slideshow-slide__image,
.featured-slideshow-slide__media--adapt .featured-slideshow-slide__image-placeholder {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.featured-slideshow-slide__image {
  display: block;
  width: 100%;
  height: auto;
  /* object-fit: cover; */
  /* object-position: center; */
}

.featured-slideshow-slide__image-placeholder {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 450px;
  background-color: rgb(var(--color-image-background));
}

.featured-slideshow-slide__image-placeholder>svg {
  display: block;
  height: 100%;
  max-height: 800px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 959px) {
  .featured-slideshow-slide__image-placeholder {
    min-height: 250px;
  }

  .featured-slideshow-slide__image-placeholder>svg {
    height: 80%;
  }
}

.featured-slideshow-slide__text-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  display: flex;
  padding: 80px;
  align-items: var(--featured-slideshow-content-vertical-layout);
  justify-content: var(--featured-slideshow-content-horizontal-layout);
}

.featured-slideshow-slide__text {
  position: relative;
  width: var(--pc-content-width);
}

.featured-slideshow-slide__text>[data-animation] {
  opacity: 0;
  transform: translateY(120%);
}

.featured-slideshow-slide__desc {
  margin-top: 8px;
  margin-bottom: 0;
  color: rgb(var(--featured-slideshow-text-font-color)) !important;
}

@media screen and (max-width: 959px) {
  .featured-slideshow-slide__text {
    text-align: var(--slideshow-mobile-text-align, "center");
    width: var(--mobile-content-width);
  }

  .featured-slideshow-slide__desc {
    color: rgb(var(--featured-slideshow-text-font-color-mobile)) !important;
  }
}

.featured-slideshow-slide__button {
  opacity: 0;
  animation-duration: 2s;
  animation-timing-function: ease;
  animation-delay: 1s;
  animation-fill-mode: forwards;
  margin-top: 48px;

  &.button:not(.button--link) {
    --btn-border-radius: 54px;
    --btn-border-radius-outset: 54px;
    padding: 12px 50px;
  }
}

.featured-slideshow-slide__title span {
  /* color: rgb(var(--featured-slideshow-text-title-font-color)) !important; */
  background: linear-gradient(to right, rgb(var(--featured-slideshow-text-title-font-start-color)), rgb(var(--featured-slideshow-text-title-font-end-color)));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.featured-slideshow__slide .pc-show {
  display: inline;
}

.featured-slideshow__slide .mobile-show {
  display: none;
}

@media screen and (max-width: 959px) {
  .featured-slideshow-slide__title span {
    background: linear-gradient(to right, rgb(var(--featured-slideshow-text-title-font-start-color-mobile)), rgb(var(--featured-slideshow-text-title-font-end-color-mobile)));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  .featured-slideshow__slide .pc-show {
    display: none;
  }

  .featured-slideshow__slide .mobile-show {
    display: inline;
  }
}

.is-active .featured-slideshow-slide__text>[data-animation] {
  animation: slideshowTextRiseUp 0.8s cubic-bezier(0.26, 0.54, 0.32, 1) forwards;
}

.is-active .featured-slideshow-slide__text .featured-slideshow-slide__desc {
  animation-delay: 0.6s;
}

.is-active .featured-slideshow-slide__button {
  animation-name: fadeIn;
}

.featured-slideshow__control {
  position: absolute;
  z-index: 2;
  bottom: 40px;
  right: 40px;
}

.featured-control__arrow-buttons {
  display: flex;
  align-items: center;
  align-items: center;
  gap: 10px;
}

.featured-control__arrow-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  cursor: pointer;
  position: relative;
  transition: transform 0.3s;
  border: 1px solid #fff;
  background: none;
}

.featured-control__arrow-button svg {
  color: #fff;
}

.featured-control__arrow-button[name="previous"] {
  transform: rotate(90deg);
}

.featured-control__arrow-button[name="next"] {
  transform: rotate(-90deg);
}

.featured-slideshow .splide__pagination {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  gap: 8px;
}

.featured-slideshow .splide__pagination__page {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #fff;
  opacity: 0.4;
  padding: 0;
  border: none;
  cursor: pointer;
}

.featured-slideshow .splide__pagination__page.is-active {
  opacity: 1;
}

@media screen and (max-width: 959px) {
  .feature-slideshow__control--arrows {
    right: 20px;
  }

  .featured-control__arrow-button {
    width: 32px;
    height: 32px;
  }

  .featured-slideshow-slide__text-wrapper {
    padding: 40px;
  }

  .featured-slideshow .splide__pagination {
    bottom: 10px;
  }
}

.featured-slideshow-slide__text-mask {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 493px;
  height: 406px;
}

.featured-slideshow-slide__text-mask.mask-deep {
  border-radius: 50%;
  background: radial-gradient(77.64% 77.64% at 50% 50%,
      rgba(0, 0, 0, 0.3) 59.64%,
      rgba(0, 0, 0, 0) 100%);
  filter: blur(120px);
}

.featured-slideshow-slide__text-mask.mask-light {
  border-radius: 50%;
  background: radial-gradient(77.64% 77.64% at 50% 50%,
      rgba(255, 255, 255, 0.3) 59.64%,
      rgba(255, 255, 255, 0) 100%);
  filter: blur(120px);
}

@media screen and (max-width: 959px) {
  .featured-slideshow-slide__text-mask {
    width: 355px;
    height: 292px;
  }
}

/* The ipad end responds to the mobile end in vertical screen */

/* @custom-media --tablet (max-width: 959px); */

/* @custom-media --gt-mobile (min-width: 751px); */

/* detectingScreen need to consider the configuration of the tablet */
/* 首屏视频：与图片完全相同的铺陈方式（width:100% / height:auto，
   由 .featured-slideshow__slide 的 overflow:hidden 裁切），
   这样从图片换成视频时构图不变。组件自带的 inline aspect-ratio 负责高度。 */
.featured-slideshow-slide__video video {
  display: block;
  width: 100%;
  height: auto;
}

/* 首屏下方留白：仅移动端生效。
   之前直接写成行内 margin-bottom，是全视口生效的 —— 调负值收掉移动端白条时，
   PC 端的跑马灯也被一起拽上去压在了首屏上。
   所以改成「行内只传变量、由这条媒体查询决定在哪生效」。 */
@media screen and (max-width: 959px) {
  .featured-slideshow {
    margin-bottom: var(--bz-fs-margin-bottom, 0px);
  }
}


/* ═══ TinClea 封面定制 ═══ */

/* 小标签 + 细线：后台没有这个字段，用伪元素挂在标题前 */
.featured-slideshow-slide__title::before{
  content:"PH 5.5-6.0 · ONE STEP";
  display:block;
  width:120px;
  font-size:11.5px;
  letter-spacing:.2em;
  font-weight:700;
  color:#0A5EA3;
  -webkit-text-fill-color:#0A5EA3;
  padding-bottom:12px;
  margin-bottom:22px;
  border-bottom:1px solid rgba(23,50,92,.32);
  white-space:nowrap;
}

/* 标题：深海军蓝（主题默认走渐变文字，这里改回纯色） */
.featured-slideshow-slide__title,
.featured-slideshow-slide__title span{
  color:#17325C !important;
  background:none !important;
  -webkit-text-fill-color:#17325C !important;
  letter-spacing:-.02em;
  line-height:1.16;
}

/* 正文：灰蓝，和标题拉开层次 */
.featured-slideshow-slide__desc,
.featured-slideshow-slide__desc *{
  color:#4A5A68 !important;
  line-height:1.78;
}

/* 按钮：静态深蓝实心 → 悬浮变透明描边 */
.featured-slideshow-slide__button.button:not(.button--link){
  background-color:#17325C !important;
  border:1.5px solid #17325C !important;
  color:#fff !important;
  letter-spacing:.06em;
  font-weight:600;
  transition:background-color .28s ease, color .28s ease;
}
.featured-slideshow-slide__button.button:not(.button--link):hover{
  background-color:transparent !important;
  color:#17325C !important;
}
.featured-slideshow-slide__button.button:not(.button--link):hover *{
  color:#17325C !important;
}

@media screen and (max-width:959px){
  .featured-slideshow-slide__title::before{
    font-size:10.5px;
    width:104px;
    padding-bottom:9px;
    margin-bottom:16px;
  }
}

/* 文案区宽度：靠 CSS 限宽，不动 image_text_layout（那个控制的是图片宽度） */
.featured-slideshow-slide__text-wrapper{
  padding-left:6.5% !important;
  padding-right:6.5% !important;
}
.featured-slideshow-slide__text{
  max-width:600px;
  width:100%;
}
.featured-slideshow-slide__title,
.featured-slideshow-slide__desc{
  max-width:560px;
}

@media screen and (max-width:959px){
  .featured-slideshow-slide__text-wrapper{
    padding-left:24px !important;
    padding-right:24px !important;
  }
  .featured-slideshow-slide__text,
  .featured-slideshow-slide__title,
  .featured-slideshow-slide__desc{
    max-width:100%;
  }
}

/* ═══ 移动端封面（≤959px）：文案限左侧、字号收敛、避让导航栏 ═══ */
@media screen and (max-width:959px){
  .featured-slideshow-slide__text-wrapper{
    padding-top:34px !important;
    padding-bottom:38px !important;
    padding-left:14px !important;
    padding-right:6px !important;
    align-items:flex-end !important;
    justify-content:flex-start !important;
  }
  .featured-slideshow-slide__text{
    max-width:48% !important;
    width:48% !important;
  }
  .featured-slideshow-slide__title::before{
    font-size:8.5px;
    letter-spacing:.13em;
    width:76px;
    padding-bottom:5px;
    margin-bottom:9px;
  }
  .featured-slideshow-slide__title,
  .featured-slideshow-slide__title span{
    font-size:18px !important;
    line-height:1.16 !important;
    max-width:100% !important;
  }
  .featured-slideshow-slide__desc,
  .featured-slideshow-slide__desc *{
    font-size:11px !important;
    line-height:1.5 !important;
    max-width:100% !important;
  }
  .featured-slideshow-slide__button{
    margin-top:11px !important;
  }
  .featured-slideshow-slide__button.button:not(.button--link){
    padding:6px 18px !important;
    font-size:9.5px !important;
  }
}
