:root{--paper:#f4f2ec;--ink:#252720;--muted:#65675d;--surface:#eae8e0;--accent:#3f5140;--gutter:clamp(22px,4.2vw,80px);--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Microsoft YaHei",sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:7px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}::selection{background:#d7ddcd;color:#1f3025}[hidden]{display:none!important}#surface{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--ink);color:var(--paper);padding:12px}.skip:focus{top:10px}
.header{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px var(--gutter);background:rgba(244,242,236,.96);transition:padding .25s ease,background .25s ease}.header.scrolled{padding-top:17px;padding-bottom:17px;background:var(--paper)}.wordmark{font-size:18px;letter-spacing:-.6px;font-weight:700;white-space:nowrap}.wordmark-mark{display:inline-block;margin-left:12px;font-size:19px}.header>nav{display:flex;gap:32px;margin-left:auto}.header nav a{position:relative;transition:color .18s ease}.header nav a:hover,.header nav a.active{color:var(--accent);text-decoration:underline;text-underline-offset:6px}.header-actions{display:flex;align-items:center;gap:22px}.header button{border:0;background:none;padding:5px}#language{font-size:14px;display:flex;gap:9px;align-items:center}#language span:not(.active){color:#73766d}.lang-divider{opacity:.5}#language .active{font-weight:700}#menu{display:none}.header #mobile-nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px var(--gutter) 32px;display:grid;gap:20px;font-size:22px}
.hero{position:relative;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:140px var(--gutter);isolation:isolate}.hero-center{width:100%;text-align:center;transform:translateY(-6px)}h1{font-family:"Arial Black",Arial,sans-serif;font-size:clamp(60px,10.8vw,204px);font-weight:900;font-style:italic;line-height:1.02;letter-spacing:-.075em;white-space:nowrap;transform:scaleX(.93);transform-origin:center;padding-right:.07em}.hero-role{font-size:clamp(18px,2vw,30px);font-weight:800;font-style:italic;line-height:1.3;margin-top:26px}.hero-description{font-size:clamp(13px,1.25vw,20px);font-weight:700;font-style:italic;margin:5px auto 0;max-width:700px}.hero-bottom{position:absolute;bottom:34px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:end;font-size:14px}.hero-bottom>p{max-width:220px}.hero-bottom>p:last-child{text-align:right}.scroll-link{display:flex;gap:18px;align-items:center}.scroll-link span:last-child{font-size:26px;transition:transform .25s var(--ease)}.scroll-link:hover span:last-child{transform:translateY(5px)}
.section{position:relative;padding:135px var(--gutter)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:70px}.section-heading h2{font-family:"Arial Black",Arial,sans-serif;font-size:clamp(35px,4.7vw,76px);font-style:italic;font-weight:900;letter-spacing:-.055em;line-height:1.08}.section-heading>p{max-width:330px;line-height:1.55;font-size:16px}.text-link{white-space:nowrap;transition:color .2s ease}.text-link:hover{color:var(--accent);text-decoration:underline;text-underline-offset:5px}.about{background:rgba(244,242,236,.94)}.about-grid{display:grid;grid-template-columns:minmax(240px,.8fr) 1.2fr;gap:clamp(45px,9vw,170px);align-items:start}.portrait-frame{position:sticky;top:120px}.portrait-frame img{width:100%;height:clamp(350px,43vw,650px);object-fit:cover;object-position:center 25%;background:#eeede8}.portrait-frame figcaption{font-size:14px;margin-top:16px;color:var(--muted)}.about-copy .intro{font-size:clamp(24px,2.6vw,36px);line-height:1.3;letter-spacing:-1.2px;margin-bottom:28px}.about-copy>p:not(.intro){max-width:620px;color:var(--muted);font-size:17px;line-height:1.7}.facts{display:flex;gap:70px;margin:43px 0}.facts>div{display:flex;flex-direction:column}.facts strong{font-size:64px;line-height:1.1;font-weight:500;letter-spacing:-4px}.facts .denominator{font-size:24px;letter-spacing:-1px}.facts>div>span{color:var(--muted);font-size:14px;margin-top:8px}.timeline{display:grid;gap:30px}.timeline .date{font-size:14px;color:var(--muted);margin-bottom:7px}.timeline h3{font-size:20px;font-weight:500;margin-bottom:6px}.timeline article>p:not(.date){font-size:15px;line-height:1.55;margin-top:3px}.timeline article>p:last-child{color:var(--muted)}.about-contact{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:35px;font-size:15px}.about-contact a:hover{text-decoration:underline}
.work{background:#efeee7}.projects{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;row-gap:90px;align-items:start}.project{display:block;min-width:0}.project-spine{margin-top:150px}.project-photo{position:relative;overflow:hidden;background:#deddd5}.project-chrono .project-photo{height:clamp(500px,59vw,800px)}.project-spine .project-photo{height:clamp(480px,54vw,720px)}.project-photo img{width:100%;height:100%;object-fit:cover;transition:transform 900ms var(--ease)}.project-chrono .project-photo img{object-position:center 50%}.project-spine .project-photo img{object-position:center 38%}.photo-note{position:absolute;bottom:18px;left:18px;background:var(--paper);padding:5px 9px;font-size:13px;color:var(--ink)}.project-open{position:absolute;top:20px;right:20px;width:48px;height:48px;display:grid;place-items:center;background:var(--paper);border-radius:50%;font-size:25px;transition:transform .3s var(--ease),background .2s ease}.project-copy{padding-top:24px}.project-title-row{display:flex;align-items:start;justify-content:space-between;gap:18px}.project-title-row h3{font-size:clamp(26px,2.5vw,40px);font-weight:700;font-style:italic;letter-spacing:-1.4px;line-height:1.12}.project-title-row>span{white-space:nowrap;padding-top:5px;font-size:14px}.project-type{font-size:15px;margin-top:16px}.project-copy>p:last-child{color:var(--muted);font-size:16px;max-width:510px;margin-top:12px}.project-factory{grid-column:1 / -1;display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:60px}.project-factory .project-photo{aspect-ratio:1.4}.project-factory .project-photo img{object-fit:cover;object-position:40% center}.project-factory .project-copy{padding:0}.project-factory h3{font-size:clamp(28px,3vw,48px)}
.strengths{background:rgba(244,242,236,.95)}.strength-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.strength-card{min-height:280px;padding:38px;background:#e9e8e0;display:flex;flex-direction:column;transition:background .25s ease}.strength-card:nth-child(2),.strength-card:nth-child(3){background:#eeede6}.strength-card h3{font-size:clamp(23px,2.2vw,32px);font-weight:500;letter-spacing:-1px;line-height:1.15}.strength-card>p{font-size:17px;max-width:510px;margin-top:26px;color:#55594e}.strength-card .evidence{font-size:13px;color:var(--ink);margin-top:auto;padding-top:32px}.strength-card:hover{background:#e0e2d7}
.contact{min-height:100svh;position:relative;padding:75px var(--gutter) 28px;display:flex;flex-direction:column;justify-content:space-between;gap:55px}.contact-top{display:flex;justify-content:space-between;gap:30px}.contact-center{padding:30px 0;text-align:center}.contact h2{font-family:"Arial Black",Arial,sans-serif;font-size:clamp(52px,8.4vw,140px);font-weight:900;font-style:italic;line-height:.98;letter-spacing:-.065em;margin-bottom:34px;white-space:pre-line}.email{font-size:clamp(24px,3vw,48px);letter-spacing:-1.5px;display:inline-block;transition:color .2s ease}.email span{display:inline-block;margin-left:5px;transition:transform .25s var(--ease)}.email:hover{color:var(--accent)}.email:hover span{transform:translate(4px,-4px)}#copy-email{display:block;margin:15px auto 0;padding:5px 0;background:none;border:0;font-size:14px;color:var(--muted)}#copy-email:hover{color:var(--ink);text-decoration:underline}#copy-status{font-size:14px;display:block;min-height:22px}footer{display:flex;justify-content:space-between;align-items:end;gap:30px;font-size:14px}footer p{margin-top:6px}footer>p{white-space:nowrap}.back-top:hover{text-decoration:underline;text-underline-offset:5px}#pdf-cursor{position:fixed;left:0;top:0;width:85px;height:85px;border-radius:50%;background:var(--paper);color:var(--ink);display:grid;place-items:center;font-size:14px;pointer-events:none;z-index:30;opacity:0;transform:translate(-50%,-50%) scale(.6);transition:opacity .18s ease,transform .2s var(--ease)}#pdf-cursor.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
@media(hover:hover) and (pointer:fine){.project:hover .project-photo img{transform:scale(1.035)}.project:hover .project-open{transform:rotate(45deg);background:#dce0d2}}
@media(prefers-reduced-motion:no-preference){.hero-center{animation:hero-enter 1.2s var(--ease) both}.hero-bottom{animation:hero-enter 1s .25s var(--ease) both}@keyframes hero-enter{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}.reveal.is-in{animation:section-enter .85s var(--ease) both}@keyframes section-enter{from{opacity:.45;translate:0 24px}to{opacity:1;translate:0 0}}}
html[lang=zh] h1{letter-spacing:-.075em}html[lang=zh] h2{letter-spacing:-.04em}html[lang=zh] .hero-role{font-style:normal}html[lang=zh] .contact h2{line-height:1.2}html[lang=zh] .strength-card h3{letter-spacing:0}
@media(min-width:1800px){.section{padding-left:max(var(--gutter),calc((100vw - 1640px)/2));padding-right:max(var(--gutter),calc((100vw - 1640px)/2))}}
@media(max-width:1000px){.header>nav{gap:21px}.section{padding-top:100px;padding-bottom:100px}.section-heading{margin-bottom:50px}.about-grid{gap:45px;grid-template-columns:.8fr 1.2fr}.portrait-frame img{height:440px}.facts{gap:45px}.project-spine{margin-top:110px}.projects{gap:60px 24px}.project-factory{gap:32px;grid-template-columns:1.2fr 1fr}.strength-card{padding:28px}.strength-card h3{font-size:25px}.contact{padding-top:90px}}
@media(max-width:700px){html{scroll-padding-top:85px}.header{padding-top:18px;padding-bottom:18px;gap:15px}.header>nav{display:none}#menu{display:block;font-size:14px}.header-actions{gap:18px}.wordmark{font-size:16px}.wordmark-mark{margin-left:6px}.hero{padding:120px 14px;min-height:100svh}h1{font-size:11.8vw;letter-spacing:-.08em;transform:scaleX(.94)}.hero-role{margin-top:22px;font-size:19px}.hero-description{font-size:12px;max-width:310px;line-height:1.5;padding:0 4px}.hero-bottom{bottom:27px;gap:25px;flex-wrap:wrap;align-items:center;font-size:12px}.hero-bottom>p:first-child{max-width:160px}.hero-bottom>p:last-child{display:none}.scroll-link{gap:10px;font-size:12px}.section{padding-top:85px;padding-bottom:85px}.section-heading{display:block;margin-bottom:40px}.section-heading h2{font-size:38px;max-width:100%}.section-heading>p{margin-top:20px;font-size:15px;max-width:100%}.section-heading>.text-link{display:inline-block;margin-top:22px}.about-grid{grid-template-columns:1fr;gap:34px}.portrait-frame{position:static;width:75%;max-width:350px}.portrait-frame img{height:auto;aspect-ratio:4/5;object-fit:cover}.portrait-frame figcaption{font-size:13px}.about-copy .intro{font-size:27px;letter-spacing:-.7px}.about-copy>p:not(.intro){font-size:16px}.facts{margin:34px 0;gap:60px}.facts strong{font-size:55px}.timeline h3{font-size:20px}.about-contact{font-size:14px}.projects{grid-template-columns:1fr;gap:55px}.project-spine{margin-top:0}.project-chrono .project-photo,.project-spine .project-photo{height:auto;aspect-ratio:3/4}.project-chrono .project-photo img,.project-spine .project-photo img{position:absolute;inset:0}.project-factory{display:block;grid-column:auto}.project-factory .project-photo{aspect-ratio:1.1}.project-factory .project-copy{padding-top:24px}.project-title-row h3,.project-factory h3{font-size:30px}.project-copy>p:last-child{font-size:15px}.project-title-row>span{font-size:13px}.photo-note{font-size:12px;left:12px;bottom:12px}.strength-grid{grid-template-columns:1fr;gap:14px}.strength-card{min-height:250px;padding:30px}.strength-card h3{font-size:25px}.strength-card>p{font-size:16px}.strength-card .evidence{font-size:12px}.contact{padding-top:80px;gap:45px;min-height:100svh}.contact-top{font-size:14px;align-items:start;gap:20px}.contact-top>p{max-width:180px}.contact h2{font-size:14vw;margin-bottom:28px}.email{font-size:6.4vw;letter-spacing:-.7px}.contact-center{padding:40px 0}footer{font-size:12px;flex-wrap:wrap;gap:25px}footer>div{width:100%}footer p{margin-top:5px}.back-top{margin-right:auto}#pdf-cursor{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}#pdf-cursor{display:none}}
