#animated-transition{position:fixed;top:0;left:0;width:100%;height:100%;max-width:100%;max-height:100%}#animated-transition>main{position:absolute;width:100%;min-height:100%;top:0;left:0}#animated-transition *{cursor:progress!important}.layout-content{display:flex;height:100%}.layout-content .content{position:relative;width:1200px}@media(max-width:1700px){.layout-content .content{width:1000px}}@media(max-width:1450px){.layout-content .content{width:900px}}@media(max-width:1300px){.layout-content .content{width:100%;max-width:100vw}}.layout-content .content .page-content{width:100%;padding:32px 16px 16px}.animate-in-unknown .content{opacity:0;animation:fade-in .3s ease-out forwards}.animate-out-unknown .content{opacity:1;animation:fade-out .3s ease-out forwards}.content-mask,.page-header{--header-background-height:64px;--header-background-top-offset:12px;--header-height:88px;--font-size:96px;--home-transition-height:128px}@media(max-width:900px){.content-mask,.page-header{--header-background-height:42px;--header-background-top-offset:8px;--header-height:58px;--font-size:64px;--home-transition-height:96px}}@media(max-width:600px){.content-mask,.page-header{--header-background-height:32px;--header-background-top-offset:6px;--header-height:44px;--font-size:48px;--home-transition-height:128px}}.page-header{position:relative;display:grid;grid-template-columns:128px auto 128px;z-index:1;max-height:var(--header-height)}@media(max-width:600px){.page-header{grid-template-columns:0 auto 0}}.page-header .content-mask{display:none}.page-header>h1{line-height:1;margin:0;color:#030303;font-size:var(--font-size);text-align:center;height:var(--header-height);grid-column:2}.page-header .page-header-button-left,.page-header .page-header-button-right{margin:auto 0;color:#fff;text-decoration:none}@media(max-width:600px){.page-header .page-header-button-left,.page-header .page-header-button-right{position:absolute;top:100%}}.page-header .page-header-button-right{text-align:right;margin-right:24px}@media(max-width:600px){.page-header .page-header-button-right{right:0}}.page-header .page-header-button-left{margin-left:24px}.page-header .page-header-background{position:absolute;top:var(--header-background-top-offset);height:var(--header-background-height);width:100%;z-index:-1}.page-header .page-header-home-button{position:absolute;z-index:1;top:100%;left:50%;transform:translateX(-50%);color:#fff;text-decoration:none}@media(max-width:900px)and (min-width:601px){.page-header .page-header-home-button{top:120%}}@keyframes page-header-appear{0%{opacity:0}to{opacity:1}}.animate-in-index .page-header{opacity:0;animation:page-header-appear .2s linear 2s forwards}@keyframes page-header-shrink{0%{height:var(--header-background-height);top:var(--header-background-top-offset)}to{top:0;height:0}}@keyframes page-header-expand{0%{height:0;background:#4f0}to{height:var(--home-transition-height);background:#4f0}}@keyframes page-header-disappear{0%{height:var(--home-transition-height);top:0}to{top:var(--home-transition-height);height:0}}.animate-out-index .page-header-home-button{position:absolute;animation:erase-animation-clip .3s cubic-bezier(.5,0,.5,1) .5s forwards}.animate-out-index .page-header-home-button:after{position:absolute;z-index:1;background:#333;width:0;height:100%;max-width:100%;top:0;left:0;content:"";animation:erase-animation-cover .3s cubic-bezier(.5,0,.5,1) .2s forwards}.animate-out-index .page-header-button-left,.animate-out-index .page-header-button-right{position:relative;animation:erase-animation-clip .3s cubic-bezier(.5,0,.5,1) .5s forwards}.animate-out-index .page-header-button-left:after,.animate-out-index .page-header-button-right:after{position:absolute;z-index:1;background:#333;width:0;height:100%;max-width:100%;top:0;left:0;content:"";animation:erase-animation-cover .3s cubic-bezier(.5,0,.5,1) .2s forwards}@media(max-width:600px){.animate-out-index .page-header-button-left,.animate-out-index .page-header-button-right{position:absolute}}.animate-out-index .page-header .page-header-background{animation-name:page-header-shrink,page-header-expand,page-header-disappear;animation-duration:.3s;animation-timing-function:cubic-bezier(.75,0,.25,1);animation-fill-mode:forwards;animation-delay:.7s,1.1s,1.3s}.animate-out-index .page-header>h1{animation:fade-out 0ms forwards;animation-delay:1s}@keyframes fill-height{0%{height:0;top:0}to{height:100%;top:var(--home-transition-height)}}@keyframes retract-down{0%{height:100%;top:var(--home-transition-height)}to{height:0;top:100%}}@keyframes remove-background{0%{background:#030303}to{background:transparent}}.animate-out-index .content{animation:remove-background 10ms 1.6s forwards}.animate-out-index .content .content-mask{display:block;position:absolute;width:100%;z-index:1;background:#222;animation-name:fill-height,retract-down;animation-duration:.5s;animation-timing-function:cubic-bezier(.75,0,.25,1);animation-fill-mode:forwards;animation-delay:1.1s,1.6s}@keyframes clip-ttb{0%{-webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}to{-webkit-clip-path:polygon(0 100%,100% 100%,100% 100%,0 100%);clip-path:polygon(0 100%,100% 100%,100% 100%,0 100%)}}.animate-out-index .content .page-content{animation:clip-ttb .5s cubic-bezier(.75,0,.25,1) 1.2s forwards}.animate-out .terminal{display:none}.animate-out-unknown .terminal{display:block}.terminal{flex:1 1;cursor:text;outline:none}.terminal .hidden-input{max-width:1px;max-height:1px;opacity:0;pointer-events:none;position:fixed;z-index:-1}@media(max-width:1300px){.terminal{display:none}}.terminal .terminal-content{position:fixed;background:#191919;color:#ccc;height:100%;width:calc(100% - 1200px);overflow:auto;padding:8px 8px 256px}.terminal .terminal-content::-webkit-scrollbar{width:8px}.terminal .terminal-content::-webkit-scrollbar-track{box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.terminal .terminal-content::-webkit-scrollbar-thumb{background-color:#ccc}@media(max-width:1700px){.terminal .terminal-content{width:calc(100% - 1000px)}}@media(max-width:1450px){.terminal .terminal-content{width:calc(100% - 900px)}}.terminal .user-input{white-space:pre-wrap}.terminal .user-input:before{content:"$> ";font-weight:700}.terminal .user-input .cursor-block{color:transparent;border:1px solid #ccc}.terminal .user-input span{border:1px solid transparent;margin:0 -1px}.terminal .user-input span.highlighted{border:1px solid #ccc}.terminal .user-input.index:before{color:#4f0}.terminal .user-input.work:before{color:#ff003d}.terminal .user-input.about:before{color:#f90}.terminal .user-input.contact:before{color:#ff2e00}.terminal .user-input.blog:before{color:#07f}@keyframes blink-cursor{0%,50%{background:transparent;border-color:transparent;color:#ccc}51%,to{background:#ccc;border-color:#ccc;color:#191919}}.user-input.focused .cursor-block{background:#ccc}.user-input.focused span.highlighted{background:#ccc;color:#191919}.user-input.blink .cursor-block,.user-input.blink span.highlighted{background:#ccc;animation:blink-cursor 1.5s step-end infinite}.user-input.blink span.highlighted{color:#191919}.terminal-message{white-space:pre-wrap}.terminal-message span{color:#999}@keyframes erase-animation-cover{0%{width:0}to{width:100%}}@keyframes appear-animation-unclip{0%{-webkit-clip-path:polygon(0 0,0 100%,0 100%,0 0);clip-path:polygon(0 0,0 100%,0 100%,0 0)}to{-webkit-clip-path:polygon(0 0,0 100%,100% 100%,100% 0);clip-path:polygon(0 0,0 100%,100% 100%,100% 0)}}@keyframes appear-animation-uncover{0%{width:100%;left:0}to{width:0;left:100%}}@keyframes erase-animation-clip{0%{-webkit-clip-path:polygon(0 0,0 100%,100% 100%,100% 0);clip-path:polygon(0 0,0 100%,100% 100%,100% 0);color:transparent}to{-webkit-clip-path:polygon(100% 0,100% 100%,100% 100%,100% 0);clip-path:polygon(100% 0,100% 100%,100% 100%,100% 0);color:transparent}}.animate-out .erase-animation{position:relative;animation:erase-animation-clip .5s cubic-bezier(.5,0,.5,1) .7s forwards}.animate-out .erase-animation:after{position:absolute;z-index:1;background:#333;width:0;height:100%;max-width:100%;top:0;left:0;content:"";animation:erase-animation-cover .5s cubic-bezier(.5,0,.5,1) .2s forwards}.animate-in .erase-animation-reverse{position:relative;animation-name:appear-animation-unclip;animation-duration:.5s;animation-timing-function:cubic-bezier(.5,0,.5,1);animation-delay:.2s;animation-fill-mode:forwards;-webkit-clip-path:polygon(0 0,0 100%,0 100%,0 0);clip-path:polygon(0 0,0 100%,0 100%,0 0)}.animate-in .erase-animation-reverse:after{position:absolute;z-index:1;background:#333;width:100%;height:100%;max-width:100%;top:0;left:0;content:"";animation-name:appear-animation-uncover;animation-duration:.5s;animation-timing-function:cubic-bezier(.5,0,.5,1);animation-delay:.7s;animation-fill-mode:forwards}@keyframes transition-left{0%{transform:translateX(0);-webkit-clip-path:polygon(0 0,0 100%,100% 100%,100% 0);clip-path:polygon(0 0,0 100%,100% 100%,100% 0)}to{-webkit-clip-path:polygon(0 0,0 100%,0 100%,0 0);clip-path:polygon(0 0,0 100%,0 100%,0 0);transform:translateX(100%)}}@keyframes transition-right{0%{transform:translateX(0);-webkit-clip-path:polygon(0 0,0 100%,100% 100%,100% 0);clip-path:polygon(0 0,0 100%,100% 100%,100% 0)}to{-webkit-clip-path:polygon(100% 0,100% 100%,100% 100%,100% 0);clip-path:polygon(100% 0,100% 100%,100% 100%,100% 0);transform:translateX(-100%)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}.work-content.animate-out-about .content{transform:translateX(0);animation:transition-left .8s ease-in-out .2s forwards}.work-content.animate-in-about .content{transform:translateX(100%);animation:transition-left .8s ease-in-out .2s reverse backwards}.work-content.animate-out-contact .content{transform:translateX(0);animation:transition-right .8s ease-in-out .2s forwards}.work-content.animate-in-contact .content{transform:translateX(-100%);animation:transition-right .8s ease-in-out .2s reverse backwards}.work-content .page-content h2 span,.work-content .page-content h3 span{opacity:.3}.work-content .page-content a{color:#ff003d;font-weight:700;text-decoration:none}.work-content .page-content a:hover{text-decoration:underline}.work-content .page-content .project{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;grid-gap:16px;gap:16px;margin-bottom:64px}@media(max-width:900px){.work-content .page-content .project{grid-template-columns:100%;grid-template-rows:auto auto auto}}.work-content .page-content .project svg{max-width:100%;width:512px;height:auto}.work-content .page-content .project .project-description h3,.work-content .page-content .project .project-overview h3{margin:0}.work-content .page-content .project .project-description p,.work-content .page-content .project .project-overview p{margin-top:0;white-space:pre-wrap}.work-content .page-content .project .project-description .white-link,.work-content .page-content .project .project-overview .white-link{color:#fff;font-weight:400}@media(max-width:900px){.work-content .page-content .project .project-description,.work-content .page-content .project .project-overview{grid-row:2;grid-column:1}}.work-content .page-content .project .project-description{grid-column:1/span 2;grid-row:2}@media(max-width:900px){.work-content .page-content .project .project-description{grid-column:1;grid-row:3}}.work-content .page-content .project .project-description p{white-space:pre-wrap}