/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{margin:.67em 0;font-size:2em}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em}a{background-color:#0000}abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring{outline:1px dotted buttontext}[type=button]:-moz-focusring{outline:1px dotted buttontext}[type=reset]:-moz-focusring{outline:1px dotted buttontext}[type=submit]:-moz-focusring{outline:1px dotted buttontext}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;white-space:normal;max-width:100%;padding:0;display:table}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template,[hidden]{display:none}*,:before,:after{box-sizing:border-box}a{color:#007bff;background-color:#0000;text-decoration:none;position:relative}a:hover{color:#0056b3;text-decoration:underline}@media screen{a[target=_blank]{padding-right:1em;display:inline-block}a[target=_blank]:after{content:"↗";position:absolute;bottom:-2px;right:0}}:root{--hue:323;--main:hsl(var(--hue), 92%, 35%);--grad:hsl(var(--hue), 92%, 20%);--text:#333;--text-light:#595959;--bg:#fff;--bg-alt:#f5f5f5}@media (prefers-color-scheme:dark){:root{--main:hsl(var(--hue), 60%, 45%);--grad:hsl(var(--hue), 60%, 28%);--text:#e0e0e0;--text-light:#b3b3b3;--bg:#1f1f1f;--bg-alt:#292929}a{color:#5cadff}a:hover{color:#8ac4ff}}.container{width:60rem;margin:0 auto;padding:0 6vw}.container.intro{flex-direction:column;align-items:flex-start;height:100%;padding:6vw;display:flex}@media screen and (width>=100rem){.container{width:66vw}}@media screen and (width<=60rem){.container{width:50rem}}@media screen and (width<=50rem){.container{width:100%}}header{background-color:var(--main);background:linear-gradient(170deg, var(--main), var(--grad));color:#fff;background-attachment:fixed;justify-content:center;align-items:center;display:flex;position:relative}@media screen and (width>=100rem){header{max-height:70vh}}.header-links{margin-top:auto}.header-links a,.header-links a:hover,.header-links a:visited,.header-links a:active{color:#fff}footer{margin-bottom:2rem}section{margin:72px 0}.block+.block{margin-top:2rem}.visually-hidden{clip:rect(0 0 0 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}h2{position:relative}h2:before{content:"";background:linear-gradient(to right, var(--main), var(--grad));width:2.5em;height:.5em;margin-top:-.09em;position:absolute;top:.5em;left:-.4em;transform:translate(-100%)}.skills{grid-template-columns:1fr 1fr;gap:1.5rem 2rem;margin:2rem 0;padding:0;list-style:none;display:grid}.skills li{font-size:calc(1rem + .5vw);line-height:1.6}.skills li span{color:var(--text);margin-bottom:.25rem;font-size:1.3rem;font-weight:600;display:block}@media screen and (width<=60rem){.skills{grid-template-columns:1fr}}html{font-size:100%}body{color:var(--text);background-color:var(--bg);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:calc(1rem + .5vw)}h1,h2,h3,h4{margin:0 0 1.5rem;font-weight:500;line-height:1.1}h1{font-size:calc(2rem + 2vw)}h2{font-size:calc(1rem + 1vw)}h3,h4{margin-bottom:1rem;font-size:calc(.7rem + 1vw);line-height:1.6}p{max-width:65ch;margin-top:0;margin-bottom:2rem;font-weight:400;line-height:1.6}.intro p{font-size:calc(1rem + 1vw)}span.time{color:var(--text-light);font-weight:400}ul.links{margin:0;padding:0}ul.links li{margin:0 1rem 0 0;padding:0;display:inline-block}@media print{:root{--main:#aa076b}body{margin-bottom:24px}a[data-print]:after{content:": " attr(data-print) ""}.page-break{page-break-after:always}section{margin:48px 0}ul.links li{display:block}header{background:var(--main);min-height:0}h2:before{background:var(--main)}.block{margin-top:1em}h3,h4{margin-bottom:12px;font-size:20px;line-height:1.2}p{font-size:18px}ul.links .download,footer ul.links{display:none}}
