.hob-layer{z-index:2;pointer-events:none;position:absolute;inset:0}.hob{--h:calc(var(--fs) * .7);left:var(--x);width:calc(var(--h) * var(--ar));height:var(--h);transform:translate(-50%,-50%);rotate:var(--r);pointer-events:auto;color:var(--ink);transition:translate .45s var(--ease-elastic),rotate .45s var(--ease-elastic);border-radius:16px;text-decoration:none;display:block;position:absolute}.hob-phone,.hob-laptop{top:calc(var(--pt) + var(--fs) * .26 - var(--h) / 2)}.hob-pencil,.hob-card{top:calc(var(--pt) + var(--fs) * var(--low,.6) + var(--h) / 2)}.hob-pencil{--ar:.4167;--h:calc(var(--fs) * .8);--x:8%;--r:-14deg}.hob-laptop{--ar:1.375;--h:calc(var(--fs) * .66);--x:91%;--r:6deg}.hob-phone{--ar:.5833;--h:calc(var(--fs) * .76);--x:4%;--r:-8deg}.hob-card{--ar:1.0833;--h:calc(var(--fs) * .64);--x:92%;--r:8deg}@container hero (width<=759px){.hob-pencil{--h:max(94px, calc(var(--fs) * 1.04));--x:15%}.hob-laptop{--h:max(78px, calc(var(--fs) * .88));--x:84%}.hob-phone{--h:max(91px, calc(var(--fs) * .96));--x:12%}.hob-card{--h:max(78px, calc(var(--fs) * .83));--x:85%}.hob-pencil,.hob-card{--low:.82}.hob-label{opacity:0;pointer-events:none}.hob:focus-visible .hob-label{opacity:1}}.hob-art{width:100%;height:100%;display:block}.hob-art svg{width:100%;height:100%;display:block;overflow:visible}.hob-label{white-space:nowrap;border:1px solid var(--ink);border-radius:var(--r-pill);background:var(--card);color:var(--ink);font:600 13px/1.3 var(--body);padding:3px 10px;position:absolute;top:calc(100% + 8px);left:50%;translate:-50%}.hob-phone .hob-label,.hob-laptop .hob-label{top:auto;bottom:calc(100% + 8px)}.hob:focus-visible{outline:3px solid var(--berry);outline-offset:4px}@media (hover:hover) and (pointer:fine){.hob:hover{translate:0 -10px;rotate:0deg}}.hob:focus-visible{translate:0 -10px;rotate:0deg}.hob-label{transition:scale .4s var(--ease-elastic),font-weight .2s ease-out}@media (hover:hover) and (pointer:fine){.hob:hover .hob-label{font-weight:800;scale:1.08}}.hob:focus-visible .hob-label{font-weight:800;scale:1.08}@keyframes hob-fall{0%{opacity:0;animation-timing-function:cubic-bezier(.4,0,.85,.55);transform:perspective(600px)translateY(-70vh)rotateY(540deg)rotate(-25deg)}6%{opacity:1}56%{animation-timing-function:cubic-bezier(.2,.8,.4,1);transform:perspective(600px)translateY(0)rotateY(0)rotate(0)scale(1.14,.84)}71%{animation-timing-function:cubic-bezier(.6,0,.4,1);transform:perspective(600px)translateY(-14%)rotate(4deg)scale(.95,1.07)}85%{transform:perspective(600px)translateY(2%)rotate(-1deg)scale(1.03,.98)}to{opacity:1;transform:none}}@keyframes hob-label-in{0%{opacity:0}}@keyframes hob-bob{0%{translate:0;rotate:-2deg}to{translate:0 -7px;rotate:2deg}}html.js:not(.is-loaded):not([data-motion=reduced]) :is(.hob-art,.hob-label){opacity:0}.hob-art{transform-origin:50% 100%}html.js.is-loaded:not([data-motion=reduced]) .hob-art{animation:hob-fall 1.3s linear calc(.8s + var(--k) * .12s) backwards, hob-bob calc(5.2s + var(--k) * .7s) ease-in-out calc(2.1s + var(--k) * .37s) infinite alternate}html.js.is-loaded:not([data-motion=reduced]) .hob-label{animation:hob-label-in .3s ease-out calc(1.55s + var(--k) * .12s) backwards}html[data-motion=reduced] :is(.hob,.hob-label){transition:none}.hero{--elastic:cubic-bezier(.34,1.56,.64,1);min-height:calc(100svh - 27px);padding:calc(var(--header-h) + 12px) var(--gutter) 60px;z-index:2;isolation:isolate;color:var(--ink);flex-direction:column;justify-content:flex-start;display:flex;position:relative;overflow-x:clip}@supports (transition-timing-function:linear(0,1)){.hero{--elastic:linear(0,.5737 7.6%,.8382 11.87%,.9463 14.19%,1.0292 16.54%,1.0886 18.97%,1.1258 21.53%,1.137 22.97%,1.1424 24.48%,1.1423 26.1%,1.1366 27.86%,1.1165 31.01%,1.0507 38.62%,1.0219 42.57%,.9995 46.99%,.9872 51.63%,.9842 58.77%,1.0011 81.26%,1)}}.hero[data-gradient]{background:var(--paper)}.hero .hero-band{z-index:1;--on:var(--ink);--on-2:var(--ink-2);--kw:var(--berry);width:100%;max-width:1440px;margin:auto;position:relative}@media (min-width:760px){.hero .hero-band{padding-top:32px}}.hero .hero-sky{z-index:0;position:absolute;inset:0}.hero .hero-stage{z-index:1;gap:clamp(12px,1.8vw,22px);display:grid;position:relative;container:hero/inline-size}.hero .hero-stage>*{--fs:var(--fs-js,calc(100cqi / 5.6))}.hero .hero-name.fit{font-size:var(--fs)}.hero .hero-tag{z-index:4;border:1px solid var(--ink);border-radius:var(--r-pill);background:var(--card);min-width:0;min-height:44px;font:600 15px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;font-variant-ligatures:none;justify-self:stretch;align-items:center;padding:0 16px;display:flex;position:relative}.hero .hero-tag .chipm{flex:auto}@media (min-width:720px){.hero .hero-tag{display:none}}.hero .hero-card{--card-m:clamp(12px,1.8vw,26px);gap:inherit;padding:clamp(10px,1.4vw,18px) var(--card-m) clamp(14px,1.8vw,26px);display:grid;position:relative}.hero .hero-namewrap{--pt:calc(var(--fs) * .55);z-index:1;padding-top:var(--pt);position:relative}@container hero (width<=759px){.hero .hero-namewrap{--pt:max(84px, calc(var(--fs) * .55));padding-bottom:max(90px, calc(var(--fs) * .8))}}.hero .hero-name{z-index:1;color:var(--ink);white-space:nowrap;position:relative}.hero .hero-nl{white-space:nowrap;display:inline}.hero .hero-nl-kw{color:var(--kw)}.hero .hero-c{vertical-align:top;display:inline-block;overflow:visible clip}.hero .hero-roll{transition:transform .75s var(--elastic) calc(var(--j) * 50ms);display:block;position:relative}.hero .hero-fa{display:block}.hero .hero-fb{color:var(--kw);position:absolute;top:100%;left:0}.hero .hero-nl-kw .hero-fb{color:var(--ink)}.hero .hero-name[data-roll] .hero-roll{transform:translateY(-100%)}html[data-motion=reduced] .hero .hero-name .hero-roll{transition:none;transform:none}.hero .hero-liu{vertical-align:top;display:inline-block;overflow:visible clip}.hero .hero-liu-track{white-space:nowrap;transition:transform .6s var(--elastic);display:block;position:relative}.hero .hero-zh{text-align:center;color:var(--berry);letter-spacing:0;font:900 .9em/.934 Noto Sans SC,PingFang SC,Microsoft YaHei,Hiragino Sans GB,sans-serif;position:absolute;top:100%;left:0;right:0}.hero .hero-name[data-zh] .hero-liu-track{transform:translateY(-100%)}html[data-motion=reduced] .hero .hero-liu-track{transition:none}.hero .hero-nl:not(.hero-nl-kw){margin-right:.34em}.hero .hero-foot{z-index:3;pointer-events:none;place-items:end center;gap:16px;display:grid;position:relative}.hero .hero-foot>*{pointer-events:auto}@container hero (width>=760px){.hero .hero-foot{min-height:calc(var(--fs) * .5)}}.hero .hero-about{justify-items:center;gap:14px;display:grid}.hero .hero-down{min-height:var(--hit);color:var(--ink);font:800 clamp(26px,calc(var(--fs) * .38),60px)/1.05 var(--hp-face,var(--body));letter-spacing:0;text-transform:uppercase;justify-items:center;gap:2px;padding:6px 16px;text-decoration:none;display:grid}.hero .hero-down-arrow{animation:1.8s ease-in-out infinite hero-bob}.hero .hero-down:is(:hover,:focus-visible) .hero-down-text{color:var(--berry)}@keyframes hero-bob{0%,to{transform:translateY(0)}50%{transform:translateY(7px)}}html[data-motion=reduced] .hero .hero-down-arrow{animation:none}.hero .hero-portrait{width:min(100%,220px);rotate:-3deg}.hero .hero-strip{--hazard:repeating-linear-gradient(-45deg,#12142b59 0 5px,transparent 5px 10px);z-index:2;background:var(--hazard) top / 100% 5px no-repeat, var(--hazard) bottom / 100% 5px no-repeat, var(--card);min-width:0;min-height:62px;color:var(--ink);border-block:1px solid var(--ink);align-items:center;padding-block:5px;display:flex;position:absolute;top:100%;left:0;right:0;overflow:clip;transform:translateY(-50%)}.hero .hero-mq{flex:auto;min-width:0;overflow-x:clip}.hero .hero-mq-item{white-space:nowrap;font:700 14px/50px var(--mono);letter-spacing:.06em;text-transform:uppercase;font-variant-ligatures:none;align-items:center;gap:22px;padding-right:22px;display:inline-flex}.hero .hero-mq-dot{width:9px;height:9px;fill:var(--berry)}.hero .hero-mq-box{border:1.5px solid var(--ink);background:var(--hazard) left / 8px 100% no-repeat, var(--card);border-radius:4px;padding:0 10px 0 18px;line-height:30px}.hero .hero-mq-code{text-transform:none;letter-spacing:0}html[data-motion=reduced] .hero .hero-mq .mq{overflow:visible}html[data-motion=reduced] .hero .hero-mq .mq-track{padding:8px calc(var(--gutter) + 48px);flex-wrap:wrap;flex-shrink:1;justify-content:center}html[data-motion=reduced] .hero .hero-mq .mq-item{flex-shrink:1}html[data-motion=reduced] .hero .hero-mq-item{line-height:36px}.hero .hero-c{transition:opacity .3s linear calc(.1s + var(--i) * 30ms),transform .65s var(--elastic) calc(.1s + var(--i) * 30ms)}.hero .hero-rise{transition:opacity .5s linear calc(.5s + var(--d) * .1s),translate 1s var(--elastic) calc(.5s + var(--d) * .1s)}html.js:not(.is-loaded):not([data-motion=reduced]) .hero .hero-c{opacity:0;transform:translate(-.25em)}html.js:not(.is-loaded):not([data-motion=reduced]) .hero .hero-rise{opacity:0;translate:0 3em}html[data-motion=reduced] .hero :is(.hero-c,.hero-rise){transition:none}.hp{--hp-face:var(--font-baloo),var(--body);--hp-deep:var(--berry-deep);--hp-light:color-mix(in oklab,var(--berry) 80%,var(--berry-soft));--hp-scrim:color-mix(in srgb,var(--card) 84%,transparent)}.hp .hp-scrim{z-index:0;pointer-events:none;background:radial-gradient(ellipse 72% 58% at 50% 54%,var(--hp-scrim) 0 52%,transparent 100%);position:absolute;inset:0}.hp .hp-tag{z-index:5;top:calc(var(--header-h) + 8px);left:var(--gutter);max-width:calc(100% - 2 * var(--gutter));border:1px solid var(--ink);border-radius:var(--r-pill);background:var(--card);color:var(--ink);font:600 13px/1.3 var(--mono);letter-spacing:.02em;margin:0;padding:6px 12px;position:absolute}.hp .hp-stage{z-index:1;gap:clamp(10px,1.4vw,18px);display:grid;position:relative;container:hero/inline-size}.hp .hp-stage,.hp .hero-card,.hp .hero-foot{grid-template-columns:minmax(0,1fr)}.hp .hp-stage>*{--fs:min(var(--fs-js,calc((100cqi - 2 * var(--card-m)) / 6.79)), 21svh)}@container hero (width<=759px){.hp .hp-stage>*{--fs:var(--fs-js,calc(100vw * .92 * .98 / 5.72))}}.hp .hp-hi{margin:0 0 calc(var(--fs) * -.2) calc(var(--hp-name-left,8%) + var(--fs) * .06);z-index:3;font:600 clamp(20px,calc(var(--fs) * .24),46px)/1.1 var(--hp-face);color:var(--ink);justify-self:start;position:relative}.hp .hp-name{font:800 var(--fs)/1 var(--hp-face);letter-spacing:-.01em;color:var(--hp-deep);flex-wrap:nowrap;justify-content:center;align-items:flex-start;display:flex}.hp .hp-name .hero-nl{margin:0;display:inline-block;position:relative}.hp.hero .hp-d :is(.hero-fa,.hero-fb){color:var(--hp-deep)}.hp.hero .hp-l :is(.hero-fa,.hero-fb){color:var(--hp-light)}.hp.hero .hero-zh{color:var(--hp-deep)}.hp .hp-name{position:relative}.hp .hp-gap{flex:none;width:.34em;height:1em;position:static}.hp .hp-photo{z-index:0;aspect-ratio:421/465;pointer-events:none;height:2.4em;display:block;position:absolute;bottom:0;left:50%;translate:-50%}.hp .hp-back,.hp .hp-front{z-index:3}.hp .hp-name :is(.hero-fa,.hero-fb,.hp-comma){-webkit-text-stroke:.07em var(--card);paint-order:stroke fill}.hp .hp-comma{color:var(--hp-deep);position:absolute;top:0;left:100%}.hp .hp-cut{filter:grayscale()contrast(1.06);width:100%;max-width:none;height:100%;display:block;-webkit-mask-image:linear-gradient(#000 44%,#0000004d 54%,#00000014 61%,#0000 78%);mask-image:linear-gradient(#000 44%,#0000004d 54%,#00000014 61%,#0000 78%)}.hp .hp-foot .hp-degree{justify-self:center;width:fit-content;max-width:100%;display:flex}.hp .hp-foot{gap:clamp(10px,1.2vw,18px)}@media (min-width:760px){.hp .hero-band{--hp-top:calc(var(--header-h) + 76px);padding-top:var(--hp-top);margin:0 auto}}.hp .hp-degree .umd-badge{z-index:5;box-sizing:content-box;pointer-events:none;width:52px;height:52px;animation:umd-flip .9s var(--ease-spring) 1.3s both;background:#fff;border:3px solid #fff;border-radius:50%;position:absolute;top:-30px;right:-30px;rotate:14deg;box-shadow:0 0 0 1px #0006,0 3px 6px #0000004d}@keyframes umd-flip{0%{opacity:0;transform:perspective(500px)rotateY(-180deg)scale(.5)}40%{opacity:1}to{opacity:1;transform:none}}html[data-motion=reduced] .hp .hp-degree .umd-badge{animation:none}@container hero (width<=759px){.hp .hp-photo{height:4em;top:-2.37em;bottom:auto}.hp .hp-hi{text-align:center;justify-self:center;margin:0}}.hp .hp-icons{z-index:2;pointer-events:none;display:block;position:absolute;inset:0}.hp .hob{min-width:var(--hit);min-height:var(--hit)}.hp[data-icons=a] .hob{left:calc(50% + var(--fs) * var(--ax));top:calc(var(--pt) + var(--fs) * var(--ay))}.hp[data-icons=a] .hob-phone{--h:calc(var(--fs) * .62);--ax:-.8;--ay:-.9;--r:-12deg}.hp[data-icons=a] .hob-laptop{--h:calc(var(--fs) * .48);--ax:.64;--ay:-.96;--r:8deg}.hp[data-icons=a] .hob-pencil{--h:calc(var(--fs) * .52);--ax:-.84;--ay:-.3;--r:-24deg}.hp[data-icons=a] .hob-card{--h:calc(var(--fs) * .4);--ax:.86;--ay:-.4;--r:10deg}.hp[data-icons=a] .hob-pencil .hob-label{translate:0 -50%;rotate:calc(var(--r) * -1);top:50%;left:auto;right:calc(100% + 10px)}.hp[data-icons=a] .hob-card .hob-label{translate:0 -50%;rotate:calc(var(--r) * -1);top:50%;left:calc(100% + 10px)}@container hero (width<=759px){.hp[data-icons=a] .hob{--h:max(48px, calc(var(--fs) * .8))}.hp[data-icons=a] .hob-phone{--h:max(48px, calc(var(--fs) * .9));--ax:-1.55;--ay:-1.8}.hp[data-icons=a] .hob-laptop{--h:max(36px, calc(var(--fs) * .6));--ax:1.3;--ay:-1.6}.hp[data-icons=a] .hob-pencil{--ax:-2.3;--ay:-.8}.hp[data-icons=a] .hob-card{--h:max(40px, calc(var(--fs) * .7));--ax:2.25;--ay:-.45}.hp[data-icons=a] :is(.hob-pencil,.hob-card) .hob-label{translate:none;rotate:calc(var(--r) * -1);top:calc(100% + 8px)}.hp[data-icons=a] .hob-pencil .hob-label{left:0;right:auto}.hp[data-icons=a] .hob-card .hob-label{left:auto;right:0}}@container hero (width>=760px){.hp[data-icons=d] .hob-phone{--x:3%}.hp[data-icons=d] .hob-pencil{--x:5%}.hp[data-icons=d] .hob-laptop{--x:95%}.hp[data-icons=d] .hob-card{--x:96%}}@container hero (width<=759px){.hp[data-icons=d] :is(.hob-pencil,.hob-card){--low:1.85}.hp[data-icons=d] :is(.hob-phone,.hob-laptop){top:calc(var(--pt) + var(--fs) * .1 - var(--h) / 2)}.hp[data-icons=a] .hero-namewrap{--pt:calc(var(--fs) * 2.42);padding-bottom:12px}}html[data-motion=reduced] .hp .hero-strip{margin:24px calc(var(--gutter) * -1) -60px;flex:none;position:relative;top:auto;transform:none}
