/* ============================================
   全屏 Slider - 响应式样式
   设计稿: 2560 × 1440
   适配: PC
   方案: .vw() 函数换算，设计稿px → vw
   用法: .vw(属性, 设计稿px);
   ============================================ */
/* 设计稿px → vw 函数（支持 1~3 个值） */
/* ========== 通用重置 ========== */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
html,
body {
  width: 100%;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  overscroll-behavior: none;
  -webkit-tap-highlight-color: transparent;
}
/* ========== 顶端导航栏 ========== */
.navbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  height: 3.359375vw;
  background: rgba(0, 0, 0, 0.66);
}
.navbar .navbar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 3.359375vw;
  gap: 0vw 0.390625vw;
}
.navbar .navbar-logo {
  text-decoration: none;
  color: #fff;
  height: 1.7578125vw;
  width: auto;
  margin-left: 1.5625vw;
  margin-right: 1.5625vw;
}
.navbar .navbar-menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.navbar .navbar-menu .menu-item {
  width: 7.65625vw;
  height: 3.3984375vw;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.navbar .navbar-actions {
  display: flex;
  align-items: center;
  gap: 1.5625vw;
}
.navbar .navbar-actions .action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.28125vw;
  height: 3.28125vw;
  cursor: pointer;
  transition: all 0.3s ease;
  color: #fff;
  flex-shrink: 0;
}
.navbar .navbar-actions .lang-btn {
  background-image: url('../img/icon_lang.png');
  background-size: cover;
  background-position: center;
  width: 1.4453125vw;
  height: 1.4453125vw;
}
.navbar .navbar-actions .download-btn {
  width: 10.78125vw;
  height: 3.359375vw;
}
.navbar .navbar-actions .download-btn a {
  width: 10.78125vw;
  height: 3.359375vw;
  background-size: cover;
  background-position: center;
  display: block;
}
/* ========== Slider 容器 ========== */
.slider-container {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  /* ========== 方向箭头（容器 + 装饰 + 主箭头） ========== */
}
.slider-container .slider-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  /* 由子元素 slide 实际高度堆叠决定，允许最后一屏非 100vh */
  min-height: 100%;
  transition: transform 0.6s cubic-bezier(0.65, 0, 0.35, 1);
}
.slider-container .slider-wrapper.no-anim {
  transition: none;
}
.slider-container .slider-slide {
  position: relative;
  width: 100%;
  height: 100vh;
  /* 默认每屏 = 视口高度（替代原 100% 相对 wrapper） */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.slider-container .slider-slide.slide-home {
  background-image: url('../img/bg1.jpg');
  /* ========== 社媒区域 ========== */
}
.slider-container .slider-slide.slide-home .slide-inner {
  padding: 7.03125vw 1.5625vw;
}
.slider-container .slider-slide.slide-home .slide-inner .deco {
  height: 4.375vw;
  margin-bottom: 1.171875vw;
  display: block;
}
.slider-container .slider-slide.slide-home .slide-inner .slogan {
  width: auto;
  height: 12.3046875vw;
  margin-bottom: 1.171875vw;
}
.slider-container .slider-slide.slide-home .slide-inner .btns {
  display: flex;
  gap: 0.78125vw;
}
.slider-container .slider-slide.slide-home .slide-inner .btns .btn-download {
  width: 12.578125vw;
  height: 2.265625vw;
  background-size: cover;
  background-position: center;
}
.slider-container .slider-slide.slide-home .slide-inner .btns .btn-google {
  background-image: url('../img/btn_google.png');
  background-size: cover;
  background-position: center;
  width: 7.6953125vw;
  height: 2.265625vw;
}
.slider-container .slider-slide.slide-home .kv {
  display: flex;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background-position: center;
  width: 23.75vw;
  height: 13.359375vw;
}
.slider-container .slider-slide.slide-home .kv .btn-play {
  position: relative;
  background-image: url('../img/btn_play.png');
  background-size: cover;
  background-position: center;
  width: 6.2890625vw;
  height: 6.3671875vw;
  cursor: pointer;
  animation: btnPulse 2.2s ease-in-out infinite;
  transition: transform 0.15s ease, filter 0.15s ease;
  /* 双层扩散光环（伪元素 + 不同延迟） */
}
.slider-container .slider-slide.slide-home .kv .btn-play::before,
.slider-container .slider-slide.slide-home .kv .btn-play::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9.140625vw;
  height: 9.453125vw;
  transform: translate(-50%, -50%);
  pointer-events: none;
  opacity: 0;
}
.slider-container .slider-slide.slide-home .kv .btn-play::before {
  animation: btnRipple 2.6s ease-out infinite;
}
.slider-container .slider-slide.slide-home .kv .btn-play::after {
  animation: btnRipple 2.6s ease-out infinite 1.3s;
}
.slider-container .slider-slide.slide-home .kv .btn-play:active {
  transform: scale(0.94);
  filter: drop-shadow(0 6px 14px rgba(124, 92, 255, 0.55));
}
.slider-container .slider-slide.slide-home .sns {
  position: absolute;
  top: 10.8203125vw;
  right: 2.578125vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.171875vw;
  z-index: 5;
  background-image: url('../img/sns_bg.png');
  background-size: contain;
  background-position: center bottom;
  background-repeat: no-repeat;
  width: 4.609375vw;
  background-size: 4.609375vw;
  padding: 1.171875vw;
}
.slider-container .slider-slide.slide-home .sns .sns-title {
  width: 4.5703125vw;
  height: 2.9296875vw;
  background-image: url('../img/en/sns_follow.png');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: -2.9296875vw;
  left: 0;
}
.slider-container .slider-slide.slide-home .sns .sns-icons {
  display: flex;
  gap: 0.78125vw;
  align-items: center;
  justify-content: space-evenly;
  flex-direction: column;
}
.slider-container .slider-slide.slide-home .sns .sns-icons .sns-icon {
  display: block;
  width: 1.953125vw;
  height: 1.953125vw;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  cursor: pointer;
  transition: transform 0.2s ease;
  position: relative;
}
.slider-container .slider-slide.slide-home .sns .sns-icons .sns-icon:hover::after {
  content: '';
  position: absolute;
  top: 0.078125vw;
  left: -0.078125vw;
  width: 2.1484375vw;
  height: 1.7578125vw;
  background-image: url('../img/sns_cur.png');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.slider-container .slider-slide.slide-home .sns .sns-icons .sns-icon.icon-discord {
  background-image: url('../img/icon_discord.png');
}
.slider-container .slider-slide.slide-home .sns .sns-icons .sns-icon.icon-youtube {
  background-image: url('../img/icon_youtube.png');
}
.slider-container .slider-slide.slide-home .sns .sns-icons .sns-icon.icon-facebook {
  background-image: url('../img/icon_facebooke.png');
}
.slider-container .slider-slide.slide-home .sns .sns-icons .sns-icon.icon-ins {
  background-image: url('../img/icon_ins.png');
}
.slider-container .slider-slide.slide-home .sns .sns-icons .sns-icon.icon-tiktok {
  background-image: url('../img/icon_tiktok.png');
}
.slider-container .slider-slide.slide-gameplay {
  background-image: url('../img/bg2.jpg');
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.slider-container .slider-slide.slide-gameplay .slide-inner {
  width: 100%;
  box-sizing: border-box;
}
.slider-container .slider-slide.slide-gameplay .gameplay-title {
  width: auto;
  height: 4.3359375vw;
  display: block;
  margin: 0 auto;
  margin-bottom: 1.171875vw;
}
.slider-container .slider-slide.slide-gameplay .gameplay-container {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 1.953125vw;
}
.slider-container .slider-slide.slide-gameplay .gameplay-video {
  width: 63.7890625vw;
  height: 36.171875vw;
  display: block;
  position: relative;
}
.slider-container .slider-slide.slide-gameplay .gameplay-video .gameplay-border {
  position: absolute;
  width: 63.7890625vw;
  height: 36.171875vw;
  z-index: 3;
  background-image: url('../img/gameplay_video.png');
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  top: 0;
  left: 0;
}
.slider-container .slider-slide.slide-gameplay .gameplay-video .gameplay-video-cover {
  position: absolute;
  top: 0.390625vw;
  left: 0.3515625vw;
  width: 63.28125vw;
  max-height: 35.5078125vw;
  z-index: 2;
  clip-path: polygon(0 9%, 4% 0, 100% 0, 100% 100%, 0 100%);
  display: block;
}
.slider-container .slider-slide.slide-gameplay .gameplay-video .gameplay-video-cover img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.slider-container .slider-slide.slide-gameplay .gameplay-video .gameplay-video-cover::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 3;
}
.slider-container .slider-slide.slide-gameplay .gameplay-video .btn-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 3.203125vw;
  height: 3.75vw;
  background: url('../img/btn_play2.png') no-repeat center center;
  background-size: contain;
  opacity: 0.9;
  transition: opacity 0.2s ease, transform 0.2s ease;
  display: block;
  cursor: pointer;
  z-index: 6;
}
.slider-container .slider-slide.slide-gameplay .gameplay-video .btn-play:hover {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.08);
}
.slider-container .slider-slide.slide-gameplay .gameplay-video .come-soon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 3.59375vw;
  opacity: 0.9;
  transition: opacity 0.2s ease, transform 0.2s ease;
  display: none;
  z-index: 5;
}
.slider-container .slider-slide.slide-gameplay .gameplay-menu {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between;
  height: 37.3046875vw;
}
.slider-container .slider-slide.slide-gameplay .gameplay-menu .gameplay-menu-item {
  flex: 1 1 0;
  width: 15.078125vw;
  height: 8.4375vw;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  cursor: pointer;
  user-select: none;
  transition: all 0.28s ease;
  overflow: hidden;
  position: relative;
}
.slider-container .slider-slide.slide-gameplay .gameplay-content {
  width: 38.3203125vw;
  text-align: left;
  padding: 3.515625vw 0vw;
  margin: 0 auto;
}
.slider-container .slider-slide.slide-gameplay .gameplay-content .gameplay-content-line {
  width: 38.3203125vw;
  height: 0.8203125vw;
  margin: 0 auto;
  margin-bottom: 2.734375vw;
  background-image: url('../img/gameplay_line.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.slider-container .slider-slide.slide-gameplay .gameplay-content .gameplay-mode-desc {
  font-size: 1.25vw;
  color: rgba(255, 255, 255, 0.86);
  line-height: 1.65;
  white-space: normal;
  word-break: break-word;
  font-weight: 400;
}
.slider-container .slider-slide.slide-features {
  background-image: url('../img/bg3.jpg');
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  /* 1692 × 954 轮播容器：设计稿 2560 基准 */
  /* 左右切换箭头 */
  /* 三角形 dots 指示器 */
}
.slider-container .slider-slide.slide-features .slide-inner {
  width: 100%;
  box-sizing: border-box;
  text-align: center;
}
.slider-container .slider-slide.slide-features .features-title {
  width: auto;
  height: 4.84375vw;
  display: block;
  margin: 0 auto;
  margin-bottom: 0.78125vw;
}
.slider-container .slider-slide.slide-features .features-swiper {
  position: relative;
  overflow: visible;
  width: 66.09375vw;
  height: 37.265625vw;
  aspect-ratio: 1.77358491;
  perspective: 1800px;
  perspective-origin: 50% 50%;
  margin: 0 auto;
}
.slider-container .slider-slide.slide-features .features-swiper-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}
.slider-container .slider-slide.slide-features .features-swiper-wrapper.no-anim {
  transition: none;
}
.slider-container .slider-slide.slide-features .features-item {
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  height: 100%;
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.6s ease, filter 0.6s ease;
  transform: translate3d(0, 0, 0);
  opacity: 1;
  padding-top: 31.25vw;
  /* prev / is-clone-prev：向左 peek → 向右推 80% */
  /* next / is-clone-next：向右 peek → 向左推 80% */
  /* far：完全隐形 */
  /* 激活状态：四角截断（八边形） */
}
.slider-container .slider-slide.slide-features .features-item.is-adjacent,
.slider-container .slider-slide.slide-features .features-item.is-clone {
  opacity: 0.72;
  filter: blur(0.8px) brightness(0.75);
  z-index: 1;
  border: 2px solid #7100ff;
}
.slider-container .slider-slide.slide-features .features-item.is-adjacent.is-prev,
.slider-container .slider-slide.slide-features .features-item.is-clone.is-clone-prev {
  transform: translate3d(80%, 0, -260px) scale(0.88);
}
.slider-container .slider-slide.slide-features .features-item.is-adjacent.is-next,
.slider-container .slider-slide.slide-features .features-item.is-clone.is-clone-next {
  transform: translate3d(-80%, 0, -260px) scale(0.88);
}
.slider-container .slider-slide.slide-features .features-item.is-far {
  opacity: 0;
}
.slider-container .slider-slide.slide-features .features-item.is-active {
  transform: translate3d(0, 0, 0) scale(1);
  opacity: 1;
  filter: none;
  z-index: 2;
  background: radial-gradient(ellipse at center, #c9b8ec 0%, transparent 70%), radial-gradient(ellipse at center, rgba(201, 184, 236, 0.4) 0%, transparent 80%);
}
.slider-container .slider-slide.slide-features .features-item.is-active::after {
  background-image: url('../img/border.png');
  width: 100%;
  height: 100%;
  background-size: contain;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
}
.slider-container .slider-slide.slide-features .features-item.is-active::before {
  background-image: url('../img/border_bg.png');
  width: 116%;
  height: 116%;
  background-size: 100% 100%;
  content: '';
  position: absolute;
  top: -8%;
  left: -8%;
}
.slider-container .slider-slide.slide-features .features-item .feature-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  clip-path: none;
  transition: clip-path 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.slider-container .slider-slide.slide-features .features-item.is-active .feature-image {
  clip-path: polygon(7% 1%, 98% 1%, 99.3% 7%, 99.4% 91%, 95% 99.5%, 3% 100%, 0.5% 95%, 0.5% 13%);
}
.slider-container .slider-slide.slide-features .features-item .feature-desc {
  position: relative;
  bottom: 0;
  left: 0;
  width: auto;
  height: 4.1015625vw;
  display: block;
  z-index: 2;
  margin: 0 auto;
}
.slider-container .slider-slide.slide-features .features-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  cursor: pointer;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: opacity 0.25s ease, transform 0.2s ease;
  width: 1.4453125vw;
  height: 3.7890625vw;
}
.slider-container .slider-slide.slide-features .features-arrow:hover {
  opacity: 1;
  transform: translateY(-50%) scale(1.08);
}
.slider-container .slider-slide.slide-features .features-arrow:active {
  transform: translateY(-50%);
}
.slider-container .slider-slide.slide-features .features-arrow.features-prev {
  left: -2.734375vw;
  background-image: url('../img/prve.png');
}
.slider-container .slider-slide.slide-features .features-arrow.features-next {
  right: -2.734375vw;
  background-image: url('../img/next.png');
}
.slider-container .slider-slide.slide-features .features-dots {
  position: absolute;
  bottom: -2vw;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.5625vw;
  z-index: 10;
}
.slider-container .slider-slide.slide-features .features-dots .dot {
  width: 1.015625vw;
  height: 0.859375vw;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}
