:root{--cv-ink: #2c2a26;--cv-muted: #5c584f;--cv-sage: #4f6b56;--cv-sage-soft: #7e957d;--cv-dust: #4a6a7c;--cv-paper: #f7f3ea;--cv-sheet: #fffcf6;--cv-rule: #d4cbb8;--cv-font: "Segoe UI", "Source Sans 3", "Helvetica Neue", system-ui, sans-serif;--cv-display: Palatino, "Palatino Linotype", "Iowan Old Style", "Times New Roman", serif}html.cv-doc,body.cv-doc{margin:0;min-height:100%;background:radial-gradient(1200px 500px at 50% -10%,#e7eee4 0%,transparent 60%),var(--cv-paper);color:var(--cv-ink);font:16px/1.55 var(--cv-font);-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body.cv-doc{padding:32px 20px 64px}.cv-page{display:grid;grid-template-columns:176px min(860px,100%);justify-content:center;gap:36px;align-items:start}.cv-toc{position:sticky;top:24px;padding:4px 0 0;font-size:.82rem}.cv-toc-title{margin:0 0 10px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--cv-sage-soft)}.cv-toc ol{margin:0;padding:0;list-style:none}.cv-toc li+li{margin-top:6px}.cv-toc a{color:var(--cv-muted);text-decoration:none;border-bottom:1px solid transparent}.cv-toc a:hover,.cv-toc a:focus-visible{color:var(--cv-sage);border-bottom-color:var(--cv-sage-soft);outline:none}.cv-sheet{box-sizing:border-box;width:100%;min-width:0;margin:0;background:var(--cv-sheet);border:1px solid var(--cv-rule);border-radius:12px;padding:44px 52px 56px;box-shadow:0 18px 50px #3c321e14;color:var(--cv-ink)}.cv-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin:0 0 32px;padding-bottom:20px;border-bottom:1px solid var(--cv-rule)}.cv-toolbar-actions{display:flex;flex-wrap:wrap;gap:8px}.cv-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;min-height:40px;padding:8px 16px;border-radius:999px;border:1px solid var(--cv-sage);background:transparent;color:var(--cv-sage);font:650 14px/1 var(--cv-font);text-decoration:none;cursor:pointer;letter-spacing:.01em}.cv-btn:hover,.cv-btn:focus-visible{background:#eef3ec;outline:2px solid var(--cv-sage);outline-offset:2px}.cv-btn-primary{background:var(--cv-sage);color:#f7f3ea;border-color:var(--cv-sage)}.cv-btn-primary:hover,.cv-btn-primary:focus-visible{background:#3e5644;color:#fff}.cv-btn-linkedin{background:var(--cv-dust);border-color:var(--cv-dust);color:#f4f8fa}.cv-btn-linkedin:hover,.cv-btn-linkedin:focus-visible{background:#3a5666;color:#fff}.cv-btn-ghost{border-color:var(--cv-rule);color:var(--cv-muted)}.cv-header{margin-bottom:28px}.cv-kicker{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--cv-sage-soft)}.cv-header h1{margin:0;font:600 2.55rem/1.1 var(--cv-display);letter-spacing:-.02em;color:var(--cv-ink)}.cv-role{margin:12px 0 0;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--cv-sage)}.cv-focus{margin:8px 0 0;color:var(--cv-ink);font-size:.98rem;font-weight:550}.cv-meta{margin:8px 0 0;color:var(--cv-muted)}.cv-availability{margin:4px 0 0;color:var(--cv-muted);font-style:italic}.cv-section{margin:0 0 26px}.cv-section:last-child{margin-bottom:0}.cv-section h2{margin:0 0 12px;padding-bottom:6px;border-bottom:1.5px solid #c9d4c6;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--cv-sage)}.cv-summary{margin:0;font-size:1.02rem}.cv-list{margin:0;padding:0 0 0 1.15em}.cv-list li{margin:0 0 .45em}.cv-list li:last-child{margin-bottom:0}.cv-list li::marker{color:var(--cv-sage-soft)}.cv-skill-groups{margin:0}.cv-skill-group{display:grid;grid-template-columns:minmax(140px,32%) 1fr;gap:4px 16px;padding:8px 0;border-bottom:1px solid #eee6d6}.cv-skill-group:last-child{border-bottom:0;padding-bottom:0}.cv-skill-group:first-child{padding-top:0}.cv-skill-group dt{margin:0;font-weight:700;color:var(--cv-ink);font-size:.92rem;line-height:1.45}.cv-skill-group dd{margin:0;color:var(--cv-ink);font-size:.95rem}.cv-entry,.cv-project{margin:0 0 22px}.cv-entry:last-child,.cv-project:last-child{margin-bottom:0}.cv-entry-head{display:flex;justify-content:space-between;gap:16px 24px;align-items:baseline}.cv-entry-titles{min-width:0}.cv-entry-head h3{margin:0;font-size:1.08rem;font-weight:700;letter-spacing:-.01em;color:var(--cv-ink)}.cv-org{margin:2px 0 0;font-style:italic;color:var(--cv-sage)}.cv-entry-meta{flex:0 0 auto;text-align:right;color:var(--cv-muted);font-size:.92rem;line-height:1.45;white-space:nowrap}.cv-dates,.cv-place{margin:0}.cv-dates{font-weight:650;color:var(--cv-ink)}.cv-entry-intro{margin:8px 0 10px;font-style:italic;color:var(--cv-muted)}.cv-entry .cv-list{margin-top:8px}.cv-subjob{margin:14px 0 0}.cv-subjob-head{display:flex;justify-content:space-between;gap:12px 20px;align-items:baseline;margin:0 0 6px}.cv-subjob-head h4{margin:0;font-size:.98rem;font-weight:650;font-style:italic;color:var(--cv-ink)}.cv-subjob-head .cv-dates{font-weight:550;font-style:italic;color:var(--cv-muted)}.cv-project{border:1px solid var(--cv-rule);border-radius:10px;background:#fffcf8;padding:0}.cv-project summary{list-style:none;cursor:pointer;padding:14px 18px}.cv-project summary::-webkit-details-marker{display:none}.cv-project summary h3{padding-right:1.4em;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='none' stroke='%237e957d' stroke-width='1.6' d='M1.5 1.5 L6 6 L10.5 1.5'/></svg>") right .15em center no-repeat}.cv-project[open] summary h3{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='none' stroke='%237e957d' stroke-width='1.6' d='M1.5 6.5 L6 2 L10.5 6.5'/></svg>")}.cv-project summary:hover h3,.cv-project summary:focus-visible{outline:none}.cv-project summary:focus-visible h3{text-decoration:underline;text-decoration-color:var(--cv-sage-soft)}.cv-project-body{padding:0 18px 16px;border-top:1px solid #eee6d6}.cv-labelled,.cv-tech,.cv-languages{margin:10px 0 0}.cv-project-body .cv-list{margin-top:10px}.cv-label{font-weight:700;color:var(--cv-sage)}.cv-label:after{content:":"}.cv-connect p{margin:0 0 8px}.cv-inline-link{color:var(--cv-dust);font-weight:650;text-decoration:none;border-bottom:1px solid #b7c9d2}.cv-inline-link:hover,.cv-inline-link:focus-visible{color:#2f4d5c}.print-only{display:none}@media (max-width: 1100px){.cv-page{grid-template-columns:min(860px,100%)}.cv-toc{display:none}}@media (max-width: 700px){body.cv-doc{padding:12px 12px 40px}.cv-sheet{padding:28px 20px 36px;border-radius:8px}.cv-header h1{font-size:2rem}.cv-role{font-size:.72rem;letter-spacing:.05em}.cv-toolbar{align-items:stretch}.cv-toolbar-actions,.cv-btn,.cv-back{width:100%}.cv-entry-head,.cv-subjob-head{flex-direction:column;gap:2px 0}.cv-entry-meta,.cv-subjob-head .cv-dates{text-align:left;white-space:normal}.cv-skill-group{grid-template-columns:1fr;gap:2px}.cv-project summary,.cv-project-body{padding-left:14px;padding-right:14px}}@media print{@page{size:A4;margin:12mm 14mm}html.cv-doc,body.cv-doc{background:#fff;padding:0;font-size:9.7pt;line-height:1.34;print-color-adjust:exact;-webkit-print-color-adjust:exact}.no-print,.cv-toolbar,.cv-btn,.cv-toc{display:none!important}.print-only,.cv-print-url{display:block!important;color:var(--cv-muted)}.cv-page{display:block}.cv-sheet{width:auto;max-width:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:#fff}.cv-header{margin-bottom:11px;break-after:avoid;page-break-after:avoid}.cv-header h1{font-size:20pt}.cv-section{margin-bottom:9px}.cv-list li{margin-bottom:.28em}.cv-skill-group{padding:4px 0}.cv-section h2{break-after:avoid;page-break-after:avoid}.cv-entry:not(:has(.cv-subjob)),.cv-edu,.cv-subjob,.cv-skill-group{break-inside:avoid;page-break-inside:avoid}.cv-entry-head,.cv-subjob-head,.cv-entry-intro{break-after:avoid;page-break-after:avoid;break-inside:avoid;page-break-inside:avoid}.cv-project{border:0;border-radius:0;background:transparent;margin:0 0 8px}.cv-project summary{padding:0;cursor:default;break-after:avoid;page-break-after:avoid;break-inside:avoid;page-break-inside:avoid}#cv-education,#cv-certifications,#cv-languages,#cv-connect{break-inside:avoid;page-break-inside:avoid}.cv-project summary h3{background:none!important;padding-right:0}.cv-project-body{padding:0;border-top:0}.cv-project-body,.cv-project-body>*{display:block!important}a{color:inherit;text-decoration:none}}
