.academic-site{--academic-gutter:clamp(1rem,2.5vw,4rem);--academic-max-width:144rem;--academic-chapter-title:clamp(2rem,3.4vw,4rem);--academic-bg:#f8f7fb;--academic-surface:#fff;--academic-ink:#231955;--academic-body:#514c65;--academic-muted:#706b80;--academic-line:#e4dfed;--academic-tint:#f0ecf8;--academic-gold:#9b6515;--academic-hero:#f0ebf8;--color-primary:#231955;--color-primary-content:#fff;--color-base-100:var(--academic-surface);--color-base-200:var(--academic-tint);--color-base-300:var(--academic-line);--color-base-content:var(--academic-ink);background:var(--academic-bg);color:var(--academic-ink);font-family:var(--font-sans);isolation:isolate;line-height:1.65;min-height:100dvh;overflow-wrap:break-word;overflow-x:clip}.academic-site.is-dark{--academic-bg:#161222;--academic-surface:#211b30;--academic-ink:#f0eafa;--academic-body:#d1c7df;--academic-muted:#b0a4c3;--academic-line:#41364f;--academic-tint:#30253f;--academic-gold:#edbc70;--academic-hero:#2c2040;--color-primary:#d5c3f4;--color-primary-content:#231955}.academic-site *,.academic-site :after,.academic-site :before{box-sizing:border-box}.academic-width{margin-inline:auto;width:min(var(--academic-max-width),calc(100% - var(--academic-gutter)*2))}.academic-site :is(h1,h2,h3,h4,p){margin:0}.academic-site :is(h1,h2,h3,h4){color:var(--academic-ink);text-wrap:balance}.academic-site :is(a,button,summary){touch-action:manipulation}.academic-site :is(h3,h4){font-size:var(--text-lg);line-height:1.5}.collaboration-copy h3,.curiosity-detail h2,.interests-heading h3,.research-overview h3,.section-heading h2{font-size:var(--text-section)}.publication h3,.teaching-role h3{font-size:var(--text-xl)}.contact-panel h3{font-size:var(--text-feature)}.hours-badge,.profile-metrics strong{font-size:var(--text-4xl)}.publication-index{font-size:var(--text-2xl)}.academic-site :where(.academic-brand,.academic-nav,.profile-eyebrow,.profile-affiliation,.profile-links,.current-role,.section-heading p,.item-date,.degree-school,.item-location,.disclosure-action,.profile-metrics a>span,.curiosity-note,.authors,.keyword-list,.paper-download,.catalogue-filters label,.filter-summary,.teaching-context,.teaching-institution,.teaching-total>small,.course-title>span,.course>p,.languages small,.job-place span,.project-filters>span,.project-carousel-controls>p,.carousel-position,.project-links,.reference-grid p,.interest-copy p,.academic-footer){font-size:var(--text-sm)}.academic-site :where(.section-index,.section-count,.overline,.curiosity-heading>span,.curiosity-core small,.curiosity-sources a>span,.portrait-label){font-size:var(--text-xs)}.academic-site :where(.academic-brand small,.current-role small,.profile-metrics strong small,.publication-index span,.hours-badge small,.skill-card pre){font-size:var(--text-sm)}.academic-site .curiosity-node.btn{font-size:var(--text-sm);line-height:1.5}.academic-site .catalogue-filters .select{font-size:var(--text-base)}.academic-site a{text-decoration:none;transition:color .18s ease}.academic-site a:hover{color:var(--academic-gold)}.academic-site :is(a,button,summary):focus-visible{outline:2px solid var(--academic-gold);outline-offset:4px}.academic-site .btn{border-radius:8px;box-shadow:none;font-family:inherit;font-size:var(--text-sm);font-weight:400;height:auto;min-height:44px}.academic-site .btn-primary{background:var(--color-primary);border:1px solid var(--color-primary);color:var(--color-primary-content)}.academic-site .btn-outline{background:transparent;border:1px solid var(--academic-line);color:var(--academic-ink)}.academic-site .btn:hover{transform:translateY(-2px)}.academic-site .badge{border-color:var(--academic-line);border-radius:5px;font-size:var(--text-sm);height:auto;line-height:1.4;min-height:26px;padding:4px 10px;white-space:normal}.academic-site .card{background:var(--academic-surface);border:1px solid var(--academic-line);border-radius:14px;box-shadow:none;display:block}.academic-site section[id]{scroll-margin-top:calc(var(--academic-header-height, 180px) + 20px)}.academic-skip{background:var(--academic-surface);left:20px;padding:15px;position:fixed;top:0;transform:translateY(-110%);z-index:100}.academic-skip:focus{transform:none}.academic-header{background:var(--academic-surface);border-bottom:1px solid var(--academic-line);position:sticky;top:0;z-index:40}.header-top{flex-wrap:wrap;gap:12px 20px;justify-content:space-between;min-height:80px;padding-block:12px}.academic-brand,.header-top{align-items:center;display:flex}.academic-brand{gap:16px}.brand-symbol{font-size:2.3125rem;font-weight:700;letter-spacing:-5px;line-height:1;padding-right:5px}.brand-symbol>span{color:var(--academic-gold)}.academic-brand>span:last-child{letter-spacing:.12em;line-height:1.5}.academic-brand small{color:var(--academic-muted);display:block;letter-spacing:.02em;margin-top:3px;max-width:36ch}.header-controls{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.animation-control.btn{align-items:center;color:var(--academic-ink);display:inline-flex;gap:8px}.animation-control svg{flex:none;height:18px;width:18px}.animation-control[aria-pressed=true]{background:var(--academic-tint)}.animation-control-short{display:none}.language-control.btn,.theme-control.btn{color:var(--academic-ink);padding:8px;width:44px}.language-control.btn{display:inline-flex;gap:7px;width:64px}.language-control img,.language-item img{border-radius:2px;flex:none;-o-object-fit:cover;object-fit:cover}.theme-control svg{height:20px;width:20px}.header-cv{gap:25px;padding-inline:20px}.academic-nav{align-items:stretch;display:flex;flex-wrap:wrap;gap:3px;padding:0 0 10px}.academic-nav a{border-radius:6px;font-size:inherit;min-height:36px;padding:9px 12px;position:relative;transition:background .22s,color .22s}.academic-nav a:hover{background:var(--academic-tint)}.academic-nav a[aria-current]{background:var(--academic-ink);color:var(--academic-surface)}.academic-content{padding-top:32px}.opening-grid{align-items:start;display:grid;gap:24px;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.profile-panel.card{background:var(--academic-hero);isolation:isolate;overflow:hidden;position:relative}.hero-backdrop{inset:0;-webkit-mask-image:linear-gradient(#000 35%,transparent 95%);mask-image:linear-gradient(#000 35%,transparent 95%);overflow:hidden;pointer-events:none;position:absolute}.hero-backdrop svg{height:100%;width:100%}.hero-field-lines{stroke:var(--academic-ink);stroke-width:1;animation:hero-field-drift 18s ease-in-out infinite alternate;opacity:.095;transform-origin:75% 30%}.hero-field-signals{stroke:var(--academic-gold);stroke-width:1.5;stroke-dasharray:7 170;animation:hero-field-flow 16s linear infinite;opacity:.35}.hero-field-points{fill:var(--academic-gold);animation:hero-field-breathe 8s ease-in-out infinite alternate;opacity:.4}@keyframes hero-field-drift{to{transform:translate(14px,-18px) rotate(3deg)}}@keyframes hero-field-flow{to{stroke-dashoffset:-708}}@keyframes hero-field-breathe{to{opacity:.15;transform:translateY(-12px)}}.profile-intro{padding:30px 34px 22px;position:relative;z-index:1}.profile-eyebrow{align-items:center;display:flex;flex-wrap:wrap;gap:9px;letter-spacing:.09em;text-transform:uppercase}.status-dot{background:var(--academic-gold);border-radius:50%;box-shadow:0 0 0 4px #b4893620;flex:none;height:6px;width:6px}.eyebrow-line{background:var(--academic-line);height:1px;width:24px}.identity-layout{align-items:center;display:grid;gap:18px;grid-template-columns:1.2fr 1fr;margin-top:24px}.hello{color:var(--academic-body);margin-bottom:8px!important}.identity-copy h1{font-size:clamp(2.75rem,4.5vw,4.5rem);font-weight:400;letter-spacing:-.055em;line-height:1.04}.identity-copy h1>span{font-size:.76em;letter-spacing:-.055em}.identity-copy h1>.hero-first-name{font-size:1em;letter-spacing:inherit}.hero-surname{align-items:baseline;display:flex}.hero-surname .typewriter.is-typing+.name-period{visibility:hidden}.name-period{color:var(--academic-gold)}.profile-role{line-height:1.5;margin-top:20px!important}.profile-affiliation{color:var(--academic-body);margin-top:5px!important}.portrait-composition{aspect-ratio:1;display:grid;isolation:isolate;justify-self:end;place-items:center;position:relative;width:min(100%,260px)}.portrait-composition img{border-radius:50%;height:82%;-o-object-fit:cover;object-fit:cover;position:relative;width:82%;z-index:1}.portrait-grid{background-image:radial-gradient(var(--academic-ink) .6px,transparent .6px);background-size:15px 15px;border-radius:50%;inset:-4px;opacity:.16;position:absolute}.portrait-orbit{border:1px solid var(--academic-gold);border-radius:50%;height:49%;opacity:.55;pointer-events:none;position:absolute;transform:rotate(-32deg);width:112%;z-index:2}.orbit-one{animation:academic-orbit 16s ease-in-out infinite alternate}.orbit-two{border-color:var(--academic-ink);height:98%;opacity:.2;transform:rotate(32deg);width:101%}.portrait-label{background:var(--academic-ink);border-radius:3px;bottom:-5px;color:var(--academic-surface);font-family:var(--font-mono);line-height:1.4;padding:7px 10px;position:absolute;right:-5px;transform:rotate(-5deg);z-index:3}.portrait-cross{color:var(--academic-gold);font-size:1.75rem;font-weight:400;left:-3%;position:absolute;top:10%}@keyframes hero-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes hero-portrait{0%{opacity:0;transform:translate(20px) scale(.93) rotate(5deg)}to{opacity:1;transform:none}}.hero-arrival{animation:hero-rise .75s cubic-bezier(.22,1,.36,1) both}.hero-arrival .profile-eyebrow{animation:hero-rise .65s 80ms both}.hero-arrival .identity-copy{animation:hero-rise .8s cubic-bezier(.22,1,.36,1) .17s both}.hero-arrival .portrait-composition{animation:hero-portrait 1.1s cubic-bezier(.22,1,.36,1) .23s both}.hero-arrival .current-role,.hero-arrival .profile-actions,.hero-arrival .profile-links{animation:hero-rise .75s .34s both}.education-arrival{animation:hero-rise .95s cubic-bezier(.22,1,.36,1) .2s both}.academic-site.motion-paused :is(.hero-arrival,.education-arrival,.hero-arrival *){animation:none!important}@media (prefers-reduced-motion:reduce),print{:is(.hero-arrival,.education-arrival,.hero-arrival *){animation:none!important}}.profile-summary{color:var(--academic-body);line-height:1.7;margin-top:28px!important;max-width:65ch}.profile-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.profile-actions .btn{gap:30px;padding-inline:18px}.academic-site .btn-jmp{background:#f5e7c9;border:1px solid #d0ab68;color:var(--academic-ink)}.is-dark .btn-jmp{background:#edc88b;color:#251b38}.profile-links{display:flex;flex-wrap:wrap;gap:22px;margin-top:17px}.profile-links a{align-items:center;display:inline-flex;gap:7px;padding-block:7px}.profile-links img{filter:brightness(0) saturate(100%);flex:none;-o-object-fit:contain;object-fit:contain;opacity:.8}.is-dark .profile-links img{filter:brightness(0) invert(1)}.profile-links svg{flex:none;height:17px;width:17px}.profile-links a>span{color:var(--academic-muted);margin-left:1px}.current-role{align-items:center;background:color-mix(in srgb,var(--academic-surface) 55%,transparent);border-top:1px solid var(--academic-line);display:flex;gap:15px;padding:17px 30px;position:relative;z-index:1}.current-marker{color:var(--academic-gold);font-size:1.75rem}.current-role small{color:var(--academic-muted)}.current-role>a{margin-left:auto;padding:10px}.education-panel{padding:25px 28px 15px}.education-heading{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.education-heading .section-heading{flex:1;margin:0}.education-heading .heading-rule{display:none}.education-seal{color:var(--academic-gold);flex:none;height:58px;width:58px}.education-seal-ring{animation:education-seal-turn 50s linear infinite;transform-origin:center}@keyframes education-seal-turn{to{transform:rotate(1turn)}}.section-heading{align-items:baseline;display:flex;gap:13px;margin-bottom:25px}.section-index{color:var(--academic-gold);font-family:var(--font-mono)}.section-heading h2{font-weight:400;letter-spacing:-.035em;line-height:1.3}.section-heading-copy>p{color:var(--academic-muted);margin-top:7px}.section-count{color:var(--academic-muted);font-family:var(--font-mono);line-height:1.4;margin-left:7px;vertical-align:super}.heading-rule{background:var(--academic-line);flex:1;height:1px;min-width:15px}.section-heading-chapter{align-items:start;border-bottom:1px solid var(--academic-line);border-top:1px solid var(--academic-line);display:grid;gap:clamp(18px,2.5vw,48px);grid-template-columns:max-content minmax(0,1fr);margin-bottom:36px;padding-block:clamp(20px,2.5vw,36px);position:relative}.section-heading-chapter .section-index{color:var(--academic-gold);font:clamp(2rem,3.4vw,4rem)/1.15 var(--font-display);letter-spacing:-.055em}.section-heading-copy{min-width:0}.section-heading-chapter h2{font-size:var(--academic-chapter-title);letter-spacing:-.045em;line-height:1.15}.section-heading-chapter .section-heading-copy>p{font-size:var(--text-base);line-height:1.65;margin-top:12px;max-width:70ch}.section-heading-controls{grid-column:2/-1;min-width:0}@media (min-width:1200px){.section-heading-with-controls{grid-template-columns:max-content minmax(0,.85fr) minmax(0,1.4fr)}.section-heading-controls{grid-column:3}}.section-heading-chapter .section-count{display:inline-block;font-size:var(--text-sm);letter-spacing:normal;line-height:1.5;vertical-align:super}.section-heading-chapter .heading-rule{background:var(--academic-gold);bottom:-1px;height:3px;left:0;position:absolute;transform-origin:left;transition:transform .7s cubic-bezier(.22,1,.36,1) .15s;width:clamp(72px,15%,220px)}.section-heading-chapter.aos-init:not(.aos-animate) .heading-rule{transform:scaleX(0)}.section-heading-chapter.aos-animate .heading-rule{transform:scaleX(1)}.academic-site.motion-paused .section-heading-chapter .heading-rule{transform:none}@media (prefers-reduced-motion:reduce),print{.section-heading-chapter .heading-rule{transform:none!important}}@media (max-width:600px){.section-heading-chapter{gap:14px;margin-bottom:28px;padding-block:22px}.section-heading-chapter .section-index{font-size:var(--text-2xl);padding-top:5px}.section-heading-controls{grid-column:1/-1;margin-top:8px}}.academic-site ol.education-journey{list-style:none;margin:0;padding:0}.education-journey .degree{display:grid;gap:18px;grid-template-columns:3.375rem minmax(0,1fr);padding:0 0 24px;position:relative}.degree-year{align-items:center;color:var(--academic-muted);display:flex;flex-direction:column;position:relative}.degree-year>span{font:var(--text-2xl)/1.4 var(--font-display);letter-spacing:-.04em}.degree-year i{background:var(--academic-surface);border:1px solid var(--academic-muted);border-radius:50%;display:block;height:9px;margin-top:12px;width:9px}.degree-year:after{background:var(--academic-line);bottom:-14px;content:"";position:absolute;top:55px;width:1px}.degree:last-child .degree-year:after{display:none}.degree-content{border-bottom:1px solid var(--academic-line);min-width:0;padding-bottom:20px}.degree:last-child .degree-content{border-bottom:0;padding-bottom:0}.degree-doctoral .degree-year{color:var(--academic-gold)}.degree-doctoral .degree-year i{background:var(--academic-gold);border-color:var(--academic-gold);box-shadow:0 0 0 5px var(--academic-tint)}.degree-doctoral .degree-content{border-top:2px solid var(--academic-gold);padding-top:12px}.degree-doctoral .degree-content h3{font-family:var(--font-display);font-size:var(--text-2xl)}.item-date{color:var(--academic-muted)}.expected-label{color:var(--academic-gold)}.degree h3{font-weight:400;line-height:1.45;margin-top:5px}.degree-school{color:var(--academic-body);line-height:1.5;margin-top:4px!important}.item-location{color:var(--academic-muted);margin-top:2px!important}.academic-site summary{align-items:center;color:var(--academic-body);cursor:pointer;display:flex;gap:14px;justify-content:space-between;list-style:none;min-height:36px}.academic-site summary::-webkit-details-marker{display:none}.academic-site details[open]{padding-bottom:8px}.academic-site details p{line-height:1.7;margin-top:8px}.academic-site ul{color:var(--academic-body);line-height:1.7;list-style:disc;margin:10px 0 0;padding-left:17px}.research-disclosure{border:1px solid var(--academic-line);border-radius:7px;margin-top:10px;overflow:hidden}.academic-site .research-disclosure>summary{background:var(--academic-tint);color:var(--academic-ink);gap:12px;min-height:44px;padding:9px 12px;transition:background .18s}.academic-site .research-disclosure>summary:hover{background:color-mix(in srgb,var(--academic-ink) 9%,var(--academic-surface))}.research-disclosure>summary:focus-visible{outline-offset:-3px}.disclosure-label{line-height:1.5}.disclosure-action{align-items:center;color:var(--academic-body);display:inline-flex;flex:none;gap:7px}.disclosure-chevron{height:17px;transition:transform .22s ease;width:17px}.disclosure-hide,.research-disclosure[open]>summary .disclosure-show{display:none}.research-disclosure[open]>summary .disclosure-hide{display:inline}.research-disclosure[open]>summary .disclosure-chevron{transform:rotate(180deg)}.academic-site .research-disclosure[open]{padding-bottom:0}.disclosure-content{padding:4px 13px 14px}.research-disclosure[open]>.disclosure-content{animation:disclosure-arrival .22s ease-out}@keyframes disclosure-arrival{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.degree-thesis{font-style:italic}.profile-metrics{border-block:1px solid var(--academic-line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:28px;padding-block:22px}.profile-metrics a{align-items:center;border-left:1px solid var(--academic-line);display:flex;flex-wrap:wrap;gap:13px;padding:0 23px}.profile-metrics a:first-child{border:0;padding-left:0}.profile-metrics strong{font-family:var(--font-display);font-weight:400;letter-spacing:-.05em;line-height:1}.profile-metrics strong small{line-height:1;margin-left:3px}.profile-metrics a>span{color:var(--academic-body)}.profile-metrics i{color:var(--academic-gold);font-style:normal;margin-left:auto}.academic-section{margin-top:clamp(4rem,6vw,7rem)}.academic-site [id^=paper-]{scroll-margin-top:calc(var(--academic-header-height, 180px) + 20px)}.curiosity-section.card{background:#241c42;border-color:#4a3b60;color:#e5def6;margin-top:28px;overflow:hidden;padding:27px 32px 30px}.curiosity-heading{align-items:center;display:flex;gap:20px;justify-content:space-between}.curiosity-heading .overline{color:#d5c1ed}.curiosity-heading>span{color:#c0b0d2;font-family:var(--font-mono);letter-spacing:.1em}.curiosity-layout{align-items:center;display:grid;gap:45px;grid-template-columns:1.1fr 1fr;margin-top:10px}.curiosity-graph{background:radial-gradient(ellipse at center,#6c4a7d26,transparent 65%);height:30rem;min-width:0;position:relative}.curiosity-lines{height:100%;inset:0;position:absolute;width:100%;stroke:#ac8bc955;stroke-width:.16}.curiosity-spoke{opacity:.5}.curiosity-lines .curiosity-active-line{stroke:#edbb62;stroke-width:.26;stroke-dasharray:1.2 .9;animation:curiosity-signal 5s linear infinite}.curiosity-core{align-items:center;background:#302344;border:1px solid #edbb6270;border-radius:50%;box-shadow:0 0 45px #ce8ef116;display:flex;flex-direction:column;height:86px;justify-content:center;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:106px}.curiosity-core>span{color:#f4ecdf;font-size:var(--text-4xl);letter-spacing:-.1em;line-height:1}.curiosity-core small{color:#edbb62;letter-spacing:.05em;margin-top:6px}.curiosity-node.btn{background:#2c2140;border:1px solid #77628d;border-radius:8px;color:#e5def6;font-weight:400;gap:7px;height:auto;left:var(--node-x);max-width:9.25rem;min-height:44px;padding:9px 11px;position:absolute;text-align:center;transform:translate(-50%,-50%);transition:background .22s,border-color .22s;white-space:normal;width:-moz-max-content;width:max-content}.curiosity-node.btn>span:last-child{min-width:0;overflow-wrap:anywhere}.curiosity-node.btn:hover{background:#493154;border-color:#edbb62;color:#fff;transform:translate(-50%,-50%)}.curiosity-node.btn[aria-pressed=true]{background:#edbb62;border-color:#edbb62;color:#251a36}.curiosity-dot{background:currentColor;border-radius:50%;flex:none;height:4px;width:4px}.curiosity-orbiter{animation:curiosity-orbit 36s linear infinite;border-radius:50%;height:70%;left:19%;pointer-events:none;position:absolute;top:15%;width:62%}.curiosity-orbiter>span{background:#edbb62;border-radius:50%;box-shadow:0 0 12px #edbb62;height:5px;left:50%;position:absolute;top:0;width:5px}.curiosity-detail{min-width:0;padding-block:20px}.curiosity-detail .overline{color:#c7b1de}.curiosity-detail h2{color:inherit;font-weight:400;letter-spacing:-.03em;line-height:1.3;margin-top:10px}.curiosity-intro{color:#c9b9dc;margin-top:10px!important}.curiosity-sources{display:grid;gap:10px;margin-top:18px}.curiosity-sources a{background:#ffffff07;border:1px solid #ffffff18;border-radius:5px;color:#e5def6;display:block;line-height:1.7;padding:10px 12px}.curiosity-sources a:hover{border-color:#edbb62;color:#fff}.curiosity-sources a>span{color:#edbb62;display:flex;gap:10px;justify-content:space-between;letter-spacing:.08em;margin-bottom:5px;text-transform:uppercase}.curiosity-sources i{font-style:normal}.curiosity-note{color:#c4b3d5;margin-top:16px!important}@keyframes curiosity-orbit{to{transform:rotate(1turn)}}@keyframes curiosity-signal{to{stroke-dashoffset:-20}}.research-overview.card{background:#231955;border:0;color:#f0eafa;display:grid;gap:50px;grid-template-columns:1.25fr 1fr;overflow:hidden;padding:32px 35px 55px;position:relative}.research-overview h3{color:inherit;font-family:var(--font-display);font-weight:400;line-height:1.35}.overline{color:var(--academic-muted);letter-spacing:.11em;text-decoration:none;text-transform:uppercase}.research-overview .overline{color:#e9bc73;margin-bottom:14px}.research-overview-copy>p:last-child{line-height:1.7;margin-top:18px;opacity:.8}.research-topics{display:flex;flex-direction:column;gap:16px;justify-content:center}.research-topics>span{align-items:baseline;display:flex;gap:17px}.research-topics>span>span{color:#e9bc73}.research-wave{bottom:0;height:42px;left:0;position:absolute;width:100%;fill:none;stroke:#c5a0ec;stroke-width:1;opacity:.22}.publication-list{display:flex;flex-direction:column;gap:15px}.publication.card{display:grid;gap:24px;grid-template-columns:50px minmax(0,1fr);padding:26px 30px;transition:border-color .25s,box-shadow .25s}.academic-site .publication.card[data-aos]{transition-duration:1s,1s,.25s,.25s;transition-property:opacity,transform,border-color,box-shadow;transition-timing-function:cubic-bezier(.2,.8,.2,1)}.publication.job-market-paper{background:color-mix(in srgb,var(--academic-surface) 94%,#e8aa42);border-color:#c9a261;border-left-width:4px}.publication.job-market-paper .publication-meta .badge{background:#f3e2bf;color:#684615}.publication:hover{border-color:#b6a2d2;box-shadow:0 5px 20px #23195505}.publication-index{color:var(--academic-muted);font-family:var(--font-display);line-height:1.2;padding-top:2px}.publication-index span{display:block;margin-top:12px}.publication-meta{align-items:center;display:flex;gap:15px;justify-content:space-between;margin-bottom:12px}.academic-site .paper-available{background:#e5eee8;border:0;color:#335d43}.academic-site .paper-progress{background:var(--academic-tint);border:0;color:var(--academic-body)}.paper-download{align-items:center;display:flex;min-height:30px}.publication h3{font-weight:400;line-height:1.55;max-width:950px}.authors{color:var(--academic-muted);margin-top:9px!important}.authors a{border-bottom:1px solid var(--academic-line)}.keyword-list{color:var(--academic-body);display:flex;flex-wrap:wrap;gap:7px 18px;margin-top:15px}.keyword-list span:before{color:var(--academic-gold);content:"·";margin-right:6px}.abstract{margin-top:16px}.abstract .disclosure-content>p{color:var(--academic-body);max-width:75ch}.research-visits{background:var(--academic-surface);border:1px solid var(--academic-line);border-radius:14px;margin-top:32px;padding:28px}.visits-heading{align-items:center;display:flex;gap:24px;justify-content:space-between;margin-bottom:24px}.academic-site .visits-heading h3{font:var(--text-section)/1.3 var(--font-display);margin-top:8px}.visits-count{color:var(--academic-muted);display:inline-block;font:var(--text-sm)/1.5 var(--font-mono);margin-left:12px;vertical-align:super}.visits-campus{color:var(--academic-gold);flex:none;height:64px;width:150px}.visits-campus-signal{stroke-dasharray:12 48;animation:visit-signal 8s linear infinite}@keyframes visit-signal{to{stroke-dashoffset:-120}}.academic-site ol.visits-list{display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:0;padding:0}.visit-record{align-items:start;background:var(--academic-tint);border-radius:9px;border-top:2px solid var(--academic-gold);display:flex;gap:20px;min-width:0;padding:24px}.visit-emblem{border:1px solid var(--academic-line);border-radius:6px 6px 24px 24px;color:var(--academic-gold);display:grid;flex:none;font:var(--text-2xl)/1 var(--font-display);height:70px;place-items:center;position:relative;width:62px}.visit-emblem,.visit-emblem>span{background:var(--academic-surface)}.visit-emblem>span{border-radius:50%;font:var(--text-sm)/1 var(--font-sans);padding:4px;position:absolute;right:-8px;top:-8px}.visit-copy{min-width:0}.visit-dates{color:var(--academic-gold);font-size:var(--text-sm)}.academic-site .visit-copy h4{font-size:var(--text-xl);font-weight:400;margin-top:8px}.visit-host{margin-top:12px!important}.visit-host>span{display:block}.visit-host>span,.visit-label{color:var(--academic-muted);font-size:var(--text-sm)}.visit-label{margin-top:12px!important}.talks-controls{min-width:0}.talks-control-top{align-items:end;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.talks-year-filter.catalogue-filters{margin:0}.talks-categories{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.talks-categories .btn{background:var(--academic-surface);border:1px solid var(--academic-line);color:var(--academic-body);gap:12px;text-align:left;white-space:normal}.talks-categories .btn[aria-pressed=true]{background:var(--academic-ink);border-color:var(--academic-ink);color:var(--academic-surface)}.talks-category-count{border:1px solid;border-radius:20px;font-variant-numeric:tabular-nums;padding:1px 7px}.academic-site ol.talks-timeline{display:grid;gap:32px;list-style:none;margin:0;padding:0}.talks-period{display:grid;gap:30px;grid-template-columns:155px minmax(0,1fr);position:relative}.talks-period:before{background:var(--academic-line);bottom:-46px;content:"";left:13px;position:absolute;top:14px;width:1px}.talks-period:last-child:before{bottom:0}.talks-period-heading{padding-left:38px;position:relative}.talks-rail-node{background:var(--academic-gold);border:3px solid var(--academic-bg);border-radius:50%;box-shadow:0 0 0 1px var(--academic-line);height:13px;left:7px;position:absolute;top:10px;width:13px}.academic-site .talks-period-heading h3{font:var(--text-section)/1.25 var(--font-display)}.talks-period-heading p{color:var(--academic-muted);font-size:var(--text-sm);margin-top:10px!important}.academic-site ol.talks-event-list{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:0;padding:0}.talks-entry{min-width:0;scroll-margin-top:calc(var(--academic-header-height, 180px) + 20px)}.talks-entry-card{align-items:start;background:var(--academic-surface);border:1px solid var(--academic-line);border-radius:10px;display:flex;flex-direction:column;height:100%;padding:24px;transition:border-color .22s,transform .22s}.talks-entry-card:hover{border-color:var(--academic-gold);transform:translateY(-3px)}.talks-entry-top{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}.talks-kind{align-items:center;color:var(--academic-gold);display:inline-flex;font-size:var(--text-sm);gap:8px}.talks-kind svg,.talks-venue svg{flex:none;height:20px;width:20px}.talks-entry-card[data-category=seminar] .talks-kind{color:var(--academic-muted)}.academic-site .talks-entry-card h4{font-size:var(--text-xl);font-weight:400;text-wrap:pretty}.talks-institution{color:var(--academic-body);margin-top:8px!important}.talks-date{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:20px!important}.talks-date time{font-variant-numeric:tabular-nums}.talks-series-label,.talks-venue{color:var(--academic-muted);font-size:var(--text-sm)}.talks-venue{align-items:start;border-top:1px solid var(--academic-line);display:flex;gap:8px;margin-top:10px!important;padding-top:14px;width:100%}.talks-venue svg{margin-top:2px}.talks-spanning .talks-period-heading h3{font-size:var(--text-xl);line-height:1.5}.talks-event-view .talks-period{grid-template-columns:minmax(200px,1fr) minmax(0,2fr)}.talks-event-view .talks-period-heading h3{font-size:var(--text-xl);line-height:1.5}@media (min-width:901px){.talks-timeline:not(.talks-event-view) .talks-entry:only-child{grid-column:1/-1}.talks-timeline:not(.talks-event-view) .talks-entry:only-child .talks-entry-card{display:grid;gap:0 32px;grid-template-areas:"kind date" "title date" "institution venue";grid-template-columns:minmax(0,1fr) minmax(220px,.65fr)}.talks-entry:only-child .talks-entry-top{grid-area:kind}.talks-entry:only-child h4{grid-area:title}.talks-entry:only-child .talks-institution{grid-area:institution}.talks-entry:only-child .talks-date{grid-area:date;margin-top:0!important}.talks-entry:only-child .talks-venue{grid-area:venue}}@media (max-width:900px){.talks-period{gap:20px;grid-template-columns:110px minmax(0,1fr)}.academic-site ol.talks-event-list{grid-template-columns:1fr}}@media (max-width:600px){.research-visits{padding:22px 18px}.visits-heading{gap:16px}.visits-campus{width:80px}.academic-site ol.visits-list{gap:16px;grid-template-columns:1fr}.visit-record{gap:16px;padding:20px 16px}.visit-emblem{font-size:var(--text-xl);height:56px;width:44px}.talks-control-top{align-items:stretch}.talks-year-filter.catalogue-filters{align-items:end;display:flex;width:100%}.talks-year-filter label{flex:1}.talks-year-filter .btn{flex:1;white-space:normal}.talks-event-view .talks-period,.talks-period{gap:16px;grid-template-columns:minmax(0,1fr);padding-left:26px}.talks-period-heading{padding-left:0}.talks-period:before{left:3px}.talks-rail-node{left:-29px}.talks-entry-card{padding:20px}}.teaching-overview{border-block:1px solid var(--academic-line);display:grid;gap:48px;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);margin-bottom:32px;padding-block:28px}.teaching-overview-total{align-self:center}.teaching-hours-figure{align-items:baseline;color:var(--academic-gold);display:flex;gap:8px;margin-top:12px!important}.teaching-hours-figure strong{font:var(--text-5xl)/1.1 var(--font-display)}.teaching-format-totals{color:var(--academic-body);display:flex;flex-wrap:wrap;font-size:var(--text-sm);gap:8px 20px;margin-top:16px}.teaching-format-totals strong{color:var(--academic-ink);font-weight:400;margin-right:5px}.teaching-scope{color:var(--academic-muted);font-size:var(--text-sm);margin-top:12px!important}.teaching-year-overview{border-left:1px solid var(--academic-line);padding-left:40px}.academic-site .teaching-year-heading h3{font-size:var(--text-lg);font-weight:400}.teaching-year-heading p{color:var(--academic-muted);font-size:var(--text-sm);margin-top:4px!important}.teaching-year-bars{display:grid;gap:5px;margin-top:16px}.academic-site .teaching-year-button.btn{background:transparent;border:1px solid transparent;box-shadow:none;color:var(--academic-ink);display:grid;font-weight:400;gap:16px;grid-template-columns:100px minmax(40px,1fr) 60px;padding:8px 12px;text-align:left;transform:none;width:100%}.academic-site .teaching-year-button.btn:hover{background:var(--academic-tint);border-color:var(--academic-line)}.academic-site .teaching-year-button.btn[aria-pressed=true]{background:var(--academic-tint);border-color:var(--academic-gold)}.teaching-bar-track{background:var(--academic-line);border-radius:8px;height:5px;overflow:hidden}.teaching-bar-track>span{background:var(--academic-gold);border-radius:inherit;display:block;height:100%;transform:scaleX(var(--hours-share));transform-origin:left;transition:transform .45s ease;width:100%}.teaching-bar-hours{font-variant-numeric:tabular-nums;justify-self:end}.teaching-toolbar.section-toolbar{background:transparent;border:0;border-radius:0;margin:0;padding:0}.teaching-toolbar-heading{align-items:center;display:flex;flex-wrap:wrap;gap:16px 24px}.teaching-view-note{color:var(--academic-muted);font-size:var(--text-sm)}.teaching-subject-facts{display:grid;gap:16px 28px;grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));margin-bottom:18px}.teaching-subject-facts dt{color:var(--academic-muted);font-size:var(--text-sm);margin-bottom:4px}.teaching-subject-facts dd{margin:0}.teaching-subject-details .disclosure-content{padding-top:18px}.teaching-shared-content{border-top:1px solid var(--academic-line);margin-top:24px;padding-top:20px}.academic-site .teaching-shared-content h4{font-size:var(--text-lg);font-weight:400}.teaching-syllabuses{display:grid;gap:20px}.teaching-syllabus-variant+.teaching-syllabus-variant{border-top:1px solid var(--academic-line);padding-top:20px}.teaching-syllabus-contexts{color:var(--academic-muted);font-size:var(--text-sm);margin-bottom:10px}.teaching-syllabus-topics{-moz-columns:2;column-count:2;-moz-column-gap:32px;column-gap:32px}.teaching-syllabus-topics li{-moz-column-break-inside:avoid;break-inside:avoid}@media (max-width:600px){.teaching-syllabus-topics{-moz-columns:1;column-count:1}}.teaching-subject{border-bottom:1px solid var(--academic-line);padding-block:28px}.teaching-subject-heading{align-items:start;display:flex;gap:18px;margin-bottom:22px}.teaching-subject-heading>div:first-of-type{flex:1;min-width:0}.teaching-subject-index{color:var(--academic-muted);flex:none;font:var(--text-2xl)/1.4 var(--font-display)}.academic-site .teaching-subject-heading h3{font-size:var(--text-xl);font-weight:400;margin-top:6px}.teaching-subject .hours-badge{font-size:var(--text-3xl)}.course-facts{color:var(--academic-muted);display:flex;flex-wrap:wrap;font-size:var(--text-sm);gap:7px 16px;margin-top:8px}.course-level{color:var(--academic-ink)}.course-facts>span+span{position:relative}.course-facts>span+span:before{color:var(--academic-muted);content:"·";left:-10px;position:absolute}.academic-site .course .course-appointment{color:var(--academic-gold)}.academic-site .course .course-institution{font-size:var(--text-sm)}@media (max-width:900px){.teaching-overview{gap:32px;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.teaching-year-overview{padding-left:24px}}@media (max-width:600px){.teaching-overview{gap:24px;grid-template-columns:minmax(0,1fr)}.teaching-year-overview{border:0;border-top:1px solid var(--academic-line);padding:24px 0 0}.academic-site .teaching-year-button.btn{gap:10px;grid-template-columns:90px minmax(20px,1fr) 50px;padding-inline:8px}.teaching-subject-heading{flex-wrap:wrap;gap:12px}.teaching-subject-heading>div:first-of-type{flex-basis:calc(100% - 44px)}.teaching-subject-heading .teaching-total{align-items:baseline;display:flex;gap:10px;margin-left:38px;text-align:left}.teaching-subject{padding-block:22px}.teaching-subject-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-subject-facts>div:first-child{grid-column:1/-1}}.teaching-by-course,.teaching-list{display:grid;gap:15px}.section-toolbar{background:var(--academic-tint);border:1px solid var(--academic-line);border-radius:12px;margin-bottom:24px;padding:20px}.view-switch{background:var(--academic-surface);border:1px solid var(--academic-line);border-radius:9px;display:inline-flex;gap:4px;padding:4px}.view-switch .btn{background:transparent;border:1px solid transparent;color:var(--academic-body);min-height:44px;padding-inline:16px}.view-switch .btn[aria-pressed=true]{background:var(--academic-ink);color:var(--academic-surface)}.catalogue-filters{align-items:end;display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.catalogue-filters label{color:var(--academic-body);display:grid;gap:7px;min-width:150px}.catalogue-filters label:nth-child(2){flex:1;min-width:220px}.teaching-toolbar .catalogue-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}.teaching-toolbar .catalogue-filters label{min-width:0}.teaching-toolbar .reset-filters{grid-column:1/-1;justify-self:end}@media (min-width:1600px){.teaching-toolbar .catalogue-filters{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) repeat(2,minmax(0,1fr))}}.catalogue-filters .select{background-color:var(--academic-surface);border:1px solid var(--academic-line);border-radius:6px;color:var(--academic-ink);font-family:inherit;height:auto;min-height:48px;padding-left:12px;white-space:normal;width:100%}.reset-filters.btn{color:var(--academic-body);min-height:48px}.filter-summary{color:var(--academic-muted);margin-top:14px!important}.empty-filter{align-items:center;border:1px dashed var(--academic-line);border-radius:10px;color:var(--academic-body);display:flex;flex-wrap:wrap;gap:12px;padding:24px}.teaching-role{border-bottom:1px solid var(--academic-line);padding:28px 0}.teaching-role>header{align-items:center;display:flex;gap:24px;justify-content:space-between;margin-bottom:22px}.teaching-role h3{color:var(--academic-gold);font-weight:400;line-height:1.5;margin-top:5px}.teaching-context{align-items:center;display:flex;flex-wrap:wrap;gap:12px;letter-spacing:.04em}.teaching-year{color:var(--academic-muted);letter-spacing:.02em}.teaching-institution{color:var(--academic-muted);line-height:1.7;margin-top:7px!important}.teaching-total{display:grid;flex:none;gap:8px;text-align:right}.teaching-total>small{opacity:.8}.hours-badge{color:var(--academic-gold);font-family:var(--font-display);line-height:1;white-space:nowrap}.hours-badge small{line-height:1;margin-left:4px}.course-grid{display:grid;gap:20px 30px;grid-template-columns:repeat(2,minmax(0,1fr))}.course{border-top:1px solid var(--academic-line);min-width:0;padding-top:14px}.course-title{align-items:baseline;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-top:6px}.course-title h4{font-weight:400;line-height:1.5}.course-title>span{color:var(--academic-gold);white-space:nowrap}.course>p{color:var(--academic-muted);margin-top:6px}.skills-grid{display:grid;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}.skill-card.card{padding:22px 19px;transition:transform .25s,border-color .25s}.skill-card:hover{border-color:#b6a2d2;transform:translateY(-5px)}.skill-card h3{font-weight:400}.skill-card details{margin-top:10px}.skill-card pre{background:var(--academic-tint);border-radius:4px;font-family:var(--font-mono);padding:10px;white-space:pre-wrap}.skill-orbit-card.skill-card{padding:18px 24px 24px}.orbit-card-heading{align-items:center;display:flex;gap:15px;justify-content:space-between}.orbit-motion-control.btn{color:var(--academic-muted);height:38px;min-height:38px;padding:6px;width:38px}.skill-orbit{--orbit-radius:103px;height:268px;margin:9px auto 20px;max-width:100%;position:relative;width:268px}.skill-orbit-path{border:1px dashed var(--academic-line);border-radius:50%;height:206px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:206px}.skill-orbit-path.inner-path{border-style:solid;height:154px;opacity:.55;width:154px}.skill-orbit-core{background:var(--academic-surface);border:1px solid var(--academic-line);border-radius:50%;box-shadow:0 0 0 10px var(--academic-tint);color:var(--academic-gold);display:grid;height:88px;left:50%;place-items:center;position:absolute;top:50%;transform:translate(-50%,-50%);width:88px}.skill-orbit-core img{height:54px;-o-object-fit:contain;object-fit:contain;width:54px}.skill-orbit-core svg{height:36px;width:48px}.technology-initials{color:var(--academic-ink);font-family:var(--font-display);font-size:var(--text-lg);line-height:1}.skill-orbit-track{animation:skill-orbit-turn var(--orbit-duration,55s) linear infinite;inset:0;position:absolute}.skill-satellite{height:0;left:50%;position:absolute;top:50%;transform:rotate(var(--angle)) translate(var(--orbit-radius)) rotate(calc(var(--angle)*-1));width:0}.skill-satellite-face{animation:skill-orbit-turn var(--orbit-duration,55s) linear reverse infinite;background:#fff;border:1px solid #e3deeb;border-radius:50%;box-shadow:0 3px 9px #2319550a;display:grid;height:48px;margin:-24px 0 0 -24px;place-items:center;position:absolute;width:48px}.skill-satellite-face img{height:30px;-o-object-fit:contain;object-fit:contain;width:30px}.skill-satellite-face .technology-initials{color:#231955;font-size:.9375rem}.skill-package-labels{display:flex;flex-wrap:wrap;gap:6px}.skill-package-labels .badge{padding:5px 9px}.skill-orbit-card.orbit-stopped :is(.skill-orbit-track,.skill-satellite-face),.skill-orbit-card:focus-within :is(.skill-orbit-track,.skill-satellite-face),.skill-orbit-card:hover :is(.skill-orbit-track,.skill-satellite-face){animation-play-state:paused}@keyframes skill-orbit-turn{to{transform:rotate(1turn)}}.languages{align-items:center;display:flex;flex-wrap:wrap;gap:20px;padding-top:22px}.languages small{color:var(--academic-muted);margin-left:7px}.language-item{align-items:center;display:inline-flex;gap:8px}.language-item small{margin-left:0}.experience-grid{display:grid;gap:15px;grid-template-columns:repeat(2,minmax(0,1fr))}.experience-card.card{padding:24px 28px}.experience-card h3{font-weight:400;margin-top:10px}.job-place{margin-top:5px!important}.job-place span{color:var(--academic-muted)}.project-filters{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.project-filters .btn{background:var(--academic-surface);border:1px solid var(--academic-line);color:var(--academic-body);min-height:38px}.project-filters .btn[aria-pressed=true]{background:var(--academic-ink);color:var(--academic-surface)}.project-filters>span{color:var(--academic-muted);font-family:var(--font-mono);margin-left:auto}.projects-grid{display:grid;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}.projects-toolbar{align-items:start;display:flex;flex-direction:column;gap:16px}.projects-toolbar .project-filters{margin:0}.projects-toolbar .project-filters>span{margin-left:15px}@media (min-width:1200px){.projects-toolbar{align-items:end}.projects-toolbar .project-filters{justify-content:end}}.project-carousel-controls{align-items:center;display:flex;gap:20px;justify-content:space-between;margin-bottom:12px}.project-carousel-controls>p{color:var(--academic-muted)}.project-carousel-controls>div{align-items:center;display:flex;gap:7px}.project-carousel-controls .btn{color:var(--academic-ink);height:38px;min-height:38px}.project-carousel-controls .btn-outline{padding:5px;width:40px}.projects-carousel{--project-capacity:3;--project-visible-columns:min(var(--project-columns,3),var(--project-capacity));display:flex;gap:20px;overflow-anchor:none;overflow-x:auto;padding:5px 4px 18px;position:relative;scroll-behavior:auto;scroll-padding:4px;scrollbar-color:var(--academic-line) transparent;scrollbar-width:thin}.projects-carousel .project-slide{flex:0 0 calc((100% - (var(--project-visible-columns) - 1)*20px)/var(--project-visible-columns));min-width:285px}.project-slide{min-width:0}.project-slide>.project-card{height:100%}.carousel-position{color:var(--academic-muted);font-family:var(--font-mono);margin-top:8px!important;text-align:right}.project-card.card{overflow:hidden;transition:transform .25s,border-color .25s}.project-card:hover{border-color:#b6a2d2;transform:translateY(-5px)}.project-visual{border-bottom:1px solid var(--academic-line);height:180px;margin:0;overflow:hidden;position:relative}.project-visual>img{height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .6s ease;width:100%}.project-visual>img.project-illustration{-o-object-fit:contain;object-fit:contain;padding:22px}.project-card:hover .project-visual>img{transform:scale(1.035)}.project-image-fallback{height:100%;overflow:hidden;position:relative;width:100%}.project-image-fallback>span{font-family:var(--font-display);font-size:6.25rem;line-height:1.2;opacity:.5;position:absolute;right:30px;top:10px}.project-image-fallback>svg{height:80%;left:-15%;position:absolute;top:20%;width:85%;fill:none;stroke:currentColor;stroke-width:.8px;opacity:.4}.data-art{background:#e7ebe6;color:#506751}.web-art{background:#eee8f4;color:#7a6094}.is-dark .data-art{background:#26372f;color:#b6d4bd}.is-dark .web-art{background:#3a2c49;color:#d6bdf3}.project-body{display:flex;flex-direction:column;height:calc(100% - 180px);padding:22px}.project-body h3{font-weight:400}.project-body>p{color:var(--academic-body);line-height:1.7;margin-bottom:18px;margin-top:10px}.project-stack{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto}.project-stack .badge{min-height:23px;padding:3px 7px}.project-links{border-top:1px solid var(--academic-line);display:flex;flex-wrap:wrap;gap:17px;margin-top:20px;padding-top:8px}.project-links a{padding-block:7px}.awards-grid{display:grid;gap:20px;grid-template-columns:1fr 1fr}.award-card.card{align-items:start;display:flex;gap:22px;padding:28px}.award-symbol{color:var(--academic-gold);font-family:var(--font-display);font-size:var(--text-4xl);line-height:1}.award-card h3{font-weight:400;margin-top:9px}.award-card div>p:last-child{color:var(--academic-body);line-height:1.7;margin-top:10px}.collaboration-copy h3{font-family:var(--font-display);font-weight:400}.collaboration-copy>p{color:var(--academic-body);margin-top:10px}.reference-grid{display:grid;gap:22px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:25px}.references-title{font-weight:400;margin-top:28px!important}.reference-grid article{border-left:2px solid var(--academic-line);padding-left:14px}.reference-grid h4{font-weight:400}.reference-grid p{color:var(--academic-muted);margin-top:5px}.personal-interests{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.personal-interests.illustrated-interests{display:block;margin-top:44px}.interests-heading{margin-bottom:20px}.interests-heading h3{font-weight:400;letter-spacing:-.025em;margin-top:8px}.interest-cards{display:grid;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}.interest-card.card{overflow:hidden}.interest-illustration{background:#eef2e9;height:190px;overflow:hidden}.interest-card[data-interest="scientist reading"] .interest-illustration{background:#f5f0e4}.interest-card[data-interest=traveling] .interest-illustration{background:#efe8f5}.interest-card[data-interest=coding] .interest-illustration{background:#e8edf4}.interest-illustration svg{height:100%;transition:transform .6s ease;width:100%}.interest-card:hover .interest-card[data-interest=coding] .interest-illustration{background:#e8edf4}.interest-card[data-interest="board games"] .interest-illustration{background:#f5e9df}.interest-card[data-interest=walking] .interest-illustration{background:#e8efe8}.interest-code-cursor{animation:interest-code-blink 1.4s steps(1) infinite}.interest-die{animation:interest-dice 5s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}.interest-walking-leg{animation:interest-walk 1.8s ease-in-out infinite alternate;transform-origin:185px 99px}.interest-walking-leg.back-leg{animation-delay:-1.8s}@keyframes interest-code-blink{50%{opacity:0}}@keyframes interest-dice{to{transform:translateY(-8px) rotate(12deg)}}@keyframes interest-walk{0%{transform:rotate(-8deg)}to{transform:rotate(8deg)}}.interest-illustration svg{transform:scale(1.035)}.interest-copy{padding:22px 24px}.interest-copy h4{font-weight:400}.interest-copy p{color:var(--academic-muted);margin-top:7px}.interest-ball{animation:interest-football 6s ease-in-out infinite alternate;transform-origin:210px 104px}.interest-page{animation:interest-reading 5s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}.interest-plane{animation:interest-travel 25s linear infinite;transform-origin:180px 95px}@keyframes interest-football{0%{transform:translate(-32px) rotate(-35deg)}to{transform:translate(36px) rotate(95deg)}}@keyframes interest-reading{0%{transform:translateY(0) rotate(-8deg)}to{transform:translateY(-10px) rotate(0)}}@keyframes interest-travel{to{transform:rotate(1turn)}}.contact-panel.card{align-items:center;background:var(--academic-hero);display:grid;gap:40px;grid-template-columns:1fr 1fr;padding:40px}.contact-panel h3{font-family:var(--font-display);font-weight:400;letter-spacing:-.04em;margin-top:12px}.contact-panel p:last-child{color:var(--academic-body);line-height:1.7;margin-top:12px;max-width:350px}.contact-details{align-items:start;display:flex;flex-direction:column;gap:8px}.contact-button.btn{gap:15px;padding-inline:20px}.contact-button svg{height:19px;width:19px}.contact-details .profile-links{margin-top:7px}.consulting-link{border-top:1px solid var(--academic-line);margin-top:10px;padding-top:15px;width:100%}.academic-footer{align-items:center;color:var(--academic-muted);display:flex;gap:20px;justify-content:space-between;padding-block:30px}.academic-footer .btn{color:var(--academic-muted);gap:14px;padding:8px}@keyframes academic-orbit{to{transform:rotate(-12deg)}}.academic-site.motion-paused *,.academic-site.motion-paused :after,.academic-site.motion-paused :before{animation-play-state:paused!important;transition-duration:0s!important}.academic-site [data-aos]:focus-within,.academic-site [data-aos]:not(.aos-init),.academic-site [data-aos]:target,.academic-site.motion-paused [data-aos]{opacity:1!important;pointer-events:auto!important;transform:none!important}.academic-site.motion-paused [data-aos]{transition:none!important}@media (prefers-reduced-motion:no-preference){html:has(.academic-site:not(.motion-paused)){scroll-behavior:smooth}}@media (prefers-reduced-motion:reduce){.academic-site *,.academic-site :after,.academic-site :before{animation:none!important;transition:none!important}.academic-site [data-aos]{opacity:1!important;pointer-events:auto!important;transform:none!important}}@media print{.academic-site [data-aos]{opacity:1!important;transform:none!important}}@media (min-width:1600px){.skills-grid{grid-template-columns:repeat(auto-fit,minmax(20rem,1fr))}.course-grid{grid-template-columns:repeat(auto-fit,minmax(22rem,1fr))}.projects-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.projects-carousel{--project-capacity:4}}@media (max-width:1200px){.academic-nav a{padding-inline:9px}.opening-grid{gap:20px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.profile-intro{padding-inline:25px}.education-panel{padding-inline:22px}.identity-layout{grid-template-columns:1.25fr .9fr}.profile-metrics a{padding-inline:17px}.skills-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.skill-orbit-card.skill-card{padding-inline:16px}.skill-orbit{--orbit-radius:88px;height:232px;width:232px}.skill-orbit-path{height:176px;width:176px}.skill-orbit-path.inner-path{height:132px;width:132px}.skill-satellite-face{height:42px;margin:-21px 0 0 -21px;width:42px}.skill-satellite-face img{height:27px;width:27px}.research-overview.card{gap:30px}}@media (max-width:900px){.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.curiosity-layout{gap:24px;grid-template-columns:1fr}.curiosity-section.card{padding-inline:24px}.academic-nav{gap:2px}.opening-grid{grid-template-columns:1fr}.identity-layout{grid-template-columns:1.4fr 1fr}.portrait-composition{margin-right:20px;max-width:220px}.profile-summary{max-width:unset}.academic-site ol.education-journey{display:grid;gap:0 30px;grid-template-columns:1fr 1fr}.degree-year:after{display:none}.education-panel{padding:25px}.profile-metrics a{gap:8px;padding-inline:12px}.research-overview.card{gap:30px;grid-template-columns:1fr}.research-topics{display:grid;gap:20px;grid-template-columns:1fr 1fr}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-grid{grid-template-columns:1fr 1fr}.contact-panel.card{gap:30px;padding:30px}}@media (max-width:600px){.curiosity-section.card{padding:23px 15px}.curiosity-layout{gap:5px;grid-template-columns:1fr}.curiosity-detail{padding:10px 5px 0}.curiosity-node.btn{left:clamp(25%,var(--node-x),75%);max-width:min(7rem,calc(50% - 8px));padding:8px}.curiosity-core{height:86px;width:100px}.curiosity-core>span{font-size:1.8125rem}.section-toolbar{padding:16px}.catalogue-filters{align-items:end;display:grid;gap:13px 10px;grid-template-columns:1fr 1fr}.catalogue-filters label{min-width:0}.catalogue-filters label:nth-child(2){grid-column:1/-1;grid-row:2;min-width:0}.catalogue-filters label:nth-child(3){grid-column:2;grid-row:1}.catalogue-filters label:nth-child(4){grid-column:1/-1;grid-row:3}.reset-filters.btn{justify-self:start;padding-left:0}.view-switch .btn{padding-inline:13px}.academic-header{display:contents}.header-top{flex-wrap:wrap;gap:8px;isolation:isolate;min-height:72px;padding-block:8px;position:sticky;top:0;z-index:40}.header-top:before{background:var(--academic-surface);border-bottom:1px solid var(--academic-line);content:"";inset:0 -16px;position:absolute;z-index:-1}.academic-brand{gap:9px}.brand-symbol{font-size:1.9375rem}.academic-brand>span:last-child{font-size:var(--text-xs);letter-spacing:.02em}.academic-brand small{display:none;max-width:36ch}.header-controls{gap:2px;justify-content:space-between;width:100%}.animation-control-compact .animation-control-label{display:none}.animation-control-compact .animation-control-short{display:inline}.animation-control-compact.btn{padding-inline:8px}.language-control.btn,.theme-control.btn{height:40px;min-height:40px;width:36px}.language-control.btn{gap:5px;padding-inline:4px;width:53px}.header-cv.btn{gap:8px;height:38px;min-height:38px;padding-inline:10px}.academic-nav{display:grid;gap:4px;grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:8px}.academic-nav a{border:1px solid var(--academic-line);display:grid;font-size:inherit;line-height:1.4;min-height:44px;min-width:0;overflow-wrap:anywhere;padding:8px 4px;place-items:center;text-align:center}.academic-content{padding-top:18px}.profile-intro{padding:23px 21px 18px}.profile-eyebrow{gap:7px}.identity-layout{gap:24px;grid-template-columns:1fr;margin-top:22px}.profile-role{margin-top:13px!important}.portrait-composition{justify-self:center;margin:0 auto 12px;width:180px}.portrait-label{bottom:-10px;padding:5px 6px}.portrait-cross{font-size:1.25rem}.profile-summary{line-height:1.7;margin-top:26px!important}.profile-actions .btn{gap:15px;padding-inline:14px}.profile-links{gap:17px}.current-role{gap:10px;padding:14px 21px}.education-panel{padding:22px 21px 7px}.academic-site ol.education-journey{grid-template-columns:1fr}.education-journey .degree{gap:12px}.degree-year:after{display:block}.education-seal{height:48px;width:48px}.profile-metrics{gap:22px 0;grid-template-columns:1fr 1fr;padding-block:22px}.profile-metrics a{gap:10px;padding:0 13px}.profile-metrics a:nth-child(odd){border:0;padding-left:0}.section-heading-compact{gap:10px;margin-bottom:20px}.research-overview.card{gap:25px;padding:25px 23px 50px}.research-topics{gap:15px;grid-template-columns:1fr}.publication.card{gap:13px;grid-template-columns:26px minmax(0,1fr);padding:21px 17px}.publication h3{line-height:1.65}.publication-meta{gap:10px}.publication-meta .badge{padding-inline:8px}.paper-download{white-space:nowrap}.keyword-list{gap:5px 10px}.teaching-role>header{align-items:start;gap:16px}.teaching-context{gap:8px}.course-grid{gap:18px;grid-template-columns:1fr}.skills-grid{gap:16px;grid-template-columns:minmax(0,1fr)}.skill-orbit-card.skill-card{padding:18px 24px 24px}.skill-orbit{--orbit-radius:103px;height:268px;width:268px}.skill-orbit-path{height:206px;width:206px}.skill-orbit-path.inner-path{height:154px;width:154px}.skill-satellite-face{height:48px;margin:-24px 0 0 -24px;width:48px}.skill-satellite-face img{height:30px;width:30px}.skill-card.card{padding:20px 15px}.languages{gap:15px}.awards-grid,.experience-grid,.projects-grid{grid-template-columns:1fr}.projects-toolbar{align-items:start;gap:16px}.projects-toolbar .project-filters{width:100%}.projects-toolbar .project-filters>span{margin-left:auto}.project-carousel-controls{align-items:start;flex-direction:column;gap:12px}.project-carousel-controls>div{justify-content:flex-end;width:100%}.project-carousel-controls .btn-ghost{margin-right:auto}.projects-carousel .project-slide{flex-basis:calc(100% - 20px);min-width:0}.interest-cards{gap:16px;grid-template-columns:1fr}.interest-illustration{height:195px}.experience-card.card{padding:22px}.job-place span{display:block;margin-top:3px}.project-visual{height:180px}.project-body{height:calc(100% - 180px)}.award-card.card{gap:18px;padding:24px}.reference-grid{gap:20px;grid-template-columns:1fr}.contact-panel.card{gap:28px;grid-template-columns:1fr;padding:27px 23px}.contact-details .profile-links{gap:15px}.academic-footer{flex-wrap:wrap;gap:6px 20px;padding-block:25px}.academic-footer .btn{margin-left:auto;white-space:normal}}@media (max-width:360px){.skill-orbit{--orbit-radius:94px;height:246px;width:246px}.skill-orbit-path{height:188px;width:188px}.brand-symbol{font-size:1.6875rem}.header-cv.btn{gap:3px;padding-inline:7px}.header-controls{gap:0}.profile-intro{padding-inline:17px}.profile-actions{gap:7px}.profile-actions .btn{gap:12px;padding-inline:11px}.skill-card.card{padding-inline:12px}}@media print{.projects-carousel{display:grid;grid-template-columns:1fr 1fr;overflow:visible}.projects-carousel .project-slide{min-width:0}.carousel-position,.project-carousel-controls{display:none}}
