pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}body{margin:0;padding:0}.App{text-align:center}body{font-family:Roboto,HelveticaNeue-Light,HelveticaNeue,Helvetica,Arial,sans-serif!important;font-size:14px;line-height:1.5;color:#3e3e3e;background-color:#f5f5f5!important;overflow:auto;-webkit-font-smoothing:antialiased;font-weight:100}.App-intro{font-size:large}a{color:#16a6b6;text-decoration:none;pointer-events:auto}a,a:active,a:focus,a:hover,a:visited{outline:0 none!important;color:#16a6b6}a:active,a:hover{outline:0}a:focus,a:hover{text-decoration:underline}nav a:focus,nav a:hover{text-decoration:none!important;color:#fff!important;background-color:#181818!important;border-radius:6px;-webkit-border-radius:6px;transition:all .4s}.text-center{text-align:center}.section-spacer{display:block;height:40px}.section-title{margin-bottom:20px}.section-title h1,.section-title h2,.section-title h3{text-transform:uppercase;color:#181818;font-weight:700;display:inline-block}.section-title h1,.section-title h2{font-size:45px;letter-spacing:2px;margin:20px auto 30px;padding:0 40px;position:relative;line-height:1.6}.white{color:#ffffff!important}.section-title h1:after,.section-title h1:before,.section-title h2:after,.section-title h2:before{background:none repeat scroll 0 0 #666666;content:"";height:2px;left:0;position:absolute;top:35px;width:30px}.section-title h1:after,.section-title h2:after{left:auto;right:0}.section-title h1 span,.section-title h2 span{background-color:#181818;border-radius:6px;-webkit-border-radius:6px;color:#fff;padding:0 10px}.page-wrapper{background-color:#fff;margin:0 auto;padding:60px 70px 70px;max-width:960px;color:#3e3e3e;border-radius:10px}.content-wrapper{text-align:left;margin:0;padding:0;position:relative}.page-wrapper .content-title{display:inline-block;font-family:Roboto;font-size:3.4em;margin:0;padding:0;text-transform:uppercase;line-height:1.1;font-weight:400;letter-spacing:.02em}.page-wrapper .title-explain{font-size:18px;margin-left:10px;text-transform:none}.content-wrapper li,.content-wrapper p{font-size:1em;line-height:1.65;color:#3e3e3e;padding:0 0 1.4em;margin:0;letter-spacing:.05em}.content-wrapper a,.content-wrapper a:hover,.content-wrapper a:visited{color:#16a6b6}@media (max-width:767px){.page-wrapper{padding:20px 25px 25px}}@media (max-width:515px){.page-wrapper .title-explain{margin:0 0 10px;display:block}}.header-container{display:flex;justify-content:center;align-items:center;width:960px;left:0;top:0;z-index:1;max-width:100%;margin:40px auto;box-sizing:border-box;overflow:hidden}.header-container a,.header-container a:visited{display:inline-block;padding:5px 20px;color:#181818;text-decoration:none}.header-container .logo-border{border:2px solid #181818;border-radius:150px;padding:3px;min-width:160px;max-width:160px;flex:1 0;text-align:center}.header-container .logo-wrapper{display:flex;align-items:center;justify-content:center;height:150px;min-width:150px;max-width:150px;background-color:#181818;border-radius:50%;overflow:hidden}.header-container .logo-wrapper a{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:0}.header-container a .logo-text{color:#fff;font-size:.95rem;line-height:1.05;letter-spacing:1px;max-width:84px;margin:3px 0 0;text-align:center;display:block;font-weight:700;text-transform:uppercase}.header-container a:focus .logo-text,.header-container a:hover .logo-text{text-decoration:none}.header-container .logo-img{width:78px;margin:0;display:block}.header-container .nav-primary,.header-container .nav-secondary{border-top:1px solid #181818;border-bottom:1px solid #181818;flex:2 0;text-align:left}.header-container .nav-secondary{text-align:right}.header-container .menu{list-style-type:none;padding:15px 0;margin:0;font-size:18px}@media (max-width:767px){.header-container{margin:30px auto}.header-container .logo-border{border-radius:130px;min-width:140px;max-width:140px}.header-container .logo-wrapper{height:130px;min-width:130px;max-width:130px}.header-container .logo-img{width:68px;margin:0}.header-container a .logo-text{font-size:.85rem;line-height:1.05;max-width:74px;margin:2px 0 0}}.footer-wrapper{position:relative;margin:20px 0;color:#3e3e3e;padding:20px;display:block}.footer-wrapper p{font:12px/1.2 TeXGyreAdventorRegular;letter-spacing:.12em;text-transform:uppercase;padding:0;margin:0 4px 0 0}.cv{color:#3e3e3e}.cv-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 28px;padding-bottom:22px;border-bottom:3px solid #181818}.cv-head .cv-id h1{font-size:2.9em;line-height:1.05;font-weight:700;color:#181818;margin:0;letter-spacing:-.02em}.cv-headline{margin:6px 0 0;font-size:1.1em;font-weight:600;color:#16a6b6;letter-spacing:.01em}.cv-contact{list-style:none;margin:0;padding:0;text-align:right;font-size:.92em;line-height:1.7;color:#555}.cv-contact li{display:block;padding:0;margin:0}.cv-contact a{color:#16a6b6!important;text-decoration:none}.cv-contact a:hover{text-decoration:underline}.cv-summary{font-size:1.05em;line-height:1.7;color:#3e3e3e;margin:24px 0 0;padding:0;max-width:46em}.cv-block{margin-top:40px}.cv-block>h2{font-size:.95em;text-transform:uppercase;letter-spacing:2.5px;font-weight:700;color:#181818;margin:0 0 18px;padding-bottom:8px;border-bottom:1px solid #e4e4e4}.cv-role{margin-bottom:26px}.cv-role:last-child{margin-bottom:0}.cv-role-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 18px}.cv-role-head h3{font-size:1.18em;font-weight:700;color:#181818;margin:0;line-height:1.3}.cv-role-head h3 a{color:#181818!important;text-decoration:none}.cv-role-head h3 a:hover{color:#16a6b6!important}.cv-role-title{font-weight:500;color:#536878}.cv-dates{font-size:.85em;font-weight:600;color:#888;white-space:nowrap;letter-spacing:.02em}.cv-role-sub{margin:6px 0 0;padding:0;font-style:italic;color:#666;line-height:1.55}.cv-role ul{margin:9px 0 0;padding:0 0 0 1.15em;list-style:none}.cv-role ul li{position:relative;font-size:.97em;line-height:1.6;color:#3e3e3e;padding:0 0 6px;margin:0;letter-spacing:0}.cv-role ul li:before{content:"";position:absolute;left:-1.05em;top:.62em;width:5px;height:5px;border-radius:50%;background:#16a6b6}.cv-earlier{margin-top:26px}.cv-earlier h3{font-size:.85em;text-transform:uppercase;letter-spacing:1.5px;font-weight:700;color:#888;margin:0 0 8px}.cv-earlier ul{list-style:none;margin:0;padding:0}.cv-earlier li{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 18px;font-size:.97em;line-height:1.5;padding:0 0 5px;margin:0;color:#3e3e3e}.cv-earlier li strong{color:#181818}.cv-dates-inline{font-size:.85em;font-weight:600;color:#888;white-space:nowrap}.cv-skills{margin:0}.cv-skill-group{display:flex;gap:18px;padding:9px 0;border-bottom:1px solid #f0f0f0}.cv-skill-group:last-child{border-bottom:none}.cv-skill-group dt{flex:0 0 150px;font-weight:700;color:#181818;font-size:.95em}.cv-skill-group dd{margin:0;flex:1 1;color:#3e3e3e;line-height:1.5;font-size:.97em}.cv-edu{margin-bottom:18px}.cv-edu:last-child{margin-bottom:0}.cv-edu h3{font-size:1.08em;font-weight:700;color:#181818;margin:0;line-height:1.3}.cv-edu .cv-role-sub{font-style:normal;color:#536878;font-weight:500;margin-top:2px}.cv-edu-note{margin:5px 0 0;padding:0;font-size:.92em;color:#666;line-height:1.55}@media (max-width:600px){.cv-head{align-items:flex-start}.cv-contact{text-align:left}.cv-skill-group{flex-direction:column;gap:2px}.cv-skill-group dt{flex-basis:auto}}@media print{.footer-wrapper,.header-container{display:none!important}.App,.page-wrapper,body{background:#fff!important;margin:0!important;padding:0!important;box-shadow:none!important;border-radius:0!important;max-width:none!important}.page-wrapper{padding:0!important}.cv-contact a,.cv-head a,.cv-role-head h3 a{color:#181818!important}.cv-block,.cv-edu,.cv-role{break-inside:avoid;page-break-inside:avoid}.cv-block>h2{break-after:avoid;page-break-after:avoid}}.experience{display:flex;justify-content:flex-start;flex-direction:row;align-items:center}.experience .info{margin:0 20px 40px 0;flex:1 0}.experience .img{flex:2 0}.experience .logo-monogram{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:#536878;color:#fff;font-weight:700;font-size:22px;letter-spacing:1px}@media (max-width:767px){.experience{display:block}.experience .info{margin:0 20px 0 0}}.skill{width:200px;display:block;text-align:center}.progress-pie-chart{width:200px;height:200px;border-radius:50%;background-color:#e5e5e5;position:relative}.progress-pie-chart.gt-50{background-color:#81ce97}.ppc-progress{clip:rect(0,200px,200px,100px)}.ppc-progress,.ppc-progress .ppc-progress-fill{content:"";position:absolute;border-radius:50%;left:calc(50% - 100px);top:calc(50% - 100px);width:200px;height:200px}.ppc-progress .ppc-progress-fill{clip:rect(0,100px,200px,0);background:#81ce97;transform:rotate(60deg)}.gt-50 .ppc-progress{clip:rect(0,100px,200px,0)}.gt-50 .ppc-progress .ppc-progress-fill{clip:rect(0,200px,200px,100px);background:#e5e5e5}.ppc-percents{content:"";position:absolute;border-radius:50%;left:calc(50% - 173.91304px/2);top:calc(50% - 173.91304px/2);width:173.91304px;height:173.91304px;background:#fff;text-align:center;display:table}.ppc-percents span{display:block;font-size:2.6em;font-weight:700;color:#81ce97}.pcc-percents-wrapper{display:table-cell;vertical-align:middle}.progress-pie-chart{margin:50px auto 0}@media (max-width:767px){.skill{margin:0 auto}}.contact-methods{display:flex;flex-wrap:wrap;justify-content:center}.contact-methods .method{flex:1 1}.contact-methods .method img{max-width:100%;width:500px}a.ui.card:hover{text-decoration:none}.hero{display:flex;align-items:center;gap:48px;padding:8px 0 12px}.hero-content{flex:1 1;min-width:0}.hero-eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-weight:700;font-size:13px;color:#16a6b6;margin-bottom:16px}.hero h1{font-size:2.7em;line-height:1.14;font-weight:700;color:#181818;margin:0 0 20px;letter-spacing:-.015em}.hero h1 .accent{color:#16a6b6}.hero-sub{font-size:1.12em;line-height:1.65;color:#555;margin:0 0 28px;max-width:40em}.hero-cta{display:flex;gap:14px;flex-wrap:wrap}.hero-photo{flex:0 0 auto}.hero-photo img{width:210px;height:210px;border-radius:50%;object-fit:cover;box-shadow:0 14px 34px rgba(0,0,0,.14);border:5px solid #fff}@media (max-width:720px){.hero{flex-direction:column-reverse;text-align:center;gap:26px}.hero-sub{margin-left:auto;margin-right:auto}.hero-cta{justify-content:center}.hero h1{font-size:2.1em}.hero-photo img{width:150px;height:150px}}.btn{display:inline-block;padding:13px 28px;border-radius:8px;font-weight:600;font-size:15px;line-height:1;text-decoration:none!important;transition:all .2s ease;cursor:pointer;border:none}.btn-primary{background:#181818;color:#fff!important}.btn-primary:hover{background:#16a6b6;color:#fff!important;transform:translateY(-1px)}.btn-secondary{background:transparent;color:#181818!important;box-shadow:inset 0 0 0 2px #dcdcdc}.btn-secondary:hover{box-shadow:inset 0 0 0 2px #16a6b6;color:#16a6b6!important}.brand-section{margin-top:68px}.brand-section-head{margin-bottom:30px}.brand-section-head .kicker{text-transform:uppercase;letter-spacing:2.5px;font-size:12px;font-weight:700;color:#16a6b6;display:block;margin-bottom:9px}.brand-section-head h2{font-size:1.95em;color:#181818;font-weight:700;margin:0;line-height:1.2;letter-spacing:-.01em}.brand-section-head .lead{font-size:1.05em;color:#666;line-height:1.6;margin:12px 0 0;max-width:44em}.capabilities{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:22px;gap:22px}.capability{background:#fff;border:1px solid #ececec;border-radius:12px;padding:28px 26px;transition:all .2s ease}.capability:hover{border-color:#16a6b6;box-shadow:0 10px 28px rgba(0,0,0,.07);transform:translateY(-2px)}.capability .cap-icon{width:48px;height:48px;border-radius:11px;background:rgba(22,166,182,.1);color:#16a6b6;display:flex;align-items:center;justify-content:center;margin-bottom:18px}.capability .cap-icon i.icon{font-size:22px;margin:0;height:auto}.capability h3{font-size:1.18em;color:#181818;font-weight:700;margin:0 0 11px}.capability p{font-size:.95em;line-height:1.62;color:#555;margin:0}@media (max-width:720px){.capabilities{grid-template-columns:1fr}}.pov{margin-top:68px;background:#181818;color:#fff;border-radius:16px;padding:46px 48px}.pov .kicker{color:#16a6b6;text-transform:uppercase;letter-spacing:2.5px;font-size:12px;font-weight:700}.pov blockquote{font-size:1.55em;line-height:1.38;font-weight:600;margin:16px 0 0;padding:0;border:none;color:#fff}.pov blockquote .accent{color:#16a6b6}.pov .pov-foot{margin:20px 0 0;color:#aeb7bd;font-size:1em;line-height:1.65;max-width:48em}@media (max-width:720px){.pov{padding:32px 26px}.pov blockquote{font-size:1.3em}}.experience-strip{margin-top:68px;text-align:center}.experience-strip .companies{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 15px;margin-top:4px}.experience-strip .companies span.co{font-weight:700;color:#444;font-size:1.05em;letter-spacing:.01em}.experience-strip .companies span.dot{color:#16a6b6;font-weight:700}.experience-highlight{margin-top:24px;font-size:1.08em;color:#3e3e3e;line-height:1.65;max-width:42em;margin-left:auto;margin-right:auto}.experience-highlight strong{color:#181818}.contact-cta{margin-top:68px;text-align:center;background:linear-gradient(135deg,#536878,#38474f);color:#fff;border-radius:16px;padding:50px 42px}.contact-cta h2{color:#fff;font-size:1.85em;font-weight:700;margin:0 0 14px}.contact-cta p{color:#e0e7ea;font-size:1.1em;line-height:1.6;margin:0 auto 26px;max-width:36em}.contact-cta .cta-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.contact-cta .btn-primary{background:#fff;color:#181818!important}.contact-cta .btn-primary:hover{background:#16a6b6;color:#fff!important}.contact-cta .btn-secondary{box-shadow:inset 0 0 0 2px rgba(255,255,255,.5);color:#fff!important}.contact-cta .btn-secondary:hover{box-shadow:inset 0 0 0 2px #fff;color:#fff!important}.brand-section .cards{margin-top:4px}.content-wrapper pre{margin:0 0 1.4em;border-radius:10px;overflow:auto}.content-wrapper pre code.hljs{display:block;padding:18px 20px;font-size:.86em;line-height:1.55;border-radius:10px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.content-wrapper :not(pre)>code{background:#f0f1f2;padding:.12em .4em;border-radius:4px;font-size:.88em}