.vh{--paper:#faf9f6;--paper-2:#f2f0e9;--ink:#141311;--ink-2:#5b584f;--ink-3:#8f8b7e;--acc:#002fa7;--acc-deep:#00227d;--warm:#c0632b;--line:#e4e1d6;--line-2:#d2cec0;--s-1:96px;--s-2:128px;--s-3:160px;--s-4:192px;--r-s:3px;--r-m:10px;--r-full:999px;--maxw:1200px;--pad:clamp(24px,5vw,96px);--sans:"PingFang SC","Microsoft YaHei","Noto Sans SC","Source Han Sans SC",-apple-system,"Segoe UI",sans-serif;--disp:"Noto Sans SC","PingFang SC","Microsoft YaHei","Source Han Sans SC",-apple-system,"Segoe UI",sans-serif;--mono:ui-monospace,"SF Mono","Cascadia Code","JetBrains Mono",Consolas,monospace;--ease:cubic-bezier(.22,1,.36,1);--ease-press:cubic-bezier(.65,0,.25,1)}.vh,.vh *{box-sizing:border-box;margin:0;padding:0}html:has(.vh){scroll-behavior:smooth}.vh{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:17px;line-height:1.6;overflow-x:hidden}.vh ::selection{background:var(--acc);color:#fff}.vh a{color:inherit;text-decoration:none}.vh a:focus-visible,.vh button:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:2px}.vh img{max-width:100%;display:block}.vh .sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.vh:after{content:"";pointer-events:none;z-index:60;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.vh .gridlines{z-index:0;pointer-events:none;max-width:var(--maxw);background-image:linear-gradient(90deg,#1413110d 1px,#0000 1px);background-size:8.33333% 100%;border-right:1px solid #1413110d;margin:0 auto;position:fixed;inset:0}@media (max-width:1248px){.vh .gridlines{left:var(--pad);right:var(--pad)}}.vh .wrap{max-width:var(--maxw);padding:0 var(--pad);z-index:1;margin:0 auto;position:relative}@media (min-width:1249px){.vh .wrap{padding:0}}.vh .eyebrow{font-family:var(--mono);letter-spacing:.12em;color:var(--ink-2);opacity:1;align-items:center;gap:12px;font-size:12px;font-weight:400;animation:none;display:flex}.vh .eyebrow:before{content:"";background:var(--acc);flex:none;width:28px;height:1px}.vh .note{font-family:var(--mono);letter-spacing:.02em;color:var(--ink-3);font-size:12.5px;line-height:1.7}.vh .note em{color:var(--acc);border-bottom:1px solid;padding-bottom:1px;font-style:normal}.vh .sec-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:64px;display:flex}.vh .sec-title{letter-spacing:-.03em;font-size:clamp(36px,2rem + 2.4vw,58px);font-weight:700;line-height:1.08}.vh .sec-title .accd{color:var(--acc)}.vh .mask{display:block;overflow:hidden}.vh .mask>span{transition:transform .9s var(--ease);display:block}.vh.js-on .mask>span{transform:translateY(112%)}.vh.js-on .mask.on>span{transform:translateY(0)}.vh [data-rv]{transition:opacity .8s var(--ease),transform .8s var(--ease)}.vh.js-on [data-rv]{opacity:0;transform:translateY(22px)}.vh.js-on [data-rv].on{opacity:1;transform:translateY(0)}@keyframes vh-heroIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.vh .hero-eyebrow{animation:vh-heroIn .7s var(--ease) both}.vh .hero-copy{animation:vh-heroIn .8s var(--ease) .12s both}.vh .hero-stage{animation:vh-heroIn .9s var(--ease) .22s both}.vh .nav{z-index:50;background:#faf9f6f0;border-bottom:1px solid #0000;transition:border-color .25s;display:block;position:fixed;top:0;left:0;right:0}.vh .nav.scrolled{border-bottom-color:var(--line)}.vh .nav-in{max-width:var(--maxw);padding:0 var(--pad);justify-content:space-between;align-items:center;height:68px;margin:0 auto;display:flex}@media (min-width:1249px){.vh .nav-in{padding:0}}.vh .wordmark{letter-spacing:-.02em;font-size:21px;font-weight:700}.vh .wordmark i{color:var(--acc);font-style:normal}.vh .nav-r{align-items:center;gap:32px;display:flex}.vh .nav-link{color:var(--ink-2);border-bottom:1px solid #0000;padding-bottom:2px;font-size:14.5px;font-weight:400;transition:color .18s,border-color .18s}.vh .nav-link:hover{color:var(--ink);border-bottom-color:var(--ink)}.vh .btn{font-family:var(--sans);letter-spacing:.01em;border-radius:var(--r-s);cursor:pointer;transition:transform .18s var(--ease),background-color .18s ease,color .18s ease,box-shadow .18s ease;will-change:transform;border:1px solid #0000;align-items:center;gap:10px;padding:15px 28px;font-size:15px;font-weight:600;display:inline-flex}.vh .btn-p{background:var(--acc);color:#fff}.vh .btn-p:hover{background:var(--acc-deep);transform:translateY(-2px);box-shadow:0 2px 4px #002fa70f,0 10px 22px -12px #002fa733}.vh .btn-p:active{transform:translateY(0)}.vh .btn-g{color:var(--ink);border-color:var(--ink);background:0 0}.vh .btn-g:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}.vh .btn-sm{padding:9px 18px;font-size:13.5px}.vh .btn .arr{font-family:var(--mono);transition:transform .18s var(--ease);font-size:14px}.vh .btn:hover .arr{transform:translate(3px)}.vh .hero{text-align:left;padding:calc(68px + clamp(20px,4vh,72px)) 0 0;position:relative;overflow:hidden}.vh #glhero{pointer-events:none;opacity:.55;z-index:0;width:100%;height:100%;position:absolute;inset:0}.vh .hero-croch{z-index:0;pointer-events:none;font-family:var(--disp);letter-spacing:-.03em;color:#0000;-webkit-text-stroke:1.5px #14131112;-webkit-user-select:none;user-select:none;font-size:clamp(240px,30vw,460px);font-weight:900;line-height:.9;position:absolute;top:-.06em;right:-.14em}.vh .hero-eyebrow{margin-bottom:22px}.vh .hero-title{font-family:var(--disp);letter-spacing:-.03em;z-index:1;text-wrap:balance;font-size:clamp(52px,1.5rem + 6.5vw,140px);font-weight:900;line-height:1.02;position:relative}.vh .hero-title .dot{color:var(--acc);width:auto;font-style:normal;font-weight:inherit;display:inline}.vh .hero-grid{z-index:1;grid-template-columns:minmax(300px,4fr) 8fr;align-items:start;gap:44px;margin-top:clamp(20px,3.5vh,52px);display:grid;position:relative}.vh .hero-copy p{color:var(--ink-2);max-width:38ch;margin-bottom:32px;font-size:17px;line-height:1.75}.vh .hero-copy p strong{color:var(--ink);font-weight:600}.vh .hero-ctas{flex-wrap:wrap;gap:14px;margin-bottom:24px;display:flex}.vh .scroll-cue{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-3);align-items:center;gap:10px;margin-top:48px;font-size:12px;display:inline-flex}.vh .scroll-cue b{animation:vh-cueY 2s var(--ease) infinite;font-weight:400}@keyframes vh-cueY{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.vh .bench{background:var(--paper-2);border:1px solid var(--line-2);border-radius:var(--r-m);padding:12px;position:relative;box-shadow:0 1px 2px #1413110a,0 20px 44px -28px #1413111f}.vh .bench:after{content:"";border-radius:var(--r-m);pointer-events:none;opacity:0;background:radial-gradient(circle at 66% 44%,#c0632b38,#c0632b00 62%);position:absolute;inset:0;transform:scale(.6)}.vh .bench.ripple:after{animation:vh-benchRip 1.5s var(--ease) 1}@keyframes vh-benchRip{0%{opacity:0;transform:scale(.55)}25%{opacity:1}to{opacity:0;transform:scale(1.45)}}.vh .bench-top{justify-content:space-between;align-items:center;gap:12px;padding:2px 4px 10px;display:flex}.vh .bench-id{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-2);font-size:11px}.vh .live{font-family:var(--mono);letter-spacing:.1em;color:var(--acc);align-items:center;gap:8px;font-size:11px;font-weight:600;display:flex}.vh .live i{border-radius:var(--r-full);background:var(--acc);width:7px;height:7px;animation:1.6s infinite vh-pulse}@keyframes vh-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}.vh .bench-line{align-items:center;gap:14px;padding:10px 4px 0;display:flex}.vh .bench-cap{min-width:0;font-family:var(--mono);letter-spacing:.04em;color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;overflow:hidden}.vh .prog{border-radius:var(--r-full);background:var(--line-2);flex:none;width:110px;height:2px;overflow:hidden}.vh .prog i{background:var(--acc);transform-origin:0;width:100%;height:100%;transition:transform .35s linear;display:block;transform:scaleX(0)}.vh:not(.js-on) .prog i{transform:scaleX(1)}.vh .ctl{font-family:var(--mono);letter-spacing:.08em;color:var(--ink-2);border:1px solid var(--line-2);border-radius:var(--r-full);cursor:pointer;transition:color .18s ease,border-color .18s ease,transform .18s var(--ease);background:0 0;flex:none;padding:5px 13px;font-size:11px}.vh .ctl:hover{color:var(--ink);border-color:var(--ink);transform:translateY(-1px)}.vh:not(.js-on) .ctl{display:none}.vh .stage{border:1px solid var(--line);border-radius:var(--r-s);background:#fff;overflow:hidden}.vh .stage-body{grid-template-columns:280px 1fr;height:clamp(320px,44vh,432px);transition:opacity .5s;display:grid}.vh.js-on .stage.out .stage-body{opacity:.12}.vh .chat{border-right:1px solid var(--line);background:var(--paper);flex-direction:column;order:0;justify-content:flex-end;gap:12px;width:auto;min-width:0;padding:16px 14px;display:flex;overflow:hidden}.vh .bub{max-width:90%;transition:opacity .35s ease,transform .45s var(--ease);padding:10px 14px;font-size:13.5px;line-height:1.55;position:relative}.vh .bub.u{background:var(--ink);color:var(--paper);border-radius:var(--r-m);border-bottom-right-radius:var(--r-s);align-self:flex-end}.vh .bub.a{color:var(--ink);border:1px solid var(--line);border-radius:var(--r-m);border-bottom-left-radius:var(--r-s);background:#fff;align-self:flex-start}.vh .bub.a:before{content:"V";font-family:var(--mono);color:var(--acc);letter-spacing:.08em;font-size:10px;font-weight:700;position:absolute;top:-17px;left:0}.vh .bub .txt{transition:opacity .3s}.vh .bub .tdots{opacity:0;gap:4px;transition:opacity .2s;display:flex;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.vh .bub .tdots i{border-radius:var(--r-full);background:var(--ink-3);width:5px;height:5px;animation:1s ease-in-out infinite vh-tik}.vh .bub .tdots i:nth-child(2){animation-delay:.15s}.vh .bub .tdots i:nth-child(3){animation-delay:.3s}@keyframes vh-tik{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.vh .demo-canvas{background:var(--paper-2);pointer-events:none;padding:16px;position:relative}.vh .browser{background:var(--ms-bg,#f6f7fa);border-radius:var(--r-s);border:1px solid var(--line);flex-direction:column;height:100%;display:flex;overflow:hidden;box-shadow:0 8px 24px -16px #14131124}.vh .brow-bar{border-bottom:1px solid var(--line);background:#fff;flex:none;align-items:center;gap:10px;height:32px;padding:0 12px;display:flex}.vh .brow-bar .dots{gap:5px;display:flex}.vh .brow-bar .dots i{border-radius:var(--r-full);background:var(--line-2);width:8px;height:8px}.vh .brow-url{background:var(--paper-2);border-radius:var(--r-full);height:20px;font-family:var(--mono);color:var(--ink-3);letter-spacing:.02em;flex:1;font-size:10px;position:relative;overflow:hidden}.vh .brow-url span{white-space:nowrap;align-items:center;padding:0 12px;transition:opacity .4s;display:flex;position:absolute;inset:0;overflow:hidden}.vh .brow-url .u-a{opacity:0}.vh .brow-url .u-b{opacity:1;color:var(--acc);font-weight:600}.vh.js-on .brow-url .u-a{opacity:1}.vh.js-on .brow-url .u-b{opacity:0}.vh .ms{background:var(--ms-bg);--ms-bg:#f6f7fa;--ms-sur:#fff;--ms-ink:#1a1e28;--ms-sub:#6a7080;--ms-acc:#2b4fe0;--ms-r:3px;--ms-hd:var(--sans);--ms-t1:#dfe5f2;--ms-t2:#e8ebf1;--ms-t3:#d3dcee;flex-direction:column;flex:1;gap:10px;padding:12px;transition:background-color .8s;display:flex;overflow:hidden}.vh .ms[data-style=warm]{--ms-bg:#f8efe2;--ms-sur:#fffcf6;--ms-ink:#41332a;--ms-sub:#8a7663;--ms-acc:#c0632b;--ms-r:10px;--ms-hd:Georgia,"Songti SC","SimSun",serif;--ms-t1:#ecd9c0;--ms-t2:#e4c9ad;--ms-t3:#d9b08c}.vh .blk{transition:clip-path .55s var(--ease-press),transform .55s var(--ease-press), background-color .8s ease,color .8s ease,border-radius .8s ease}.vh .b-nav .lg,.vh .b-nav .lg i,.vh .b-nav .lk,.vh .b-hero h4,.vh .b-hero p,.vh .b-hero .cta,.vh .tile span,.vh .b-form b,.vh .b-form .ipt,.vh .b-form .sb{transition:background-color .8s,color .8s,border-radius .8s}.vh.js-on .blk{clip-path:inset(0 0 100%);transform:translateY(-10px)}.vh .b-nav{background:var(--ms-sur);border-radius:var(--ms-r);flex:none;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.vh .b-nav .lg{color:var(--ms-ink);align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.vh .b-nav .lg i{border-radius:var(--r-full);background:var(--ms-acc);width:9px;height:9px}.vh .b-nav .lk{color:var(--ms-sub);gap:10px;font-size:9px;display:flex}.vh .b-hero{background:var(--ms-sur);border-radius:var(--ms-r);flex:none;padding:16px 14px}.vh .b-hero h4{font-family:var(--ms-hd);letter-spacing:-.01em;color:var(--ms-ink);font-size:19px;line-height:1.2}.vh .b-hero p{color:var(--ms-sub);margin:5px 0 9px;font-size:10px}.vh .b-hero .cta{color:#fff;background:var(--ms-acc);border-radius:var(--ms-r);letter-spacing:normal;isolation:auto;box-shadow:none;cursor:default;margin:0;padding:5px 12px;font-size:9.5px;font-weight:600;display:inline-block;position:static;overflow:visible;transform:none}.vh .b-gal{flex:1;grid-template-columns:1fr 1fr 1fr;gap:10px;min-height:0;display:grid}.vh .tile{border-radius:var(--ms-r);align-items:flex-end;min-height:52px;padding:8px;display:flex;position:relative;overflow:hidden}.vh .tile:before{content:"";background:linear-gradient(160deg,#ffffff59,#0000000d);position:absolute;inset:0}.vh .tile span{color:#1e19149e;letter-spacing:.02em;font-size:8.5px;font-weight:600;position:relative}.vh .t1{background:var(--ms-t1)}.vh .t2{background:var(--ms-t2)}.vh .t3{background:var(--ms-t3)}.vh .b-form{background:var(--ms-sur);border-radius:var(--ms-r);flex:none;align-items:center;gap:8px;padding:11px 12px;display:flex}.vh .b-form b{color:var(--ms-ink);flex:none;font-size:10px;font-weight:600}.vh .b-form .ipt{border:1px solid var(--line);border-radius:var(--ms-r);background:var(--ms-bg);flex:1;height:18px}.vh .b-form .sb{color:#fff;background:var(--ms-acc);border-radius:var(--ms-r);flex:none;padding:4px 10px;font-size:9px;font-weight:600}.vh .pub{border:1px solid var(--acc);border-radius:var(--r-m);transition:opacity .4s ease,transform .4s var(--ease);white-space:nowrap;background:#fff;align-items:center;gap:14px;padding:12px 18px;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px -18px #002fa74d}.vh.js-on .pub{opacity:0;transform:translate(-50%,16px)}.vh .pub .ok{border-radius:var(--r-full);background:var(--acc);color:#fff;flex:none;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;display:flex}.vh .pub .lnk{font-family:var(--mono);color:var(--acc);letter-spacing:.01em;font-size:12.5px;font-weight:600}.vh .pub .st{color:var(--ink-3);font-size:11px}.vh .stage-foot{border-top:1px solid var(--line);align-items:stretch;height:40px;display:flex}.vh .step{font-family:var(--mono);letter-spacing:.08em;color:var(--ink-3);border-right:1px solid var(--line);flex:1;justify-content:center;align-items:center;gap:8px;font-size:11px;transition:color .3s;display:flex;position:relative}.vh .step:last-child{border-right:0}.vh .step:after{content:"";background:var(--acc);transform-origin:0;height:2px;transition:transform .4s var(--ease);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.vh:not(.js-on) .step{color:var(--ink-2)}.vh:not(.js-on) .step:last-child{color:var(--acc)}.vh:not(.js-on) .step:last-child:after{transform:scaleX(1)}.vh.js-on .bub{opacity:0;transform:translateY(8px)}.vh.js-on .bub .txt{opacity:0}.vh.js-on .stage.s1 .b-u1{opacity:1;transform:translateY(0)}.vh.js-on .stage.s1 .b-u1 .txt{opacity:1}.vh.js-on .stage.s2 .b-a1{opacity:1;transform:translateY(0)}.vh.js-on .stage.s2 .b-a1 .tdots{opacity:1}.vh.js-on .stage.s3 .b-a1 .tdots{opacity:0}.vh.js-on .stage.s3 .b-a1 .txt{opacity:1}.vh.js-on .stage.s4 .b-nav,.vh.js-on .stage.s5 .b-hero,.vh.js-on .stage.s6 .tile{clip-path:inset(0 0 -2%);transform:translateY(0)}.vh.js-on .stage.s6 .t2{transition-delay:.14s}.vh.js-on .stage.s6 .t3{transition-delay:.28s}.vh.js-on .stage.s7 .b-form{clip-path:inset(0 0 -2%);transform:translateY(0)}.vh.js-on .stage.s8 .b-u2{opacity:1;transform:translateY(0)}.vh.js-on .stage.s8 .b-u2 .txt{opacity:1}.vh.js-on .stage.s9 .b-a2{opacity:1;transform:translateY(0)}.vh.js-on .stage.s9 .b-a2 .tdots{opacity:1}.vh.js-on .stage.s10 .b-a2 .tdots{opacity:0}.vh.js-on .stage.s10 .b-a2 .txt{opacity:1}.vh.js-on .stage.s11 .b-u3{opacity:1;transform:translateY(0)}.vh.js-on .stage.s11 .b-u3 .txt{opacity:1}.vh.js-on .stage.s12 .b-a3{opacity:1;transform:translateY(0)}.vh.js-on .stage.s12 .b-a3 .txt{opacity:1}.vh.js-on .stage.s12 .brow-url .u-a{opacity:0}.vh.js-on .stage.s12 .brow-url .u-b{opacity:1}.vh.js-on .stage.s12 .pub{opacity:1;transform:translate(-50%)}.vh.js-on .stage.s1 .step:first-child{color:var(--acc)}.vh.js-on .stage.s1 .step:first-child:after{transform:scaleX(1)}.vh.js-on .stage.s4 .step:first-child{color:var(--ink-2)}.vh.js-on .stage.s4 .step:first-child:after{transform:scaleX(0)}.vh.js-on .stage.s4 .step:nth-child(2){color:var(--acc)}.vh.js-on .stage.s4 .step:nth-child(2):after{transform:scaleX(1)}.vh.js-on .stage.s8 .step:nth-child(2){color:var(--ink-2)}.vh.js-on .stage.s8 .step:nth-child(2):after{transform:scaleX(0)}.vh.js-on .stage.s8 .step:nth-child(3){color:var(--acc)}.vh.js-on .stage.s8 .step:nth-child(3):after{transform:scaleX(1)}.vh.js-on .stage.s11 .step:nth-child(3){color:var(--ink-2)}.vh.js-on .stage.s11 .step:nth-child(3):after{transform:scaleX(0)}.vh.js-on .stage.s11 .step:nth-child(4){color:var(--acc)}.vh.js-on .stage.s11 .step:nth-child(4):after{transform:scaleX(1)}.vh .noanim,.vh .noanim *,.vh .noanim :before,.vh .noanim :after{transition:none!important;animation:none!important}.vh .manifesto{padding:var(--s-4) 0 var(--s-3)}.vh .mani-eyebrow{margin-bottom:48px}.vh .mline{letter-spacing:-.03em;font-size:clamp(30px,1.6rem + 3.2vw,66px);font-weight:700;line-height:1.18}.vh .mline .u{background-image:linear-gradient(var(--acc),var(--acc));background-position:0 96%;background-repeat:no-repeat;background-size:100% 3px;padding-bottom:.04em}.vh .mline .accd{color:var(--acc)}.vh .mline .ghost{color:var(--ink-3)}.vh .manifesto .mline:first-of-type>span{transition-delay:0s}.vh .manifesto .mline:nth-of-type(2)>span{transition-delay:90ms}.vh .manifesto .mline:nth-of-type(3)>span{transition-delay:.18s}.vh .manifesto .mline:nth-of-type(4)>span{transition-delay:.27s}.vh .mani-side{flex-wrap:wrap;gap:48px;margin-top:48px;display:flex}.vh .how{padding:var(--s-2) 0;scroll-margin-top:96px;display:block}.vh .steps3{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.vh .pstep{border-top:2px solid var(--ink);background:var(--paper);padding-top:24px;position:relative}.vh .pstep .num{font-family:var(--mono);letter-spacing:.12em;color:var(--acc);margin-bottom:56px;font-size:13px;font-weight:600;display:block}.vh .pstep h3{letter-spacing:-.02em;margin-bottom:14px;font-size:26px;font-weight:700;line-height:1.25}.vh .pstep p{color:var(--ink-2);max-width:36ch;font-size:15.5px;line-height:1.75}.vh .pstep .tag{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-2);border:1px solid var(--line-2);border-radius:var(--r-full);margin-top:20px;padding:5px 12px;font-size:11.5px;display:inline-block}.vh .pstep q{quotes:"「" "」";color:var(--ink);font-weight:600}.vh .cap-strip{margin-top:var(--s-1);border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(5,1fr);gap:24px;padding:28px 0;display:grid}.vh .cap-strip .ci b{letter-spacing:-.01em;color:var(--ink);align-items:center;gap:9px;font-size:15px;font-weight:600;display:flex}.vh .cap-strip .ci b:before{content:"";background:var(--acc);flex:none;width:5px;height:5px}.vh .cap-strip .ci span{color:var(--ink-2);margin-top:6px;font-size:13px;line-height:1.6;display:block}.vh .styles{padding:var(--s-3) 0;scroll-margin-top:96px;position:relative}.vh .big20{z-index:0;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:var(--mono);color:#0000;-webkit-text-stroke:1.5px #002fa71a;font-size:clamp(160px,20vw,300px);font-weight:700;line-height:.8;position:absolute;top:32px;right:-.05em}.vh .style-grid{z-index:1;grid-template-columns:repeat(3,1fr);gap:24px;display:grid;position:relative}.vh .scard{border-radius:var(--r-m);text-align:left;background:var(--sc-bg);width:100%;min-height:224px;color:var(--sc-ink);font-family:var(--sans);cursor:pointer;transition:transform .2s var(--ease),box-shadow .2s ease,border-color .2s ease;will-change:transform;border:1px solid #14131114;flex-direction:column;justify-content:space-between;gap:16px;padding:24px 22px 20px;display:flex;position:relative}.vh .scard[data-style=warm]{--sc-bg:#f6ead8;--sc-ink:#41332a;--sc-acc:#c0632b;--sc-font:Georgia,"Songti SC","SimSun",serif}.vh .scard[data-style=bar]{--sc-bg:#191420;--sc-ink:#f0e6d2;--sc-acc:#d9a441;--sc-font:var(--sans);border-color:#ffffff1a}.vh .scard[data-style=inkeast]{--sc-bg:#f5f2ec;--sc-ink:#26241f;--sc-acc:#a33a2a;--sc-font:Georgia,"Songti SC","SimSun",serif}.vh .scard[data-style=blue]{--sc-bg:#0d1220;--sc-ink:#e8ecf6;--sc-acc:#3b64ff;--sc-font:var(--sans);border-color:#ffffff1a}.vh .scard[data-style=cafe]{--sc-bg:#efe9df;--sc-ink:#3d3630;--sc-acc:#7a5c3e;--sc-font:var(--sans)}.vh .scard[data-style=film]{--sc-bg:#eef2ee;--sc-ink:#2e3a30;--sc-acc:#3e6b52;--sc-font:var(--sans)}.vh .scard:hover,.vh .scard.sel{transform:translateY(-4px);box-shadow:0 2px 3px #1413110a,0 18px 32px -20px #1413111a}.vh .scard.sel{border-color:var(--sc-acc)}.vh .scard .top{z-index:auto;justify-content:space-between;align-items:flex-start;gap:12px;margin:0;padding:0;display:flex;position:static;top:auto}.vh .scard .idx{font-family:var(--mono);letter-spacing:.12em;opacity:.55;padding-top:4px;font-size:11px}.vh .scard .yong{font-family:var(--sc-font);color:var(--sc-acc);transition:transform .25s var(--ease);font-size:44px;line-height:1}.vh .scard:hover .yong,.vh .scard.sel .yong{transform:scale(1.1)}.vh .scard .nm{letter-spacing:-.02em;font-size:24px;font-weight:700;line-height:1.2;font-family:var(--sc-font);margin:10px 0 6px}.vh .scard .ds{opacity:.75;font-size:13px;line-height:1.6}.vh .scard .dots{align-items:center;gap:7px;display:flex}.vh .scard .dots i{border-radius:var(--r-full);width:14px;height:14px;transition:transform .2s var(--ease);border:1px solid #1413111f}.vh .scard[data-style=bar] .dots i,.vh .scard[data-style=blue] .dots i{border-color:#ffffff38}.vh .scard .dots .d1{background:var(--sc-bg)}.vh .scard .dots .d2{background:var(--sc-acc)}.vh .scard .dots .d3{background:var(--sc-ink)}.vh .scard:hover .dots i,.vh .scard.sel .dots i{transform:translateY(-2px)}.vh .scard:hover .dots i:nth-child(2),.vh .scard.sel .dots i:nth-child(2){transition-delay:40ms}.vh .scard:hover .dots i:nth-child(3),.vh .scard.sel .dots i:nth-child(3){transition-delay:80ms}.vh .scard .bar{background:var(--sc-acc);border-radius:var(--r-full);transform-origin:0;width:100%;height:2px;transition:transform .3s var(--ease);transform:scaleX(0)}.vh .scard:hover .bar,.vh .scard.sel .bar{transform:scaleX(1)}.vh .styles-note{margin-top:40px}.vh .bigcta{padding:var(--s-4) 0;text-align:left;scroll-margin-top:96px}.vh .bigcta h2 .mask:first-child>span{transition-delay:0s}.vh .bigcta h2 .mask:nth-child(2)>span{transition-delay:90ms}.vh .bigcta h2 .mask:nth-child(3)>span{transition-delay:.18s}.vh .bigcta h2{font-family:var(--disp);letter-spacing:-.03em;font-size:clamp(48px,2.4rem + 6.4vw,140px);font-weight:900;line-height:1.02}.vh .bigcta h2 .accd{color:var(--acc)}.vh .bigcta .sub{color:var(--ink-2);max-width:32ch;margin:32px 0 44px;font-size:clamp(18px,1rem + .8vw,24px);line-height:1.6}.vh .bigcta .row{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.vh .footer{background:var(--ink);color:#faf9f69e;text-align:left;font-size:inherit;letter-spacing:normal;border-top:0;font-weight:400;position:relative;overflow:hidden}.vh .footer a{transition:color .18s}.vh .footer a:hover{color:#fff}.vh .foot-top{max-width:var(--maxw);padding:88px var(--pad) 56px;grid-template-columns:2fr 1fr 1fr;gap:48px;margin:0 auto;display:grid}@media (min-width:1249px){.vh .foot-top{padding-left:0;padding-right:0}}.vh .foot-slogan{letter-spacing:-.01em;color:#faf9f6;max-width:20ch;font-size:24px;font-weight:600;line-height:1.45}.vh .foot-col h5{font-family:var(--mono);letter-spacing:.14em;color:#faf9f666;margin-bottom:20px;font-size:11px;font-weight:400}.vh .foot-col ul{flex-direction:column;gap:12px;font-size:14.5px;list-style:none;display:flex}.vh .foot-legal{max-width:var(--maxw);padding:0 var(--pad);font-family:var(--mono);letter-spacing:.03em;color:#faf9f66b;border-top:1px solid #faf9f61a;flex-wrap:wrap;justify-content:space-between;gap:16px;margin:0 auto;padding-top:24px;padding-bottom:8px;font-size:12px;display:flex}@media (min-width:1249px){.vh .foot-legal{padding-left:0;padding-right:0}}.vh .foot-legal a:hover{color:#faf9f6cc}.vh .foot-mark{font-family:var(--disp);letter-spacing:-.045em;color:#faf9f6;text-align:center;white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:clamp(120px,23.5vw,452px);font-weight:900;line-height:.78;transform:translateY(.16em)}.vh .foot-mark i{color:var(--acc);filter:brightness(1.9);font-style:normal}@media (max-width:1024px){.vh .hero-grid{grid-template-columns:1fr;gap:36px}.vh .hero-copy p{max-width:56ch}.vh .steps3{grid-template-columns:1fr;gap:48px}.vh .pstep .num{margin-bottom:24px}.vh .style-grid,.vh .cap-strip{grid-template-columns:repeat(2,1fr)}.vh .foot-top{grid-template-columns:1fr 1fr}.vh .foot-slogan{grid-column:1/-1}}@media (max-width:768px){.vh{--s-1:64px;--s-2:80px;--s-3:96px;--s-4:112px;font-size:16px}.vh .nav-link{display:none}.vh .stage-body{grid-template-columns:1fr;height:auto}.vh .chat{border-right:0;border-bottom:1px solid var(--line);height:150px}.vh .demo-canvas{height:380px}.vh .bench{padding:10px}.vh .bench-cap{font-size:11px}.vh .style-grid{grid-template-columns:1fr}.vh .cap-strip{grid-template-columns:1fr;gap:20px}.vh .hero-croch{display:none}.vh .big20{font-size:140px;top:8px}.vh .step{gap:4px;font-size:9.5px}.vh .pub{white-space:normal;max-width:86%}}@media (max-width:480px){.vh .bench-line{flex-wrap:wrap}.vh .prog{order:3}}@media (prefers-reduced-motion:reduce){html:has(.vh){scroll-behavior:auto}.vh,.vh *,.vh :before,.vh :after{transition:none!important;animation:none!important}.vh.js-on [data-rv],.vh.js-on .mask>span,.vh.js-on .bub,.vh.js-on .bub .txt{opacity:1!important;transform:none!important}.vh.js-on .bub .tdots{opacity:0!important}.vh.js-on .blk{clip-path:none!important;transform:none!important}.vh.js-on .pub{opacity:1!important;transform:translate(-50%)!important}.vh .hero-eyebrow,.vh .hero-copy,.vh .hero-stage{opacity:1!important;transform:none!important}}
