/* 标志性首屏：文字由轮廓到实体，交互只在主视觉区域出现。 */
.hero-copy h1{max-width:860px;line-height:.91}.hero-copy h1 .kinetic-line{display:block;overflow:hidden;padding:.04em .08em .09em 0;margin-right:-.08em}.hero-copy h1 .kinetic-inner{display:block;position:relative;font-family:var(--cn-display,"PingFang SC",sans-serif);font-weight:720;font-style:normal;color:var(--ink);letter-spacing:-.077em}.hero-copy h1 .hero-outline{display:inline-block;position:relative;color:transparent;font-weight:330;-webkit-text-stroke:1.35px #484a54;letter-spacing:-.085em}.hero-copy h1 .hero-outline:after{content:attr(data-text);position:absolute;inset:0;color:#454651;-webkit-text-stroke:0;clip-path:inset(0 100% 0 0)}
.motion-on .hero-copy h1 .kinetic-line{opacity:1;transform:none;transition:none}.motion-on .hero-copy h1 .kinetic-inner{transform:translateY(112%);transition:transform .88s var(--enter)}.motion-on.is-ready .hero-copy h1 .kinetic-inner{transform:translateY(0)}.motion-on.is-ready .hero-copy h1 .kinetic-line:nth-child(1) .kinetic-inner{transition-delay:.13s}.motion-on.is-ready .hero-copy h1 .kinetic-line:nth-child(2) .kinetic-inner{transition-delay:.25s}.motion-on.is-ready .hero-copy h1 .kinetic-line:nth-child(3) .kinetic-inner{transition-delay:.37s}.motion-on.is-ready .hero-copy h1 .hero-outline:after{animation:outline-fill .92s cubic-bezier(.65,0,.35,1) forwards;animation-delay:.74s}@keyframes outline-fill{to{clip-path:inset(0 0 0 0)}}
.hero-cursor{position:fixed;z-index:80;left:0;top:0;width:38px;height:38px;margin:-19px 0 0 -19px;border:1px solid rgba(255,255,255,.86);border-radius:50%;pointer-events:none;opacity:0;transform:translate3d(-100px,-100px,0) scale(.35);mix-blend-mode:difference;transition:opacity .25s ease,transform .26s var(--move)}.hero-cursor:after{content:"";position:absolute;inset:12px;border-radius:50%;background:#fff}.hero-cursor i{position:absolute;inset:-6px;border:1px solid rgba(255,255,255,.36);border-radius:50%;animation:cursor-orbit 2.8s linear infinite}.hero-cursor.is-active{opacity:1;transform:translate3d(var(--cursor-x),var(--cursor-y),0) scale(1)}@keyframes cursor-orbit{0%{clip-path:inset(0 40% 0 0)}50%{clip-path:inset(0 0 0 40%)}100%{clip-path:inset(0 40% 0 0)}}.hero-art{cursor:none}.hero-art:after{transition:opacity .5s var(--enter),transform .5s var(--enter)}.hero-art.is-pulsing:after{opacity:.75;transform:scale(1.04)}
.motion-item.work.motion-show img{animation:work-image-settle 1.1s var(--enter) both;animation-delay:calc(var(--motion-delay,0ms) + 80ms)}@keyframes work-image-settle{from{transform:scale(1.12)}to{transform:scale(1)}}.motion-item.tool.motion-show .window{animation:window-settle .78s var(--enter) both;animation-delay:calc(var(--motion-delay,0ms) + 120ms)}@keyframes window-settle{from{opacity:0;transform:translateX(32px) rotate(2deg)}to{opacity:1;transform:none}}
@media(max-width:800px){.hero-copy h1{font-size:60px!important;line-height:.95}.hero-copy h1 .hero-outline{-webkit-text-stroke:1px #484a54}.hero-cursor{display:none}.motion-item.work.motion-show img{animation:none}}
@media(prefers-reduced-motion:reduce){.hero-copy h1 .kinetic-inner{transform:none!important;transition:none!important}.hero-copy h1 .hero-outline{color:#454651!important;-webkit-text-stroke:0!important}.hero-copy h1 .hero-outline:after{display:none}.hero-cursor{display:none}.motion-item.work.motion-show img,.motion-item.tool.motion-show .window{animation:none!important}}