.slider-container .slider-slide.slide-features .features-dots .dot svg {
  width: 100%;
  height: 100%;
}
.slider-container .slider-slide.slide-features .features-dots .dot polygon {
  fill: none;
  stroke: #fff;
  stroke-width: 2;
  stroke-linejoin: miter;
  stroke-miterlimit: 10;
  transition: fill 0.3s ease, stroke 0.3s ease;
}
.slider-container .slider-slide.slide-features .features-dots .dot:hover polygon {
  stroke: #c6ff02;
}
.slider-container .slider-slide.slide-features .features-dots .dot.active polygon {
  fill: #c6ff02;
  stroke: #c6ff02;
}
.slider-container .arrow-wrap {
  width: 100vw;
  position: absolute;
  left: 0;
  cursor: pointer;
  z-index: 10;
  bottom: 3.125vw;
}
.slider-container .arrow-wrap.hide {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.slider-container .arrow-wrap .deco {
  position: absolute;
  pointer-events: none;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  /* 叠加一套缓慢 opacity 渐隐渐显呼吸动画，3 个 deco 用不同负值 delay 错开相位 */
}
.slider-container .arrow-wrap .deco-1 {
  width: 3.6328125vw;
  height: 0.5859375vw;
  background-image: url('../img/dearrow_1.png');
  left: 2.5390625vw;
  animation-delay: 0s;
}
.slider-container .arrow-wrap .deco-2 {
  width: 7.1875vw;
  height: 0.5859375vw;
  background-image: url('../img/dearrow_2.png');
  right: 2.5390625vw;
  animation-delay: -1.8s;
}
.slider-container .arrow-wrap .deco-3 {
  width: 3.125vw;
  height: 5.625vw;
  left: 2.5390625vw;
  top: -6.25vw;
  background-image: url('../img/dearrow_3.png');
  animation-delay: -3.6s;
}
.slider-container .arrow-wrap .slider-arrow {
  background-image: url('../img/arrow_down.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 3.0078125vw;
  height: 1.1328125vw;
  margin: 0 auto;
  animation: arrowBounce 1.8s ease-in-out infinite;
  animation-timing-function: ease-in-out;
}
@keyframes arrowBounce {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  60% {
    opacity: 0.15;
    transform: translateY(20px);
  }
  61% {
    opacity: 0;
    transform: translateY(20px);
  }
  62% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/* deco-1：紫粉小圆点 — easeOutQuint 曲线：先极快冲下渐隐，再慢慢回到原位亮起 */
@keyframes deco1Fall {
  0% {
    opacity: 1;
    transform: translate(0, 0) scale(1);
  }
  70% {
    opacity: 0;
    transform: translate(-4px, 36px) scale(0.5);
  }
  71% {
    opacity: 0;
    transform: translate(2px, -12px) scale(0.8);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0) scale(1);
  }
}
/* deco-2：黄绿菱形 — easeOutBack 曲线：落下带回弹、旋转微加 */
@keyframes deco2Bounce {
  0% {
    opacity: 1;
    transform: rotate(45deg) translateY(0) scale(1);
  }
  45% {
    opacity: 0.9;
    transform: rotate(55deg) translateY(30px) scale(1.1);
  }
  60% {
    opacity: 0.6;
    transform: rotate(35deg) translateY(10px) scale(0.9);
  }
  72% {
    opacity: 0;
    transform: rotate(45deg) translateY(48px) scale(0.6);
  }
  73% {
    opacity: 0;
    transform: rotate(45deg) translateY(-14px) scale(0.9);
  }
  100% {
    opacity: 1;
    transform: rotate(45deg) translateY(0) scale(1);
  }
}
/* deco-3：青光十字 — easeInCirc 曲线：先慢速微移，陡然加速冲下消失 */
@keyframes deco3Beam {
  0% {
    opacity: 0.15;
    transform: translateY(0) scale(0.8);
  }
  55% {
    opacity: 0.4;
    transform: translateY(6px) scale(1);
  }
  80% {
    opacity: 1;
    transform: translateY(28px) scale(1.2);
  }
  90% {
    opacity: 0;
    transform: translateY(52px) scale(0.4);
  }
  91% {
    opacity: 0;
    transform: translateY(-14px) scale(0.7);
  }
  100% {
    opacity: 0.15;
    transform: translateY(0) scale(0.8);
  }
}
/* ========== arrow-wrap 三个装饰粒子：缓慢渐隐渐显呼吸 ========== */
@keyframes decoFade {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.15;
  }
  100% {
    opacity: 1;
  }
}
.copyright {
  position: fixed;
  z-index: 10;
  bottom: 1.015625vw;
  left: 2.5390625vw;
  background-image: url('../img/copyright.png');
  background-size: cover;
  background-position: center;
  width: 6.3671875vw;
  height: 1.171875vw;
  cursor: pointer;
}
footer {
  position: fixed;
  z-index: 10;
  bottom: 0;
  height: auto;
  /* 不占满视口，由内容固定高度撑开 */
  min-height: 0;
  background-color: #000;
  /* 默认隐藏在屏幕底部下方 */
  transform: translateY(100%);
  transition: transform 0.4s ease-out;
}
footer .copyright2 {
  position: absolute;
  z-index: 10;
  top: -1.171875vw;
  left: 2.5390625vw;
  background-image: url('../img/copyright2.png');
  background-size: cover;
  background-position: center;
  width: 6.3671875vw;
  height: 1.171875vw;
  cursor: pointer;
  display: none;
}
footer.show {
  transform: translateY(0);
}
footer.show .copyright2 {
  display: block;
}
footer .footer-inner {
  padding-top: 0;
  height: auto;
  /* 覆盖 .slide-inner 默认的 height:100% */
  min-height: 0;
  justify-content: flex-start;
}
footer .copyright-box {
  width: 100vw;
  height: 5.078125vw;
  /* 设计稿内容区固定高度 = 210px */
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0vw 11.71875vw;
}
footer .copyright-box .copyright-logo {
  width: 7.5vw;
  object-fit: contain;
  display: block;
}
footer .copyright-box .copyright-text {
  font-size: 0.78125vw;
  line-height: 1.640625vw;
  color: #ffffff;
  opacity: 0.72;
  text-align: center;
  letter-spacing: 0.3px;
}
/* ========== 横屏翻转提示 ========== */
.rotate-tip {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999;
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.85);
  color: #fff;
  text-align: center;
  padding: 0vw 3.515625vw;
}
.rotate-tip.show {
  display: flex;
}
.rotate-tip .rotate-icon {
  position: relative;
  width: 13.203125vw;
  height: 13.203125vw;
  margin-bottom: 2.1875vw;
}
.rotate-tip .phone {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 6.6015625vw;
  height: 10.9765625vw;
  border-width: 0.4296875vw;
  border-style: solid;
  border-color: #fff;
  border-radius: 1.328125vw;
  background: transparent;
  animation: phoneRotate 1.8s ease-in-out infinite;
}
.rotate-tip .phone-screen {
  position: absolute;
  top: 1.328125vw;
  left: 1.328125vw;
  right: 1.328125vw;
  bottom: 1.328125vw;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 0.6640625vw;
}
.rotate-tip .phone-notch {
  position: absolute;
  top: 0.4296875vw;
  left: 50%;
  transform: translateX(-50%);
  width: 2.1875vw;
  height: 0.546875vw;
  background: #fff;
  border-radius: 0.2734375vw;
}
.rotate-tip .rotate-arrow {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8.7890625vw;
  height: 8.7890625vw;
  border: 2px solid rgba(255, 255, 255, 0.6);
  border-top-color: transparent;
  border-right-color: transparent;
  border-radius: 50%;
  animation: arrowRotate 1.8s ease-in-out infinite;
}
.rotate-tip .rotate-arrow::after {
  content: "";
  position: absolute;
  bottom: -0.6640625vw;
  right: -0.6640625vw;
  width: 0;
  height: 0;
  border-left-width: 0.78125vw;
  border-left-style: solid;
  border-left-color: transparent;
  border-bottom-width: 0.8984375vw;
  border-bottom-style: solid;
  border-bottom-color: rgba(255, 255, 255, 0.6);
}
.rotate-tip .rotate-text {
  font-size: 1.7578125vw;
  font-weight: 500;
  letter-spacing: 2px;
  opacity: 0.9;
}
@keyframes phoneRotate {
  0%,
  100% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  50% {
    transform: translate(-50%, -50%) rotate(-90deg);
  }
}
@keyframes arrowRotate {
  0%,
  100% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  50% {
    transform: translate(-50%, -50%) rotate(-90deg);
  }
}
/* ========== 语言选择弹框 ========== */
.lang-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  display: none;
  align-items: center;
  justify-content: center;
}
.lang-modal.show {
  display: flex;
}
.lang-modal .lang-modal__mask {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.9);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
.lang-modal .lang-modal__close {
  position: absolute;
  top: -3.515625vw;
  right: 0vw;
  cursor: pointer;
  background: url("../img/modal_close.png") no-repeat center center;
  background-size: 100% 100%;
  width: 1.953125vw;
  height: 1.953125vw;
}
.lang-modal .lang-modal__card {
  position: relative;
  width: 43.9453125vw;
  animation: langCardIn 0.28s ease-out both;
}
.lang-modal .lang-modal__list {
  display: flex;
  flex-direction: column;
  gap: 0.78125vw;
}
.lang-modal .lang-modal__item {
  width: 43.9453125vw;
  height: 6.640625vw;
  font-size: 1.953125vw;
  color: #fff;
  cursor: pointer;
  transition: all 0.2s ease;
  font-weight: 800;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lang-modal .lang-modal__item.active {
  background-image: url("../img/modal_border.png");
  background-size: 100% 100%;
}
.lang-modal .lang-modal__item.active,
.lang-modal .lang-modal__item:hover {
  color: #c6ff02;
}
@keyframes langCardIn {
  from {
    opacity: 0;
    transform: translateY(16px) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
/* ========== btn-play 动效 ========== */
@keyframes btnPulse {
  0%,
  100% {
    transform: scale(1);
    filter: drop-shadow(0 10px 24px rgba(124, 92, 255, 0.45));
  }
  50% {
    transform: scale(1.05);
    filter: drop-shadow(0 14px 36px rgba(124, 92, 255, 0.65));
  }
}
@keyframes btnRipple {
  0% {
    opacity: 0.75;
    transform: translate(-50%, -50%) scale(1);
  }
  70% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.75);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.85);
  }
}
/* Features 内部元素渐入动画：每个 slide 的 video/agent/desc 依次错峰淡入 */
@keyframes featureFadeIn {
  0% {
    opacity: 0;
    transform: translateY(24px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/* ========== KV 视频弹窗 ========== */
.video-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1100;
  display: none;
  background: rgba(0, 0, 0, 0.8);
  width: 100%;
}
.video-modal.show {
  display: block;
}
.video-modal .video-modal__mask {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.video-modal .video-modal__close {
  position: absolute;
  top: -4.6875vw;
  right: 0vw;
  background: url("../img/modal_close.png") no-repeat center center;
  background-size: 100% 100%;
  width: 3.515625vw;
  height: 3.515625vw;
  cursor: pointer;
  z-index: 2;
}
.video-modal .video-modal__wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 19.53125vw;
  height: 6.09375vw;
  z-index: 1;
}
.video-modal .video-modal__player {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.video-modal .video-modal__iframe {
  width: 100%;
  height: 100%;
  display: none;
  border: none;
}
body::after {
  position: absolute;
  top: 0;
  left: -9999px;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
  background-image: url("../img/arrow_down.png"), url("../img/bg1.jpg"), url("../img/bg2.jpg"), url("../img/bg3.jpg"), url("../img/border.png"), url("../img/border_bg.png"), url("../img/btn_play.png"), url("../img/btn_play2.png"), url("../img/copyright.png"), url("../img/copyright2.png"), url("../img/dearrow_1.png"), url("../img/dearrow_2.png"), url("../img/dearrow_3.png"), url("../img/feature_1.jpg"), url("../img/feature_2.jpg"), url("../img/feature_3.jpg"), url("../img/feature_4.jpg"), url("../img/feature_5.jpg"), url("../img/gameplay_video.png"), url("../img/home_kv.png"), url("../img/icon_discord.png"), url("../img/icon_facebooke.png"), url("../img/icon_ins.png"), url("../img/icon_lang.png"), url("../img/icon_tiktok.png"), url("../img/icon_youtube.png"), url("../img/logo.png"), url("../img/logo2.png"), url("../img/modal_border.png"), url("../img/modal_close.png"), url("../img/next.png"), url("../img/prve.png"), url("../img/share.jpg"), url("../img/sns_bg.png"), url("../img/sns_cur.png"), url("../img/en/btn_download.png"), url("../img/en/btn_download2.png"), url("../img/en/btn_google.png"), url("../img/en/feature_desc_1.png"), url("../img/en/feature_desc_2.png"), url("../img/en/feature_desc_3.png"), url("../img/en/feature_desc_4.png"), url("../img/en/feature_desc_5.png"), url("../img/en/features_title.png"), url("../img/en/gameplay_1.png"), url("../img/en/gameplay_2.png"), url("../img/en/gameplay_3.png"), url("../img/en/gameplay_4.png"), url("../img/en/gameplay_cur_1.png"), url("../img/en/gameplay_cur_2.png"), url("../img/en/gameplay_cur_3.png"), url("../img/en/gameplay_cur_4.png"), url("../img/en/gameplay_title.png"), url("../img/en/nav_1.png"), url("../img/en/nav_2.png"), url("../img/en/nav_3.png"), url("../img/en/nav_1_cur.png"), url("../img/en/nav_2_cur.png"), url("../img/en/nav_3_cur.png"), url("../img/en/slogan.png"), url("../img/en/sns_follow.png"), url("../img/en/text_deco.png"), url("../img/pt/btn_download.png"), url("../img/pt/btn_download2.png"), url("../img/pt/btn_google.png"), url("../img/pt/feature_desc_1.png"), url("../img/pt/feature_desc_2.png"), url("../img/pt/feature_desc_3.png"), url("../img/pt/feature_desc_4.png"), url("../img/pt/feature_desc_5.png"), url("../img/pt/features_title.png"), url("../img/pt/gameplay_1.png"), url("../img/pt/gameplay_2.png"), url("../img/pt/gameplay_3.png"), url("../img/pt/gameplay_4.png"), url("../img/pt/gameplay_cur_1.png"), url("../img/pt/gameplay_cur_2.png"), url("../img/pt/gameplay_cur_3.png"), url("../img/pt/gameplay_cur_4.png"), url("../img/pt/gameplay_title.png"), url("../img/pt/nav_1.png"), url("../img/pt/nav_2.png"), url("../img/pt/nav_3.png"), url("../img/pt/nav_1_cur.png"), url("../img/pt/nav_2_cur.png"), url("../img/pt/nav_3_cur.png"), url("../img/pt/slogan.png"), url("../img/pt/sns_follow.png"), url("../img/pt/text_deco.png"), url("../img/es/btn_download.png"), url("../img/es/btn_download2.png"), url("../img/es/btn_google.png"), url("../img/es/feature_desc_1.png"), url("../img/es/feature_desc_2.png"), url("../img/es/feature_desc_3.png"), url("../img/es/feature_desc_4.png"), url("../img/es/feature_desc_5.png"), url("../img/es/features_title.png"), url("../img/es/gameplay_1.png"), url("../img/es/gameplay_2.png"), url("../img/es/gameplay_3.png"), url("../img/es/gameplay_4.png"), url("../img/es/gameplay_cur_1.png"), url("../img/es/gameplay_cur_2.png"), url("../img/es/gameplay_cur_3.png"), url("../img/es/gameplay_cur_4.png"), url("../img/es/gameplay_title.png"), url("../img/es/nav_1.png"), url("../img/es/nav_2.png"), url("../img/es/nav_3.png"), url("../img/es/nav_1_cur.png"), url("../img/es/nav_2_cur.png"), url("../img/es/nav_3_cur.png"), url("../img/es/slogan.png"), url("../img/es/sns_follow.png"), url("../img/es/text_deco.png"), url("../img/id/btn_download.png"), url("../img/id/btn_download2.png"), url("../img/id/btn_google.png"), url("../img/id/feature_desc_1.png"), url("../img/id/feature_desc_2.png"), url("../img/id/feature_desc_3.png"), url("../img/id/feature_desc_4.png"), url("../img/id/feature_desc_5.png"), url("../img/id/features_title.png"), url("../img/id/gameplay_1.png"), url("../img/id/gameplay_2.png"), url("../img/id/gameplay_3.png"), url("../img/id/gameplay_4.png"), url("../img/id/gameplay_cur_1.png"), url("../img/id/gameplay_cur_2.png"), url("../img/id/gameplay_cur_3.png"), url("../img/id/gameplay_cur_4.png"), url("../img/id/gameplay_title.png"), url("../img/id/nav_1.png"), url("../img/id/nav_2.png"), url("../img/id/nav_3.png"), url("../img/id/nav_1_cur.png"), url("../img/id/nav_2_cur.png"), url("../img/id/nav_3_cur.png"), url("../img/id/slogan.png"), url("../img/id/sns_follow.png"), url("../img/id/text_deco.png");
}
