@font-face{font-family:Lato;src:url(/assets/Lato-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Lato;src:url(/assets/Lato-Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Lato;src:url(/assets/Lato-Heavy.woff2)format("woff2");font-weight:900;font-display:swap}:root{color:#1c3043;font-synthesis:none;--ink:#1c3043;--navy:#233e53;--teal:#518780;--muted:#576875;--surface:#eef3f5;--line:#d9e2e5;scroll-behavior:smooth;background:#fff;font-family:Lato,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}p{margin:0;line-height:1.65}h1,h2,h3{margin:0;line-height:1.12}h2{letter-spacing:-.035em;font-size:clamp(1.9rem,3.5vw,2.7rem);font-weight:900}h3{letter-spacing:-.02em;font-weight:700}ul{margin:0;padding:0;list-style:none}svg{flex:none;width:24px;height:24px}a:focus-visible,button:focus-visible,[tabindex="0"]:focus-visible{outline-offset:5px;outline:3px solid #25877d}section[id]{scroll-margin-top:96px}.shell{width:min(1180px,100% - 96px);margin-inline:auto}.skip-link{z-index:50;border:2px solid var(--teal);background:#fff;padding:14px;position:fixed;top:12px;left:16px;transform:translateY(-200%)}.skip-link:focus{transform:none}.site-header{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffed;border-bottom:1px solid #e8edef;position:sticky;top:0}.header-inner{align-items:center;gap:36px;height:88px;display:flex}.wordmark{letter-spacing:-.04em;white-space:nowrap;font-size:1.35rem;font-weight:900}.wordmark span{color:var(--teal);padding-left:3px}.main-nav{gap:30px;margin-left:auto;font-size:.94rem;display:flex}.main-nav a{padding:10px 0}.main-nav a:hover{color:#316e68}.language-switch{border:1px solid var(--line);border-radius:10px;gap:2px;padding:4px;display:flex}.language-switch button{color:var(--muted);background:0 0;border:0;border-radius:6px;padding:7px 9px;font-size:.75rem;font-weight:700}.language-switch button[aria-pressed=true]{background:var(--ink);color:#fff}.hero{grid-template-columns:1.2fr 1fr;align-items:center;gap:76px;padding-block:72px 88px;display:grid}.availability{color:#35645e;align-items:center;gap:9px;margin-bottom:26px;font-size:.9rem;display:flex}.availability span{background:var(--teal);border-radius:50%;width:8px;height:8px}.hero h1{letter-spacing:-.065em;font-size:clamp(3.3rem,5.7vw,4.65rem);font-weight:900;line-height:1.02}.hero-headline{letter-spacing:-.025em;max-width:540px;margin-top:24px;font-size:clamp(1.45rem,2.2vw,1.85rem);line-height:1.3}.hero-intro{color:var(--muted);max-width:510px;margin-top:22px;font-size:1.06rem}.hero-actions{align-items:center;gap:30px;margin-top:30px;display:flex}.button{border-radius:9px;justify-content:center;align-items:center;gap:20px;min-height:52px;padding:14px 22px;font-weight:700;display:inline-flex}.primary{background:var(--navy);color:#fff}.primary:hover{background:#33556c}.button svg{width:19px;height:19px}.text-link{text-underline-offset:5px;align-items:center;gap:10px;font-weight:700;-webkit-text-decoration:underline #a3bbb7;text-decoration:underline #a3bbb7;text-decoration-thickness:1px;display:inline-flex}.text-link:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.text-link svg{width:17px;height:17px}.hero-location{color:var(--muted);margin-top:27px;font-size:.86rem}.portrait{background:#edf0ee;border-radius:22px 80px 22px 22px;align-self:center;margin:0;position:relative;overflow:hidden}.portrait img{object-fit:cover;object-position:54% 35%;width:100%;height:474px;display:block}.portrait figcaption{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;gap:20px;padding:23px 27px;font-size:.9rem;display:flex}.portrait-mark{letter-spacing:-.06em;color:#add1cb;font-size:1.2rem;font-weight:900}.profile-section{background:var(--surface);padding-block:80px}.section-intro{grid-template-columns:1.1fr 1fr;align-items:start;gap:80px;display:grid}.section-intro h2{max-width:470px}.section-intro>p{max-width:470px;color:var(--muted);font-size:1.06rem}.areas{grid-template-columns:1fr 1fr;gap:80px;margin-top:56px;display:grid}.area-icon{color:#36726b;background:#fff;border-radius:13px;place-items:center;width:46px;height:46px;margin-bottom:20px;display:grid}.area h3{margin-bottom:17px;font-size:1.65rem}.area>p{color:var(--muted);max-width:475px;font-size:1.02rem}.skills{flex-wrap:wrap;gap:9px;margin-top:23px;display:flex}.skills li{background:#ffffff80;border:1px solid #cad9dc;border-radius:5px;padding:7px 11px;font-size:.85rem}.project-section{padding-block:92px}.project-heading{justify-content:space-between;align-items:start;gap:40px;display:flex}.project-byline{color:var(--muted);margin-bottom:14px;font-size:.88rem}.project-heading h2{letter-spacing:-.055em;align-items:center;gap:21px;font-size:3.7rem;display:flex}.hosty-symbol{color:#fff;letter-spacing:0;background:#dd563b;border-radius:50%;place-items:center;width:41px;height:41px;font-size:1.3rem;font-weight:900;display:grid}.project-lead{max-width:600px;margin-top:20px;font-size:1.17rem}.project-status{text-align:right;flex:none;padding-top:9px}.project-status>span{border:1px solid var(--line);border-radius:20px;padding:7px 13px;font-size:.82rem;display:inline-block}.project-status p{color:var(--muted);margin-top:12px;font-size:.85rem}.project-grid{grid-template-columns:1.5fr 1fr;align-items:stretch;gap:56px;margin-top:45px;display:grid}.ecosystem{background:var(--surface);border-radius:18px;padding:29px}.ecosystem>h3{font-size:1.13rem}.ecosystem-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:26px;display:grid;position:relative}.ecosystem-tabs button{text-align:center;color:var(--ink);background:#fff;border:1px solid #cbd8de;border-radius:10px;flex-direction:column;align-items:center;gap:12px;min-width:0;padding:20px 9px;font-size:.86rem;display:flex}.ecosystem-tabs button[aria-selected=true]{background:var(--navy);color:#fff;border-color:var(--navy)}.ecosystem-tabs svg{width:29px;height:29px}.ecosystem-tabs small{opacity:.8;margin-top:8px;font-size:.68rem;line-height:1.35;display:block}.node-panel{min-height:190px;padding-top:24px;font-size:.94rem}.node-panel>p{color:var(--muted)}.node-panel ul{gap:9px;margin-top:18px;display:grid}.node-panel li{align-items:center;gap:9px;display:flex}.node-panel li svg{color:#36746c;width:16px;height:16px}.map-note{color:var(--muted);margin-top:22px;font-size:.73rem}.project-story{flex-direction:column;align-items:start;padding-block:22px;display:flex}.project-story h3{font-size:1.55rem}.project-story>p{color:var(--muted);margin-top:20px;font-size:1.01rem}.project-stack{color:var(--muted);border-left:3px solid var(--teal);margin-top:27px;padding-left:16px;font-size:.86rem;line-height:1.8}.project-story .text-link{margin-top:34px;font-size:.92rem}.experience-section{background:var(--navy);color:#fff;padding-block:88px}.experience-layout{grid-template-columns:.9fr 1.35fr;gap:115px;display:grid}.experience-intro h2{max-width:340px}.experience-intro p{color:#d0dce5;max-width:350px;margin-top:25px;font-size:1.02rem}.job{border-left:1px solid #668092;padding:0 0 38px 28px;position:relative}.job:last-child{padding-bottom:0}.job:before{content:"";background:#9dc6be;border-radius:50%;width:9px;height:9px;position:absolute;top:7px;left:-5px}.job-date{color:#c1d4d9;margin-bottom:12px;font-size:.8rem}.job h3{font-size:1.65rem}.job-role{margin-top:9px;font-size:1.02rem}.job-location{color:#b9cedb;margin-top:4px;font-size:.83rem}.job ul{color:#d9e4eb;gap:9px;margin-top:17px;font-size:.94rem;display:grid}.job li{line-height:1.55}.education-section{padding-block:86px}.education-grid{grid-template-columns:1.25fr 1fr;gap:100px;margin-top:40px;display:grid}.education-copy h3,.language-profile h3{font-size:1.4rem}.degree-name{color:#36746c;margin-top:17px;font-size:.94rem;line-height:1.5}.education-copy>p:last-child{color:var(--muted);margin-top:20px;font-size:1rem}.language-profile dl{margin:22px 0 0}.language-profile dl>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:12px 0;display:flex}.language-profile dt{font-weight:700}.language-profile dd{color:var(--muted);margin:0}.certification{color:var(--muted);margin-top:19px;font-size:.84rem}.cv-section{border-top:1px solid var(--line);padding-block:64px 90px}.cv-heading{grid-template-columns:1.25fr 1fr;align-items:center;gap:100px;display:grid}.cv-heading h2{max-width:570px;font-size:2.2rem}.cv-heading p{color:var(--muted);font-size:1.03rem}.cv-options{grid-template-columns:1fr 1fr;gap:22px;margin-top:35px;display:grid}.cv-option{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:22px;padding:29px 27px;transition:background .15s;display:flex}.cv-option:hover{background:var(--surface)}.cv-icon{color:var(--teal);width:32px;height:32px}.cv-option h3{font-size:1.2rem}.cv-option p{color:var(--muted);margin-top:7px;font-size:.79rem}.cv-option span{margin-top:13px;font-size:.83rem;font-weight:700;display:inline-block}.download-icon{width:20px;height:20px;margin-left:auto}.contact-section{background:#e7f0ed;padding-block:78px}.contact-layout{grid-template-columns:1.15fr 1fr;gap:100px;display:grid}.contact-layout h2{max-width:480px}.contact-intro{color:var(--muted);max-width:490px;margin-top:25px;font-size:1.02rem}.save-contact{align-items:center;gap:12px;margin-top:28px;font-size:.9rem;font-weight:700;display:inline-flex}.save-contact svg{width:19px;height:19px}.contact-details>p:first-child{color:var(--muted);margin-bottom:10px;font-size:.9rem}.email{letter-spacing:-.025em;overflow-wrap:anywhere;font-size:clamp(1.1rem,2vw,1.55rem);font-weight:700;display:inline-block}.copy-button{color:#345e56;background:0 0;border:0;align-items:center;gap:9px;min-height:30px;margin-top:17px;padding:0;font-size:.82rem;display:flex}.copy-button svg{width:16px;height:16px}.copy-status{color:var(--muted);min-height:23px;margin-top:6px;font-size:.78rem}.phone-label{color:var(--muted);margin-top:19px;font-size:.82rem}.phone{margin-top:5px;font-size:1.14rem;display:inline-block}.social-links{gap:30px;margin-top:28px;font-size:.92rem;font-weight:700;display:flex}.social-links a{align-items:center;gap:8px;display:flex}.social-links svg{width:15px;height:15px}.site-footer{color:var(--muted);align-items:center;gap:28px;padding-block:29px;font-size:.77rem;display:flex}.footer-name{color:var(--ink);font-weight:700}.site-footer>a:last-child{margin-left:auto}@media (width>=1500px){.hero{gap:100px;padding-block:86px 100px}.portrait img{height:498px}}@media (width<=1100px){.shell{width:calc(100% - 64px)}.hero{gap:45px}.portrait img{height:430px}.hero h1{font-size:3.7rem}.main-nav{gap:22px}.header-inner{gap:24px}.areas,.section-intro,.education-grid,.cv-heading,.contact-layout{gap:50px}.experience-layout{gap:65px}.project-grid{gap:35px}.ecosystem{padding:22px}.ecosystem-tabs button{padding:18px 6px}}@media (width<=850px){.main-nav{gap:15px;font-size:.85rem}.wordmark{font-size:1.15rem}.header-inner{gap:18px}.hero{grid-template-columns:1.1fr 1fr;gap:30px;padding-block:55px 65px}.hero h1{font-size:3.1rem}.hero-headline{font-size:1.4rem}.hero-intro{font-size:.98rem}.hero-actions{flex-wrap:wrap;gap:18px}.portrait img{height:380px}.portrait figcaption{padding:20px;font-size:.8rem}.hero-location{font-size:.77rem}.profile-section{padding-block:60px}.section-intro{grid-template-columns:1fr;gap:22px}.section-intro p{max-width:640px}.areas{gap:35px;margin-top:35px}.area h3{font-size:1.4rem}.project-heading{gap:25px}.project-heading h2{font-size:3rem}.project-status{max-width:170px}.project-status p{font-size:.75rem}.project-lead{font-size:1.04rem}.project-grid{grid-template-columns:1fr;gap:12px}.project-story{padding:24px 5px}.project-story>p{max-width:680px}.project-stack{margin-top:20px}.project-story .text-link{margin-top:22px}.node-panel{min-height:155px}.experience-layout{grid-template-columns:1fr;gap:42px}.experience-intro h2,.experience-intro p{max-width:620px}.experience-intro p{margin-top:20px}.education-grid{gap:38px}.education-copy h3,.language-profile h3{font-size:1.2rem}.cv-heading{grid-template-columns:1fr;gap:18px}.cv-options{gap:16px}.cv-option{gap:15px;padding:24px 19px}.contact-layout{gap:35px}.site-footer{flex-wrap:wrap;gap:10px 25px}.site-footer p{max-width:280px}}@media (width<=650px){.shell{width:calc(100% - 40px)}.header-inner{flex-wrap:wrap;justify-content:space-between;gap:0;height:74px}.wordmark{font-size:1.15rem}.main-nav{display:none}.language-switch button{padding:7px 8px}.hero{grid-template-columns:1fr;gap:34px;padding-block:38px 52px}.availability{margin-bottom:22px}.hero h1{letter-spacing:-.06em;font-size:clamp(2.8rem,11.5vw,4rem)}.hero-headline{max-width:410px;margin-top:23px;font-size:1.5rem}.hero-intro{max-width:490px;font-size:1rem}.hero-actions{gap:24px;margin-top:27px}.hero-location{margin-top:22px;font-size:.79rem}.portrait{border-radius:18px 65px 18px 18px;width:100%}.portrait img{object-position:50% 30%;height:340px}.portrait figcaption{padding:20px 23px;font-size:.85rem}.areas{grid-template-columns:1fr;gap:34px}.area{border-bottom:1px solid #d3dfe3;padding-bottom:28px}.area:last-child{border:0;padding:0}.area h3{font-size:1.6rem}.area p{font-size:1rem}.skills{gap:7px;margin-top:18px}.skills li{font-size:.8rem}.project-section{padding-block:58px}.project-heading{display:block}.project-status{text-align:left;max-width:none;margin-top:20px}.project-status p{margin:0 0 0 12px;font-size:.8rem;display:inline-block}.project-heading h2{font-size:3.4rem}.project-byline{font-size:.78rem}.project-grid{margin-top:29px}.ecosystem{border-radius:14px;padding:22px 17px}.ecosystem-tabs{gap:6px;margin-top:21px}.ecosystem-tabs button{gap:10px;padding:17px 6px;font-size:.76rem}.ecosystem-tabs small{font-size:.63rem}.ecosystem-tabs svg{width:25px;height:25px}.node-panel{min-height:232px;font-size:.9rem}.map-note{font-size:.68rem}.project-story h3{font-size:1.4rem}.experience-section{padding-block:58px}.job{padding-left:24px}.job h3{font-size:1.55rem}.job-role{font-size:.98rem}.job ul{font-size:.92rem}.education-section{padding-block:58px}.education-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.education-copy h3,.language-profile h3{font-size:1.35rem}.cv-section{padding-block:47px 58px}.cv-heading h2{font-size:1.9rem}.cv-options{grid-template-columns:1fr;margin-top:25px}.cv-option{padding:25px 20px}.contact-section{padding-block:55px}.contact-layout{grid-template-columns:1fr;gap:39px}.contact-layout h2{font-size:2.1rem}.email{font-size:1.48rem}.contact-intro{margin-top:22px}.site-footer{gap:12px;padding-block:26px;display:grid}.site-footer>a:last-child{margin:0}.site-footer p{max-width:none}section[id]{scroll-margin-top:86px}}@media (prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.menu-button{display:none}@media (width<=650px){.header-inner{flex-wrap:nowrap;position:relative}.menu-button{color:var(--ink);background:0 0;border:0;border-radius:6px;place-items:center;width:36px;height:40px;margin-left:auto;margin-right:8px;display:grid}.menu-button[aria-expanded=true]{background:var(--surface)}.main-nav.is-open{border:1px solid var(--line);background:#fff;border-radius:0 0 12px 12px;grid-template-columns:1fr 1fr;gap:4px 12px;margin:0;padding:12px 18px 16px;display:grid;position:absolute;top:74px;left:0;right:0;box-shadow:0 12px 25px #1c30431a}.main-nav.is-open a{padding:12px 5px;font-size:.94rem}}
