@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,400i,700&display=swap);#navigator{position:relative;font-size:16pt;margin-left:1em}#navigator,#navigator .node-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}#navigator .node-wrapper{border-radius:50%;text-decoration:none}#navigator .node-wrapper:not(:last-of-type):after{content:"";background:#e8ecee;line-height:0;margin:auto -.25em;height:.5em;-webkit-transition:all .2s ease;transition:all .2s ease;width:1em}#navigator .node-wrapper:hover{cursor:pointer}#navigator .node-wrapper:hover .description{margin-left:.25em;opacity:1;-webkit-transform:translateX(0);transform:translateX(0);width:auto}#navigator .node-wrapper:hover:after{opacity:0}#navigator .node{background:#ffc44d;border:.25em solid #e8ecee;border-radius:50%;height:1em;width:1em;margin:auto 0}#navigator .description,#navigator .node{-webkit-transition:all .2s ease;transition:all .2s ease}#navigator .description{color:#ffc44d;white-space:nowrap;width:0;opacity:0;text-align:start;-webkit-transform:translateX(-50%);transform:translateX(-50%)}#header{position:fixed;top:0;left:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-line-pack:center;align-content:center;background:#fff;padding:.2em .5em;z-index:100;text-align:end;border-right:4px solid #ffc44d;border-left:4px solid #ffc44d;color:#8f9ca3;font-size:.8em}#header>.tagline{-webkit-box-flex:2;-ms-flex-positive:2;flex-grow:2;margin:0 .5em 0 0;font-style:italic;margin:auto 0}#header>.link{-webkit-box-flex:auto;-ms-flex-positive:auto;flex-grow:auto;margin:auto 0 auto .25em}#header .language{background:#ffc44d;border:none;color:#fff;font-weight:700;text-transform:uppercase;-webkit-transition:all .2s ease;transition:all .2s ease}#header .language:hover{cursor:pointer;text-decoration:none;-webkit-filter:brightness(110%);filter:brightness(110%)}@media screen and (max-width:770px){#header>.tagline{display:none}#header>.link{-webkit-box-flex:2;-ms-flex-positive:2;flex-grow:2}}.item-runner{position:relative;width:100%;height:2em;margin:.25em 0}.item-runner .item{position:absolute;right:0;color:#7fb464;margin:0;text-align:end}.item-runner .finish-message{position:absolute;width:100%;height:100%}.item-runner .finish-message:hover{cursor:pointer}.item-runner .rewind{font-weight:700;display:-webkit-box;display:-ms-flexbox;display:flex}.item-runner .rewind-icon{margin:0 .25em;height:24px;width:24px}#skills{width:80%;justify-self:center}#skills>.wrapper{padding:1em;border-radius:.5em;height:100%;margin:auto}#skills>.wrapper:hover{cursor:pointer}#skills>.wrapper:hover .flip{-webkit-filter:brightness(110%);filter:brightness(110%);-webkit-transform:scale(1.02);transform:scale(1.02)}#skills .title{margin:0}#skills .front{background:#e8ecee}#skills .back{background:#0d1e26;color:#8f9ca3}#skills .flip{padding:.5em;text-align:center}#hero{position:relative;display:grid;grid-gap:2em;grid-template-columns:1fr 1fr;grid-gap:.25em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:linear-gradient(45deg,rgba(226,230,232,.08),rgba(226,230,232,.08) 10%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 15%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 30%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 35%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 0,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 45%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 50%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 60%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 65%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 70%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 80%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 90%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08)),linear-gradient(135deg,rgba(226,230,232,.08),rgba(226,230,232,.08) 10%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 15%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 30%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 35%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 0,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 45%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 50%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 60%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 65%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 70%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 80%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 90%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08));margin:0 auto;min-height:100vh;padding:2em 0}#hero .hello{grid-column:1;text-align:end;max-width:1500px}#hero .biggest{font-size:1.5em;text-align:end}#hero .biggest h1,#hero .biggest h2{margin:0}#hero .biggest h2{color:#8f9ca3;font-weight:400}#hero .big{font-weight:400;margin:0}#hero #skills{grid-column:2;grid-row:1/-1}#hero .links{grid-column-gap:.25em;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:end;margin-top:.5em}#hero .link,#hero .links{display:grid;grid-auto-flow:column}#hero .link{grid-column-gap:.5em;place-items:center;place-content:center;background:#ffc44d;border-radius:.25em;font-size:.7em;padding:.5em;text-decoration:none;-webkit-transition:all .2s ease;transition:all .2s ease}#hero .link:hover{-webkit-filter:brightness(110%);filter:brightness(110%)}#hero .icon{color:#fff;height:1em;width:auto}#hero .link-text{color:#fff;font-weight:700}#hero .to-projects{position:absolute;bottom:1em;right:1em;background:#fff;border-radius:.25em;color:#ffc44d;font-size:.75em;padding:.25em;text-decoration:none;-webkit-transition:all .2s ease;transition:all .2s ease}#hero .to-projects:hover{cursor:pointer;-webkit-filter:brightness(110%);filter:brightness(110%)}@media screen and (max-width:770px){#hero{grid-template-columns:1fr;grid-template-rows:1fr 1fr;justify-items:center}#hero #skills,#hero .hello{grid-column:1/-1;grid-row:span 1}}.tag{display:inline-block;background:#8f9ca3;color:#fff;padding:.25em .5em;border-radius:.5em;margin:.12em;font-size:.8em;white-space:nowrap}.lightbox__default-loader{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:-1}.lightbox__default-loader__element{-webkit-animation:LightboxDefaultLoaderAnimation 1s linear infinite;animation:LightboxDefaultLoaderAnimation 1s linear infinite;border:3px solid #292929;border-top:3px solid #fff;border-radius:50%;height:75px;width:75px}@-webkit-keyframes LightboxDefaultLoaderAnimation{to{border-top-color:#fff;-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes LightboxDefaultLoaderAnimation{to{border-top-color:#fff;-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.lightbox{position:fixed;top:0;left:0;background:rgba(0,0,0,.8);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:1000}.lightbox,.lightbox__thumbnail{width:100%;height:100%}.lightbox__thumbnail img{width:100%;border:2px solid #8f9ca3;border-bottom:none;height:100%;-o-object-fit:cover;object-fit:cover}.lightbox__thumbnail:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:-webkit-gradient(linear,left top,right top,from(#8f9ca3),to(#0d1e26));background:linear-gradient(90deg,#8f9ca3,#0d1e26);opacity:.3;-webkit-transition:all .15s ease;transition:all .15s ease}.lightbox__thumbnail:hover:after{opacity:.05}.lightbox__close{position:fixed;right:0;top:0;padding:1rem;font-size:1.5rem;cursor:pointer;color:#fff;width:4rem;height:4rem}.lightbox__arrow--invisible{visibility:hidden}.lightbox__element{width:100%;height:100%;padding:2rem 0}.lightbox__arrow,.lightbox__element{display:-webkit-box;display:-ms-flexbox;display:flex}.lightbox__arrow{padding:0 2rem;cursor:pointer;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.lightbox__arrow svg{fill:#fff;pointer-events:none}.lightbox__image{-webkit-box-flex:1;-ms-flex:1;flex:1}.lightbox__image img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}@media screen and (max-width:720px){.lightbox__arrow{padding:0 1rem}}@media screen and (max-width:500px){.lightbox__element{position:relative}.lightbox__arrow{position:absolute;padding:0 2rem;height:100%}.lightbox__arrow--right{right:0;background:-webkit-gradient(linear,left top,right top,from(transparent),to(rgba(0,0,0,.3)));background:linear-gradient(90deg,transparent,rgba(0,0,0,.3))}.lightbox__arrow--left{left:0;background:-webkit-gradient(linear,right top,left top,from(transparent),to(rgba(0,0,0,.3)));background:linear-gradient(270deg,transparent,rgba(0,0,0,.3))}}.project-card,.project-card .card-front{display:-webkit-box;display:-ms-flexbox;display:flex}.project-card .card-front{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column;background:#fff;color:#5c6970}.project-card .image{max-width:100%;height:200px;-o-object-fit:cover;object-fit:cover}.project-card .image:hover{cursor:pointer}.project-card .card-wrapper{-webkit-box-flex:2;-ms-flex-positive:2;flex-grow:2;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column;padding:1em}.project-card .name{text-align:center;margin:0 0 1em}.project-card .description{line-height:1.25em;margin-bottom:.5em;height:350px;overflow-y:auto}.project-card .description p{margin:.25em;font-size:.9em}.project-card .description::-webkit-scrollbar{width:.25rem;border-radius:.25em}.project-card .description::-webkit-scrollbar-thumb{background-color:#7fb464}.project-card .description::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 5px rgba(13,30,38,.5);box-shadow:inset 0 0 5px rgba(13,30,38,.5)}.project-card .tag-wrapper{margin-top:auto;margin-bottom:.5em}.project-card .card-back{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column;-ms-flex-line-pack:start;align-content:flex-start;background:#0d1e26;height:100%;padding:1em}.project-card .images-wrapper{height:80%}.project-card .image-wrapper{height:25%;position:relative}.project-card .image-wrapper:last-of-type>.lightbox__thumbnail>img{border-bottom:2px solid #8f9ca3}.project-card .links{display:grid;grid-auto-flow:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:.5em 0;grid-gap:.25em}.project-card .link{color:#8f9ca3;padding:.5em;text-decoration:none;font-size:.8em;-webkit-transition:all .2s ease;transition:all .2s ease}.project-card .link:hover{-webkit-filter:brightness(110%);filter:brightness(110%)}.project-card .icon{display:block;color:#ffc44d;height:32px;width:32px;margin:0 auto}.project-card .link-text{background:#ffc44d;color:#0d1e26;padding:.25em .5em;border-radius:.5em}.project-card .flip{margin-top:auto;text-align:center;width:100%}#projects{background:#5c6970;width:100%}#projects .title{text-align:center;color:#e8ecee;text-transform:uppercase;letter-spacing:.25em;font-size:2em;margin:0;padding-top:1em}#projects .project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1em;color:#fff;margin:0 auto;padding:1em;max-width:1100px}#projects .project-grid>*{min-width:0;height:750px}@media screen and (max-width:770px){#projects .project-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:500px){#projects .project-grid{grid-template-columns:1fr}}#contact{background:linear-gradient(45deg,rgba(226,230,232,.08),rgba(226,230,232,.08) 10%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 15%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 30%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 35%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 0,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 45%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 50%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 60%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 65%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 70%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 80%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 90%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08)),linear-gradient(135deg,rgba(226,230,232,.08),rgba(226,230,232,.08) 10%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 15%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 30%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 35%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 0,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 45%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 50%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 60%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 65%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 70%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08) 80%,hsla(0,0%,100%,.13) 0,hsla(0,0%,100%,.13) 90%,rgba(226,230,232,.08) 0,rgba(226,230,232,.08))}#contact>.wrapper{padding:2rem 1rem;width:80%;margin:0 auto}#contact>.wrapper.received{text-align:center}#contact>.wrapper.received p{font-weight:700}#contact .title{margin:0;font-size:2.5em}#contact .email-direct{margin-top:1.5em;text-align:center}#contact .email-direct a{color:#7fb464;font-weight:700;text-decoration:none}#contact .email-direct a:hover{text-decoration:underline}#contact .contact-form{display:grid;grid-template-columns:1fr 2fr;grid-gap:1em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-top:1em;text-align:end}#contact .contact-form .field{position:relative;margin-bottom:1em}#contact .contact-form label{display:inline-block;background:#fff;border-radius:.25em;color:#8f9ca3;font-weight:700;padding:.25em;-webkit-transition:all .2s ease;transition:all .2s ease}#contact .contact-form label:hover{cursor:pointer;-webkit-filter:brightness(110%);filter:brightness(110%)}#contact .contact-form input,#contact .contact-form textarea{padding:.25em .5em;border:1px solid #8f9ca3;border-radius:.25em;color:#5c6970;width:100%;-webkit-transition:all .15s ease;transition:all .15s ease}#contact .contact-form input.invalid,#contact .contact-form textarea.invalid{border-color:#c91d1d}#contact .contact-form input.valid,#contact .contact-form textarea.valid{border-color:#56c91d}#contact .contact-form input:focus,#contact .contact-form textarea:focus{outline:none;border-color:transparent;-webkit-box-shadow:0 0 5px 1px rgba(29,186,201,.5);box-shadow:0 0 5px 1px rgba(29,186,201,.5)}#contact .contact-form input:focus.invalid,#contact .contact-form textarea:focus.invalid{-webkit-box-shadow:0 0 5px 1px rgba(201,29,29,.5);box-shadow:0 0 5px 1px rgba(201,29,29,.5)}#contact .contact-form input:focus.valid,#contact .contact-form textarea:focus.valid{-webkit-box-shadow:0 0 5px 1px rgba(86,201,29,.5);box-shadow:0 0 5px 1px rgba(86,201,29,.5)}#contact .contact-form input::-webkit-input-placeholder,#contact .contact-form textarea::-webkit-input-placeholder{color:#8f9ca3;font-style:italic}#contact .contact-form input::-moz-placeholder,#contact .contact-form textarea::-moz-placeholder{color:#8f9ca3;font-style:italic}#contact .contact-form input:-ms-input-placeholder,#contact .contact-form textarea:-ms-input-placeholder{color:#8f9ca3;font-style:italic}#contact .contact-form input::-ms-input-placeholder,#contact .contact-form textarea::-ms-input-placeholder{color:#8f9ca3;font-style:italic}#contact .contact-form input::placeholder,#contact .contact-form textarea::placeholder{color:#8f9ca3;font-style:italic}#contact .contact-form .message{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column;margin-bottom:.5em}#contact .contact-form label[for=msg]{margin:0 auto;text-align:center}#contact .contact-form #msg{padding:.25em}#contact .contact-form #submit{grid-column:-2;justify-self:center;background:#7fb464;border:none;border-radius:.25em;color:#fff;text-transform:uppercase;font-weight:700;padding:.5em}#contact .contact-form #submit:hover{cursor:pointer;-webkit-filter:brightness(110%);filter:brightness(110%)}#contact .contact-form #submit:active{-webkit-filter:brightness(90%);filter:brightness(90%)}#contact .contact-form #submit:focus{-webkit-box-shadow:none;box-shadow:none}#contact .contact-form #submit:disabled{background:#e8ecee}#contact .contact-form #submit:disabled:hover{cursor:not-allowed;-webkit-filter:none;filter:none}#contact .error-msg{position:absolute;top:calc(100% + .25em);right:.25em;color:#c91d1d;font-size:.75em;-webkit-transition:all .3s cubic-bezier(.3,1.1,.3,1.1);transition:all .3s cubic-bezier(.3,1.1,.3,1.1)}@media screen and (max-width:770px){#contact .contact-form{display:grid;grid-template-columns:1fr}}*{-webkit-box-sizing:border-box;box-sizing:border-box}html{font-size:16pt}#app{font-family:Source Sans Pro,Helvetica,Arial,sans-serif;color:#5c6970}.flip{color:#7fb464;letter-spacing:.3em;-webkit-transition:all .2s ease;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.flip:focus,.flip:hover{cursor:pointer;-webkit-filter:brightness(110%);filter:brightness(110%)}.flip:focus{outline:none}.link{text-decoration:none;-webkit-transition:all .2s ease;transition:all .2s ease}.link,.link:visited{color:#ffc44d}.link:hover{cursor:pointer;-webkit-filter:brightness(110%);filter:brightness(110%);text-decoration:underline}.link:active{-webkit-filter:brightness(90%);filter:brightness(90%)}.flip-enter-active,.flip-leave-active{-webkit-transition:all .25s cubic-bezier(.3,1.1,.3,1.1);transition:all .25s cubic-bezier(.3,1.1,.3,1.1)}.flip-enter,.flip-leave-to{-webkit-transform:scale(0,.95);transform:scale(0,.95)}.flip-enter-to,.flip-leave{-webkit-transform:scale(1);transform:scale(1)}.slide-enter-active,.slide-leave-active{-webkit-transition:all .15s cubic-bezier(.3,1.1,.3,1.1);transition:all .15s cubic-bezier(.3,1.1,.3,1.1)}.slide-enter{-webkit-transform:translateX(75px);transform:translateX(75px);opacity:0}.slide-leave-to{-webkit-transform:translateX(-75px);transform:translateX(-75px);opacity:0}