@layer theme{:root,:host{--font-serif:Georgia, "Times New Roman", serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--spacing:.25rem;--default-font-family:Arial, Helvetica, sans-serif;--default-mono-font-family:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--color-ink:#202b36;--color-muted:#626b73;--color-accent:#385a79;--color-rule:#d9dee2}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.h-5{height:calc(var(--spacing) * 5)}.w-5{width:calc(var(--spacing) * 5)}.shrink-0{flex-shrink:0}.lowercase{text-transform:lowercase}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{color:#202b36;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;margin:0;font-family:Arial,Helvetica,sans-serif}h1,h2,h3,p,a{overflow-wrap:anywhere}::selection{color:#202b36;background:#dfe7ed}a{text-underline-offset:.25em}a:focus-visible{outline-offset:6px;border-radius:1px;outline:2px solid #385a79}main:focus{outline:none}button,a{-webkit-tap-highlight-color:transparent}.page-width{width:min(100% - 7rem,1160px);margin-inline:auto}.eyebrow{color:#626b73;letter-spacing:.1em;text-transform:uppercase;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.75rem;line-height:1.6}.site-header{border-bottom:1px solid var(--color-rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;min-height:112px;display:flex}.site-header nav{max-width:100%}.wordmark{letter-spacing:-.08em;padding:.5rem .3rem .5rem 0;font-family:Georgia,Times New Roman,serif;font-size:2.15rem;line-height:1}.wordmark span{color:var(--color-accent)}.navigation-list{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.navigation-list a{color:#4a5661;align-items:center;min-height:44px;font-size:.875rem;transition:color .16s;display:flex}.navigation-list a:hover{color:#172d41;text-decoration:underline}.hero{grid-template-columns:1.2fr 1fr;align-items:center;gap:5%;min-height:645px;padding-block:75px 85px;display:grid}.hero-eyebrow{margin-bottom:2.5rem}.hero h1{letter-spacing:-.055em;font-family:Georgia,Times New Roman,serif;font-size:clamp(4.6rem,7.8vw,7.2rem);font-weight:400;line-height:.99}.discipline{color:#546473;margin-top:1.6rem;font-family:Georgia,Times New Roman,serif;font-size:1.7rem;font-style:italic}.hero-interests{max-width:32rem;color:var(--color-muted);text-wrap:pretty;margin-top:1rem;font-size:1rem;line-height:1.8}.text-link{min-height:44px;color:var(--color-accent);align-items:center;gap:.85rem;font-size:.875rem;display:inline-flex}.text-link:hover{text-decoration:underline}.hero-link{margin-top:2.2rem}.hero-figure{padding:3rem 0 0 2rem}.unit-circle{color:#526b80;max-width:360px;margin-inline:auto}.unit-circle svg{width:100%;height:auto;display:block;overflow:visible}.diagram-grid{stroke:#e5e9ec;stroke-width:.6px}.diagram-axis{stroke:#bcc6ce;stroke-width:.8px}.diagram-circle{stroke-width:1.35px}.diagram-radius{stroke-width:1px}.diagram-projection{stroke:#a4b2bd;stroke-width:.8px;stroke-dasharray:3 5}.diagram-angle{stroke-width:.8px}.diagram-label{font-family:Georgia,Times New Roman,serif;font-size:14px;font-style:italic}.unit-circle figcaption{color:#657482;justify-content:space-between;margin:1.5rem 1.9rem 0;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.75rem;display:flex}.section-row{border-top:1px solid var(--color-rule);grid-template-columns:1fr 2fr;gap:3rem;padding-block:3.5rem;display:grid}.section-kicker{margin-bottom:1rem}.section-heading{letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif;font-size:2.6rem;font-weight:400;line-height:1.15}.section-heading .text-link{font:inherit;letter-spacing:inherit}.section-heading .text-link svg{flex-shrink:0}.introduction-copy{max-width:590px;padding-top:.15rem}.prose-lead{letter-spacing:-.02em;font-family:Georgia,Times New Roman,serif;font-size:1.7rem;line-height:1.55}.body-copy>p{color:#58636d;max-width:620px;margin-top:1.2rem;font-size:1rem;line-height:1.85}.introduction-detail{margin-top:1.5rem}.content-sections{border-top:1px solid var(--color-rule)}.content-section{border-bottom:1px solid var(--color-rule);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:3rem;padding-block:3rem 3.5rem;scroll-margin-top:2rem;display:grid}.content-section>.eyebrow{padding-top:.4rem}.content-section h2{letter-spacing:-.025em;font-family:Georgia,Times New Roman,serif;font-size:1.9rem;font-weight:400;line-height:1.3}.body-copy>.content-context{color:var(--color-accent);margin-top:.7rem;font-size:.875rem}.body-copy>.status-label{color:var(--color-muted);font-size:.75rem}.content-section .text-link{margin-top:1.2rem}.academic-list li+li{margin-top:.75rem}.academic-list p{color:var(--color-muted);font-size:.875rem;line-height:1.6}.cv-entries{margin-top:1.5rem}.academic-entry+.academic-entry{border-top:1px solid var(--color-rule);margin-top:1.75rem;padding-top:1.75rem}.academic-entry-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1.5rem;display:flex}.academic-entry-heading h3,.lab-themes h3{font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:400;line-height:1.4}.academic-entry-heading h3{flex:15rem;min-width:0}.academic-entry-heading time{color:#626b73;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.875rem}.academic-title-link{color:var(--color-accent);padding-block:.25rem;display:inline-block}.academic-title-link:hover{text-decoration:underline}.academic-entry>p,.award-distinctions{color:#58636d;margin-top:.6rem;font-size:1rem;line-height:1.8}.academic-entry>.academic-entry-context{color:var(--color-accent);font-size:.875rem}.academic-entry>.status-label{color:var(--color-muted);font-size:.75rem}.academic-entry .academic-list{margin-top:.75rem}.academic-entry .text-link,.academic-interest-list .text-link{margin-top:0}.academic-interest-list{margin-top:1.2rem}.topic-list{color:#58636d;margin-top:1.25rem;padding-left:1.1rem;font-size:1rem;line-height:1.8;list-style:outside}.topic-list li+li{margin-top:.25rem}.topic-list li::marker{color:var(--color-muted)}.body-copy>.project-subtitle{color:var(--color-accent);font-family:Georgia,Times New Roman,serif;font-size:1.25rem;line-height:1.65}.project-heading h1{font-size:clamp(2.5rem,5.5vw,4.5rem);line-height:1.15}.lab-themes{margin-top:2rem}.lab-theme{border-top:1px solid var(--color-rule);margin-top:1.25rem;padding-top:1.25rem}.lab-theme h4{color:var(--color-accent);font-size:1rem;font-weight:400;line-height:1.6}.lab-theme .topic-list{margin-top:.65rem}.knowledge-section{padding-block:3rem 3.5rem}.knowledge-link{margin-top:1.5rem}.knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;display:grid}.knowledge-grid>li{border-top:1px solid var(--color-rule)}.knowledge-area{height:100%;padding-block:1.2rem 1.6rem;display:block}.knowledge-area h3,.coursework-area h3{font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:400;line-height:1.4}.knowledge-area p{color:#58636d;margin-top:.65rem;font-size:1rem;line-height:1.7}.knowledge-area:hover h3{color:var(--color-accent);text-underline-offset:.2em;text-decoration:underline}.coursework-areas{margin-top:2rem}.coursework-area{border-top:1px solid var(--color-rule);padding-block:1.5rem;scroll-margin-top:2rem}.coursework-area h3{color:var(--color-accent)}.course-list{margin-top:1rem;padding-left:1.1rem;list-style:outside}.course-list li+li{margin-top:.8rem}.course-list li::marker{color:var(--color-muted)}.course-list h4{overflow-wrap:anywhere;font-size:1rem;font-weight:400;line-height:1.7}.course-list p{color:#58636d;margin-top:.25rem;font-size:1rem;line-height:1.7}.status-label{color:#626b73;margin-top:1.25rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.75rem;line-height:1.6;display:block}.introduction .status-label:before,.contact-section .status-label:before{content:"[ "}.introduction .status-label:after,.contact-section .status-label:after{content:" ]"}.index-section{padding-block:2.5rem 4.5rem}.section-caption{justify-content:space-between;gap:1rem;margin-bottom:1.25rem;display:flex}.section-grid{border-top:1px solid var(--color-rule);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.index-entry{border-bottom:1px solid var(--color-rule);gap:1.35rem;padding:2rem 1.75rem 2.25rem 0;transition:background-color .16s;display:flex}.index-entry:nth-child(2n){border-left:1px solid var(--color-rule);padding-left:2.25rem}.index-entry:hover{background-color:#eef2f5}.index-entry:last-child:nth-child(odd){grid-column:1/-1}.entry-number{color:#626b73;padding-top:.5rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.75rem}.entry-copy{flex:1;min-width:0}.entry-copy h2,.entry-copy h3{letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:400;line-height:1.2}.entry-copy>p{color:#58636d;max-width:295px;margin-top:.9rem;font-size:1rem;line-height:1.75}.entry-copy .status-label{margin-top:1.5rem}.entry-arrow{color:#526b80;padding-top:.35rem}.contact-section{padding-block:3.5rem 5rem}.contact-copy{color:#58636d;padding-top:.3rem;line-height:1.75}.contact-email{overflow-wrap:anywhere;font-size:1.125rem}.profile-links{flex-wrap:wrap;gap:1.5rem;margin-top:1rem;display:flex}.site-footer{border-top:1px solid var(--color-rule);color:#626b73;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.5rem 2.25rem;font-size:.75rem;display:flex}.site-footer p span{color:#9aa4ae;margin-inline:.7rem}.quiet-link{align-items:center;gap:.75rem;min-height:44px;display:inline-flex}.quiet-link:hover{text-decoration:underline}.skip-link{z-index:50;color:#fff;background:#202b36;padding:.8rem 1rem;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:1rem}.inner-page{min-height:calc(100svh - 210px)}.breadcrumb{color:var(--color-muted);padding-top:2rem;font-size:.875rem}.breadcrumb ol,.breadcrumb li{align-items:center;gap:1rem;display:flex}.breadcrumb ol{flex-wrap:wrap;gap:.25rem 1rem}.breadcrumb li{min-width:0}.breadcrumb a{align-items:center;min-height:44px;display:inline-flex}.breadcrumb a:hover{text-decoration:underline}.breadcrumb [aria-current]{color:var(--color-ink)}.inner-heading{padding-block:3.5rem 4rem}.inner-heading h1,.not-found h1{letter-spacing:-.05em;margin-top:1.5rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.5rem,7vw,5.75rem);font-weight:400;line-height:1.05}.inner-description{color:#58636d;max-width:620px;margin-top:1.5rem;font-family:Georgia,Times New Roman,serif;font-size:1.5rem;line-height:1.65}.placeholder-section{border-block:1px solid var(--color-rule);grid-template-columns:1fr 2fr;gap:3rem;padding-block:3rem 4rem;display:grid}.placeholder-section>.eyebrow{padding-top:.45rem}.placeholder-section h2{letter-spacing:-.025em;font-family:Georgia,Times New Roman,serif;font-size:1.9rem;font-weight:400;line-height:1.3}.placeholder-section div>p{color:#58636d;max-width:530px;margin-top:1.25rem;font-size:1rem;line-height:1.85}.placeholder-section .text-link{margin-top:1.25rem}.other-sections{justify-content:space-between;align-items:center;gap:2rem;padding-block:2rem 3rem;display:flex}.other-sections ul{flex-wrap:wrap;gap:2.5rem;display:flex}.not-found{min-height:calc(100svh - 230px);padding-block:5rem}.not-found>p:not(.eyebrow){color:#58636d;max-width:480px;margin-block:2rem 1rem;line-height:1.8}.blog-entry>svg{color:var(--color-accent);flex-shrink:0}.blog-entry p{color:#58636d;margin-top:.8rem;font-size:1rem;line-height:1.8}.blog-entry:hover h3{color:var(--color-accent);text-underline-offset:.2em;text-decoration:underline}.blog-themes{margin-top:2rem}.blog-themes>div{border-top:1px solid var(--color-rule);padding-block:1.25rem}.blog-themes dt{font-family:Georgia,Times New Roman,serif;font-size:1.35rem}.blog-themes dd{color:#58636d;margin-top:.45rem;font-size:1rem;line-height:1.8}.blog-list{margin-top:1.5rem}.blog-list>li{border-top:1px solid var(--color-rule)}.blog-entry{grid-template-columns:minmax(0,1fr) auto;gap:.6rem 1.5rem;padding-block:1.5rem;display:grid}.blog-entry>.eyebrow{grid-column:1/-1}.blog-entry>svg{margin-top:.4rem}.blog-entry h3{font-family:Georgia,Times New Roman,serif;font-size:1.5rem;line-height:1.4}.blog-detail{width:min(100%,740px);margin-inline:auto}.blog-detail .inner-heading h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.15}.blog-detail .inner-description{max-width:none}.writing-body{border-top:1px solid var(--color-rule);padding-block:2.5rem;font-size:1.125rem;line-height:1.95}.writing-body>*+*{margin-top:1.5rem}.writing-body h2{font-family:Georgia,Times New Roman,serif;font-size:1.9rem;line-height:1.4}.writing-body h2:not(:first-child){margin-top:2.5rem}.writing-body p{white-space:pre-line}.writing-body blockquote{border-left:2px solid var(--color-accent);color:#58636d;font-family:var(--font-serif);padding-left:1.5rem}h1:lang(zh),h2:lang(zh),h3:lang(zh),.inner-description:lang(zh){letter-spacing:normal;line-height:1.6}@media (max-width:900px){.page-width{width:calc(100% - 4rem)}.navigation-list{gap:1.35rem}.hero{gap:2rem;min-height:570px}.hero-figure{padding-left:0}.section-row{grid-template-columns:1fr 1.7fr;gap:2rem}}@media (max-width:640px){.writing-body{padding-block:2rem;font-size:1rem}.knowledge-grid{grid-template-columns:minmax(0,1fr)}.page-width{width:calc(100% - 2.5rem)}.site-header{align-items:flex-start;gap:1.5rem;min-height:auto;padding-block:1.4rem 1rem}.wordmark{font-size:2rem}.navigation-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 1.1rem;display:grid}.navigation-list a{font-size:.875rem}.hero{grid-template-columns:1fr;gap:1.4rem;min-height:auto;padding-block:3.5rem 2.5rem}.hero-eyebrow{margin-bottom:2rem}.hero h1{font-size:clamp(3.8rem,14.2vw,6rem)}.discipline{font-size:1.45rem}.hero-link{margin-top:1.3rem}.hero-figure{justify-self:end;width:min(70%,265px);margin-top:-1rem;padding-top:0}.unit-circle figcaption{margin:.65rem 1rem 0}.section-row{grid-template-columns:1fr;gap:1.75rem;padding-block:2.5rem}.section-heading{font-size:2.25rem}.section-kicker{margin-bottom:.7rem}.prose-lead{font-size:1.45rem}.index-section{padding-block:1.25rem 2.75rem}.section-grid{grid-template-columns:1fr}.index-entry,.index-entry:nth-child(2n){border-left:0;gap:1.25rem;padding:1.8rem .25rem 1.8rem 0}.entry-copy h2,.entry-copy h3{font-size:1.85rem}.entry-copy>p{max-width:100%}.contact-section{padding-bottom:3rem}.site-footer{flex-direction:column;align-items:flex-start;gap:.4rem;padding-block:1.6rem}.breadcrumb{padding-top:1rem}.inner-heading{padding-block:2rem 3rem}.inner-description{font-size:1.3rem}.placeholder-section{grid-template-columns:1fr;gap:1.5rem;padding-block:2rem 3rem}.content-section{grid-template-columns:minmax(0,1fr);gap:1.2rem;padding-block:2rem 2.5rem}.content-section h2,.placeholder-section h2{font-size:1.6rem}.other-sections{flex-direction:column;align-items:flex-start;gap:.75rem}.other-sections ul{gap:.5rem 1.5rem}.not-found{padding-block:3.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
