*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}a{color:inherit}button{border:0;background:rgba(0,0,0,0);color:inherit}[data-whatintent=keyboard] *:focus{outline:solid 4px #ff0}body{font:16px/1.3 lato,sans-serif}h1,h2,h3,h4{margin:1em 0}h1{font-size:2em}h2{font-size:1.5em}h3{font-size:1.25em}h4{font-size:1.125em}p{padding-bottom:1em;font-size:1.125em;line-height:1.5}.container{max-width:60em;margin:0 auto;padding:0 .5em}header .container{max-width:30em;z-index:1}.wrapper{padding:1em}.wrapper>h1,.wrapper>h2,.wrapper>h3,.wrapper>.container>h1,.wrapper>.container>h2,.wrapper>.container>h3{margin-top:0}header{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:gray;color:#fff;text-align:center;position:relative;box-shadow:0 2px 4px 2px rgba(0,0,0,.5)}@media screen and (min-width: 37.5em){header{position:sticky;top:calc(-100vh + 4em);z-index:99}}header::before{content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:1;background:hsl(0,0%,43.6487638534%);transition:opacity .5s ease-in-out}header.back-loaded{background:url(/assets/img/hard-drive.7cbc5d8c.jpg) no-repeat center center;background-size:cover}header.back-loaded:before{opacity:.75}header hgroup{flex:1 1 auto;display:flex;align-items:center}header h1{z-index:1;font-size:3.5em;margin:0;position:relative}@media screen and (min-width: 40rem){header h1{font-size:7.5vw}}@media screen and (min-width: 80rem){header h1{font-size:6em}}header p{flex:1 1 auto;font-size:1.125em}@media screen and (min-width: 30rem){header p{font-size:1.25em}}@media screen and (min-width: 40rem){header p{font-size:1.5em}}header nav{width:100%;padding:.5em 0}header nav ul{display:flex;list-style:none;justify-content:center;flex-wrap:wrap}header nav ul li{padding:1em 1.25em}header nav ul li a{text-decoration:none;text-transform:uppercase;color:#fff;position:relative;padding:.25em}header nav ul li a::after{content:" ";position:absolute;width:100%;height:3px;left:0;top:100%;background:#fff;transform:scaleX(0);transition:transform .2s ease-in-out}header nav ul li a:hover::after{transform:scaleX(1)}main{background:#fff;margin-bottom:8em;padding:2em 0}main h2{font-size:2em}main section+section{padding-top:2em}@media screen and (min-width: 40rem){main .content-block{display:flex}main .content-block article{flex:0 1 auto}main .content-block .skills{flex:0 0 17em;max-width:33%;margin-left:1em;margin-top:-1.75em;border-left:solid 1px #e0e0e0}}main .skills h4{margin-top:0;margin-bottom:.5em;margin-left:2em}main .skills ul{padding-left:2em;list-style:disc;font-size:1.125em;line-height:1.5}main ul.showcase{display:flex;flex-wrap:wrap;list-style:none;justify-content:space-evenly;align-items:center;max-width:75em;margin:0 auto}main ul.showcase li{max-width:15em;flex:1 0 10em;margin:1em;position:relative;transition:transform .125s ease-in-out;box-shadow:2px 2px 4px 1px rgba(0,0,0,.5);cursor:pointer}main ul.showcase li:hover{transform:scale(1.05)}main ul.showcase li.expand{position:fixed;transition:top .25s linear,left .25s linear,bottom .25s linear,right .25s linear}main ul.showcase li.expand--expanded{top:10%;left:10%;bottom:10%;right:10%}main ul.showcase li label{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.5);color:#fff;text-align:center;padding:.25em}main ul.showcase li img{max-width:100%;max-height:100%;display:block}#experience .wrapper:nth-child(even),#showcase .wrapper:nth-child(even){background:#f6f6f6}#learning .content-block{display:block}#learning .content-block .skills{width:100%;max-width:none;margin-top:0;border-left:0}footer{text-align:center;position:fixed;bottom:0;left:0;right:0;background:gray;color:#fff;z-index:-1;padding:1em}footer a{color:#fff;text-decoration:none;margin:0 1em}.modal__prev,.modal__next,.modal__close{position:absolute;width:2em;height:2em;background:hsla(0,0%,100%,.5);padding:1em;font-size:1.25em;border-radius:4px;cursor:pointer}.modal__prev::after,.modal__prev::before,.modal__next::after,.modal__next::before,.modal__close::after,.modal__close::before{content:" ";position:absolute;top:calc(1em - 2px);width:1em;height:4px;background:#000}.modal__next::after,.modal__next::before{left:.5em}.modal__prev::after,.modal__prev::before{right:.5em}.modal{position:fixed;top:0;left:0;bottom:0;right:0;display:none;background:rgba(0,0,0,0);transition:background .25s ease-in-out;z-index:9999}.modal--open{display:block;background:rgba(0,0,0,.6)}.modal__body{position:absolute;transition:all .25s ease-out}.modal--positioned .modal__body{top:10%;left:10%;width:80%;height:80%}.modal__close{top:1em;right:1em}.modal__close::before{transform:translateX(-0.5em) rotateZ(-45deg)}.modal__close::after{transform:translateX(-0.5em) rotateZ(45deg)}.modal__next{top:50%;right:1em;margin-top:-1em}.modal__next::before{transform:translateY(-1px) rotateZ(-45deg);transform-origin:100% 50%;width:.75em}.modal__next::after{transform:translateY(1px) rotateZ(45deg);transform-origin:100% 50%;width:.75em}.modal__prev{top:50%;left:1em;margin-top:-1em}.modal__prev::before{transform:translateY(-1px) rotateZ(45deg);transform-origin:0 50%;width:.75em}.modal__prev::after{transform:translateY(1px) rotateZ(-45deg);transform-origin:0 50%;width:.75em}.modal--open~header,.modal--open~main,.modal--open~footer{filter:blur(5px)}#showcase_modal .modal__body{display:flex;align-items:center;justify-content:center}#showcase_modal img{max-width:100%;max-height:100%}
