:root{--ink:#16181d;--ink-2:#3a3732;--muted:#6a655e;--paper:#f3f1ec;--paper-2:#ebe7df;--white:#fff;--line:#ddd8cf;--line-2:#cbc4b8;--umber:#6b301f;--umber-tint:#e7c9b9;--umber-soft:#f6eee8;--oto:#ffcf4a;--oto-soft:#fff3cc;--miru:#ffb25e;--miru-soft:#ffebd3;--sole:#1f3550;--sole-soft:#e4eaf2;--studio:#1e4a47;--studio-soft:#ddebe8;--f-sans:"Instrument Sans", "Noto Sans HK", "PingFang HK", system-ui, sans-serif;--f-data:"Geist", "Noto Sans HK", system-ui, sans-serif;--f-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--wrap:1200px;--gut:calc(clamp(20px, 4vw, 40px));--r:14px;--r-lg:22px;--ease:cubic-bezier(.2, .7, .2, 1);--shadow:0 1px 2px #16181d0a, 0 12px 32px -12px #16181d29}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--f-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}html[lang^=zh] body{letter-spacing:.01em;line-height:1.8}img,svg{max-width:100%;display:block}a,button{color:inherit}button{font:inherit}::selection{background:var(--umber-tint);color:var(--ink)}:focus-visible{outline:2px solid var(--umber);outline-offset:3px;border-radius:4px}.wrap{max-width:var(--wrap);padding:0 var(--gut);margin:0 auto}.eyebrow{font:500 12px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);align-items:center;gap:10px;display:inline-flex}.eyebrow:before{content:"";background:var(--umber);width:7px;height:7px}html[lang^=zh] .eyebrow{letter-spacing:.16em}.h-display{letter-spacing:-.045em;margin:0;font-size:calc(clamp(44px,7.2vw,100px));font-weight:600;line-height:.98}html[lang^=zh] .h-display{letter-spacing:-.01em;font-size:calc(clamp(38px,5.8vw,80px));line-height:1.15}.h2{letter-spacing:-.035em;margin:0;font-size:calc(clamp(32px,4.4vw,56px));font-weight:600;line-height:1.04}html[lang^=zh] .h2{letter-spacing:0;font-size:calc(clamp(28px,3.6vw,46px));line-height:1.25}.h3{letter-spacing:-.02em;margin:0;font-size:calc(clamp(22px,2.2vw,28px));font-weight:600;line-height:1.2}.lead{color:var(--ink-2);max-width:640px;margin:0;font-size:calc(clamp(18px,1.6vw,21px));line-height:1.55}html[lang^=zh] .lead{line-height:1.85}.muted{color:var(--muted)}.num{font-family:var(--f-data);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.mono{font-family:var(--f-mono)}.sq{background:var(--umber);vertical-align:baseline;width:.17em;height:.17em;margin-left:.05em;display:inline-block}.btn{letter-spacing:-.01em;cursor:pointer;height:48px;transition:transform .2s var(--ease),background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease);border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:0 22px;font-size:15.5px;font-weight:600;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn-ink{background:var(--ink);color:var(--paper)}.btn-ink:hover{background:var(--umber)}.btn-line{border-color:var(--line-2);background:0 0}.btn-line:hover{border-color:var(--ink)}.btn .arr{transition:transform .25s var(--ease)}.btn:hover .arr{transform:translate(3px)}.link-u{transition:background-size .3s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;text-decoration:none}.link-u:hover{background-size:100% 1px}.sec{padding:calc(clamp(80px,11vw,150px)) 0}.sec-head{gap:22px;max-width:820px;margin-bottom:calc(clamp(40px,6vw,72px));display:grid}.sec-white{background:var(--white)}.sec-ink{background:var(--ink);color:var(--paper)}.sec-ink .eyebrow,.sec-ink .lead,.sec-ink .muted{color:#b9b3aa}.sec-ink .eyebrow:before,.sec-ink .sq{background:var(--umber-tint)}.rule{background:var(--line);border:0;height:1px;margin:0}.chip{font:500 12.5px/1 var(--f-mono);letter-spacing:.02em;background:var(--paper-2);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;display:inline-flex}.chip .dot{background:currentColor;border-radius:50%;width:7px;height:7px}.chip.live{color:#24603a;background:#e3eee5}.chip.build{background:var(--umber-soft);color:var(--umber)}@media (width<=600px){.chip{white-space:normal;max-width:100%;line-height:1.35}}.rv{opacity:0;transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d,0s);transform:translateY(22px)}.rv.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rv{opacity:1;transition:none;transform:none}*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important}}.grain{pointer-events:none;z-index:1;opacity:.28;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;charset=utf-8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"160\" height=\"160\"><filter id=\"a\"><feTurbulence baseFrequency=\"1.15\" numOctaves=\"4\" seed=\"7\" stitchTiles=\"stitch\" type=\"fractalNoise\"/><feColorMatrix type=\"saturate\" values=\"0\"/><feComponentTransfer><feFuncA slope=\"1.4\" type=\"linear\"/></feComponentTransfer></filter><rect width=\"100%\" height=\"100%\" filter=\"url(%23a)\"/></svg>");background-size:160px 160px;position:absolute;inset:-50%}.ph-tag{font:500 11.5px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#f3e6dc;-webkit-backdrop-filter:blur(8px);background:#16181d8c;border:1px solid #e7c9b940;border-radius:999px;align-items:center;gap:8px;padding:8px 11px;display:inline-flex}.ph-tag .ok{background:#6fd08c;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #6fd08c33}.hero-copy{justify-items:start;gap:28px;display:grid}.hero-h .l1,.hero-h .l2{display:block}.hero-h .l1{color:var(--muted)}.hero-h{font-size:calc(clamp(38px,5.4vw,76px))}html[lang^=zh] .hero-h{font-size:calc(clamp(30px,3.8vw,54px));line-height:1.22}.hero-ctas{flex-wrap:wrap;gap:12px;display:flex}.btn-light{color:var(--ink);background:#f3f1ec}.btn-light:hover{background:#fff}.btn-glass{color:#f3f1ec;-webkit-backdrop-filter:blur(6px);background:#16181d33;border-color:#f3f1ec61}.btn-glass:hover{border-color:#f3f1ec}.lit,.lit-dark{isolation:isolate;--ax:8%;--ay:-5%;--ac:#e7c9b98c;--bx:105%;--by:105%;--bc:#f0d6c48c;position:relative}.lit-dark:before,.lit:before{content:"";border-radius:inherit;z-index:-1;pointer-events:none;background:radial-gradient(70% 60% at var(--ax) var(--ay),var(--ac),transparent 70%),radial-gradient(65% 70% at var(--bx) var(--by),var(--bc),transparent 70%);opacity:.9;transition:opacity .8s;position:absolute;inset:0}.lit-dark:hover:before,.lit:hover:before{opacity:1}.lit.v1{--ax:6%;--ay:-8%;--ac:#e7c9b999;--bx:100%;--by:110%;--bc:#f4dece80}.lit.v2{--ax:96%;--ay:-6%;--ac:#ecd6b28c;--bx:-4%;--by:104%;--bc:#d6e2dc8c}.lit.v3{--ax:50%;--ay:-18%;--ac:#f6d0be99;--bx:108%;--by:55%;--bc:#e7c9b966}.lit.v4{--ax:-6%;--ay:60%;--ac:#e2d6e873;--bx:70%;--by:115%;--bc:#f0ceb48c}.lit-dark{--ac:#8c462d73;--bc:#6b301f80}.lit-dark.v1{--ax:0%;--ay:0%;--ac:#96482c80;--bx:100%;--by:110%;--bc:#6b301f59}.lit-dark.v2{--ax:100%;--ay:-5%;--ac:#1e605a80;--bx:10%;--by:110%;--bc:#1e4a4759}.lit-dark.v3{--ax:50%;--ay:115%;--ac:#c278286b;--bx:-5%;--by:10%;--bc:#8c462d4d}.ft,.nav .cta,.nav .links,main{transition:opacity .2s}html.lang-fade .ft,html.lang-fade .nav .cta,html.lang-fade .nav .links,html.lang-fade main{opacity:0}@media (prefers-reduced-motion:reduce){html.lang-fade .ft,html.lang-fade .nav .cta,html.lang-fade .nav .links,html.lang-fade main{opacity:1}}.boot{z-index:1000;background:var(--paper,#f3f1ec);place-content:center;justify-items:center;gap:22px;transition:opacity .6s cubic-bezier(.2,.7,.2,1),visibility 0s linear .6s;display:grid;position:fixed;inset:0}.boot.dark{background:#16181d}.boot.out{opacity:0;visibility:hidden;pointer-events:none}.boot img{width:56px;height:56px;animation:1.8s ease-in-out infinite boot-breathe}.boot.out img{transition:transform .6s cubic-bezier(.2,.7,.2,1);animation:none;transform:scale(.96)}.boot .bar{background:#6b301f2e;border-radius:2px;width:64px;height:2px;position:relative;overflow:hidden}.boot.dark .bar{background:#e7c9b929}.boot .bar:after{content:"";border-radius:inherit;background:#b5735a;width:40%;animation:1.1s ease-in-out infinite boot-slide;position:absolute;inset:0}@keyframes boot-breathe{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(.94)}}@keyframes boot-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media (prefers-reduced-motion:reduce){.boot .bar:after,.boot img{animation:none}}
