@font-face{font-family:Geist;src:url(/assets/fonts/Geist-Variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--color-paper:#f8fafd;--color-paper-2:#eef2f5;--color-paper-3:#e1e7ec;--color-rule:#cfd5da;--color-muted:#49515a;--color-ink-2:#252f3a;--color-ink:#0f1925;--color-accent:#006587;--color-accent-ink:#f8fafd;--color-focus:#007cca;--color-night:#0c1620;--color-night-2:#15202c;--color-night-rule:#2f3944;--color-night-ink:#edf1f4;--color-night-muted:#c0c8d0;--color-night-accent:#7cc3dc;--color-on-photo:#f8fafd;--color-scrim:#050b16bd;--color-scrim-soft:#050b1600;--color-scrim-top:#050b166b;--color-frost:#f8fafddb;--font-display:"Geist", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", sans-serif;--font-body:var(--font-display);--text-sm:.875rem;--text-base:1.0625rem;--text-md:1.25rem;--text-h2:clamp(1.95rem, 1.6vw + 1.3rem, 3.05rem);--text-display:clamp(2.6rem, 4.6vw + 1rem, 5.25rem);--weight-body:400;--weight-display:700;--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--page-max:76rem;--page-gutter:clamp(1rem, 4vw, 2.5rem);--nav-height:4.25rem;--measure:40rem;--radius-card:8px;--radius-pill:999px;--rule-width:1px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--dur-hero:1.6s;--z-base:1;--z-raised:10;--z-sticky:200;--z-modal:400}@supports (color:oklch(0% 0 0)){:root{--color-paper:oklch(98.5% .004 240);--color-paper-2:oklch(96% .006 240);--color-paper-3:oklch(92.5% .009 242);--color-rule:oklch(87% .01 245);--color-muted:oklch(43% .018 250);--color-ink-2:oklch(30% .024 252);--color-ink:oklch(21% .028 255);--color-accent:oklch(47% .1 228);--color-accent-ink:oklch(98.5% .004 240);--color-focus:oklch(55% .18 235);--color-night:oklch(19.5% .026 252);--color-night-2:oklch(24% .028 252);--color-night-rule:oklch(34% .024 250);--color-night-ink:oklch(95.5% .006 240);--color-night-muted:oklch(83% .014 245);--color-night-accent:oklch(78% .08 222);--color-on-photo:oklch(98.5% .004 240);--color-scrim:oklch(15% .025 255/.74);--color-scrim-soft:oklch(15% .025 255/0);--color-scrim-top:oklch(15% .025 255/.42);--color-frost:oklch(98.5% .004 240/.86)}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--nav-height) + var(--space-lg));overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-weight:var(--weight-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.75;overflow-x:clip}html[lang=en] body{line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}p{margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:var(--weight-display);overflow-wrap:anywhere;min-width:0;margin:0;font-style:normal}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.skip{left:var(--space-md);top:calc(var(--space-md) * -8);background:var(--color-ink);color:var(--color-paper);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-pill);z-index:var(--z-modal);position:absolute}.skip:focus{top:var(--space-md)}main:focus{outline:none}.page-enter-active{transition:opacity var(--dur-long) var(--ease-out), transform var(--dur-long) var(--ease-out)}.page-leave-active{transition:opacity var(--dur-short) var(--ease-in), transform var(--dur-short) var(--ease-in)}.page-enter-from{opacity:0;transform:translateY(var(--space-sm))}.page-leave-to{opacity:0;transform:translateY(calc(var(--space-xs) * -1))}@media (prefers-reduced-motion:reduce){.page-enter-from,.page-leave-to{transform:none}}.wrap{max-width:var(--page-max);padding-inline:var(--page-gutter);margin:0 auto}.btn{min-height:2.75rem;padding:0 var(--space-lg);border-radius:var(--radius-pill);border:var(--rule-width) solid transparent;font-size:var(--text-base);white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);justify-content:center;align-items:center;font-weight:500;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;pointer-events:none}.link:active,.nav__link:active,.foot__links a:active{opacity:.7}.btn--ink{background:var(--color-ink);color:var(--color-paper)}.btn--ink:hover{background:var(--color-ink-2)}.btn--light{background:var(--color-on-photo);color:var(--color-ink)}.btn--light:hover{background:var(--color-paper-3)}.btn--ghost-light{border-color:var(--color-on-photo);color:var(--color-on-photo)}.btn--ghost-light:hover{background:var(--color-on-photo);color:var(--color-ink)}.link{color:var(--color-accent);white-space:nowrap;padding-bottom:var(--space-3xs);transition:background-size var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;font-weight:500}.link:hover{color:var(--color-ink)}.nav{z-index:var(--z-sticky);border-bottom:var(--rule-width) solid transparent;transition:border-color var(--dur-short) var(--ease-out);color:var(--color-ink);background:var(--color-frost);position:fixed;top:0;left:0;right:0}.nav--over-photo:not(.is-scrolled):not(.is-open){color:var(--color-on-photo);background:0 0}.nav--over-photo:not(.is-scrolled):not(.is-open) .nav__link,.nav--over-photo:not(.is-scrolled):not(.is-open) .nav__lang{opacity:1}.nav.is-scrolled,.nav.is-open{border-bottom-color:var(--color-rule)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.nav.is-scrolled,.nav:not(.nav--over-photo){-webkit-backdrop-filter:blur(16px)saturate(150%);backdrop-filter:blur(16px)saturate(150%)}}.nav__inner{max-width:var(--page-max);padding-inline:var(--page-gutter);height:var(--nav-height);align-items:center;gap:var(--space-lg);grid-template-columns:1fr auto 1fr;margin:0 auto;display:grid}.brand{justify-self:start;align-items:center;gap:var(--space-sm);white-space:nowrap;display:inline-flex}.brand__name{font-weight:var(--weight-display);font-size:var(--text-md);letter-spacing:-.01em}.brand__name small{font-weight:var(--weight-body);font-size:var(--text-sm);margin-left:var(--space-xs);opacity:.72;letter-spacing:0}.nav__center{gap:var(--space-xl);display:flex}.nav__link{font-size:var(--text-base);white-space:nowrap;opacity:.9;transition:opacity var(--dur-short) var(--ease-out);padding-block:var(--space-xs)}.nav__link:hover,.nav__link[aria-current=page]{opacity:1}.nav__link[aria-current=page]{font-weight:500}.nav__sheet a[aria-current=page]{font-weight:600}.nav__right{justify-self:end;align-items:center;gap:var(--space-lg);display:flex}.nav__lang{font-size:var(--text-sm);white-space:nowrap;opacity:.82;padding:var(--space-xs) 0;font-weight:500}.nav__lang:hover{opacity:1}.nav .btn{min-height:2.5rem;padding:0 var(--space-md);font-size:var(--text-sm)}.nav--over-photo:not(.is-scrolled):not(.is-open) .btn--ink{background:var(--color-on-photo);color:var(--color-ink)}.nav__toggle{width:2.75rem;height:2.75rem;margin-right:calc(var(--space-sm) * -1);color:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:none}.nav__toggle span{width:20px;height:1.5px;margin:var(--space-2xs) auto;transition:transform var(--dur-short) var(--ease-out), opacity var(--dur-micro) var(--ease-out);background:currentColor;display:block}.nav.is-open .nav__toggle span:first-child{transform:translateY(5.5px)rotate(45deg)}.nav.is-open .nav__toggle span:nth-child(2){opacity:0}.nav.is-open .nav__toggle span:nth-child(3){transform:translateY(-5.5px)rotate(-45deg)}.nav__sheet{display:none}@media (max-width:56rem){.nav__inner{grid-template-columns:1fr auto}.nav__center,.nav__right{display:none}.nav__toggle{justify-self:end;display:block}.nav.is-open{background:var(--color-paper)}.nav.is-open .nav__sheet{gap:var(--space-2xs);padding:var(--space-xs) var(--page-gutter) var(--space-xl);border-top:var(--rule-width) solid var(--color-rule);flex-direction:column;display:flex}.nav__sheet a{min-height:3rem;font-size:var(--text-md);border-bottom:var(--rule-width) solid var(--color-rule);align-items:center;display:flex}.nav__sheet .nav__lang{font-size:var(--text-base);opacity:1;border-bottom:0}}.frame{background:var(--color-paper-3);position:relative;overflow:hidden}.frame>picture{height:100%;display:block}.frame>img,.frame>picture>img{object-fit:cover;width:100%;height:100%}.hero{min-height:88vh;min-height:88svh;color:var(--color-on-photo);background:var(--color-night);align-items:flex-end;display:flex;position:relative;overflow:hidden}.hero .frame{background:var(--color-night);position:absolute;top:0;bottom:0;left:0;right:0}.hero:before{content:"";height:30%;z-index:var(--z-raised);pointer-events:none;background:linear-gradient(to bottom, var(--color-scrim-top) 0%, var(--color-scrim-soft) 100%);position:absolute;top:0;bottom:auto;left:0;right:0}.nowrap{white-space:nowrap}.hero:after{content:"";pointer-events:none;background:linear-gradient(to top, var(--color-scrim) 0%, var(--color-scrim) 30%, var(--color-scrim-soft) 78%);position:absolute;top:0;bottom:0;left:0;right:0}.hero__body{z-index:var(--z-raised);width:100%;padding-bottom:clamp(var(--space-2xl), 8vh, var(--space-4xl));padding-top:calc(var(--nav-height) + var(--space-3xl));position:relative}.hero__inner{max-width:46rem}.hero h1{font-size:var(--text-display);letter-spacing:-.02em;margin-bottom:var(--space-lg);line-height:1.08}html[lang=en] .hero h1{letter-spacing:-.035em}.hero__lede{font-size:var(--text-md);max-width:36rem;margin-bottom:var(--space-xl);line-height:1.6}.hero__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.caption{font-size:var(--text-sm);letter-spacing:.01em}.hero .caption{right:var(--page-gutter);bottom:var(--space-lg);z-index:var(--z-raised);opacity:.85;position:absolute}@media (prefers-reduced-motion:no-preference){.hero .frame img{animation:settle var(--dur-hero) var(--ease-out) both}.hero__inner>*{animation:rise .9s var(--ease-out) both;animation-delay:calc(.24s + var(--i,0) * .11s)}}@keyframes settle{0%{transform:scale(1.07)}to{transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.section{padding-block:var(--space-4xl) var(--space-3xl)}.h2{font-size:var(--text-h2);letter-spacing:-.015em;line-height:1.18}html[lang=en] .h2{letter-spacing:-.03em}.h3{font-size:var(--text-md);line-height:1.4}.lede{font-size:var(--text-md);color:var(--color-ink-2);line-height:1.65}.muted{color:var(--color-muted)}.intro{gap:var(--space-3xl);grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:start;display:grid}.intro .h2{margin-bottom:var(--space-xl);max-width:16em}.intro__prose{gap:var(--space-lg);color:var(--color-ink-2);max-width:var(--measure);display:grid}.facts{border-top:var(--rule-width) solid var(--color-ink);margin:0}.facts div{padding-block:var(--space-md);border-bottom:var(--rule-width) solid var(--color-rule)}.facts dt{font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-2xs)}.facts dd{font-variant-numeric:tabular-nums;margin:0;font-weight:500}.facts+.link{margin-top:var(--space-lg);display:inline-block}.stack-head{gap:var(--space-3xl);margin-bottom:var(--space-2xl);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:end;display:grid}.stack-head p{color:var(--color-ink-2);font-size:var(--text-md);max-width:36rem;line-height:1.65}.areas{border-top:var(--rule-width) solid var(--color-ink)}.area{gap:var(--space-3xl);padding-block:var(--space-xl);border-bottom:var(--rule-width) solid var(--color-rule);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}.area .h3{font-size:var(--text-md)}.area p{color:var(--color-ink-2);max-width:36rem}.band{background:var(--color-night);color:var(--color-on-photo);position:relative}.band .frame{background:var(--color-night);height:max(16rem,min(38vw,34rem))}.band:after{content:"";background:linear-gradient(to top, var(--color-scrim) 0%, var(--color-scrim-soft) 100%);pointer-events:none;height:40%;position:absolute;top:auto;bottom:0;left:0;right:0}.band .caption{right:var(--page-gutter);bottom:var(--space-md);z-index:var(--z-raised);opacity:.8;position:absolute}.night{background:var(--color-night);color:var(--color-night-ink)}.night .muted{color:var(--color-night-muted)}.rooted{gap:var(--space-3xl);padding-bottom:var(--space-3xl);margin-bottom:var(--space-3xl);border-bottom:var(--rule-width) solid var(--color-night-rule);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;display:grid}.rooted p{color:var(--color-night-muted);font-size:var(--text-md);max-width:36rem;line-height:1.65}.name{gap:var(--space-3xl);padding-bottom:var(--space-3xl);border-bottom:var(--rule-width) solid var(--color-night-rule);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}.name__intro p{color:var(--color-night-muted);margin-top:var(--space-lg);max-width:26rem}.glyphs{gap:var(--space-xl);display:grid}.glyph{gap:var(--space-xl);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.glyph__char{font-size:var(--text-display);color:var(--color-night-accent);font-weight:300;line-height:1}.glyph h3{font-size:var(--text-md);margin-bottom:var(--space-xs)}.glyph p{color:var(--color-night-muted)}.values{gap:var(--space-xl);padding-top:var(--space-2xl);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.values h3{font-size:var(--text-md);margin-bottom:var(--space-xs)}.values p{color:var(--color-night-muted);font-size:var(--text-base)}.doc-head{padding-top:calc(var(--nav-height) + var(--space-3xl));padding-bottom:var(--space-2xl);border-bottom:var(--rule-width) solid var(--color-rule)}.crumbs{font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-lg);gap:var(--space-xs);white-space:nowrap;display:flex}.crumbs a:hover{color:var(--color-ink)}.doc-head h1{font-size:var(--text-display);letter-spacing:-.02em;margin-bottom:var(--space-lg);max-width:14em;line-height:1.08}html[lang=en] .doc-head h1{letter-spacing:-.035em}.doc-head .lede{max-width:38rem}.doc{gap:var(--space-3xl);padding-block:var(--space-2xl) var(--space-4xl);grid-template-columns:minmax(0,1fr) 14rem;display:grid}.doc__body{max-width:var(--measure)}.doc__body>*+*{margin-top:var(--space-lg)}.doc__body h2{font-size:var(--text-md);margin-top:var(--space-2xl);padding-top:var(--space-lg);border-top:var(--rule-width) solid var(--color-rule);line-height:1.4}.doc__body h2:first-child{margin-top:0}.doc__section>*+*{margin-top:var(--space-lg)}.doc__body p,.doc__body li{color:var(--color-ink-2)}.doc__body ul{margin-bottom:0;padding-left:1.2em}.doc__body li+li{margin-top:var(--space-xs)}.doc__body a:not(.link){color:var(--color-accent);text-underline-offset:3px;text-decoration:underline}.doc__figure{margin:var(--space-2xl) 0 var(--space-xl)}.doc__figure .frame{aspect-ratio:16/9;border-radius:var(--radius-card)}.doc__figure figcaption{margin-top:var(--space-sm);font-size:var(--text-sm);color:var(--color-muted)}.doc__updated{font-size:var(--text-sm);color:var(--color-muted)!important}.toc{top:calc(var(--nav-height) + var(--space-xl));font-size:var(--text-sm);align-self:start;position:-webkit-sticky;position:sticky}.toc p{color:var(--color-muted);margin-bottom:var(--space-sm)}.toc ol{border-left:var(--rule-width) solid var(--color-rule);margin:0;padding:0;list-style:none}.toc a{padding:var(--space-2xs) 0 var(--space-2xs) var(--space-md);color:var(--color-ink-2);border-left:var(--rule-width) solid transparent;white-space:nowrap;margin-left:-1px;display:block}.toc a:hover{color:var(--color-ink);border-left-color:var(--color-ink)}.pillars{margin-left:0;margin-right:0;border-top:var(--rule-width) solid var(--color-ink);gap:0;margin-bottom:0;display:grid}.pillars div{gap:var(--space-lg);padding-block:var(--space-md);border-bottom:var(--rule-width) solid var(--color-rule);grid-template-columns:7rem minmax(0,1fr);display:grid}.pillars dt{font-weight:500}.pillars dd{color:var(--color-ink-2);margin:0}.contact{gap:var(--space-3xl);padding-top:calc(var(--nav-height) + var(--space-3xl));padding-bottom:var(--space-4xl);grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:start;display:grid}.contact h1{font-size:var(--text-display);letter-spacing:-.02em;margin-bottom:var(--space-lg);line-height:1.08}html[lang=en] .contact h1{letter-spacing:-.035em}.contact .lede{max-width:30rem;margin-bottom:var(--space-2xl)}.channels{border-top:var(--rule-width) solid var(--color-ink);margin:0}.channels div{padding-block:var(--space-lg);border-bottom:var(--rule-width) solid var(--color-rule)}.channels dt{font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-xs)}.channels dd{font-size:var(--text-md);margin:0;line-height:1.55}.channels dd a{color:var(--color-accent);border-bottom:var(--rule-width) solid currentColor;transition:color var(--dur-short) var(--ease-out);overflow-wrap:anywhere}.channels dd a:hover{color:var(--color-ink)}.channels .muted{font-size:var(--text-sm);margin-top:var(--space-xs);display:block}.contact__photo{margin:0}.contact__photo .frame{aspect-ratio:4/5;border-radius:var(--radius-card)}.contact__photo figcaption{margin-top:var(--space-sm);font-size:var(--text-sm);color:var(--color-muted)}.nf{padding-top:calc(var(--nav-height) + var(--space-4xl));padding-bottom:var(--space-4xl)}.nf h1{font-size:var(--text-display);letter-spacing:-.02em;margin-bottom:var(--space-lg);line-height:1.08}.nf p{color:var(--color-ink-2);margin-bottom:var(--space-xl)}.nf .hero__actions{gap:var(--space-lg)}.foot{background:var(--color-paper-2);border-top:var(--rule-width) solid var(--color-rule)}.foot__mast{gap:var(--space-xl);padding-block:var(--space-3xl) var(--space-xl);grid-template-columns:minmax(0,1fr) auto;align-items:end;display:grid}.foot__word{font-weight:var(--weight-display);font-size:var(--text-h2);letter-spacing:-.02em;line-height:1.1}.foot__tag{color:var(--color-muted);margin-top:var(--space-sm)}.foot__links{gap:var(--space-xs) var(--space-lg);flex-wrap:wrap;justify-content:flex-end;display:flex}.foot__links a{white-space:nowrap;color:var(--color-ink-2);padding-block:var(--space-2xs)}.foot__links a:hover{color:var(--color-ink)}.foot__meta{gap:var(--space-xs) var(--space-xl);padding-block:var(--space-lg) var(--space-xl);border-top:var(--rule-width) solid var(--color-rule);font-size:var(--text-sm);color:var(--color-muted);grid-template-columns:minmax(0,1fr) auto;display:grid}.foot__meta a:hover{color:var(--color-ink)}.foot__records{gap:var(--space-xs) var(--space-lg);flex-wrap:wrap;justify-content:flex-end;display:flex}.foot__records a:empty{display:none}@media (max-width:60rem){.intro,.stack-head,.area,.name,.rooted,.doc,.contact{grid-template-columns:minmax(0,1fr)}.intro,.name,.contact{gap:var(--space-2xl)}.rooted{gap:var(--space-lg)}.stack-head{gap:var(--space-md)}.area{gap:var(--space-xs);padding-block:var(--space-lg)}.values{grid-template-columns:repeat(2,minmax(0,1fr))}.toc{display:none}.contact__photo{max-width:32rem}.foot__mast,.foot__meta{grid-template-columns:minmax(0,1fr)}.foot__links,.foot__records{justify-content:flex-start}}@media (max-width:40rem){.section{padding-block:var(--space-2xl)}.intro .h2,.stack-head{margin-bottom:var(--space-lg)}.rooted,.name{padding-bottom:var(--space-2xl)}.rooted{margin-bottom:var(--space-2xl)}.values{padding-top:var(--space-xl);gap:var(--space-lg)}.foot__mast{padding-block:var(--space-2xl) var(--space-lg)}.hero{min-height:0}.hero__body{padding-top:calc(var(--nav-height) + var(--space-4xl));padding-bottom:var(--space-xl)}.hero h1{font-size:var(--text-h2)}.band .frame{height:10rem}.contact__photo{display:none}.doc__figure{margin-block:var(--space-lg)}.hero .caption{margin-top:var(--space-lg);display:block;position:static}.hero__actions .btn{flex:auto}.foot__word{font-size:var(--text-md)}.values{grid-template-columns:minmax(0,1fr)}.glyph{gap:var(--space-lg)}.pillars div{gap:var(--space-2xs);grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}html{scroll-behavior:auto}}
