@font-face{font-family:HelveticaNowVar;src:url(/assets/HelveticaNowVar-rKrpIvqR.ttf) format("truetype");font-display:swap}@font-face{font-family:FZFJH;src:url(/assets/FZFangJHJW_Zhong-C8zpa1Bt.TTF) format("truetype");font-display:swap}:root{--bg-color: #ffffff;--text-color: #333;--text-primary: #000000;--button-bg-primary: #000000;--button-bg-secondary: #b3b3b3;--button-text: #ffffff;--button-hover: #f2f2f2;--overlay-bg: #ffffff;--floating-logo-bg: #ffffff;--logo-container-bg: transparent}.theme-inverted{--bg-color: #ffffff;--text-color: #333;--text-primary: #000000;--button-bg-primary: #000000;--button-bg-secondary: #b3b3b3;--button-text: #ffffff;--button-hover: #f2f2f2;--overlay-bg: #ffffff;--floating-logo-bg: #ffffff;--logo-container-bg: transparent}*{box-sizing:border-box;margin:0;padding:0}body{font-family:HelveticaNowVar,FZFJH,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}html{font-size:16px;background-color:var(--bg-color)}.app{position:relative;display:flex;justify-content:flex-end;align-items:flex-start;min-height:100vh;background-color:var(--bg-color);opacity:1}.app.is-loading{opacity:0;pointer-events:none}.global-loading{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--bg-color);display:flex;justify-content:center;align-items:center;z-index:9999}.global-loading__spinner{width:3em;height:3em;border:.2em solid var(--text-primary);border-top-color:transparent;border-radius:50%;animation:loading-spin .8s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}.logo-container{position:fixed;top:3em;left:2.5em;padding:.125em .5em .5em .125em;z-index:15}.logo-container.is-scrolled{opacity:1}.logo{width:32vw;margin-top:0;margin-left:0;display:block}.floating-logo{display:none;position:absolute;width:6em;height:6em;background-color:var(--floating-logo-bg);overflow:hidden}.floating-logo:hover{overflow:visible}.floating-logo__image{position:absolute;width:24em;height:auto}.floating-logo--primary{top:28em;left:-8em}.floating-logo--primary .floating-logo__image{top:0;left:-6.25em}.floating-logo--secondary{bottom:2em;right:4em}.floating-logo--secondary .floating-logo__image{top:-2em;left:-12.5em}.intro{position:relative;width:45%;margin:2.5em 2.5em 3.5em;display:flex;flex-direction:column;gap:3em;align-items:flex-start;min-height:100%}.intro-column{flex:1;min-width:0;max-width:100%;color:var(--text-primary);font-weight:460;display:flex;flex-direction:column;overflow-wrap:break-word;word-wrap:break-word}.intro-column--en{font-size:2.4em;line-height:1.45;letter-spacing:.085em;word-break:normal;overflow-wrap:break-word}.intro-column--cn{font-size:2.25em;flex:.85;line-height:1.65;letter-spacing:.15em}.intro-column p{margin-bottom:.5em;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.intro-column--en p{word-break:normal;overflow-wrap:break-word}.intro-column p:last-child{margin-bottom:0}@keyframes typewriter-appear{0%{opacity:0}to{opacity:1}}.typewriter-char{opacity:0;display:inline}.typewriter-char.is-visible{animation:typewriter-appear .01s ease-in forwards}.intro-link .typewriter-char{display:inline}.intro-link{color:inherit;text-decoration:underline;text-decoration-thickness:.08em}.intro-link-wrapper{position:relative;display:inline-flex;align-items:center;vertical-align:baseline}.intro-link-overlay{position:fixed;top:51%;left:45%;transform:translate(-50%,-50%);width:35em;border-radius:0;aspect-ratio:1.4;background-color:var(--overlay-bg);opacity:0;pointer-events:none;overflow:hidden;z-index:10}.intro-link-overlay.is-visible{opacity:1}.intro-link-overlay__image{width:100%;height:100%;object-fit:cover;display:block}.contact-buttons{position:fixed;left:3em;bottom:4em;display:flex;flex-direction:column;gap:1.25em;z-index:20}.contact-button{font-family:inherit;width:fit-content;font-size:2.5em;line-height:1;color:var(--button-text);letter-spacing:.035em;padding:.15em .25em .25em;background-color:var(--button-bg-secondary);border:none;outline:none;text-decoration:none;cursor:pointer}.contact-button--primary{letter-spacing:.075em;background-color:var(--button-bg-primary)}@media (hover: hover){.contact-button:hover,.contact-button--primary:hover{background-color:var(--button-hover)}}.contact-button:focus-visible{outline:.15em solid var(--text-primary);outline-offset:.15em}.contact-button-wrapper{position:relative;display:inline-flex;align-items:center}.contact-qr{position:absolute;left:0;bottom:100%;transform:translateY(-50%) scale(.96);width:13em;aspect-ratio:1/1;background-color:var(--overlay-bg);opacity:0;pointer-events:none;z-index:30}.contact-button-wrapper .contact-button:focus-visible+.contact-qr{opacity:1;transform:translateY(-50%) scale(1);pointer-events:auto}.contact-qr.is-visible{opacity:1;transform:translateY(-50%) scale(1);pointer-events:auto}@media (hover: hover){.contact-button-wrapper .contact-button:hover+.contact-qr{opacity:1;transform:translateY(-50%) scale(1);pointer-events:auto}}.contact-qr__image{width:100%;height:auto;display:block}.intro-column--en .intro-link,.intro-column--cn .intro-link{text-underline-offset:.15em}.intro-link:focus{opacity:.05}@media (hover: hover){.intro-link:hover{opacity:.05}}@media (max-width: 2600px){html{font-size:21px}}@media (max-width: 2200px){html{font-size:18px}}@media (max-width: 1920px){html{font-size:17px}.logo{min-width:450px}.intro{width:45%}}@media (max-width: 1600px){html{font-size:16px}.intro{width:45%;gap:1.75em}}@media (max-width: 1200px){html{font-size:16px}.intro{width:50%;gap:1.75em}}@media (max-width: 768px){html{font-size:16px}.logo{width:80vw;min-width:0px}.app{flex-direction:column;align-items:flex-start}.intro{flex-direction:column;margin:64vw auto;gap:1.5em;width:88%;min-height:auto}.intro-column--en{font-size:1.8em;line-height:1.4;letter-spacing:.075em}.intro-column--cn{font-size:1.75em;flex:.85;line-height:1.65;letter-spacing:.1em}.logo-container{background-color:var(--overlay-bg);width:82vw;left:8vw}.intro-column{width:100%}.contact-buttons{position:fixed;left:1.5em;bottom:2.75em}.contact-button{font-size:1.75em}}@media (max-width: 480px){html{font-size:16px}.logo-container{background-color:var(--overlay-bg)}.intro{gap:1.25em}.intro-column{font-size:1.75em}}
