@font-face{font-family:'EB Garamond';font-style:normal;font-weight:400 800;font-display:swap;src:url('/works/self-portrait/assets/eb-garamond-latin-normal.woff2') format('woff2')}
@font-face{font-family:'EB Garamond';font-style:italic;font-weight:400 800;font-display:swap;src:url('/works/self-portrait/assets/eb-garamond-latin-italic.woff2') format('woff2')}
:root{color-scheme:dark;--paper:#0b171c;--ink:#e4e5df;--muted:#a9bdc5;--line:#30464e;--accent:#9dbdc9;--body-copy:#c2ced0;--quiet-line:#263b43;--serif:'EB Garamond','Iowan Old Style',Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;--zh:'Songti SC','Noto Serif CJK SC','Source Han Serif SC',serif;--gutter:clamp(24px,5.1vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:38px}body{margin:0;background:var(--paper);color:var(--ink);font:20px/1.5 var(--serif);-webkit-font-smoothing:antialiased}::selection{background:#294653;color:var(--ink)}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{font:inherit;color:inherit}p,h1,h2,h3,h4{margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;left:20px;top:12px;z-index:100;background:var(--ink);color:var(--paper);padding:10px 20px;transform:translateY(-160%)}.skip-link:focus{transform:none}
html .site-header{position:relative;z-index:20;max-width:1600px;margin:auto;min-height:100px;padding:23px var(--gutter);column-gap:24px;border-bottom:1px solid var(--line)}.wordmark{display:block;line-height:0}.wordmark img{width:111px;height:auto;filter:none;opacity:.93}.site-header nav{gap:clamp(16px,1.65vw,28px)}.site-header nav a{font:16px/1.3 var(--serif);white-space:nowrap;color:var(--muted);padding:8px 0}.site-header nav a[aria-current]{color:var(--ink);text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px}.site-header .site-language{color:var(--ink);font-family:var(--serif)}.menu-toggle{display:none;background:none;border:0;min-width:40px;min-height:44px;padding:10px}.menu-toggle>span:not(.sr-only){display:block;width:21px;height:1px;background:var(--ink);margin:6px 0}
main{width:min(1280px,100%);margin:auto;padding:0 var(--gutter)}.experience-hero{padding:77px 0 59px;border-bottom:1px solid var(--line)}.hero-kicker,.index-label{font:11px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.17em;color:var(--muted)}.hero-kicker{margin-bottom:27px}h1{font-size:clamp(78px,8.7vw,128px);font-weight:400;line-height:.93;letter-spacing:-.055em;position:relative}.hero-bottom{display:grid;grid-template-columns:minmax(0,710px) auto;gap:72px;align-items:end;margin-top:44px}.practice-intro{text-wrap:pretty;font-size:25px;line-height:1.42;letter-spacing:-.018em;max-width:680px}.download-link{font:13px/1.5 var(--sans);min-width:176px;white-space:nowrap;padding:11px 0 0;border-top:1px solid var(--accent);align-self:end}.download-link small{display:block;color:var(--muted);font-size:10px;letter-spacing:.1em;margin-top:7px}
.experience-layout{display:grid;grid-template-columns:202px minmax(0,1fr);gap:66px;padding:52px 0 0;align-items:start}.experience-index{position:sticky;top:34px}.experience-index .index-label{margin:6px 0 26px}.experience-index nav{display:grid;gap:19px}.experience-index a{font:13px/1.5 var(--sans);color:var(--muted);display:grid;grid-template-columns:22px 1fr;gap:11px;max-width:194px}.experience-index a>span:first-child{font-size:10px;padding-top:3px;letter-spacing:.03em;color:var(--muted)}.experience-index a>span[data-language-copy]{grid-column:2;grid-row:1}.experience-index a:hover,.experience-index a.is-current{color:var(--ink)}.experience-index a.is-current>span:first-child{color:var(--ink)}.experience-section{scroll-margin-top:35px;padding:0 0 64px;margin-bottom:43px;border-bottom:1px solid var(--line)}.experience-section:last-child{border:0;margin-bottom:0;padding-bottom:62px}.section-head{display:flex;gap:16px;align-items:baseline;margin-bottom:37px}.section-number{font:10px/1.3 var(--sans);color:var(--accent);letter-spacing:.1em;flex:none}h2{font:400 32px/1.1 var(--serif);letter-spacing:-.025em;max-width:600px}.experience-entry{display:grid;grid-template-columns:84px minmax(0,1fr);gap:24px;margin-bottom:31px}.experience-entry:last-child{margin-bottom:0}.entry-date{font:11px/1.5 var(--sans);font-variant-numeric:tabular-nums;color:var(--muted);padding-top:6px;white-space:nowrap}.entry-body{min-width:0}h3{font-size:24px;font-weight:400;line-height:1.17;letter-spacing:-.01em;max-width:690px}.entry-meta{font:11px/1.6 var(--sans);letter-spacing:.018em;color:var(--muted);margin-top:8px}.entry-description{font-size:19px;line-height:1.38;margin-top:10px;max-width:630px;color:var(--body-copy)}.recognition-group{margin-bottom:35px}.recognition-group:last-child{margin-bottom:0}.recognition-group>h3{font-size:27px;line-height:1.2;margin-bottom:18px}.recognition-list{list-style:none;padding:0;margin:0}.recognition-list li{display:flex;justify-content:space-between;align-items:baseline;gap:28px;padding:14px 0;border-top:1px solid var(--quiet-line)}.recognition-list li:first-child{padding-top:0;border:0}.recognition-list h4{font:400 19px/1.3 var(--serif)}.recognition-list p{font:11px/1.6 var(--sans);color:var(--muted);margin-top:6px}.award-date{font:10px/1.5 var(--sans);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.continue-section{padding:40px 0 54px;border-top:1px solid var(--line);display:grid;grid-template-columns:202px minmax(0,1fr);gap:66px}.continue-section>.index-label{margin-top:9px}.work-links{display:grid;gap:0}.work-links a{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:16px 0;border-bottom:1px solid var(--quiet-line);font-size:27px;line-height:1.25}.work-links a:first-child{padding-top:0}.work-links a:last-child{border:0;padding-bottom:0}.work-links small{display:block;font:11px/1.5 var(--sans);color:var(--muted);margin-top:7px}.experience-footer{max-width:1600px;margin:auto;padding:25px var(--gutter) 31px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:17px;line-height:1.4;color:var(--muted)}.experience-footer>a:first-child{color:var(--ink)}
html[lang='zh-Hans'] body{font-family:var(--serif),var(--zh)}[data-language-copy='zh']{font-family:var(--zh);letter-spacing:.025em}h1 [data-language-copy='zh']{font-size:.76em;letter-spacing:.035em}h2 [data-language-copy='zh']{font-size:.83em}h3 [data-language-copy='zh']{font-size:.88em;line-height:1.45}.practice-intro [data-language-copy='zh']{font-size:.84em;line-height:1.85}.entry-description [data-language-copy='zh']{font-size:.87em;line-height:1.8}.entry-meta [data-language-copy='zh'],.index-label [data-language-copy='zh'],.experience-index [data-language-copy='zh'],.recognition-list p [data-language-copy='zh'],.download-link [data-language-copy='zh'],.work-links small [data-language-copy='zh']{font-family:var(--sans);font-size:inherit;letter-spacing:.035em}
@media(min-width:1450px){main{padding-left:60px;padding-right:60px}}
@media(max-width:1100px){.experience-layout,.continue-section{grid-template-columns:168px minmax(0,1fr);gap:38px}.hero-bottom{gap:38px}.practice-intro{font-size:24px}.experience-index a{font-size:12px}.experience-entry{grid-template-columns:76px minmax(0,1fr);gap:20px}h2{font-size:30px}h3{font-size:23px}}
@media(max-width:960px){html .site-header{min-height:84px;padding-top:18px;padding-bottom:18px}html .site-header[data-menu-ready='true'] nav{background:var(--paper);border-color:var(--line);right:var(--gutter);top:calc(100% - 9px);box-shadow:0 12px 25px #00000030}html .site-header[data-menu-ready='true'] nav a{font-size:18px}.experience-hero{padding-top:61px}.hero-bottom{grid-template-columns:1fr auto;gap:35px}.practice-intro{font-size:23px}.experience-layout,.continue-section{grid-template-columns:1fr;gap:0}.experience-index{position:static;padding-bottom:33px;margin-bottom:36px;border-bottom:1px solid var(--line)}.experience-index .index-label{display:none}.experience-index nav{display:flex;gap:18px 27px;flex-wrap:wrap}.experience-index a{display:flex;gap:8px;max-width:none;font-size:11px}.experience-index a>span:first-child{font-size:9px;padding-top:2px}.section-head{margin-bottom:34px}.experience-section{padding-bottom:48px;margin-bottom:39px}.experience-entry{grid-template-columns:100px minmax(0,1fr);gap:25px}.continue-section>.index-label{margin:0 0 25px}.continue-section{padding-top:33px}}
@media(max-width:600px){:root{--gutter:24px}body{font-size:18px}.experience-hero{padding:44px 0 37px}.hero-kicker{font-size:10px;margin-bottom:24px}h1{font-size:clamp(55px,17vw,90px);letter-spacing:-.055em}.hero-bottom{display:block;margin-top:29px}.practice-intro{font-size:23px;line-height:1.4;max-width:430px}.download-link{display:inline-block;margin-top:29px;padding-top:8px;font-size:12px}.download-link small{display:inline-block;margin:0 0 0 12px;font-size:9px}.experience-layout{padding-top:26px}.experience-index{padding-bottom:26px;margin-bottom:32px}.experience-index nav{display:grid;grid-template-columns:1fr 1fr;gap:16px 14px}.experience-index a{font-size:11px;line-height:1.4;gap:7px}.experience-index a>span:first-child{padding-top:1px}.section-head{gap:13px;margin-bottom:30px}h2{font-size:29px;line-height:1.12;max-width:310px}.section-number{font-size:9px}.experience-entry{display:block;margin-bottom:30px}.entry-date{font-size:10px;padding:0;margin-bottom:8px}.entry-body{padding-left:0}h3{font-size:24px;line-height:1.2;letter-spacing:-.015em}.entry-meta{font-size:10px;line-height:1.65;margin-top:7px}.entry-description{font-size:18px;line-height:1.42;margin-top:9px}.experience-section{padding-bottom:34px;margin-bottom:32px}.experience-section:last-child{padding-bottom:38px}.recognition-group>h3{font-size:26px}.recognition-list li{gap:20px;padding:14px 0}.recognition-list h4{font-size:19px}.recognition-list p{font-size:10px;line-height:1.6}.award-date{font-size:9px}.continue-section{padding:28px 0 39px}.continue-section>.index-label{font-size:10px;margin-bottom:23px}.work-links a{font-size:25px;gap:18px;padding:16px 0}.work-links small{font-size:10px}.experience-footer{font-size:16px;padding-top:24px;padding-bottom:27px}.practice-intro [data-language-copy='zh']{font-size:.82em}h1 [data-language-copy='zh']{font-size:.85em}h3 [data-language-copy='zh']{font-size:.84em}.entry-description [data-language-copy='zh']{font-size:.86em}.download-link [data-language-copy='zh']{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{:root{color-scheme:light;--paper:#fff;--ink:#111;--muted:#444;--line:#bbb;--accent:#444;--body-copy:#222;--quiet-line:#ccc}body{background:#fff;color:#111;font-size:12pt}.site-header,.experience-index,.download-link,.continue-section,.experience-footer,.skip-link,main{width:100%;padding:0}.experience-hero{padding:0 0 20pt}h1{font-size:44pt}.hero-kicker{font-size:9pt;margin-bottom:12pt}.hero-bottom{margin-top:14pt;display:block}.practice-intro{font-size:16pt}.experience-layout{display:block;padding-top:22pt}.experience-section{padding-bottom:18pt;margin-bottom:20pt;break-inside:auto}.section-head{margin-bottom:18pt}h2{font-size:20pt}.experience-entry{display:grid;grid-template-columns:70pt 1fr;gap:10pt;margin-bottom:14pt;break-inside:avoid}h3{font-size:15pt}.entry-date,.entry-meta{font-size:8pt}.entry-description{font-size:11pt;line-height:1.35}.recognition-list li{break-inside:avoid}.recognition-list h4{font-size:12pt}.recognition-list p{font-size:8pt}.recognition-group>h3{font-size:17pt}.experience-section:last-child{padding-bottom:0}}

/* Keep supporting information legible on small displays. */
@media(max-width:600px){.entry-meta,.recognition-list p,.work-links small{font-size:12px;line-height:1.6}.entry-date,.award-date{font-size:11px}.experience-index a{font-size:12px}}

/* Selected B: glacier blue, within the original site environment. */
@media screen{
:root{color-scheme:light;--paper:#CCDDE8;--ink:#243846;--intro:#243846;--body-copy:#243846;--muted:#425867;--water:#305D7B;--accent:#305D7B;--line:#597F9A55;--quiet-line:#597F9A33;--surround-ink:#E4E1D9}
html{background:#020303}
body{min-height:100svh;isolation:isolate;background:#020303;color:var(--ink)}
.experience-environment{position:fixed;inset:0;z-index:-1;pointer-events:none;background:#020303 url('/atmosphere/underwater-kelp-poster.webp') center/cover no-repeat;opacity:.22}
.experience-environment::after{content:"";position:absolute;inset:0;background:#02030370}
html .site-header{min-height:74px;padding:15px 4.2vw;border:0;color:var(--surround-ink)}
.wordmark img{filter:none;opacity:1}
.site-header nav{gap:clamp(18px,2vw,31px)}
.site-header nav a{font:15px/1.55 var(--serif);letter-spacing:.045em;padding:5px 0;border-bottom:1px solid transparent;color:var(--surround-ink);opacity:.82}
.site-header nav a[aria-current]{text-decoration:none;border-bottom-color:currentColor}
.site-header nav a:is(:hover,[aria-current]){color:var(--surround-ink);opacity:1}
.site-header .site-language{color:var(--surround-ink)}
.menu-toggle>span:not(.sr-only){background:var(--surround-ink)}
.site-header :is(a,button):focus-visible{outline-color:var(--surround-ink)}
main{position:relative;width:min(1120px,86%);margin:22px auto 42px;padding:0 clamp(25px,4.8vw,70px);border:1px solid #597F9A55;background-color:#CCDDE8;background-image:radial-gradient(ellipse 80% 620px at 100% 0%,#9DBFD855 0%,transparent 84%);box-shadow:none}
.experience-hero{padding-top:clamp(44px,5vw,70px)}
h1{color:var(--water);font-size:clamp(64px,7vw,96px);line-height:1;letter-spacing:-.04em}
.hero-kicker{margin-bottom:25px}
.hero-bottom{margin-top:34px}
.practice-intro{font-size:24px;line-height:1.5}
.experience-hero{padding-bottom:48px}
.practice-intro{color:var(--intro)}

.section-number,.experience-index a>span:first-child{color:var(--water)}
.experience-footer{color:#B8C1BA;border-color:#DCE3D92E;padding-left:4.2vw;padding-right:4.2vw}
.experience-footer>a:first-child{color:var(--surround-ink)}
::selection{background:var(--water);color:var(--paper)}
}
@media screen and (max-width:960px){
html .site-header[data-menu-ready='true'] nav{background:#020403F5;border-color:#DCE3D92E;color:var(--surround-ink);right:24px;top:100%}
}
@media screen and (max-width:860px){
html .site-header{min-height:64px;padding:10px 24px}
main{width:calc(100% - 32px);margin:20px auto 24px;padding-left:25px;padding-right:25px}
}
@media screen and (max-width:600px){h1{font-size:clamp(50px,15.5vw,72px)}.practice-intro{font-size:23px;line-height:1.45}.hero-bottom{margin-top:27px}.experience-hero{padding-bottom:37px}}
@media screen and (max-width:380px){main{padding-left:20px;padding-right:20px}}
@media print{.experience-environment{display:none!important}}

/* Download comes before the statement in reading order, and on narrow screens. */

@media screen and (min-width:601px){
 .hero-bottom>.practice-intro{grid-column:1;grid-row:1}
 .hero-bottom>.download-link{grid-column:2;grid-row:1}
}
@media screen and (max-width:600px){
 .hero-bottom{display:flex;flex-direction:column;gap:25px}
 .hero-bottom>.download-link{align-self:flex-start;margin-top:0;padding:10px 0;min-height:44px}
 
}

/* Quiet text links, without decorative arrows or a title slash. */
.work-links a{display:block;text-decoration:none}
.work-links a i{text-decoration-line:underline;text-decoration-thickness:1px;text-decoration-color:var(--quiet-line);text-underline-offset:.2em;transition:color .18s ease,text-decoration-color .18s ease}
.work-links a:is(:hover,:focus-visible) i{color:var(--accent);text-decoration-color:currentColor}
@media(prefers-reduced-motion:reduce){.work-links a i{transition:none}}

/* Three paragraphs preserve the author’s statement structure. */
.practice-intro [data-language-copy]>p+p{margin-top:.85em}

