/* Reference-led preview: neutral light, ink controls, spectral text. Native motion. */
.platform-marquee{overflow:hidden;border-block:1px solid #e0e0e8;padding-block:30px;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.platform-track{display:flex;width:max-content;animation:platform-scroll 48s linear infinite}
.platform-group{display:flex;align-items:center;gap:48px;padding-right:48px;flex-shrink:0}
.platform-group>span{display:flex;align-items:center;gap:13px;white-space:nowrap;font-size:15px;color:#4f4f5c}
.platform-group img{width:32px;height:32px;object-fit:contain}
.platform-marquee:hover .platform-track,.platform-marquee:focus-within .platform-track{animation-play-state:paused}
@keyframes platform-scroll{to{transform:translateX(-50%)}}
@media(max-width:700px),(prefers-reduced-motion:reduce){.platform-marquee{overflow-x:auto;mask-image:none;scrollbar-width:thin}.platform-track{animation:none;transform:none}.platform-group{gap:28px;padding-right:10px}.platform-group[aria-hidden]{display:none}}
body{background:#f5f5f7;isolation:isolate}
main,.footer{position:relative;z-index:1}
.pointer-grid{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:0;background-image:linear-gradient(#8b8baf38 1px,transparent 1px),linear-gradient(90deg,#8b8baf38 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(circle 260px at var(--pointer-x,-500px) var(--pointer-y,-500px),#000 0%,#0009 35%,transparent 100%);transition:opacity .4s ease}
.pointer-active .pointer-grid{opacity:1}
.motion-paused .pointer-grid{opacity:0}
.product-section{position:relative;border-top:1px solid #e8e8ef}
.product-image{border:1px solid #e0e0e8;box-shadow:0 24px 70px -35px #25253730}
.ecosystem{border-top:1px solid #e1e1e9}
.download-section{border-top:1px solid #e1e1e9}
@media(pointer:coarse),(prefers-reduced-motion:reduce){.pointer-grid{display:none}}
:root{--ink:#151820;--muted:#656b76;--blue:#24252b;--line:#e6e8ed;font-family:"PingFang SC","Microsoft YaHei","Segoe UI",sans-serif;color:var(--ink);background:#fff;scroll-padding-top:96px;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #8b68c9;outline-offset:5px}h1,h2,h3,p{margin:0}button{color:inherit}a,button{touch-action:manipulation}section{scroll-margin-top:80px}.page-width{width:min(1200px,calc(100% - 96px));margin-inline:auto}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip-link:focus{position:fixed;top:10px;left:10px;background:#fff;padding:15px;z-index:100}
.pn4-header{height:80px;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:0 48px;background:rgba(255,255,255,.95);border-bottom:1px solid transparent;transition:border-color .25s,box-shadow .25s}.pn4-header.is-scrolled{border-color:var(--line);box-shadow:0 5px 25px #142c5d05}.brand{flex:none;display:flex;align-items:center;gap:10px}.brand strong{font-size:24px;letter-spacing:1px;font-weight:500}.brand img{width:36px;height:36px;object-fit:contain}.pn4-nav{display:flex;align-items:center;gap:34px}.pn4-nav a{font-size:14px;color:#383e47;padding:12px 0}.pn4-nav a:hover,.pn4-nav a.is-active{color:var(--blue)}.nav-actions{display:flex;align-items:center;gap:14px}.nav-download{background:var(--ink);color:white;border-radius:6px;padding:11px 20px;font-size:14px;display:flex;gap:25px}.nav-download:hover{background:var(--blue)}#pn4Menu{display:none;background:none;border:1px solid var(--line);border-radius:6px;padding:10px 12px}
.motion-hero{position:relative;overflow:clip;padding-top:64px;background:transparent}.hero-copy{position:relative;z-index:2;text-align:center}.hero-copy h1{font-size:clamp(58px,6.6vw,92px);line-height:1.2;letter-spacing:-.6px;font-weight:400}.hero-description{color:var(--muted);font-size:18px;line-height:1.85;margin:26px auto 27px;animation:title-in 1.1s .28s both}.hero-actions{display:flex;gap:32px;align-items:center;justify-content:center;animation:title-in 1.1s .36s both}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:17px 25px;border-radius:6px;font-size:15px;font-weight:400;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:#35353d}.text-link{display:inline-flex;gap:20px;font-size:14px;font-weight:400;padding:12px 0}.text-link:hover{color:var(--blue)}.system-note{font-size:12px;color:#687282;margin-top:16px}.section-label{font-size:14px;letter-spacing:2px;font-weight:400;margin-bottom:24px}
.product-section{background:transparent;color:var(--ink);padding:110px 0 90px}.product-heading{max-width:850px;margin-bottom:48px}.product-heading .section-label{color:#696974}.product-heading h2{font-size:clamp(38px,4.7vw,64px);font-weight:400;line-height:1.3;letter-spacing:-.6px}.product-heading h2 .heading-muted{color:#777782}.product-heading>p:last-child{color:#656570;font-size:16px;line-height:1.9;margin-top:25px}.pn4-tabs{display:flex;gap:30px;border-bottom:1px solid #dddde5;margin-bottom:32px;overflow-x:auto;scroll-padding:8px;scrollbar-width:thin}.pn4-tabs button{position:relative;white-space:nowrap;padding:17px 1px;background:transparent;border:0;color:#656570;font-size:15px;border-bottom:2px solid transparent}.pn4-tabs button:hover{color:#18181d}.pn4-tabs button.is-active{color:#18181d;border-bottom-color:#18181d}.product-image{background:#fff;position:relative;border-radius:8px;overflow:hidden;max-width:1000px;margin-inline:auto;aspect-ratio:1.5}.product-image img{width:100%;height:100%;object-fit:contain;transition:opacity .2s}.product-image img.is-loading{opacity:.3}.product-image img.is-error{opacity:0}#pn4ShotError:not([hidden]){position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;color:var(--ink)}#pn4ShotRetry{background:var(--blue);color:#fff;border:0;padding:12px 20px;border-radius:6px}.product-caption{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:0 auto 24px}.product-caption h3{font-size:18px;font-weight:400;line-height:1.5}.product-caption p{font-size:14px;color:#656570;line-height:1.8;margin-top:8px}.product-caption>a{white-space:nowrap;font-size:13px;color:#4f4f5b;padding:12px 0}.product-caption>a:hover{color:#18181d}
.ecosystem{padding-block:110px 90px}.ecosystem-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:54px}.ecosystem-heading h2{font-size:clamp(34px,3.7vw,50px);line-height:1.3;letter-spacing:-.6px;font-weight:400}.ecosystem-heading h2 span{color:var(--muted)}.ecosystem-heading p{font-size:15px;line-height:1.9;color:var(--muted)}.platform-note{font-size:12px;color:var(--muted);line-height:1.8;margin-top:22px}.download-section{background:transparent;text-align:center;padding:88px 0 80px}.download-logo{margin:0 auto 25px;border-radius:16px}.download-inner h2{font-size:clamp(36px,4.6vw,64px);line-height:1.3;letter-spacing:-.6px;font-weight:400;margin-bottom:32px}.download-inner>p{font-size:12px;color:var(--muted);margin-top:16px}.download-links{display:flex;justify-content:center;gap:30px;margin-top:38px;font-size:13px;color:#4d596c}.download-links a:hover{color:var(--blue)}.footer{padding-block:40px 28px}.footer-top{display:flex;align-items:center;gap:28px;padding-bottom:32px;border-bottom:1px solid var(--line)}.footer-top p{font-size:14px;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;gap:24px;padding-top:24px;color:var(--muted);font-size:12px;line-height:1.8}.footer-bottom b{font-weight:400}.footer-bottom nav{display:flex;gap:23px;flex-wrap:wrap}.footer a:hover{color:var(--blue)}.pn4-js [data-pn4-reveal]{opacity:0;transform:translateY(32px);transition:opacity .75s,transform .9s cubic-bezier(.2,.7,.2,1)}.pn4-js [data-pn4-reveal].is-visible{opacity:1;transform:none}
@keyframes title-in{from{opacity:0;transform:translateY(36px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.page-width{width:calc(100% - 64px)}.pn4-header{padding:0 32px;height:72px}.pn4-nav{gap:20px}.pn4-menu-ready #pn4Menu{display:block}.pn4-menu-ready .pn4-nav{display:none}.pn4-header.is-menu-open .pn4-nav{display:flex;position:absolute;top:72px;left:0;right:0;background:#fff;box-shadow:0 14px 24px #152d5510;padding:20px 32px;gap:24px}.motion-hero{padding-top:55px}.hero-copy h1{font-size:70px}.product-section{padding-top:80px}.pn4-tabs{gap:25px}.ecosystem{padding-block:80px}}
@media(max-width:700px){:root{scroll-padding-top:85px}.page-width{width:calc(100% - 40px)}.pn4-header{padding-inline:20px;height:68px}.brand img{width:32px;height:32px}.brand strong{font-size:22px}.nav-download{font-size:12px;padding:10px 13px;gap:12px}.nav-actions{gap:8px}#pn4Menu{font-size:12px;padding:9px 11px}.pn4-header.is-menu-open .pn4-nav{top:68px;display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:15px 24px}.hero-copy h1{font-size:54px;letter-spacing:-.6px}.motion-hero{padding-top:48px}.hero-description{font-size:14px;margin-top:22px;line-height:1.9}.hero-actions{gap:21px;flex-wrap:wrap}.button{font-size:13px;padding:15px 18px;gap:15px}.hero-actions .text-link{font-size:12px}.system-note{font-size:11px}.section-label{font-size:12px;margin-bottom:18px}.product-section{padding:65px 0 50px}.product-heading h2{font-size:37px;letter-spacing:-.6px}.product-heading>p:last-child{font-size:14px}.product-heading{margin-bottom:26px}.pn4-tabs{gap:24px;margin-bottom:22px}.pn4-tabs button{font-size:13px;padding-block:14px}.product-caption{align-items:start;flex-direction:column;gap:12px;margin:0 auto 24px}.product-caption h3{font-size:16px}.product-caption p{font-size:12px}.product-caption>a{font-size:12px;padding:3px 0}.ecosystem{padding-block:60px}.ecosystem-heading{display:block;margin-bottom:30px}.ecosystem-heading h2{font-size:33px;letter-spacing:-.6px}.ecosystem-heading p{margin-top:20px;font-size:14px}.platform-note{font-size:11px}.download-section{padding-block:60px}.download-logo{width:56px;height:56px;border-radius:12px;margin-bottom:22px}.download-inner h2{font-size:36px;letter-spacing:-.6px;margin-bottom:27px}.download-links{gap:20px;font-size:12px;margin-top:30px}.footer{padding-top:30px}.footer-top{gap:16px;flex-wrap:wrap;padding-bottom:22px}.footer-top p{font-size:12px}.footer-bottom{flex-direction:column;gap:15px;padding-top:18px;font-size:11px}.footer-bottom nav{gap:14px}.product-image{border-radius:5px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.pn4-js [data-pn4-reveal]{opacity:1;transform:none}}
.motion-paused{scroll-behavior:auto}.motion-paused *{animation:none!important;transition:none!important}.motion-paused [data-pn4-reveal]{opacity:1;transform:none}

.police-filing{display:inline-flex;align-items:center;gap:5px}.police-filing img{width:16px;height:16px}

/* The opening plays three typographic scenes once, then holds the final message. */
.pn4-header{background:rgba(249,249,251,.95)}
.nav-download,.button{border-radius:999px}
.motion-hero{padding-top:0;background:transparent;isolation:isolate}
.hero-copy{min-height:calc(80svh - 131.2px);padding:76.8px 36px 59.2px;display:flex;align-items:center;justify-content:center;flex-direction:column}
.hero-copy h1{width:100%;font-size:clamp(36px,4.25vw,64px);font-weight:400;line-height:1.4;letter-spacing:-.6px}
.hero-signature{font-size:18px;font-weight:400;letter-spacing:.2px;margin-bottom:22px;background:linear-gradient(110deg,#24252b 22%,#777983 36%,#fefeff 43%,#737580 50%,#24252b 66%);background-size:260% 100%;background-position:100% 0;color:transparent;background-clip:text;-webkit-background-clip:text;animation:signature-light 7s ease-in-out 1 both}
.hero-sequence{display:grid;place-items:center;width:100%}
.headline-scene{grid-area:1/1;display:block;white-space:nowrap;will-change:opacity,transform,filter}
.scene-first,.scene-second{opacity:0;pointer-events:none}
.scene-first{animation:headline-first 9s infinite both}
.scene-second{animation:headline-second 9s infinite both}
.scene-final{animation:headline-final 9s infinite both}
.gradient-text{background:linear-gradient(100deg,#343d84 3%,#6743dc 32%,#a833bd 67%,#dc5676 100%);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero-description{font-size:18px;line-height:1.9;margin:26px auto 40px;color:#74747e;animation:title-in 1.25s .2s both}
.hero-actions{gap:16px;animation:title-in 1.25s .3s both}
.hero-actions .button{min-width:156px;padding:15px 25px;font-size:14px;gap:26px}
.button-primary{background:#19191d}
.button-secondary{background:transparent;border:1px solid #d9d9e1;color:#505058}
.button-secondary:hover{background:white}
.system-note{color:#787882;margin-top:19px;animation:title-in 1.25s .4s both}
.hero-grid{position:absolute;z-index:-1;top:30px;left:10%;right:10%;height:620px;background-image:linear-gradient(#c8c8d51c 1px,transparent 1px),linear-gradient(90deg,#c8c8d51c 1px,transparent 1px);background-size:52px 52px;mask-image:radial-gradient(ellipse,black 5%,transparent 69%);pointer-events:none}
.hero-light{position:absolute;z-index:-1;inset:-180px -100px auto;height:1050px;pointer-events:none;background:conic-gradient(from 122deg at 55% -8%,transparent 0deg,#ffffffda 16deg,transparent 34deg,#e6e6ee70 43deg,transparent 53deg,#ffffffdf 68deg,transparent 89deg);filter:blur(25px);transform-origin:50% 0;animation:light-drift 10s cubic-bezier(.25,.4,.2,1) both}
@keyframes signature-light{0%{background-position:100% 0}60%,100%{background-position:-80% 0}}
@keyframes light-drift{from{transform:rotate(-10deg) scaleX(1.1);opacity:.3}to{transform:rotate(5deg) scaleX(1);opacity:.85}}
@keyframes headline-first{0%{opacity:0;transform:translateY(16px);filter:blur(6px)}6%,26%{opacity:1;transform:none;filter:none}33.33%,100%{opacity:0;transform:translateY(-16px);filter:blur(6px)}}
@keyframes headline-second{0%,33.33%{opacity:0;transform:translateY(16px);filter:blur(6px)}39%,59%{opacity:1;transform:none;filter:none}66.66%,100%{opacity:0;transform:translateY(-16px);filter:blur(6px)}}
@keyframes headline-final{0%,66.66%{opacity:0;transform:translateY(16px);filter:blur(6px)}72%,92%{opacity:1;transform:none;filter:none}100%{opacity:0;transform:translateY(-16px);filter:blur(6px)}}
@media(max-width:1100px){.hero-copy{min-height:calc(80svh - 123.2px);padding-block:68px 48px}.hero-copy h1{font-size:clamp(35px,4.3vw,49px)}.hero-signature{font-size:16px}}
@media(max-width:700px){.hero-copy{padding:52px 20px 43.2px;min-height:472px}.hero-copy h1{font-size:36px;line-height:1.5;letter-spacing:-.6px}.headline-scene{white-space:normal;max-width:100%;width:100%}.headline-scene>span{display:block}.scene-final>span:first-child{font-size:29px;letter-spacing:-.6px}.scene-final>span:last-child{font-size:43px}.hero-signature{font-size:14px;margin-bottom:25px}.hero-description{font-size:14px;margin-top:25px;margin-bottom:32px;line-height:1.95}.hero-actions{gap:12px}.hero-actions .button{min-width:132px;font-size:13px;padding:14px 20px;gap:16px}.hero-grid{left:0;right:0;background-size:38px 38px}.hero-light{height:850px}.download-inner h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){.scene-first,.scene-second{display:none}.scene-final{opacity:1;filter:none;transform:none}.hero-signature{background:none;color:#454550}.hero-light{animation:none;opacity:.6;transform:none}}
.motion-paused .scene-first,.motion-paused .scene-second{display:none}.motion-paused .scene-final{opacity:1;filter:none;transform:none}.motion-paused .hero-signature{background:none;color:#454550}

@media(max-width:1100px){:root:not(.pn4-menu-ready) .pn4-header{height:auto;min-height:72px;flex-wrap:wrap;padding-block:14px;gap:14px}:root:not(.pn4-menu-ready) .pn4-nav{order:3;flex-basis:100%;flex-wrap:wrap;gap:14px}}

.product-caption{width:min(100%,1000px);min-height:70px;text-align:left}.product-heading h2 .gradient-text{color:transparent}.hero-sequence:hover .headline-scene{animation-play-state:paused}
@media(max-width:700px){.product-caption{min-height:90px;margin-bottom:20px}}
