:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg *,symbol *)){all:unset;display:revert}*,:after,:before{box-sizing:border-box}a,button{cursor:revert}menu,ol,ul{list-style:none}img{max-inline-size:100%;max-block-size:100%}table{border-collapse:collapse}input,textarea{-webkit-user-select:auto}textarea{white-space:revert}meter{-webkit-appearance:revert;-moz-appearance:revert;appearance:revert}:where(pre){all:revert}::-moz-placeholder{color:unset}::placeholder{color:unset}::marker{content:normal}:where([hidden]){display:none}:where([contenteditable]:not([contenteditable=false])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable=true]){-webkit-user-drag:element}:where(dialog:modal){all:revert}@font-face{font-family:DovesType-Regular;src:url(/fonts/DovesType-Regular.eot);src:url(/fonts/DovesType-Regular.eot) format("embedded-opentype"),url(/fonts/DovesType-Regular.woff2) format("woff2"),url(/fonts/DovesType-Regular.woff) format("woff");font-weight:400;font-style:normal}@font-face{font-family:GT-Ultra-Regular;src:url(/fonts/GT-Ultra-Standard-Regular.woff);src:url(/fonts/GT-Ultra-Standard-Regular.woff2) format("woff2"),url(/fonts/GT-Ultra-Standard-Regular.woff) format("woff");font-weight:400;font-style:normal}@font-face{font-family:GT-Ultra-Regular-Bold;src:url(/fonts/GT-Ultra-Standard-Bold);src:url(/fonts/GT-Ultra-Standard-Bold.woff2) format("woff2"),url(/fonts/GT-Ultra-Standard-Bold.woff) format("woff");font-weight:400;font-style:normal}@font-face{font-family:inconsolata;src:url(/fonts/inconsolata-variablefont_wdthwght-webfont.woff2) format("woff2"),url(/fonts/inconsolata-variablefont_wdthwght-webfont.woff) format("woff");font-weight:400;font-style:normal}.content h3,.content h4,.experience h3,.sans,dt,figcaption,ol,ul{font-family:GT-Ultra-Regular,sans-serif;font-weight:300;font-style:normal}.calloutLink,.calloutLink-light,.projectDescription p a,.sansBold{font-family:GT-Ultra-Bold,sans-serif;font-weight:800;font-style:normal}.bodyFont,blockquote p,dd,p{font-family:DovesType-Regular,serif;font-feature-settings:"kern" 1;font-feature-settings:"lnum" 1;font-kerning:normal;font-weight:300;font-style:normal}.bodyFontItalic,.leadin-list li{font-family:DovesType-Regular,serif;font-feature-settings:"kern" 1;font-feature-settings:"lnum" 1;font-kerning:normal;font-weight:300;font-style:italic}.logoFont,h1{font-family:GT-Ultra-Regular,sans-serif;font-weight:400;font-style:normal;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1;font-feature-settings:"lnum" 1;font-kerning:normal}.preFont,ol li::marker{font-family:inconsolata;font-weight:400;font-style:normal;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1;font-feature-settings:"lnum" 1;font-kerning:normal}.headlineFont,.leadInTitle,h2{font-family:DovesType-Regular,serif;font-feature-settings:"kern" 1;font-feature-settings:"lnum" 1;font-kerning:normal;font-weight:400;font-style:normal;text-rendering:optimizeLegibility}:root{--light:#f2f0f2;--lightBg:#f5f5f5;--dark:#212427;--highlight:#3a489d;--transition:200ms;--text-base-size:1.2rem;--text-scale-ratio:1.25;--text-xs:calc(var(--text-base-size)/var(--text-scale-ratio)*var(--text-scale-ratio));--text-sm:calc(var(--text-base-size)/var(--text-scale-ratio));--text-md:calc(var(--text-base-size));--text-lg:calc(var(--text-base-size)*var(--text-scale-ratio));--text-xl:calc(var(--text-base-size)*var(--text-scale-ratio)*var(--text-scale-ratio));--text-xxl:calc(var(--text-base-size)*var(--text-scale-ratio)*var(--text-scale-ratio)*var(--text-scale-ratio));--text-xxxl:calc(var(--text-base-size)*var(--text-scale-ratio)*var(--text-scale-ratio)*var(--text-scale-ratio)*var(--text-scale-ratio));--text-huge:calc(var(--text-base-size)*var(--text-scale-ratio)*var(--text-scale-ratio)*var(--text-scale-ratio)*var(--text-scale-ratio)*var(--text-scale-ratio));--heading-line-height:1.2;--body-line-height:1.4}@media screen and (min-width:40em){:root{--text-base-size:1.25em;--text-scale-ratio:1.25}}:root{--baseline:24px;--baseline-sm:calc(var(--baseline)/2);--baseline-md:var(--baseline);--baseline-lg:calc(var(--baseline)*2);--baseline-xl:calc(var(--baseline)*3)}html{background-color:var(--light)}.grid{display:grid;max-width:100%;gap:1.5rem;grid-template-columns:4fr 4fr;margin:1.5rem auto 0}@media screen and (min-width:75em){.grid{grid-template-columns:3fr 4fr;gap:4rem;margin-top:1.6rem}}article,aside{grid-column:span 2}@media screen and (min-width:65em){article,aside{grid-column:span 1}}.experience{order:2}@media screen and (min-width:65em){.experience{order:1}}.content{order:1;margin:0 2%;max-width:60rem}@media screen and (min-width:65em){.content{order:2}}.row{margin-bottom:1.5rem}@media screen and (min-width:40em){.row{margin-bottom:3rem}}nav{width:94%;margin:1.5rem auto 2.6rem 1rem;padding-bottom:1.5rem;border-bottom:.23rem solid #000}@media screen and (min-width:65em){nav{padding-bottom:0;border-bottom:none;margin:1.5rem auto 2.6rem 3rem}}h1{font-size:var(--text-xxxl);color:var(--dark);text-align:left;padding:1rem 0 0 1rem;margin-left:-.5rem}@media screen and (min-width:65em){h1{font-size:var(--text-xxl)}}h1 a{position:relative;display:inline-block}.experience{background-color:var(--dark);padding:3rem 0}.experience>*{color:var(--light)}.content{margin-bottom:-1rem;padding:0 1rem 1rem}@media screen and (min-width:65em){.content{padding:3rem 0 0;margin-bottom:0}}h2{font-size:var(--text-xxl);line-height:var(--heading-line-height)}@media screen and (min-width:40em){h2{font-size:var(--text-xxxl)}}@media screen and (min-width:75em){h2{font-size:var(--text-huge)}}.experience h2{position:relative;padding:0 3rem var(--baseline-lg) 1rem;margin-bottom:var(--baseline-lg)}@media screen and (min-width:65em){.experience h2{padding:3rem 3rem 5.9rem}}.experience h2:after{position:absolute;bottom:0;content:"";left:0;right:0;width:100%;overflow-x:hidden;background-color:var(--lightBg);height:1px}.calloutLink,.calloutLink-light,.projectDescription p a{display:inline-block;border:2px solid var(--dark);color:var(--dark);background-color:transparent;padding:.75rem 1.25rem;margin:1.75rem 0;font-size:.9375rem;transition-duration:var(--transition)}.calloutLink-light:hover,.calloutLink:hover,.projectDescription p a:hover{background-color:var(--dark);color:var(--light);border-color:transparent}.calloutLink-light{border:2px solid var(--light);color:var(--light)}.calloutLink-light:hover{background-color:var(--light);color:var(--dark);border-color:transparent}.content h2{padding:3rem 0 var(--baseline-sm) 0;margin-bottom:var(--baseline-lg);color:var(--dark)}@media screen and (min-width:65em){.content h2{margin-bottom:3rem;padding:3rem 0 1.7rem}}.experience h3{font-size:var(--text-lg);line-height:var(--heading-line-height);padding:0 1rem}@media screen and (min-width:65em){.experience h3{padding:0 3rem}}@media screen and (min-width:75em){.experience h3{font-size:var(--text-xl)}}.content h4{font-size:var(--text-md);line-height:var(--heading-line-height);padding-bottom:1.15rem}@media screen and (min-width:75em){.content h4{font-size:var(--text-lg)}}.content h3{font-size:var(--text-lg);line-height:var(--heading-line-height);padding:1.15rem 0}@media screen and (min-width:75em){.content h3{font-size:var(--text-xl)}}p{color:var(--dark);font-size:var(--text-lg);line-height:var(--body-line-height);margin-bottom:var(--baseline-sm)}.leadin{max-width:50rem;margin-bottom:1.5rem}.leadin-list{margin-top:0;list-style:disc;margin-left:1.5rem}.leadin-list li{font-size:var(--text-lg);line-height:var(--body-line-height)}.leadInTitle{font-size:var(--text-huge);line-height:var(--heading-line-height)}img{width:100%;height:auto}dl{flex-direction:column;margin-bottom:2.8rem}.experience-item,dl{display:flex;width:100%;position:relative}.experience-item{flex-direction:row}.experience-item a{display:flex;flex-direction:row;width:100%;text-decoration:none;line-height:var(--body-line-height);padding:var(--baseline-sm) 1rem;transition:all var(--transition) ease-in-out}@media screen and (min-width:65em){.experience-item a{padding:var(--baseline-sm) 3rem}}.experience-item a:hover{background-color:var(--light);color:var(--dark)}@media screen and (min-width:65em){a.active{background-color:var(--light);color:var(--dark);position:relative}}@media screen and (min-width:65em){a.active:after{content:"";position:absolute;right:15px;top:50%;transform:translateY(-50%);border:solid var(--dark);border-width:0 2px 2px 0;display:inline-block;padding:5px;transform:rotate(-45deg) translateY(-50%);transition:all var(--transition) ease-in-out}}nav a.active:after{display:none}dt{width:20%;font-size:var(--text-xs);line-height:var(--body-line-height);padding-top:.35rem}@media screen and (min-width:65em){dt{padding-top:.45rem}}dd{width:80%;max-width:40rem;font-size:var(--text-md);line-height:var(--body-line-height)}figure{position:relative;padding:var(--baseline-md);background-color:var(--lightBg);margin:var(--baseline-md) 0}@media screen and (min-width:65em){figure{display:block}}figcaption{background-color:var(--lightBg);margin-top:var(--baseline-sm)}ul{list-style-type:disc}ol,ul{margin:var(--baseline-sm) 0;padding-left:3rem}ol{list-style-type:decimal}li{font-size:var(--text-sm);line-height:1.2}blockquote{margin:var(--baseline-md) 0;padding:var(--baseline-md);background-color:var(--lightBg);border-left:2px solid var(--dark)}blockquote:first-letter{font-size:200%;line-height:1}blockquote p{font-size:var(--text-md);line-height:var(--body-line-height)}blockquote li,blockquote p{color:#383e43}blockquote br{display:block;content:" ";margin-bottom:var(--baseline-sm)}p a{display:inline-block;position:relative;padding-bottom:3px;text-decoration:none;color:var(--highlight)}p a:after{content:"";display:block;width:0;height:2px;background:var(--highlight);transition:width var(--transition) ease-in-out}p a:hover:after{width:100%}hr{border:0;border-top:1px dashed var(--dark);margin:var(--baseline-lg) 0 var(--baseline-lg) 0}pre{overflow:auto;background:var(--lightBg)!important;border-left:2px solid var(--dark);border-bottom:2px solid var(--dark)}code{color:inherit;text-shadow:none!important}.video-responsive{position:relative;overflow:hidden;padding-top:56.25%}.video-responsive video{position:absolute;top:0;left:0;width:100%;height:100%}code[class*=language-],pre[class*=language-]{color:#000;background:none;text-shadow:0 1px #fff;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection{text-shadow:none;background:#b3d4fc}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#9a6e3a;background:hsla(0,0%,100%,.5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.fade-enter-active{transition:opacity .5s}.fade-enter{opacity:0}