@font-face{font-family:Ubuntu;font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ubuntu-normal-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Ubuntu;font-style:italic;font-weight:400;font-display:swap;src:url(fonts/ubuntu-italic-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Ubuntu;font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ubuntu-normal-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:500 700;font-display:swap;src:url(fonts/instrumentsans-normal-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#fff;--surface:#fff;--panel:#f7f8fa;--ink:#131b33;--ink-2:#3a4560;--ink-3:#6b7590;--accent:#1c3294;--accent-soft:color-mix(in srgb, var(--accent) 8%, transparent);--rule:#dfe3ec;--sans:"Ubuntu", -apple-system, "Helvetica Neue", Arial, sans-serif;--display:"Instrument Sans", var(--sans);--text-xs:.75rem;--text-sm:.8125rem;--text-md:.96875rem;--text-lg:1.0625rem;--text-xl:1.375rem;--text-2xl:2.75rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--content:912px;--label:152px;--rail:280px;--gutter:56px;--radius:3px;--ease:cubic-bezier(.2, .7, .2, 1);--spring:cubic-bezier(.34, 1.4, .64, 1)}*,:before,:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;scroll-padding-top:var(--space-5)}body{color:var(--ink);font-family:var(--sans);font-size:var(--text-md);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-weight:400;line-height:1.65}::selection{color:#fff;background:var(--accent)}h1,h2,h3{color:var(--ink);text-wrap:balance;font-family:var(--display);letter-spacing:-.02em;margin:0;font-weight:650}p{margin:0}img,video{max-width:100%;height:auto;display:block}strong{color:var(--ink);font-weight:500}.wash-phrase,mark{color:var(--accent);background:color-mix(in srgb, var(--accent) 9%, transparent);font:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:2px;padding:.02em .2em}:is(a,button){touch-action:manipulation}:is([id],a,button){scroll-margin-block:var(--space-5)}a{color:inherit;text-underline-offset:.22em;text-decoration:none;transition:color .16s,text-decoration-color .16s}a:is(:hover,:focus-visible){color:var(--accent)}:is(.bio,.news,.contact p) a:not(.preview-card){color:var(--ink);text-decoration-line:underline;text-decoration-color:color-mix(in srgb, var(--ink) 25%, transparent)}:is(.bio,.news,.contact p) a:not(.preview-card):is(:hover,:focus-visible){color:var(--accent);text-decoration-color:currentColor}:is(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.page{width:100%;max-width:calc(var(--content) + 2 * var(--space-6));padding:var(--space-9) max(var(--space-6), env(safe-area-inset-right)) var(--space-9) max(var(--space-6), env(safe-area-inset-left));margin:0 auto}.hero{grid-template-columns:minmax(0, 1fr) var(--rail);column-gap:var(--gutter);align-items:start;display:grid}:is(.hero-copy,.paper-body){min-width:0}:is(.bio,.paper-body){overflow-wrap:anywhere}.name{font-size:var(--text-2xl);letter-spacing:-.03em;margin-top:-.08em;line-height:1.1}.lede{margin-top:var(--space-2);color:var(--ink-3);font-size:var(--text-md)}.lede:after{content:"";vertical-align:-.18em;background:var(--accent);width:.55em;height:1.05em;margin-left:.2em;animation:1.1s step-end infinite caret;display:inline-block}@keyframes caret{50%{opacity:0}}.bio{margin-top:var(--space-6);color:var(--ink-2);position:relative}.bio-group+.bio-group{margin-top:var(--space-5)}.bio-label{color:var(--ink)}.bio ul{margin:var(--space-2) 0 0;padding:0;list-style:none}.bio li{padding-left:var(--space-5);position:relative}.bio li+li{margin-top:var(--space-2)}.bio li:before{content:"";background:var(--accent);width:8px;height:2px;position:absolute;top:.8em;left:4px}.bio ul ul{margin-top:var(--space-1);font-size:.9375rem}.bio ul ul li{padding-left:var(--space-4)}.bio ul ul li+li{margin-top:var(--space-1)}.bio ul ul li:before{background:color-mix(in srgb, var(--ink) 30%, transparent);border-radius:50%;width:4px;height:4px;top:.74em;left:1px}.from-to{color:var(--ink-2);background:color-mix(in srgb, var(--ink) 6%, transparent);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:2px;padding:.05em .35em;font-size:.9em}.from-to .to{margin:0 .1em;display:inline-block}.hero-side{align-items:center;gap:var(--space-5);flex-direction:column;min-width:0;padding-top:6px;display:flex}.portrait{aspect-ratio:1;border-radius:var(--radius);width:176px;display:block;overflow:hidden}.portrait img{object-fit:cover;width:100%;height:100%}.contact{align-items:center;gap:var(--space-1);text-align:center;flex-direction:column;display:flex}.contact p{color:var(--ink-2);font-size:var(--text-sm);white-space:nowrap;line-height:1.6}.links{justify-content:center;align-items:center;gap:var(--space-1);display:flex}.links a{border-radius:var(--radius);width:32px;height:32px;color:var(--ink-2);justify-content:center;align-items:center;transition:color .16s,background-color .16s;display:flex}.links a:is(:hover,:focus-visible){color:var(--accent);background:var(--accent-soft)}.links svg{fill:currentColor;width:17px;height:17px;display:block}.links a[aria-label=Google\ Scholar] svg{width:19px;height:19px}.preview-space{transition:grid-template-rows .32s var(--ease);grid-template-rows:0fr;display:grid}.preview-space.is-open{grid-template-rows:1fr}.preview-space-inner{min-height:0;overflow:hidden}.preview-card{align-items:center;column-gap:var(--space-4);max-width:480px;margin:var(--space-3) 0 var(--space-1);padding:var(--space-3);border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);color:var(--ink);opacity:0;transition:opacity .2s ease, transform .32s var(--ease), border-color .16s ease;grid-template-columns:144px minmax(0,1fr);display:grid;transform:translateY(-6px)}.preview-space.is-open .preview-card{opacity:1;transform:none}.preview-card:is(:hover,:focus-visible){border-color:color-mix(in srgb, var(--accent) 40%, var(--rule))}.preview-card img{aspect-ratio:6244/2819;object-fit:contain;width:100%}.preview-copy{min-width:0;display:block}.preview-title{font-family:var(--display);font-size:var(--text-md);font-weight:600;line-height:1.3;transition:color .16s;display:block}.preview-meta{margin-top:var(--space-1);color:var(--ink-3);font-size:var(--text-sm);display:block}.preview-card:is(:hover,:focus-visible) .preview-title{color:var(--accent)}.launch-card{width:min(100%,384px);max-width:none;padding:6px;display:block}.launch-media{aspect-ratio:16/9;background:var(--panel);border-radius:2px;display:block;position:relative;overflow:hidden}.launch-video{object-fit:cover;width:100%;height:100%}.launch-progress{background:var(--accent);transform-origin:0;height:2px;transition:transform .26s linear;position:absolute;inset:auto 0 0;transform:scaleX(0)}.section{grid-template-columns:var(--label) minmax(0, 1fr);column-gap:var(--space-7);margin-top:var(--space-8);align-items:start;display:grid}.section-title{font-size:var(--text-xl);margin-top:-.1em;line-height:1.2}.news{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.news li{column-gap:var(--space-6);grid-template-columns:216px minmax(0,1fr);align-items:baseline;display:grid}.news time{color:var(--ink-3);font-size:var(--text-sm);font-variant-numeric:tabular-nums;text-align:right}.news p{color:var(--ink-2)}.listening-section{width:240px;max-width:100%}.listening-section[hidden]{display:none}.listening-heading{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.listening-label{color:var(--ink-3);font-size:var(--text-sm);transition:color .16s}.listening-section:has(.listening-preview:is(:hover,:focus-visible)) .listening-label{color:var(--accent)}.listening-current{color:var(--accent);font-size:var(--text-sm);align-items:center;gap:6px;line-height:1.5;display:inline-flex}.listening-current:before{content:"";background-image:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor);background-position:0 100%,4px 100%,8px 100%;background-repeat:no-repeat;background-size:2px 40%,2px 100%,2px 70%;width:10px;height:10px;animation:.9s ease-in-out infinite alternate equalizer}.listening-current[hidden]{display:none}@keyframes equalizer{33%{background-size:2px 100%,2px 30%,2px 80%}66%{background-size:2px 60%,2px 70%,2px 30%}to{background-size:2px 20%,2px 90%,2px 100%}}.listening-preview{min-height:196px;display:block;position:relative}.listening-preview.is-ready{min-height:0}.listening-source{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.listening-rows,.history-column{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.listening-history{z-index:80;width:auto;height:auto;color:var(--ink);filter:drop-shadow(0 16px 28px #131b3324)drop-shadow(0 1px 2px #131b330f);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:auto;overflow:visible}.listening-history[hidden]{display:none}.listening-history::backdrop{backdrop-filter:blur();pointer-events:none;background:0 0;transition:background-color .22s,-webkit-backdrop-filter .22s,backdrop-filter .22s}.listening-history.is-open::backdrop{background:color-mix(in srgb, var(--bg) 35%, transparent);backdrop-filter:blur(2px)}.history-surface{column-gap:var(--space-4);padding:var(--space-4);border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);color:var(--ink);clip-path:inset(var(--origin,0) round var(--radius));transition:clip-path .22s var(--ease);grid-template-columns:repeat(2,240px);align-items:start;display:grid}.listening-history.is-open .history-surface{clip-path:inset(0 round var(--radius));transition-duration:.38s}.history-heading{grid-column:1/-1;width:240px}.history-heading .listening-label{color:var(--accent)}.listening-history.is-single .history-surface{row-gap:var(--space-3);grid-template-columns:240px}.listening-row{column-gap:var(--space-4);flex:none;grid-template-columns:40px minmax(0,1fr);height:40px;display:grid;position:relative}.listening-art,.listening-copy{height:40px;display:block;position:relative;overflow:hidden}.listening-art{z-index:1;border-radius:2px;width:40px;box-shadow:0 1px 2px #14161c24}.listening-art img{width:325px;max-width:none;height:calc(var(--feed-height) * 1.25);left:-20px;top:calc(-15px - var(--track) * 70px);position:absolute}.listening-copy img{width:260px;max-width:none;height:var(--feed-height);left:-60px;top:calc(-8px - var(--track) * 56px);position:absolute}.listening-copy.is-text{flex-direction:column;justify-content:center;gap:1px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.3;display:flex}.listening-track,.listening-artist{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.listening-track{color:var(--ink);font-size:14px;font-weight:600}.listening-artist{color:var(--ink-3);font-size:13px}.listening-rows>.listening-row:first-child:before{content:"";background:conic-gradient(from 20deg, transparent 0 8%, #ffffff2e 12%, transparent 18% 58%, #ffffff1f 62%, transparent 68%), radial-gradient(circle, var(--accent) 0 2.5px, #eef1f8 3px 4px, var(--accent) 4.5px 7px, #121a2e 7.5px), repeating-radial-gradient(circle, #121a2e 0 1px, #222b42 1.5px 2.5px);width:34px;height:34px;transition:transform .52s var(--spring);border-radius:50%;position:absolute;top:3px;left:3px;transform:translate(9px)}.listening-preview:is(:hover,:focus-visible) .listening-rows>.listening-row:first-child:before{transform:translate(15px)rotate(200deg)}.listening-section.is-playing .listening-rows>.listening-row:first-child:before{animation:2.4s linear infinite spin;transform:translate(15px)}@keyframes spin{0%{transform:translate(15px)rotate(0)}to{transform:translate(15px)rotate(360deg)}}.papers{gap:var(--space-7);display:grid}.paper{column-gap:var(--space-6);grid-template-columns:216px minmax(0,1fr);align-items:start;display:grid}.paper-figure{padding:var(--space-3);border:1px solid var(--rule);border-radius:var(--radius);background:var(--panel);transition:border-color .16s;display:block;overflow:hidden}.paper-figure:is(:hover,:focus-visible){border-color:color-mix(in srgb, var(--accent) 40%, var(--rule))}.paper-figure :is(img,video){background:var(--surface);width:100%;height:auto;box-shadow:0 0 0 1px var(--rule);border-radius:2px}.paper-title{font-size:var(--text-lg);letter-spacing:-.01em;margin-top:-.1em;font-weight:600;line-height:1.3}.paper-title a{color:var(--ink)}.paper-title a:is(:hover,:focus-visible){color:var(--accent)}.paper-authors{margin-top:var(--space-2);color:var(--ink-2);font-size:var(--text-sm);line-height:1.6}.paper-venue{margin-top:var(--space-1);color:var(--ink-3);font-size:var(--text-sm)}.paper-links{margin-top:var(--space-3);color:var(--ink-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.paper-links a{color:var(--ink-2)}.paper-links a+a:before{content:"·";margin:0 var(--space-2);color:var(--ink-3);display:inline-block}.skip-link{top:var(--space-4);left:var(--space-4);z-index:100;border:1px solid var(--ink);background:var(--bg);padding:10px 16px;position:fixed;transform:translateY(calc(-100% - 24px))}.skip-link:focus-visible{transform:translateY(0)}@media (width<=800px){.page{padding-top:var(--space-7);padding-bottom:var(--space-7)}.hero{column-gap:var(--space-4);grid-template-columns:minmax(0,1fr) 72px}.hero-copy,.hero-side{display:contents}.name{grid-area:1/1;align-self:end;margin-top:0;font-size:2.75rem}.lede{grid-area:2/1}.portrait{grid-area:1/2/3;align-self:center;width:72px}.bio{grid-area:3/1/auto/-1}.contact{margin-top:var(--space-6);text-align:left;grid-area:4/1/auto/-1;align-items:flex-start}.contact p{white-space:normal}.links{margin-left:-6px}.listening-section{width:auto;max-width:320px;margin-top:var(--space-5);grid-area:5/1/auto/-1}.preview-card{grid-template-columns:112px minmax(0,1fr)}.section,.paper{grid-template-columns:minmax(0,1fr)}.section{row-gap:var(--space-4);margin-top:var(--space-7)}.news li{column-gap:var(--space-4);grid-template-columns:76px minmax(0,1fr)}.news time{text-align:left}.papers{gap:var(--space-6)}.paper-figure{max-width:360px}.paper-body{margin-top:var(--space-4)}}@media (width<=560px){.page{padding:var(--space-6) max(var(--space-5), env(safe-area-inset-right)) max(var(--space-7), env(safe-area-inset-bottom)) max(var(--space-5), env(safe-area-inset-left))}.name{font-size:2.375rem}.news li{column-gap:var(--space-3);grid-template-columns:72px minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}