.link-btn[data-v-ec45df36]{display:inline-block;padding:.875rem 1.25rem;font-size:1.125rem;line-height:1;text-decoration:none;color:var(--text-color);width:auto;background:var(--bg-color);transition:transform 75ms ease-in,box-shadow 75ms ease-in}.link-btn[data-v-ec45df36]:hover{transform:translateY(-.25rem);box-shadow:0 .25rem 1rem var(--shadow-color)}.link-btn[data-v-ec45df36]:active{transform:translateY(0);box-shadow:0 .25rem 1rem #0000}.link[data-v-17fe8257]{display:inline-block;padding:.875rem 1.25rem;font-size:1.125rem;line-height:1;text-decoration:none;color:var(--text-color);width:auto;transition:transform 75ms ease-in}.link[data-v-17fe8257]:hover{transform:translateY(-.25rem)}.link[data-v-17fe8257]:active{transform:translateY(0)}.links .link-btn[data-v-982fecc6],.links .link[data-v-982fecc6]{margin-right:.5rem}.project-card[data-v-0bb18c04]{display:inline-block;width:18.75rem;height:18.75rem;margin-right:4rem;background:var(--bg-color);color:var(--text-color);box-shadow:0 .25rem 1rem var(--shadow-color);position:relative;overflow:hidden;transition:all 75ms ease-in;cursor:pointer;flex-shrink:0}.project-card[data-v-0bb18c04]:hover{transform:translateY(-.25rem);box-shadow:0 .25rem 3rem var(--shadow-color)}.project-card[data-v-0bb18c04]:active{transform:translateY(0);box-shadow:0 .25rem 1rem #0000}.project-card.wide[data-v-0bb18c04]{width:37.5rem}.project-card>img.icon[data-v-0bb18c04]{display:block;height:5rem;margin:2.1875rem 1.5rem}.project-card>.info[data-v-0bb18c04]{box-sizing:border-box;padding:0 1rem 0 1.5rem;width:18.75rem}.project-card>img.screenshot[data-v-0bb18c04]{position:absolute;top:1.5rem;left:20.25rem;height:15.75rem}.project-card>img.screenshot.shadow[data-v-0bb18c04]{box-shadow:-3px 0 10px #0004}h3[data-v-0bb18c04],p[data-v-0bb18c04]{margin:0 0 .8rem}h3[data-v-0bb18c04]{font-size:1.7rem}p[data-v-0bb18c04]{font-size:1.2rem}.projects[data-v-40e67ce8]{width:90%;max-width:1200px;height:18.75rem;margin:-1rem auto calc(50vh - 9.375rem);overflow:visible;position:relative}.container[data-v-40e67ce8]{display:inline-flex}.container[data-v-729461b2]{position:fixed;width:100%;height:100vh;left:0;top:0;background:#fff8;overflow:hidden auto}.container[data-v-729461b2]:after{content:"×";display:block;margin:2rem auto;padding:.5rem;font-size:2rem;line-height:1;text-align:center;width:2rem;color:#fff;background:#0008;align-content:center;justify-content:center;border-radius:50%;cursor:pointer}.detail[data-v-729461b2]{box-sizing:border-box;width:95%;max-width:900px;margin:4rem auto 2rem;padding:2.5rem;background-color:#fff;box-shadow:0 .25rem 2rem #0003}.detail[data-v-729461b2]>*{margin-bottom:2.5rem}.detail[data-v-729461b2]>:last-child{margin-bottom:0}.detail-enter-active[data-v-729461b2]{transition:opacity .25s linear,transform .25s linear}.detail-leave-active[data-v-729461b2]{transition:opacity .1s linear,transform .1s linear}.detail-enter-from[data-v-729461b2],.detail-leave-to[data-v-729461b2]{opacity:0;transform:translateY(2rem)}.info[data-v-729461b2]{display:flex;align-items:center}.icon[data-v-729461b2]{display:inline-flex;padding:1.5rem;align-content:center;justify-content:center;background:var(--bg-color);box-shadow:0 .25rem 1rem var(--shadow-color);margin-right:2rem}.icon>img[data-v-729461b2]{height:4rem}.info p[data-v-729461b2]{line-height:1;margin:0 0 .8rem}.info[data-v-729461b2] :last-child{margin:0}.title[data-v-729461b2]{font-weight:700;font-size:1.7rem}.slogan[data-v-729461b2]{font-size:1.2rem}.stack[data-v-729461b2]{color:#605e5c}.stack>span[data-v-729461b2]:after{content:" / ";color:var(--text-color);font-weight:800}.stack>span[data-v-729461b2]:last-child:after{content:""}.screenshot[data-v-729461b2]{display:block;width:100%}.screenshot.shadow[data-v-729461b2]{box-shadow:0 .25rem 1rem #0003}body,html{margin:0;background:#faf9f8;overflow-x:hidden}body{font-family:Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html.detail-on{overflow:hidden}@media (max-width:700px){html{font-size:11px}}#root{overflow:hidden;position:absolute;top:0;left:0;width:100%}#root.fixed{position:fixed;top:unset;bottom:0}header{width:90%;max-width:1200px;margin:0 auto;height:100vh;display:flex;justify-content:center;flex-direction:column}header h1,header h2,header h3{font-weight:700;line-height:1.5;margin:0 0 1rem}header h1{font-size:3.25rem}header h2{font-size:2rem;color:#605e5c}header .links{margin-top:32px}