@font-face{font-family:Poppins;src:url(/fonts/poppins-400-latin.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-800-latin.woff2) format("woff2");font-weight:800;font-display:swap}@font-face{font-family:Space Mono;src:url(/fonts/spacemono-400-latin.woff2) format("woff2");font-weight:400;font-display:swap}:root{font-family:Poppins,Microsoft YaHei,PingFang SC,sans-serif;color:#26332b;background:#f6f6f0;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg:#f6f6f0;--ink:#26332b;--muted:#657167;--line:#d9ded4;--accent:#63764c;--surface:#eaede3;--paper:#fffef9;--lime:#d9eb89;--map-land:#c1ccb6;--map-ocean:#f1f3e9;--map-border:#f6f6f0}:root[data-theme=dark]{color-scheme:dark;--bg:#171d1a;--ink:#e8eade;--muted:#a3afa3;--line:#374139;--accent:#c5dc96;--surface:#242e26;--paper:#202923;--lime:#d9eb89;--map-land:#53674f;--map-ocean:#202923;--map-border:#29392e;background:var(--bg);color:var(--ink)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button{border:0;background:none}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}button:disabled{cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible,svg:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button:hover,a:hover{color:var(--accent)}img{display:block;max-width:100%}p{line-height:1.9;margin:0 0 1.2em;white-space:pre-line}h1,h2,h3,h4{margin:0;line-height:1.3}h2{font-size:clamp(32px,4vw,52px);font-weight:800;letter-spacing:-.045em}h3{font-size:21px}::selection{background:var(--lime);color:#26332b}.mono{font-family:Space Mono,monospace;font-size:11px;letter-spacing:.03em}.accent{color:var(--accent)}.status-dot{width:6px;height:6px;background:var(--accent);border-radius:50%;display:inline-block;vertical-align:middle;margin-right:8px}.skip-link{position:fixed;top:8px;left:8px;padding:12px 18px;background:var(--ink);color:var(--bg);z-index:100;transform:translateY(-150%)}.skip-link:focus{transform:none}.icon-button{width:42px;height:42px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:20px;flex-shrink:0}.icon-button:hover{background:var(--surface)}.text-link{font-size:13px;padding:8px 0;border-bottom:1px solid currentColor}.site-header{max-width:1600px;margin:auto;height:88px;display:flex;align-items:center;gap:24px;padding:0 5%;border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;align-items:center;font-weight:800;font-size:23px;letter-spacing:-1px;gap:9px}.brand img{border-radius:50%;object-fit:cover}.brand-dot{color:var(--accent);margin-left:-9px}.header-location{margin-right:auto;white-space:nowrap;color:var(--muted);font-size:9px;display:flex;align-items:center;gap:5px}.header-location .status-dot{margin:0 4px 0 0}.header-location time{margin-left:6px}.navigation{display:flex;gap:22px;font-size:12px;white-space:nowrap}.header-controls{display:flex;align-items:center;gap:8px}.language-button{font-family:Space Mono,monospace;font-size:11px;width:36px;min-height:44px}.header-controls .icon-button{width:34px;height:34px;font-size:20px;border:0}.menu-button{display:none!important}.hero{max-width:1440px;padding:42px 5% 0;margin:auto}.hero-topline{display:flex;justify-content:space-between;font-size:10px}.hero h1{font-size:clamp(120px,23.3vw,330px);font-weight:800;letter-spacing:-.09em;line-height:1.12;margin:0 0 25px -.05em;position:relative}.hero h1>span{font-size:clamp(22px,3.5vw,50px);letter-spacing:0;position:absolute;top:18%;margin-left:.3em;font-weight:400}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;padding-bottom:30px}.small-label{display:block;font-size:12px;margin-bottom:22px}.hero-manifesto h2{font-size:clamp(32px,3.2vw,46px);letter-spacing:-.04em;line-height:1.45}.hero-manifesto h2 span{color:var(--accent)}.hero-manifesto p{font-size:13px;color:var(--muted);margin:20px 0 24px}.pill-link{display:inline-flex;align-items:center;gap:28px;border:1px solid var(--ink);border-radius:40px;padding:13px 23px;font-size:12px}.pill-link span{font-size:22px;line-height:1}.pill-link:hover{background:var(--ink);color:var(--bg)}.orbit-art{aspect-ratio:1.5;position:relative;min-width:0;display:grid;place-items:center;background-image:radial-gradient(var(--line) .8px,transparent .8px);background-size:13px 13px}.orbit-ring{position:absolute;border:1px solid var(--accent);width:78%;height:66%;border-radius:50%;opacity:.5}.ring-one{transform:rotate(-28deg)}.ring-two{transform:rotate(28deg);height:80%;width:48%}.ring-three{transform:rotate(60deg);height:77%;width:53%}.orbit-center{font-weight:800;font-size:110px;line-height:1;letter-spacing:-.07em;position:relative;top:-8px}.orbit-center span{color:var(--accent)}.orbit-point{position:absolute;width:13px;height:13px;background:var(--ink);border:4px solid var(--bg);box-shadow:0 0 0 1px var(--accent);border-radius:50%}.point-one{top:22%;left:65%}.point-two{bottom:25%;left:26%;background:var(--accent)}.orbit-label{position:absolute;bottom:-4px;left:0;font-size:8px;color:var(--muted)}.orbit-coordinate{position:absolute;top:0;right:0;font-size:8px;color:var(--muted)}.hero-foot{display:flex;justify-content:space-between;padding:25px 0;margin-top:36px;border-top:1px solid var(--line);font-size:9px;color:var(--muted)}.section{max-width:1440px;margin:auto;padding:76px 5% 85px;border-top:1px solid var(--line)}.section-label{display:flex;justify-content:space-between;margin-bottom:50px;color:var(--muted);font-size:10px}.section-label>span:last-child{font-size:20px}.section-grid{display:grid;grid-template-columns:1fr 1.65fr;gap:9%}.aside{font-size:13px;color:var(--muted);margin-top:26px}.about-story .lead{font-size:clamp(18px,1.9vw,25px);line-height:1.8;color:var(--ink);margin-top:-6px}.about-story>p{font-size:14px;color:var(--muted)}.facts{display:flex;justify-content:space-between;gap:18px;margin-top:36px}.facts strong{font-weight:400;font-size:clamp(29px,3.2vw,43px);letter-spacing:-.07em;display:block}.facts strong small{font-size:18px}.facts span{font-size:11px;color:var(--muted)}.education{display:flex;align-items:center;gap:32px;border-top:1px solid var(--line);margin-top:64px;padding-top:28px}.education-arrow{font-size:36px}.education h3{font-size:16px}.education p{font-size:12px;color:var(--muted);margin:8px 0 0}.education>div:last-child{margin-left:auto;text-align:right}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:40px}.section-heading>p{margin:0;color:var(--muted);font-size:13px}.experience-list{border-top:1px solid var(--line)}.experience-item{border-bottom:1px solid var(--line)}.experience-item summary{display:grid;grid-template-columns:40px 1fr auto 32px;align-items:center;gap:20px;cursor:pointer;padding:28px 0;list-style:none}.experience-item summary::-webkit-details-marker{display:none}.exp-number,.exp-date{color:var(--muted)}.exp-company strong{font-size:19px;display:block}.exp-company small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:8px}.exp-toggle{font-size:24px;text-align:right;font-weight:400}.exp-toggle:before{content:"+"}.experience-item[open] .exp-toggle:before{content:"−"}.experience-detail{display:grid;grid-template-columns:1fr 1.65fr;gap:9%;padding:0 0 32px 60px}.experience-detail p{font-size:13px;color:var(--muted)}.experience-motif{align-self:center;overflow-wrap:anywhere;font-size:clamp(18px,2.3vw,32px);letter-spacing:-.05em;color:var(--accent)}.experience-motif span{display:block;letter-spacing:0;font-size:8px;margin-top:12px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags>span{border:1px solid var(--line);border-radius:4px;padding:6px 10px;font-size:10px;color:var(--muted)}.toolkit{display:flex;justify-content:space-between;gap:24px;align-items:center;background:var(--surface);margin-top:40px;padding:28px 32px}.toolkit .mono{font-size:9px;color:var(--muted)}.toolkit h3{font-size:15px;margin-top:8px}.toolkit .tags{max-width:55%;justify-content:flex-end}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.project-art{aspect-ratio:1.55;position:relative;display:grid;place-items:center;overflow:hidden;background:var(--surface);color:#344334;transition:background .2s}.project:hover .project-art{background:#e0e8cc}.project-compass .project-art{background:#e9ebdc}.project-website .project-art{background:#dce5d8}.project-arrow{position:absolute;right:20px;top:16px;font-size:28px}.project-art-caption{position:absolute;left:22px;bottom:20px;font-size:8px}.compass{width:48%;aspect-ratio:1;position:relative;border:1px solid #a3ae97;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:10px;font-family:Space Mono,monospace;font-size:10px}.compass:before,.compass:after{content:"";position:absolute;background:#a3ae97;inset:50% -15% auto;height:1px}.compass:after{transform:rotate(90deg)}.compass i{position:absolute;inset:10%;border:1px dashed #a3ae97;border-radius:50%}.compass b{position:absolute;inset:0;display:grid;place-items:center;font-size:100px;font-weight:400;z-index:1;transform:rotate(-18deg);transition:transform .4s}.project:hover .compass b{transform:rotate(0)}.project-word{font-size:clamp(35px,5.5vw,80px);font-weight:800;letter-spacing:-.07em}.project-word span{color:#7d925f}.project-word small{display:block;text-align:center;font-family:Space Mono,monospace;font-size:8px;letter-spacing:.25em;font-weight:400;margin-top:4px}.project-heading{display:flex;justify-content:space-between;align-items:center;margin-top:24px}.project-heading .mono{font-size:9px;color:var(--muted)}.project-heading h3{font-size:22px;margin-top:9px}.project>p{font-size:13px;color:var(--muted);margin-top:14px;max-width:94%}.current-project{font-size:10px;color:var(--accent)}.world-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:center}.globe-wrap{min-width:0}.globe-label{display:block;text-align:center;font-size:8px;color:var(--muted)}.globe{width:100%;height:auto;display:block;touch-action:pan-y;cursor:grab}.globe:active{cursor:grabbing}.globe-ocean{fill:var(--map-ocean);stroke:var(--line);stroke-width:1}.globe-grid{stroke:var(--line);stroke-width:.6;fill:none}.globe-land{fill:var(--map-land);stroke:none}.globe-border{stroke:var(--map-border);stroke-width:.7;fill:none}.globe-dot circle{fill:#b75942;stroke:var(--paper);stroke-width:2}.globe-dot .globe-halo{fill:none;stroke:#b75942;stroke-width:1;opacity:.4}.globe-dot text{font:10px Space Mono,monospace;fill:var(--ink);paint-order:stroke;stroke:var(--bg);stroke-width:3px;stroke-linejoin:round}.globe-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:-10px}.globe-controls .mono{font-size:9px;color:var(--muted)}.globe-controls .icon-button{width:32px;height:32px;font-size:15px}.travel-intro{font-size:21px;line-height:1.7;margin-bottom:26px}.place-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.place-buttons button{font-size:11px;border:1px solid var(--line);border-radius:24px;padding:9px 13px;min-height:38px}.place-buttons button[aria-pressed=true]{color:var(--bg);background:var(--ink);border-color:var(--ink)}.travel-note{padding:26px;background:var(--paper);border:1px solid var(--line);min-height:244px;box-shadow:5px 5px 0 var(--surface)}.travel-note-head{display:flex;justify-content:space-between;color:var(--muted);font-size:9px}.travel-note h3{font-size:32px;display:flex;justify-content:space-between;margin-top:20px}.travel-note h3 span{color:var(--accent)}.travel-note p{font-size:13px;color:var(--muted);margin-top:16px;min-height:50px}.travel-note-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:16px}.travel-note-foot .mono{font-size:8px;color:var(--muted)}.travel-note-foot .icon-button{width:32px;height:32px;font-size:15px;margin-left:5px}.map-note{font-size:10px;color:var(--muted);margin:20px 0 0}.everyday-list article{display:grid;grid-template-columns:22px 1fr 40px;gap:25px;padding:0 0 28px;margin-bottom:28px;border-bottom:1px solid var(--line)}.everyday-list article:last-child{margin-bottom:0}.everyday-list .mono{color:var(--muted);font-size:9px;margin-top:6px}.everyday-list h3{font-size:18px;margin-bottom:10px}.everyday-list p{font-size:13px;color:var(--muted);margin:0}.note-mark{font-size:28px;align-self:center;color:var(--accent)}.contact-section{background:var(--surface);padding-bottom:0}.contact-section h2{font-size:clamp(38px,7vw,100px);letter-spacing:-.055em;display:flex;justify-content:space-between;gap:20px}.contact-section h2>span{font-weight:400}.contact-bottom{display:grid;grid-template-columns:1fr 1.65fr;gap:9%;margin-top:55px}.contact-bottom>p{font-size:13px;color:var(--muted)}.email-link{font-size:clamp(16px,2.5vw,30px);border-bottom:1px solid var(--ink);padding-bottom:8px;overflow-wrap:anywhere;display:inline-block}.contact-links{display:flex;align-items:center;gap:30px;margin-top:25px;font-size:12px}.contact-links .text-link{border:0;font-size:12px}.wechat{font-size:10px;color:var(--muted);margin-top:12px}.copy-notice{min-height:24px;color:var(--accent);font-size:12px;margin:0}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:35px;padding:28px 0;font-size:10px;color:var(--muted)}footer>a:first-child{font-size:22px;font-weight:800;letter-spacing:-.04em;color:var(--ink)}footer small{font-size:9px;font-weight:400;letter-spacing:0;margin-left:12px}.modal-open{overflow:hidden}.resume-dialog{width:min(850px,calc(100% - 32px));max-height:90dvh;border:1px solid var(--line);padding:0;background:var(--paper);color:var(--ink)}.resume-dialog::backdrop{background:#14231799;backdrop-filter:blur(4px)}.dialog-toolbar{position:sticky;top:0;background:var(--paper);padding:15px 25px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:1}.dialog-toolbar .mono{font-size:9px}.dialog-toolbar>div{display:flex;gap:20px;align-items:center}.dialog-toolbar .text-link{font-size:11px}.resume-content{padding:40px 50px}.resume-content header{border-bottom:2px solid var(--ink);padding-bottom:22px;margin-bottom:24px}.resume-content h2{font-size:32px}.resume-content h2 small{display:inline-block;font-size:16px;margin-left:20px;letter-spacing:0;font-weight:400}.resume-content p{font-size:12px;margin:8px 0;line-height:1.9}.resume-content section{margin:25px 0}.resume-content h3{font-size:17px;margin-bottom:12px}.resume-content h4{font-size:13px;margin:16px 0 5px}.resume-content .mono{font-size:10px;color:var(--muted)}#home{scroll-margin-top:76px}@media(min-width:1600px){.site-header{padding-inline:80px}}@media(max-width:1100px){.header-location{display:none}.brand{margin-right:auto}.section-grid,.experience-detail{gap:6%}.toolkit{padding:24px}.world-layout{gap:3%}.travel-note{padding:20px}.experience-motif{font-size:24px}}@media(max-width:980px){.site-header{height:76px}.menu-button{display:inline-grid!important}.navigation{display:none;position:absolute;top:75px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:16px 5% 24px;box-shadow:0 12px 20px #00000008}.navigation.is-open{display:flex;flex-direction:column;gap:0}.navigation a{padding:13px 0;font-size:15px}.section{padding-top:55px;padding-bottom:60px}.hero-bottom{gap:5%}.hero h1{margin-bottom:32px}.hero-manifesto h2{font-size:32px}.section-label{margin-bottom:35px}.exp-company strong{font-size:16px}.exp-date{font-size:9px}.experience-item summary{gap:12px;grid-template-columns:30px 1fr auto 24px}.experience-detail{padding-left:42px}.toolkit{flex-direction:column;align-items:flex-start}.toolkit .tags{max-width:100%;justify-content:flex-start}.world-layout{grid-template-columns:1fr 1fr;gap:4%}.travel-intro{font-size:18px}.travel-note h3{font-size:27px}.travel-note p{font-size:12px}.world-section .section-heading>.mono{font-size:8px}.contact-links{gap:20px}.contact-section{padding-bottom:0}.orbit-center{font-size:85px}}@media(max-width:640px){html{scroll-padding-top:24px}.site-header{height:70px;padding-inline:6%;gap:12px}.brand{font-size:21px}.brand img{width:30px;height:30px}.header-controls{gap:3px}.navigation{top:69px;padding-inline:6%}.hero{padding:27px 6% 0}.hero-topline{font-size:8px;gap:10px}.hero-topline>span:last-child{font-size:7px}.hero h1{font-size:25vw;line-height:1.25;margin-top:12px;margin-bottom:20px}.hero h1>span{font-size:5vw;top:18%}.hero-bottom{grid-template-columns:1fr;gap:36px;padding-bottom:10px}.hero-manifesto{position:relative}.small-label{font-size:11px;margin-bottom:17px}.hero-manifesto h2{font-size:32px}.hero-manifesto p{font-size:12px;max-width:90%}.pill-link{padding:11px 20px;font-size:11px}.orbit-art{width:100%;max-width:370px;justify-self:center;aspect-ratio:1.8}.orbit-center{font-size:90px}.orbit-ring{width:65%;height:67%}.ring-two,.ring-three{width:43%;height:80%}.orbit-label,.orbit-coordinate{font-size:7px}.hero-foot{margin-top:25px;padding:19px 0;font-size:8px;gap:16px}.section{padding:42px 6% 48px}.section-label{font-size:8px;margin-bottom:28px}.section-grid{grid-template-columns:1fr;gap:24px}.aside{margin-top:15px;font-size:12px}.about-story .lead{font-size:18px;margin-top:0}.about-story>p{font-size:12px}.facts{margin-top:28px;gap:10px}.facts strong{font-size:33px}.facts strong small{font-size:15px}.facts span{font-size:10px}.education{gap:18px;flex-wrap:wrap;margin-top:35px;padding-top:25px}.education-arrow{font-size:28px}.education h3{font-size:14px}.education p{font-size:11px}.education>div:last-child{margin-left:46px;text-align:left}.education .mono{font-size:10px}.section-heading{gap:20px;align-items:flex-start;flex-wrap:wrap;margin-bottom:27px}.section-heading>p{font-size:12px}.section-heading .text-link{font-size:11px;margin-top:4px}.experience-item summary{grid-template-columns:24px 1fr 24px;gap:10px;padding:23px 0}.exp-company strong{font-size:15px}.exp-company small{font-size:11px}.exp-date{grid-column:2;grid-row:2;font-size:9px}.exp-number{align-self:start;margin-top:3px;font-size:9px}.exp-toggle{grid-column:3;grid-row:1 / span 2}.experience-detail{padding:0 0 25px 34px;grid-template-columns:1fr;gap:18px}.experience-motif{font-size:22px}.experience-motif span{font-size:7px;margin-top:5px}.experience-detail p{font-size:12px}.toolkit{margin-top:28px;padding:22px}.toolkit h3{font-size:14px}.tags>span{font-size:9px}.project-grid{grid-template-columns:1fr;gap:38px}.project-art{aspect-ratio:1.5}.project-word{font-size:58px}.project-heading{margin-top:18px}.project-heading h3{font-size:20px}.project>p{font-size:12px}.project-art-caption{font-size:7px}.world-layout{grid-template-columns:1fr;gap:30px}.world-section .section-heading>.mono{font-size:8px}.globe-wrap{max-width:450px;width:100%;margin:auto}.globe-controls{gap:30px}.travel-intro{font-size:20px}.travel-copy .place-buttons{gap:7px}.place-buttons button{font-size:11px;min-height:40px}.travel-note{padding:23px;min-height:230px}.travel-note p{font-size:13px}.travel-note h3{font-size:30px}.travel-note-foot .mono{font-size:8px}.map-note{font-size:10px}.everyday-list article{gap:15px;grid-template-columns:20px 1fr 28px;padding-bottom:25px;margin-bottom:25px}.everyday-list h3{font-size:16px}.everyday-list p{font-size:12px}.note-mark{font-size:24px}.contact-section{padding-bottom:0}.contact-section h2{font-size:clamp(33px,9vw,50px)}.contact-bottom{grid-template-columns:1fr;gap:20px;margin-top:30px}.contact-bottom>p{font-size:12px;margin-bottom:0}.email-link{font-size:clamp(18px,5vw,27px)}.contact-links{flex-wrap:wrap;gap:10px 25px;margin-top:17px;font-size:11px}.contact-links .text-link{font-size:11px}.wechat{font-size:9px}footer{flex-wrap:wrap;margin-top:25px;gap:16px;padding:23px 0;font-size:9px}footer>a:first-child{font-size:19px}footer>span{order:3;flex-basis:100%}footer>a:last-child{margin-left:auto}.dialog-toolbar{padding:12px 15px;align-items:flex-start}.dialog-toolbar>.mono{max-width:85px;line-height:1.8}.dialog-toolbar>div{gap:12px}.dialog-toolbar .text-link{font-size:10px}.dialog-toolbar .icon-button{width:32px;height:32px}.resume-content{padding:25px}.resume-content h2{font-size:25px}.resume-content h2 small{display:block;margin:8px 0 0;font-size:14px}.resume-content h4{line-height:1.7}.resume-dialog{width:calc(100% - 20px);max-height:94dvh}.resume-content p{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media print{@page{size:A4;margin:15mm}:root,:root[data-theme=dark]{color-scheme:light;--bg:white;--ink:#111;--muted:#444;--line:#ddd;--paper:white}body{background:#fff;color:#111}.site-header,.skip-link,.dialog-toolbar{display:none!important}.modal-open #root>main{display:none!important}.modal-open{overflow:visible}.resume-dialog[open]{position:static;display:block;width:100%;max-width:none;max-height:none;overflow:visible;border:0;margin:0;padding:0}.resume-dialog::backdrop{display:none}.resume-content{padding:0}.resume-content header{margin-bottom:15px;padding-bottom:15px}.resume-content h2{font-size:26px}.resume-content section{margin:16px 0}.resume-content article{break-inside:avoid}.resume-content h3{font-size:15px}.resume-content h4{font-size:12px}.resume-content p{font-size:10px;line-height:1.6}.resume-content h3,.resume-content h4{break-after:avoid}.section{break-inside:avoid;padding:25px 0}.hero{padding:0}.hero h1{font-size:120px}.hero-bottom{grid-template-columns:1fr 1fr}.experience-item{break-inside:avoid}a{color:inherit}}
