.cv-page{--text:#000}:root[data-theme=dark] .cv-page{--text:#e8e8e8}@media screen and (prefers-color-scheme:dark){:root[data-theme=auto] .cv-page{--text:#e8e8e8}}.cv-document{--heading:var(--text);--accent:var(--text);margin:40px 0 0;font-family:"source sans 3",segoe ui,Arial,sans-serif;font-size:16px;line-height:1.5}.cv-header{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1fr);align-items:center;gap:24px;padding:12px 0 32px;text-align:left;border-bottom:3px solid var(--accent)}.cv-header h1{margin:0 0 10px;font-size:clamp(38px,5vw,56px);font-weight:350;letter-spacing:-.035em;line-height:1.15}.cv-affiliation{margin:0;font-size:1.1em;font-weight:500}.cv-lab{margin:3px 0 0;font-size:.95em}.cv-contact{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;font-size:.9em;text-align:right}.cv-contact li{margin:0;min-width:0}.cv-contact-url{display:none}.cv-document a{overflow-wrap:anywhere}.cv-contact a{color:var(--text);text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:4px}.cv-contact a:hover{color:var(--accent);text-decoration-color:initial}.cv-main{padding:30px 0 36px}.cv-main>section{margin-top:30px}.cv-main>section:first-child{margin-top:0}.cv-document h2{margin:0 0 16px;padding:0 0 8px;border:0;border-bottom:1px solid var(--border);color:var(--accent);font-size:18px;font-weight:600;line-height:1.3;letter-spacing:.035em;text-transform:uppercase}.cv-introduction p{margin:0}.cv-introduction p+p{margin-top:10px}.cv-document .education-list{gap:22px}.cv-document .education-item{column-gap:16px}.cv-document .education-item h3,.cv-document .project-item h3{font-size:1.05em;font-weight:600}.cv-document .education-item p,.cv-document .experience-summary{font-size:.95em}.cv-education-details{grid-column:1/-1;grid-row:4;margin-top:5px}.cv-skills-list,.cv-courses-list{margin:0;padding:0;list-style:none}.cv-skills-list{display:grid;gap:14px}.cv-skills-list li,.cv-courses-list li{margin:0}.cv-skills-list h3{margin:0;font-size:1em;font-weight:600}.cv-skills-list p{margin:3px 0 0;font-size:.95em}.cv-courses-list{display:grid;gap:6px;font-size:.95em}.cv-document .work-list{padding-left:0;margin:0;line-height:1.5}.cv-document .work-list>li{margin:0 0 20px}.cv-document .work-list>li::before{content:none}.cv-document .publication-list{list-style:none;counter-reset:publication;padding-inline-start:0}.cv-document .publication-list>li{position:relative;counter-increment:publication;padding-inline-start:2.5em}.cv-document .publication-list>li::before{content:"[" counter(publication)"]";counter-increment:none;position:absolute;inset-inline-start:0;width:2em;text-align:start;font-variant-numeric:tabular-nums;line-height:1.4175}.cv-document .work-list>li:last-child{margin-bottom:0}.cv-document .work-list h3{font-size:1.05em;line-height:1.35}.cv-document .authors,.cv-document .publication-details,.cv-document .publication-summary{margin-top:5px;font-size:.9em}.cv-document .publication-details .venue{color:color-mix(in srgb,var(--text) 80%,var(--background))}.cv-document .publication-details .venue em{font-style:normal}.cv-document .publication-details .venue strong{font-weight:400}.cv-document .project-list{gap:20px}.cv-document .project-item{margin:0;padding:0;border:0;border-radius:0;background:0 0}.cv-document .project-item p{margin-top:5px;font-size:.95em}.cv-document .project-tags{gap:0 12px;margin-top:6px}.cv-document .tag{padding:0;border:0;border-radius:0;background:0 0;font-size:.85em;color:var(--accent)}.cv-network-scroll{overflow-x:auto;padding:4px 0}.cv-network-scroll:focus-visible{outline:2px solid var(--text);outline-offset:4px}.cv-network{display:block;width:100%;max-width:100%;min-width:300px;height:auto;margin-inline:auto;cursor:grab;touch-action:none;user-select:none}.cv-network.is-navigating{cursor:grabbing}.cv-network-edge path{fill:none;stroke:color-mix(in srgb,var(--text) 30%,var(--background));stroke-width:1.25;stroke-linecap:round}.cv-network-edge text{fill:color-mix(in srgb,var(--text) 65%,var(--background));font-size:11px;font-weight:500;text-anchor:middle;paint-order:stroke;stroke:var(--background);stroke-width:5px;stroke-linejoin:round}.cv-network-node{cursor:grab;touch-action:none}.cv-network-node.is-dragging{cursor:grabbing}.cv-network-node .cv-network-halo{opacity:.12}.cv-network-node .cv-network-avatar{stroke:var(--background);stroke-width:3}.cv-network-node text{fill:var(--text);font-size:13px;font-weight:500}.cv-network-node .cv-network-initials{fill:#fff;font-size:17px;font-weight:600;pointer-events:none}.cv-network-primary .cv-network-halo{opacity:.24}.cv-network-primary .cv-network-name{font-weight:650}.cv-network-node:hover .cv-network-halo,.cv-network-node:focus-within .cv-network-halo{opacity:.3}.cv-network-node:focus-visible{outline:none}.cv-network-node:focus-visible .cv-network-avatar,.cv-network-node a:focus-visible .cv-network-avatar{stroke:var(--text)}.cv-network-node a:hover .cv-network-name{text-decoration:underline;text-underline-offset:3px}.cv-network.has-highlight .cv-network-node:not(.is-connected),.cv-network.has-highlight .cv-network-edge:not(.is-connected){opacity:.2}.cv-network-edge.is-connected path{stroke:var(--text);stroke-width:1.75}.cv-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px 20px;padding-block:16px 32px}.cv-button{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border:1px solid var(--border);border-radius:4px;background:0 0;color:var(--accent);font:inherit;font-size:.9em;cursor:pointer}.cv-button:hover{background:var(--surface)}.cv-button[hidden]{display:none}.cv-print-help{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media screen and (max-width:620px){.cv-document{margin-top:24px}.cv-header{grid-template-columns:minmax(0,1fr);gap:16px;padding:8px 0 24px}.cv-contact{text-align:left}.cv-main{padding:28px 0 12px}.cv-document h2{font-size:17px}.cv-network{min-width:0}.cv-network-node text{font-size:12px}.cv-network-node .cv-network-initials{font-size:15px}}@page{size:A4;margin:12mm 14mm}@media print{:root,:root[data-theme=dark],:root[data-theme=auto]{color-scheme:light;--background:#fff;--surface:#fff;--text:#000;--heading:#000;--accent:#000;--border:#ccc;--table-border:#bbb}body.cv-page{--text:#000;background:#fff}:root[data-theme=dark] .cv-page{--text:#000}.site-header,.wrapper>footer,.skip-link,.cv-toolbar{display:none!important}.wrapper{display:block;min-height:0}.container{width:100%;max-width:none;margin:0;padding:0}.cv-document{margin:0;font-size:9pt;line-height:1.35}.cv-header{padding:0 0 12pt;border-bottom-width:1pt}.cv-header h1{font-size:32pt;margin-bottom:6pt}.cv-contact{gap:3pt}.cv-contact-url{display:inline}#connections{break-inside:avoid}.cv-network-scroll{overflow:visible}.cv-network{min-width:0}.cv-main{padding:14pt 0 0}.cv-main>section{margin-top:16pt}.cv-document h2{font-size:11pt;margin-bottom:8pt;padding-bottom:4pt;break-after:avoid}.cv-header,.cv-document li{break-inside:avoid}.cv-document p{orphans:3;widows:3}.cv-document a{color:inherit}.cv-document .education-list,.cv-document .project-list{gap:10pt}.cv-document .work-list{line-height:1.35}.cv-document .work-list>li{margin-bottom:10pt}.cv-document .project-item h3 a{display:inline}.cv-document .project-tags{display:none}.cv-document .project-item h3 a::after,.cv-document .resource-links a::after{content:" (" attr(href)")";font-size:8pt;font-weight:400}.cv-document .resource-links a{min-height:0}}