:root{--ink:#1d1d1f;--slate:#707070;--steel:#86868b;--hairline:#d6d6d6;--control:#e6e6e8;--mist:#f5f5f7;--frost:#fafafc;--white:#ffffff;--blue-link:#0066cc;--blue-fill:#0071e3;--orange:#b64400;--r-nav:20px;--r-card:28px;--r-pill:36px;--wrap:min(1000px, 100% - 48px);--font-display:"SF Pro Display","SF Pro Text",-apple-system,BlinkMacSystemFont,"Helvetica Neue","Inter","PingFang SC","Microsoft YaHei",sans-serif;--font-text:"SF Pro Text","SF Pro Display",-apple-system,BlinkMacSystemFont,"Helvetica Neue","Inter","PingFang SC","Microsoft YaHei",sans-serif}*,::after,::before{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--font-text);font-size:17px;line-height:1.47;letter-spacing:-.022em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}::selection{background:rgba(0,102,204,.15);color:var(--ink)}a{color:inherit}img{max-width:100%}.wrap{width:var(--wrap);margin-inline:auto;position:relative}:focus-visible{outline:2px solid var(--blue-link);outline-offset:3px;border-radius:4px}[data-lang=cn] .only-en,[data-lang=en] .only-cn{display:none!important}.site-nav{position:sticky;top:0;z-index:60;background:rgba(250,250,252,.86);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--hairline)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;height:52px}.brand{display:inline-flex;align-items:baseline;gap:8px;text-decoration:none;font-family:var(--font-display);font-size:14px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}.brand .brand-meta{font-family:var(--font-text);font-size:12px;font-weight:400;letter-spacing:-.01em;color:var(--steel)}.nav-right{display:flex;align-items:center;gap:22px}.nav-link{text-decoration:none;font-size:12px;font-weight:400;letter-spacing:-.01em;color:var(--ink);opacity:.9;transition:opacity .2s ease;white-space:nowrap}.nav-link:hover{opacity:.55}.nav-link .arr{margin-left:2px;letter-spacing:.02em;transition:transform .2s ease}.nav-link:hover .arr{transform:translateX(3px)}.lang-switch{display:inline-flex;align-items:center;gap:2px;padding:2px;background:var(--control);border-radius:var(--r-nav)}.lang-switch button{appearance:none;font-family:inherit;font-size:11px;font-weight:500;letter-spacing:.01em;line-height:1;padding:6px 11px;border:1px solid transparent;border-radius:18px;background:0 0;color:var(--slate);cursor:pointer;transition:background .2s ease,color .2s ease}.lang-switch button:hover{color:var(--ink)}.lang-switch button[aria-pressed=true]{background:var(--white);border-color:var(--hairline);color:var(--ink)}.hero{padding:88px 0 90px;text-align:center;background:var(--white)}.kicker{margin:0 0 18px;font-size:12px;line-height:1.3;letter-spacing:-.01em;color:var(--steel)}h1{margin:0 auto;max-width:920px;font-family:var(--font-display);font-size:clamp(40px,7vw,80px);font-weight:600;line-height:1.05;letter-spacing:-.015em;color:var(--ink);text-wrap:balance}.lede{margin:22px auto 0;max-width:640px;font-size:clamp(17px,2vw,21px);line-height:1.38;letter-spacing:-.012em;color:var(--slate);text-wrap:pretty}.hero-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px;margin-top:32px}.btn-primary{display:inline-block;padding:9px 18px;border-radius:var(--r-pill);background:var(--blue-fill);color:var(--white);font-size:12px;font-weight:500;letter-spacing:-.01em;text-decoration:none;transition:background .2s ease}.btn-primary:hover{background:#0077ed}.link-arrow{display:inline-flex;align-items:center;gap:4px;font-size:17px;letter-spacing:-.022em;color:var(--blue-link);text-decoration:none}.link-arrow:hover{text-decoration:underline;text-underline-offset:3px}.link-arrow svg{margin-top:1px;transition:transform .2s ease}.link-arrow:hover svg{transform:translateX(2px)}.status{margin:22px 0 0;font-size:12px;line-height:1.3;letter-spacing:-.01em;color:var(--orange)}.work{background:var(--mist);padding:90px 0;scroll-margin-top:52px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:36px}.section-head h2{margin:0;font-family:var(--font-display);font-size:clamp(28px,3.4vw,40px);font-weight:600;line-height:1.1;letter-spacing:-.012em;color:var(--ink)}.section-head .count{font-size:12px;letter-spacing:-.01em;color:var(--steel);white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.card{min-width:0;background:var(--white);border-radius:var(--r-card);padding:28px}.carousel{position:relative}.stage{position:relative;overflow:hidden;border-radius:var(--r-card);background:var(--mist);aspect-ratio:16/10;isolation:isolate}.track{display:flex;height:100%;will-change:transform;transition:transform .62s cubic-bezier(.22,.61,.36,1)}.slide{position:relative;flex:0 0 100%;height:100%;margin:0;overflow:hidden;background:var(--mist)}.art{position:absolute;inset:0;background:radial-gradient(120% 110% at 84% 6%,rgba(255,255,255,.62),transparent 62%),linear-gradient(142deg,var(--c1,#f5f5f7),var(--c2,#d6d6d6))}.art-num{position:absolute;top:50%;right:6%;transform:translateY(-50%);font-family:var(--font-display);font-size:clamp(56px,7vw,92px);font-weight:600;line-height:1;letter-spacing:-.04em;color:rgba(255,255,255,.52);user-select:none}.art-lines{position:absolute;left:8%;bottom:11%;display:grid;gap:9px;width:42%}.art-lines i{display:block;height:8px;border-radius:99px;background:rgba(255,255,255,.6)}.art-lines i:first-child{width:100%}.art-lines i:nth-child(2){width:68%}.art-lines i:nth-child(3){width:84%}.slide:nth-child(2n) .art-num{right:auto;left:6%;color:rgba(255,255,255,.42)}.slide:nth-child(2n) .art-lines{left:auto;right:9%}.slide img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;object-position:top}.slide img.is-broken{display:none}.c-arrow{position:absolute;top:calc(50% - 13px);left:-16px;z-index:3;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;box-shadow:0 1px 6px rgba(0,0,0,.12);cursor:pointer;transition:background .2s ease,transform .2s ease}.c-arrow.next{left:auto;right:-16px}.c-arrow:hover{background:rgba(0,0,0,.6)}.c-arrow:active{transform:translateY(1px)}.dots{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:16px;min-height:8px}.dot{width:6px;height:6px;padding:0;border:0;border-radius:var(--r-pill);background:var(--hairline);cursor:pointer;transition:width .3s cubic-bezier(.22,.61,.36,1),background .3s ease}.dot:hover{background:var(--steel)}.dot[aria-selected=true]{width:22px;background:var(--ink)}.meta{padding-top:24px}.meta-top{display:flex;align-items:center;gap:12px;margin-bottom:10px;font-size:12px;letter-spacing:-.01em;color:var(--steel);font-variant-numeric:tabular-nums}.meta-top .rule{flex:1;height:1px;background:var(--hairline)}.card h3{margin:0 0 6px;font-family:var(--font-display);font-size:24px;font-weight:600;line-height:1.17;letter-spacing:-.012em;color:var(--ink)}.desc{margin:0 0 16px;font-family:"Microsoft YaHei","PingFang SC","Hiragino Sans GB",sans-serif;font-size:14px;line-height:1.9;letter-spacing:-.01em;color:#86868b;max-width:none}.desc span{white-space:pre-line}.title-row{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px 14px;margin-bottom:10px}.title-row h3{margin:0}.meta-tabs{display:inline-flex;gap:14px;flex:none}.meta-tab{padding:0;border:0;background:0 0;font-family:inherit;font-size:13px;font-weight:500;letter-spacing:-.01em;cursor:pointer;transition:color .2s ease}.meta-tab.is-active{color:var(--steel);cursor:default}.meta-tab:not(.is-active){color:var(--blue-link)}.meta-tab:not(.is-active):hover{text-decoration:underline;text-underline-offset:3px}.pane{display:none}.pane.is-active{display:block;animation:paneIn .3s cubic-bezier(.22,.61,.36,1)}@keyframes paneIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.stack{margin:0 0 20px;padding-left:22px;font-family:"Microsoft YaHei","PingFang SC","Hiragino Sans GB",sans-serif}.stack li{font-size:14px;line-height:1.9;letter-spacing:-.01em;color:var(--slate);list-style:disc}.stack li::marker{color:var(--steel)}.stack li strong{color:var(--ink);font-weight:600}.view{display:inline-flex;align-items:center;gap:6px;font-size:15px;letter-spacing:-.016em;color:var(--blue-link);text-decoration:none}.view .arr{transition:transform .3s cubic-bezier(.22,.61,.36,1)}.view:hover{text-decoration:underline;text-underline-offset:3px}.view:hover .arr{transform:translateX(4px)}.site-footer{background:var(--white);border-top:1px solid var(--hairline);padding:64px 0 44px}.quote{margin:0;font-family:var(--font-display);font-size:clamp(21px,2.4vw,28px);font-weight:600;line-height:1.25;letter-spacing:-.014em;color:var(--ink);max-width:760px;text-wrap:pretty}.quote .byline{display:inline;margin-left:6px;font-family:var(--font-text);font-size:15px;font-weight:400;letter-spacing:-.016em;color:var(--steel)}.copy{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;margin:28px 0 0;padding-top:20px;border-top:1px solid var(--hairline);font-size:12px;line-height:1.4;letter-spacing:-.01em;color:var(--steel);font-variant-numeric:tabular-nums}.copy a{color:var(--blue-link);text-decoration:none}.copy a:hover{text-decoration:underline;text-underline-offset:2px}.js .reveal{opacity:0;transform:translateY(12px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1)}.js .reveal.is-in{opacity:1;transform:none}@media (max-width:900px){.grid{grid-template-columns:1fr}.card{padding:20px}.stage{border-radius:22px}.c-arrow{left:10px;width:40px;height:40px}.c-arrow.next{right:10px}.hero{padding:64px 0 72px}.work{padding:64px 0}}@media (max-width:600px){:root{--wrap:calc(100% - 32px);--r-card:22px}.nav-inner{height:48px}.brand .brand-meta{display:none}.nav-right{gap:14px}.card{padding:16px}.section-head{margin-bottom:24px}.stack li{font-size:11px;padding:5px 10px}.copy{font-size:11px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::after,::before{animation-duration:NaNs!important;animation-iteration-count:1!important;transition-duration:NaNs!important}.js .reveal{opacity:1;transform:none}}