  /* ---- Hero 容器 ---- */
  .h-hero {
    position: relative;
    min-height: calc(100vh - 60px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    perspective: 1000px;
  }

  /* ---- 粒子消散画布（Hero专用） ---- */
  #h-particle-canvas {
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: calc(100vh - 60px);
    pointer-events: none;
    z-index: 5;
  }

  /* ---- UNIT 大字 ---- */
  .h-hero__unit {
    font-weight: 700;
    font-size: clamp(80px, 12vw, 140px);
    letter-spacing: 0.05em;
    line-height: 1;
    color: #fff;
    text-shadow: 0 0 40px rgba(0, 212, 170, 0.4);
    transform-style: preserve-3d;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    text-align: center;
    white-space: nowrap;
    opacity: 0; /* 初始隐藏，GSAP控制 */
  }
  .h-hero__unit .h-char {
    display: inline-block;
    will-change: transform, opacity;
    transform-origin: center bottom;
  }

  /* ---- Tagline 组 ---- */
  .h-hero__tagline-group {
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    text-align: center;
    opacity: 0; /* 初始隐藏，GSAP控制 */
    width: 100%;       /* 修复：宽度铺满，不再受限 */
    max-width: 100vw;
  }

  /* ---- Tagline 文字 ---- */
  /*
 .h-hero__tagline {
    perspective: 1000px;
  }
  .h-hero__tagline-line {
    font-weight: 700;
    font-size: var(--text-2xl);
    color: #fff;
    line-height: 1.3;
  }
  */
  /* ---- Tagline 文字 ---- */
.h-hero__tagline {
  perspective: 1000px;
  width: 100%;
  max-width: 90vw;    /* 最大宽度 = 屏幕90%，自动两边留白 */
  box-sizing: border-box;
  margin: 0 auto;
}
.h-hero__tagline-line {
  font-weight: 700;
  font-size: clamp(20px, 4vw, 40px); /* 👈 关键：移动端自动缩小，超大屏不太大 */
  color: #fff;
  line-height: 1.4;
  white-space: nowrap; /* PC端强制不换行 */
}
/* 移动端：两行合并为一句，自动换行 */
@media (max-width: 1024px) {
  .pc-row {
    display: inline;
    white-space: normal;
  }
  /* 两行中间加空格 */
  .pc-row + .pc-row::before {
    content: " ";
  }
}
  .h-hero__tagline-line .h-char {
    display: inline-block;
    will-change: transform, opacity;
    transform-origin: center bottom;
  }

  /* ---- CTA 按钮 ---- */
  .h-hero__cta {
    position: relative;
    width: 220px;
    height: 56px;
    border-radius: 28px;
    background: transparent;
    border: 2px solid transparent;
    font-weight: 500;
    letter-spacing: 0.02em;
    color: #fff;
    cursor: pointer;
    z-index: 10;
    overflow: visible;
    margin-top: var(--space-3xl);
    animation: h-glowPulse 2s ease-in-out infinite;
    transition: transform 0.3s ease;
  }
  .h-hero__cta:hover {
    transform: scale(1.05);
  }
  .h-hero__cta-inner {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border-radius: 28px;
    background: #000;
    transition: color 0.3s ease, background-color 0.3s ease;
  }
  .h-hero__cta:hover .h-hero__cta-inner {
    color: #00d4aa;
    background: rgba(0, 212, 170, 0.1);
  }
  .h-hero__cta-border {
    position: absolute;
    inset: -2px;
    border-radius: 30px;
    z-index: 0;
    background: conic-gradient(
      from var(--h-angle, 0deg),
      transparent 0%, transparent 35%,
      #00d4aa 42%, #00a8e8 50%, #39ff14 58%,
      transparent 65%, transparent 100%
    );
    animation: h-rotateStreak 3s linear infinite;
  }
  .h-hero__cta-bg {
    position: absolute;
    inset: 0;
    border-radius: 28px;
    background: #000;
    z-index: 1;
  }

  /* ---- CTA 轨道粒子 ---- */
  .h-hero__cta-particle {
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #00d4aa;
    pointer-events: none;
    margin: -2.5px 0 0 -2.5px;
    left: 50%; top: 50%;
    z-index: 5;
    box-shadow: 0 0 8px 2px rgba(0, 212, 170, 0.8),
                0 0 20px 4px rgba(0, 212, 170, 0.3);
  }

  /* ---- Hero Keyframes ---- */
  @keyframes h-glowPulse {
    0%, 100% {
      box-shadow: 0 0 10px rgba(0, 212, 170, 0.3),
                  inset 0 0 10px rgba(0, 212, 170, 0.05);
    }
    50% {
      box-shadow: 0 0 30px rgba(0, 212, 170, 0.6),
                  inset 0 0 20px rgba(0, 212, 170, 0.1);
    }
  }
  @keyframes h-rotateStreak {
    from { --h-angle: 0deg; }
    to   { --h-angle: 360deg; }
  }
  @property --h-angle {
    syntax: '<angle>';
    initial-value: 0deg;
    inherits: false;
  }