@import"https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;1,400&display=swap";@font-face{font-family:Anthropic Sans;src:url(https://cdn.prod.website-files.com/6889473510b50328dbb70ae6/69971989be3c6573c3128fd9_AnthropicSans-Roman-Web.woff2) format("woff2");font-weight:300 800;font-style:normal;font-display:swap}@font-face{font-family:"Anthropic Serif";src:url(https://cdn.prod.website-files.com/6889473510b50328dbb70ae6/6997199fab1923a705f0042d_AnthropicSerif-Roman-Web.woff2) format("woff2");font-weight:300 800;font-style:normal;font-display:swap}@font-face{font-family:Styrene B;src:url(https://assets.anthropic.com/m/615ef9f8465bfb6f/original/StyreneBLC-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Styrene B;src:url(https://assets.anthropic.com/m/78f19c4a1fe4b2b6/original/StyreneBLC-Medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}:root{--bg-color: #f7f7f4;--text-primary: #111111;--text-secondary: #555555;--border-color: rgba(0, 0, 0, .1);--font-sans: "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono: "Courier New", Courier, monospace;--font-retro-serif: "EB Garamond", "Apple Garamond", Garamond, "Times New Roman", serif;--font-claude-title: "Anthropic Serif", "Iowan Old Style", Garamond, "Times New Roman", serif;--font-claude-ui: "Anthropic Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-curriculum: "Styrene B", "Anthropic Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--content-width: 700px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-sans);font-size:16px;line-height:1.5;min-height:100vh;position:relative;-webkit-font-smoothing:antialiased}#root{min-height:100vh}.noise-overlay{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;opacity:.05;z-index:1000;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}.site-shell{max-width:1040px;margin:0 auto;padding:100px 40px 80px}.top-nav-halo{position:fixed;top:41px;left:50%;z-index:99;width:min(900px,calc(100% - 8px));height:168px;transform:translate(-50%,-50%);pointer-events:none;background:#f7f7f40a;backdrop-filter:blur(30px) saturate(170%) brightness(1.04);-webkit-backdrop-filter:blur(30px) saturate(170%) brightness(1.04);mask-image:radial-gradient(ellipse farthest-side,#000 0%,rgba(0,0,0,.92) 24%,rgba(0,0,0,.58) 52%,rgba(0,0,0,.22) 76%,transparent 96%);-webkit-mask-image:radial-gradient(ellipse farthest-side,#000 0%,rgba(0,0,0,.92) 24%,rgba(0,0,0,.58) 52%,rgba(0,0,0,.22) 76%,transparent 96%)}.top-nav{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:100;width:max-content;max-width:calc(100% - 32px)}.top-nav>div:not(.top-nav__glass),.top-nav>span{position:absolute!important;top:0!important;left:0!important;transform:none!important;pointer-events:none}.top-nav__glass{position:relative!important;top:auto!important;left:auto!important;transform:none!important;border-radius:999px;background:#f7f7f447;box-shadow:0 4px 20px #23221c14,inset 0 0 0 1px #ffffffa6}.top-nav__glass .glass{display:flex!important;box-shadow:none!important}.top-nav__glass .glass__warp{opacity:.14}.top-nav ul{position:relative;list-style:none;display:flex;align-items:center;gap:2px}.top-nav__items{isolation:isolate;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.top-nav__selection{position:absolute;top:0;left:0;z-index:-1;border-radius:999px;pointer-events:none;background:#ffffffb8;box-shadow:0 1px 5px #23221c14,inset 0 0 0 1px #fffc;-webkit-backdrop-filter:blur(8px) saturate(120%);backdrop-filter:blur(8px) saturate(120%);transform:translate3d(var(--pill-x, 0px),var(--pill-y, 0px),0) scale(var(--pill-scale, 1));transition:transform .32s cubic-bezier(.22,1,.36,1),width .32s cubic-bezier(.22,1,.36,1),box-shadow .18s ease}.top-nav__items--press,.top-nav__items--drag{--pill-scale: 1.08}.top-nav__items--drag .top-nav__selection{transition:box-shadow .18s ease;box-shadow:0 3px 12px #23221c24,inset 0 0 0 1px #fffffff2}.top-nav__items--drag a{cursor:grabbing}@media(prefers-reduced-motion:reduce){.top-nav__selection{transition:none}.top-nav__items{--pill-scale: 1}}.top-nav a{font-family:var(--font-curriculum);color:var(--text-secondary);text-decoration:none;font-size:14px;display:inline-block;padding:8px 14px;border-radius:999px;font-weight:400;letter-spacing:-.01em;transition:color .2s ease,background-color .2s ease,box-shadow .2s ease}.top-nav a:hover,.top-nav a.active{color:var(--text-primary)}.top-nav a:focus-visible{outline:2px solid var(--text-secondary);outline-offset:5px;border-radius:3px}.layout-grid{display:grid;grid-template-columns:236px 1fr;padding:0;gap:56px}.layout-grid--full{display:block}.layout-grid--full main{margin:0 auto}.home{display:block}.home-top{display:grid;grid-template-columns:200px 1fr;gap:48px;align-items:stretch}.home-intro{display:flex;min-width:0;max-width:var(--content-width)}.home-intro #about{display:flex;flex-direction:column;flex:1}.home-intro>section:last-child{margin-bottom:0}.profile-block{display:flex;flex-direction:column;gap:12px;width:200px;align-self:start}.profile-avatar{width:200px;height:200px;border-radius:999px;object-fit:cover;object-position:center;border:1px solid var(--border-color)}h1{font-family:var(--font-claude-title);font-size:28px;font-weight:500;letter-spacing:-.01em}.profile-block h1{font-size:29.83px;white-space:nowrap}.role{font-family:var(--font-curriculum);font-size:15px;color:#161616;font-weight:400;letter-spacing:-.01em;line-height:1.5}.side-nav ul{list-style:none;display:flex;flex-direction:column;gap:12px}.side-nav a{font-family:var(--font-curriculum);color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:400;letter-spacing:-.01em;transition:color .2s ease}.side-nav a:hover,.side-nav a.active{color:var(--text-primary)}main{max-width:var(--content-width)}section{margin-bottom:80px}h2{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:24px;border-bottom:1px solid var(--border-color);padding-bottom:8px}#about h2,#education h2,#experience h2,#news h2,#research h2,#project h2,#honors h2,#service h2{font-family:var(--font-retro-serif);font-size:23px;font-weight:600;text-transform:none;letter-spacing:-.02em;color:var(--text-primary);border-bottom:none;padding-bottom:0}#about p{font-family:var(--font-curriculum);font-size:.95rem;font-weight:400;line-height:1.55;letter-spacing:-.01em;color:#1e1e1e;max-width:92%}#about .about-subhead{font-weight:600;color:#2a2a2a;margin-top:auto;padding-top:20px;margin-bottom:8px}#about .about-interests{font-family:var(--font-curriculum);font-size:.95rem;font-weight:400;line-height:1.55;letter-spacing:-.01em;color:#1e1e1e;margin:0;padding-left:1.5em;max-width:92%}#about .about-interests li{margin-bottom:8px;padding-left:4px}p{margin-bottom:16px;font-weight:400;max-width:100%}.timeline-list{display:flex;flex-direction:column;gap:32px}.timeline-item{display:grid;grid-template-columns:160px 1fr;gap:20px}.timeline-year{font-family:var(--font-claude-ui);font-size:14px;white-space:nowrap;color:#1e1e1e;font-weight:500;padding-top:2px}.timeline-details{position:relative;display:flex;flex-direction:column;gap:4px;min-height:76px;padding-right:100px}.entry-title{font-size:17px;font-weight:500;color:var(--text-primary);line-height:1.4}.entry-subtitle{font-family:var(--font-curriculum);font-size:14px;color:var(--text-secondary);letter-spacing:-.01em}.entry-bottom{margin-top:10px;display:flex;flex-direction:column;gap:3px}.advisor-line{font-family:var(--font-curriculum);font-size:14px;color:var(--text-secondary);letter-spacing:-.01em}.timeline-logo{position:absolute;right:0;top:50%;transform:translateY(-50%);width:76px;height:76px;object-fit:contain;object-position:center;opacity:1;pointer-events:none}.inline-link,.advisor-line a{color:#111;font-weight:500;text-decoration:underline;text-decoration-color:#00000059;text-decoration-thickness:1.4px;text-underline-offset:2px;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:left bottom;background-size:0% 1.4px;transition:background-size .2s ease}.inline-link:hover,.advisor-line a:hover{background-size:100% 1.4px}.contact-block{display:flex;flex-direction:column;align-items:flex-start;gap:10px;width:100%;max-width:200px}.email-row{display:flex;align-items:center;gap:6px;width:100%}.email-copy-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.email-link,.contact-icon-link{position:relative;border:1px solid rgba(70,65,50,.24);background:#e9e8e17a;backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%);box-shadow:inset 0 1px #ffffffb3,inset 0 -1px 2px #4641320a,0 2px 8px #23221c0a;transition:transform .2s ease,box-shadow .2s ease}.email-link:hover,.contact-icon-link:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffffe6,0 4px 12px #23221c14}.email-link:focus-visible,.contact-icon-link:focus-visible{outline:2px solid var(--text-secondary);outline-offset:3px}.email-link{display:inline-flex;align-items:center;color:var(--text-primary);text-decoration:none;font-family:var(--font-curriculum);font-size:12.5px;letter-spacing:-.01em;width:100%;min-height:36px;min-width:0;border-radius:999px;padding:0 10px;gap:6px}.email-link__icon{width:18px;height:18px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:#23292f;opacity:.92}.email-link__icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}.email-link__label{white-space:nowrap}.profile-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px;width:100%;justify-content:space-between}.contact-icon-link{width:36px;height:36px;flex:0 0 36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#23292f;text-decoration:none}.contact-icon-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.email-copy-button{padding:0;cursor:pointer}.email-copy-button svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.contact-icon-link .x-icon{width:18px;height:18px}.news-list{display:flex;flex-direction:column;gap:20px}.news-item{display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:start}.news-date{font-family:var(--font-claude-ui);color:var(--text-primary);padding-top:1px;line-height:1.1}.news-date span{display:block}.news-date span:first-child{font-size:13px;font-weight:500}.news-date span:last-child{margin-top:3px;font-size:12px;color:var(--text-secondary)}.news-content{min-width:0}.news-item p{max-width:100%;margin-bottom:0;color:#1e1e1e;font-family:var(--font-curriculum);font-size:14.5px;font-weight:400;letter-spacing:-.01em;line-height:1.55}.inline-news-icon{width:1.45em;height:1.45em;display:inline-block;object-fit:contain;object-position:center;vertical-align:-.36em;margin:0 .12em}.yeastsam-inline-icon{width:1.55em;height:1.55em;vertical-align:-.43em}.news-item strong{font-weight:600;color:var(--text-primary)}.news-item em{color:var(--text-primary);font-style:italic}.news-item .inline-link{font-weight:inherit}.news-item .inline-link:hover{border-bottom-color:var(--text-primary)}.news-item .inline-link,.news-item strong,.news-item em{font-family:var(--font-curriculum)}.home-section{margin-top:56px;margin-bottom:0;padding-top:48px;border-top:1px solid var(--border-color)}.pub-list{display:flex;flex-direction:column;gap:44px}.pub-item{display:block;max-width:var(--content-width)}.pub-item--with-figure{display:grid;grid-template-columns:minmax(0,360px) minmax(280px,1fr);gap:28px;align-items:center;max-width:none}.pub-content{display:flex;flex-direction:column;gap:6px;min-width:0}.pub-item--with-figure .pub-content{justify-content:flex-start;gap:0}.pub-item--with-figure .pub-links{margin-top:14px;padding-top:0}.pub-item--with-figure .pub-title{line-height:1.4;margin-bottom:8px}.pub-item--with-figure .pub-authors,.pub-item--with-figure .pub-venue{line-height:1.5}.pub-item--with-figure .pub-authors{margin-bottom:4px}.project-item .pub-venue{margin-bottom:10px}.project-item .pub-links{margin-top:16px}.pub-figure{display:flex;align-items:center;justify-content:center;width:100%;max-width:360px;justify-self:start;aspect-ratio:16 / 9;align-self:center;border:1px solid var(--figure-border, var(--border-color));border-radius:2.5%/4.444%;overflow:hidden}.pub-figure:has(img[src="/descent-source-16x9.svg"]){border:0;border-radius:0;overflow:visible}.pub-figure img{display:block;width:100%;height:100%;min-height:0;object-fit:contain;transition:transform .25s ease}@media(hover:hover)and (pointer:fine){.pub-figure:hover img{transform:scale(1.02)}}@media(prefers-reduced-motion:reduce){.inline-link,.advisor-line a,.pub-figure img{transition:none}.pub-figure:hover img{transform:none}}.project-item .pub-figure{background-color:#fff}.project-item .pub-figure img{object-fit:contain}.pub-title{font-family:var(--font-curriculum);font-size:17px;font-weight:600;line-height:1.35;letter-spacing:-.01em;color:var(--text-primary)}.pub-title a{color:var(--text-primary);text-decoration:none}.pub-title a:hover{text-decoration:none}.pub-authors{font-family:var(--font-curriculum);font-size:14.5px;color:var(--text-secondary);line-height:1.5;letter-spacing:-.01em}.pub-authors strong{color:var(--text-primary);font-weight:700}.pub-venue{font-family:var(--font-curriculum);font-size:14.5px;font-weight:400;font-style:normal;color:var(--text-secondary);letter-spacing:-.01em}.pub-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:8px}.pub-button{position:relative;display:inline-flex;align-items:center;gap:6px;padding:5px 13px;border-radius:999px;font-family:var(--font-curriculum);font-size:13px;font-weight:500;letter-spacing:-.01em;text-decoration:none;border:1px solid transparent;backdrop-filter:blur(10px) saturate(120%);-webkit-backdrop-filter:blur(10px) saturate(120%);box-shadow:inset 0 1px #ffffff61,inset 0 -1px 2px #00000014,0 2px 6px #23221c0f;transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease}.pub-button:before,.email-link:before,.contact-icon-link:before,.top-nav__glass:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(ellipse 70px 38px at var(--glass-x, 50%) var(--glass-y, 50%),rgba(255,255,255,.42),rgba(255,255,255,.1) 45%,transparent 80%);opacity:0;transition:opacity .2s ease;pointer-events:none}.top-nav__glass:before{z-index:2;background:radial-gradient(ellipse 110px 45px at var(--glass-x, 50%) var(--glass-y, 50%),rgba(255,255,255,.55),transparent 80%)}@media(hover:hover)and (pointer:fine){.pub-button:hover:before,.email-link:hover:before,.contact-icon-link:hover:before,.top-nav:hover .top-nav__glass:before{opacity:1}}@media(prefers-reduced-motion:reduce){.pub-button:before,.email-link:before,.contact-icon-link:before,.top-nav__glass:before{transition:none}}.pub-button:after,.email-link:after,.contact-icon-link:after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#ffffffb3,#ffffff14 45%,#ffffff52);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none}.pub-button:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff8c,inset 0 -1px 2px #00000014,0 3px 10px #00000024}.pub-button:focus-visible{outline:2px solid currentColor;outline-offset:3px}.pub-button__icon{display:inline-flex;align-items:center;justify-content:center}.pub-button__icon svg{width:14px;height:14px;fill:currentColor}.pub-button__logo{display:block;height:16px;width:auto}.pub-button--paper{background-color:#f1f0ec;color:#1f2328;border-color:#0000001f}.pub-button--paper:hover{background-color:#e8e6e0}.pub-button--biorxiv{background-color:#fff;color:#1f2328;border-color:#00000024}.pub-button--biorxiv:hover{background-color:#fbf6f5;border-color:#be2a2573}.pub-button--code{background-color:#24292e;color:#fff}.pub-button--code:hover{background-color:#15181c}.pub-button--doc{background-color:#2f6fb0;color:#fff}.pub-button--site{background:#f5f2ea;border-color:#00000024;color:#4a4238}.pub-button--site:hover{background:#ebe6da;border-color:#0000003d}.project-description{font-family:var(--font-curriculum);font-size:.92rem;line-height:1.6;letter-spacing:-.01em;color:#3a3a3a;margin:0;max-width:92%}.misc-list{display:flex;flex-direction:column;gap:14px}.misc-item{font-family:var(--font-curriculum);font-size:.95rem;line-height:1.55;letter-spacing:-.01em;color:#1e1e1e;margin:0;max-width:92%}.misc-item strong{font-weight:600;color:var(--text-primary)}.misc-item__detail:before{content:", "}.pub-button--doc:hover{background-color:#285f97}.section-divider{border:none;border-top:1px solid var(--border-color);margin:40px 0}.site-footer{font-family:var(--font-mono);font-size:11px;color:#2a2a2a;margin-top:200px;text-align:right}.blog h1{font-family:var(--font-retro-serif);font-size:clamp(32px,5vw,44px);line-height:1.12;letter-spacing:-.025em}.blog-date{display:block;font-family:var(--font-claude-ui);font-size:13px;color:var(--text-secondary)}.blog-entry{margin-top:32px;padding:24px 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.blog-entry h2{font-family:var(--font-retro-serif);font-size:27px;line-height:1.25;font-weight:500;text-transform:none;letter-spacing:-.02em;color:var(--text-primary);border:0;padding:0;margin:10px 0}.blog-entry h2 a{color:inherit;text-decoration:none}.blog-entry h2 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.blog-entry p,.blog-prose{font-family:var(--font-curriculum);font-size:15px;line-height:1.8;letter-spacing:-.01em}.blog-entry p{margin:0;color:var(--text-secondary)}.blog-back{font-family:var(--font-claude-ui);font-size:13px}.blog-post-header{margin:36px 0}.blog-post-header h1{margin-top:12px}.blog-prose p{margin-bottom:24px}.blog-prose figure{margin:36px 0}.verification-map{display:block;width:100%;height:auto;font-family:var(--font-claude-ui);fill:var(--text-primary)}.verification-map-axis{fill:none;stroke:#c5c4ba;stroke-width:1.5}.verification-map-divider{stroke:var(--border-color)}.verification-map-moat{fill:#e5eff8;stroke:#2c79bd;stroke-width:2}.verification-map circle{fill:#c5c4ba}.verification-map-measurements circle{fill:#2c79bd}.verification-map-labels{fill:var(--text-secondary)}.blog-prose figcaption{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);text-align:center;margin-top:12px}@media(max-width:800px){.misc-item__detail{display:block}.misc-item__detail:before{content:none}.site-shell{padding:96px 24px 40px}.top-nav{top:12px}.top-nav ul{gap:2px}.top-nav a{padding-inline:clamp(10px,3vw,14px)}.layout-grid{grid-template-columns:1fr;gap:40px;padding:0}.home-top{grid-template-columns:1fr;gap:28px}.profile-block{width:100%;border-bottom:1px solid var(--border-color);padding-bottom:28px}.home-intro{max-width:100%}#about .about-subhead{margin-top:20px;padding-top:0}.home-section{margin-top:40px;padding-top:36px}.profile-links{gap:8px}p{max-width:100%}.timeline-item{grid-template-columns:1fr;gap:8px}.timeline-year{padding-top:0}.timeline-details{padding-right:92px;min-height:62px}.timeline-logo{width:62px;height:62px;opacity:1}.profile-avatar{width:140px;height:140px}.news-item{grid-template-columns:1fr;gap:6px}.pub-item--with-figure{grid-template-columns:1fr;gap:14px}.pub-item--with-figure .pub-links{margin-top:14px;padding-top:0}.pub-item--with-figure .pub-content{justify-content:flex-start;gap:0}.news-date span{display:inline}.news-date span:first-child:after{content:" "}}
