/* Home background: fixed, clear artwork frame with visible side boundaries. */
html.home-page-root .home-welcome-page .home-background {
  position: fixed;
  top: 52px;
  left: 50%;
  z-index: 0;
  width: 100%;
  max-width: 375px;
  height: calc(100vh - 52px);
  margin: 0;
  transform: translateX(-50%);
  overflow: hidden;
  background: #000000;
  box-sizing: border-box;
  isolation: isolate;
  pointer-events: none;
  animation: none !important;
  box-shadow:
    0 0 0 100vmax #000000,
    0 0 28px rgba(0, 0, 0, 0.92),
    inset 1px 0 0 rgba(255, 255, 255, 0.16),
    inset -1px 0 0 rgba(255, 255, 255, 0.16);
}

html.home-page-root .home-welcome-page .home-background::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: url('/assets/images/mobile-home.png');
  background-size: 100% 100%;
  background-position: center top;
  background-repeat: no-repeat;
  filter: none;
  transform: translateZ(0);
}

html.home-page-root .home-welcome-page .home-background::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(to right, rgba(0, 0, 0, 0.38) 0%, transparent 7%, transparent 93%, rgba(0, 0, 0, 0.38) 100%),
    linear-gradient(to bottom, rgba(0, 0, 0, 0.16) 0%, transparent 14%, transparent 82%, rgba(0, 0, 0, 0.2) 100%);
  pointer-events: none;
}

@media (min-width: 768px) {
  html.home-page-root .home-welcome-page .home-background {
    max-width: 750px;
  }

  html.home-page-root .home-welcome-page .home-background::before {
    background-image: url('/assets/images/pc-home.png');
    background-size: 100% 100%;
    background-position: center top;
  }
}

/* Minimal top edge shade only; do not blur or cover the artwork. */
html.home-page-root .home-welcome-page .home-background__shade-top {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 18%;
  max-height: 130px;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.36) 0%, rgba(0, 0, 0, 0.1) 54%, transparent 100%);
  pointer-events: none;
}

/* Minimal bottom edge shade keeps the page grounded without softening the image. */
html.home-page-root .home-welcome-page .home-background__shade-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 22%;
  min-height: 110px;
  background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.18) 54%, rgba(0, 0, 0, 0.58) 100%);
  pointer-events: none;
}

@media (min-width: 768px) {
  html.home-page-root .home-welcome-page .home-background__shade-bottom {
    height: 22%;
    min-height: 180px;
  }
}

html.home-page-root .home-welcome-page .home-content {
  background: transparent;
  z-index: 3;
}

html.home-page-root .home-welcome-page .home-hero__scroll-anchor {
  height: clamp(292px, 38vh, 344px);
}

html.home-page-root .home-welcome-page .home-background .home-hero__title.textbox--fixed {
  padding-top: 28px;
}

html.home-page-root .home-welcome-page .home-hero__title [data-node-id="11011:574"] {
  max-width: 640px;
  margin: 0 auto;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.82);
}

/* 首页广告位暂时隐藏，需要投放时删除 display:none 相关规则，并移除 .intro-box 的 margin-top 补偿 */
html.home-page-root .home-welcome-page .home-page .ad-container,
html.home-page-root .home-welcome-page .ad-container {
  display: none !important;
  margin: 0 !important;
  min-height: 0 !important;
}

html.home-page-root .home-welcome-page .intro-box {
  max-width: calc(100% - 40px);
  margin-top: 32px;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 767px) {
  html.home-page-root .home-welcome-page .home-hero__scroll-anchor {
    /* H5：文案与按钮之间留出更多间距 */
    height: clamp(260px, 38vh, 310px);
  }

  html.home-page-root .home-welcome-page .home-background .home-hero__title.textbox--fixed {
    padding: 24px 18px 0;
  }

  html.home-page-root .home-welcome-page .home-hero__title [data-node-id="11011:574"] {
    font-size: 18px;
  }

  html.home-page-root .home-welcome-page .home-hero__title [data-node-id="11011:574"] p {
    line-height: 27px;
  }
}

@media (max-width: 374px) {
  html.home-page-root .home-welcome-page .home-hero__scroll-anchor {
    height: 252px;
  }

  html.home-page-root .home-welcome-page .home-hero__title [data-node-id="11011:574"] {
    font-size: 16px;
  }

  html.home-page-root .home-welcome-page .home-hero__title [data-node-id="11011:574"] p {
    line-height: 24px;
  }
}

/* Introduction surface is solid instead of blurred, so it does not smear the art behind it. */
html.home-page-root .home-welcome-page .intro-box::before {
  background: linear-gradient(
    to bottom,
    rgba(3, 3, 7, 0.78) 0%,
    rgba(0, 0, 0, 0.68) 100%
  );
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
