.wored-game-scope{margin:1rem;padding:2rem;text-align:center;display:flex;justify-content:center;gap:64px;position:relative;align-items:center;flex-direction:column;border:1px solid var(--color-border);border-radius:16px;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:var(--color-text);background-color:var(--color-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;--color-bg: #0a0a0a;--color-bg-light: #1a1a1a;--color-bg-lighter: #202020;--color-border: #353535;--color-text: #ffffffde;--color-link: #646cff;--color-link-hover: #8b90ec;--color-orange: #d47a39;--color-green: #4fa752;--color-gray: #2f2f2f;--color-red: #a63f3f}.wored-game-scope a{font-weight:500;color:var(--color-link);text-decoration:inherit}.wored-game-scope a:hover{color:var(--color-link-hover)}.wored-game-scope button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:14px;font-weight:500;font-family:inherit;background-color:var(--color-bg-light);cursor:pointer;transition:border-color .1s}.wored-game-scope button.active,.wored-game-scope button:hover{border-color:var(--color-link-hover)}.wored-game-scope button:focus,.wored-game-scope button:focus-visible{outline:4px auto -webkit-focus-ring-color}.wored-game-scope .color-orange{background-color:var(--color-orange)!important}.wored-game-scope .color-green{background-color:var(--color-green)!important}.wored-game-scope .color-gray{background-color:var(--color-gray)!important}.wored-game-scope wored-keyboard{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;width:568px}.wored-game-scope wored-keyboard button{width:48px;height:64px;padding:0;font-size:14px}.wored-game-scope wored-keyboard button:nth-child(20),.wored-game-scope wored-keyboard button:nth-child(28){width:88px}.wored-game-scope wored-keyboard button:disabled{pointer-events:none;color:var(--color-text)}.wored-game-scope wored-controller{display:flex;flex-direction:column;gap:12px}.wored-game-scope wored-controller .cell{width:56px;height:64px;border-radius:4px;outline:none;text-align:center;font-size:24px;font-weight:700;border:none;display:flex;align-items:center;justify-content:center;background-color:var(--color-bg-lighter);text-transform:uppercase}.wored-game-scope wored-controller .cell.disabled{background-color:#1a1a1a}.wored-game-scope wored-controller .row{display:flex;gap:12px;position:relative}.wored-game-scope wored-controller .row:after{display:block;width:24px;height:24px;border-radius:50%;position:absolute;right:-48px;top:50%;transform:translateY(-50%)}.wored-game-scope wored-controller .row.wored-winning-row:after{content:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjNGZhNzUyIiBkPSJtMTAuNiAxMy44bC0yLjE1LTIuMTVxLS4yNzUtLjI3NS0uNy0uMjc1dC0uNy4yNzVxLS4yNzUuMjc1LS4yNzUuN3QuMjc1LjdMOS45IDE1LjlxLjMuMy43LjN0LjctLjNsNS42NS01LjY1cS4yNzUtLjI3NS4yNzUtLjd0LS4yNzUtLjdxLS4yNzUtLjI3NS0uNy0uMjc1dC0uNy4yNzVMMTAuNiAxMy44Wk0xMiAyMnEtMi4wNzUgMC0zLjktLjc4OHQtMy4xNzUtMi4xMzdxLTEuMzUtMS4zNS0yLjEzNy0zLjE3NVQyIDEycTAtMi4wNzUuNzg4LTMuOXQyLjEzNy0zLjE3NXExLjM1LTEuMzUgMy4xNzUtMi4xMzdUMTIgMnEyLjA3NSAwIDMuOS43ODh0My4xNzUgMi4xMzdxMS4zNSAxLjM1IDIuMTM4IDMuMTc1VDIyIDEycTAgMi4wNzUtLjc4OCAzLjl0LTIuMTM3IDMuMTc1cS0xLjM1IDEuMzUtMy4xNzUgMi4xMzhUMTIgMjJaIj48L3BhdGg+PC9zdmc+)}.wored-game-scope wored-controller .row.wored-losing-row:after{content:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjZGQ0ZjRmIiBkPSJtOC40IDE3bDMuNi0zLjZsMy42IDMuNmwxLjQtMS40bC0zLjYtMy42TDE3IDguNEwxNS42IDdMMTIgMTAuNkw4LjQgN0w3IDguNGwzLjYgMy42TDcgMTUuNkw4LjQgMTdabTMuNiA1cS0yLjA3NSAwLTMuOS0uNzg4dC0zLjE3NS0yLjEzN3EtMS4zNS0xLjM1LTIuMTM3LTMuMTc1VDIgMTJxMC0yLjA3NS43ODgtMy45dDIuMTM3LTMuMTc1cTEuMzUtMS4zNSAzLjE3NS0yLjEzN1QxMiAycTIuMDc1IDAgMy45Ljc4OHQzLjE3NSAyLjEzN3ExLjM1IDEuMzUgMi4xMzggMy4xNzVUMjIgMTJxMCAyLjA3NS0uNzg4IDMuOXQtMi4xMzcgMy4xNzVxLTEuMzUgMS4zNS0zLjE3NSAyLjEzOFQxMiAyMloiPjwvcGF0aD48L3N2Zz4=)}.wored-game-scope wored-settings-dropdown{position:absolute;right:10px;top:10px;z-index:100}.wored-game-scope wored-settings-dropdown .drp-trigger{background-color:transparent;font-size:18px;padding:10px 15px;width:unset!important;height:unset!important}.wored-game-scope wored-settings-dropdown .drp-trigger svg{pointer-events:none!important;transform:translateY(3px)}.wored-game-scope wored-settings-dropdown .drp-wrap{display:none;position:absolute;top:calc(100% + 10px);border-radius:4px;right:0;padding:20px;background-color:var(--color-bg-light);box-shadow:0 2px 12px #00000080}.wored-game-scope wored-settings-dropdown button{background-color:var(--color-bg);width:100%;margin-bottom:10px;text-align:left}.wored-game-scope wored-settings-dropdown label,.wored-game-scope wored-settings-dropdown select{display:block;min-width:156px}.wored-game-scope wored-settings-dropdown label{font-size:12px;font-weight:400;margin-bottom:3px;text-align:left}.wored-game-scope wored-settings-dropdown select{border-radius:4px;border:1px solid var(--color-border);margin-bottom:20px;height:32px;line-height:32px;padding:0 16px;font-size:12px;background-color:var(--color-bg)}.wored-game-scope{margin:0;height:755px;border-color:var(--color-border)}.wored-game-scope wored-settings-dropdown{z-index:50!important}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}button{border:none;background-color:unset;cursor:pointer;margin:0}hr{border:none;border-bottom:1px solid var(--color-border)}@font-face{font-display:swap;font-family:MyMonument;font-style:normal;font-weight:400;src:url(/fonts/monument/MonumentExtended-Regular.otf) format("opentype")}@font-face{font-display:swap;font-family:MyMonument;font-style:bold;font-weight:700;src:url(/fonts/monument/MonumentExtended-Bold.otf) format("opentype")}@font-face{font-display:swap;font-family:General Sans;font-style:normal;font-weight:400;src:url(/fonts/general/GeneralSans-Regular.otf) format("otf")}@font-face{font-display:swap;font-family:General Sans;font-style:normal;font-weight:500;src:url(/fonts/general/GeneralSans-Medium.otf) format("otf")}@font-face{font-display:swap;font-family:General Sans;font-style:normal;font-weight:700;src:url(/fonts/general/GeneralSans-Bold.otf) format("otf")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(/fonts/JetBrainsMono-Medium.ttf) format("truetype")}:root{--color-white: #e0e0e0;--color-white-rgb: 224, 224, 224;--color-white-static: #e0e0e0;--color-bg: #cfcfcf;--color-bg-rgb: 207, 207, 207;--color-border: #bebebe;--color-black: #070707;--color-black-rgb: 7, 7, 7;--color-black-static: #070707;--color-black-static-rgb: 7, 7, 7;--color-text: #070707;--color-text-black: #070707;--color-text-light: #686868;--color-accent: #fd2767;--color-accent-rgb: 253, 39, 103;--color-secondary: #5527fd;--color-ternary: #abfd27;--shadow: 0 2px 10px rgba(8, 8, 8, .1);--shadow2: 0 4px 15px rgba(8, 8, 8, .4)}:root{--container: 1280px;--bottom-padding: 25vh;--header-width: 156px}html{font-family:General Sans,sans-serif;font-weight:400;font-size:63.5%;position:relative;background-color:var(--color-white);color:var(--color-text)}html *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html *:focus-visible{outline:1px solid var(--color-accent);border-radius:5px}html a{text-decoration:none;color:var(--color-text)}.navigation{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;position:fixed;left:0;top:0;bottom:0;padding:20px;z-index:1000}.navigation .logo{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:10px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;margin-bottom:8em}.navigation .logo img{width:48px;object-fit:contain}.navigation ul{margin-bottom:4em}.navigation ul li a{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;transition:all .1s ease-in-out;font-family:General Sans,sans-serif;font-weight:400;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:20px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;height:48px;text-align:left;text-decoration:none;border-bottom:1px solid var(--color-text-light);font-size:1.2rem;color:var(--color-text);text-transform:uppercase;padding-right:20px}.navigation ul li a:hover,.navigation ul li a.router-link-active{color:var(--color-accent);border-color:var(--color-accent)}.navigation .theme-switch{font-size:1.6rem;color:var(--color-text)}.navigation .bottom-right{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:flex-end;-ms-flex-pack:flex-end;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;width:100%;z-index:10}.navigation .bottom-right button{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;transition:all .1s ease-in-out;opacity:0;pointer-events:none;visibility:hidden}.navigation .bottom-right button.visible{visibility:visible;pointer-events:all;opacity:.75}.navigation .bottom-right button img{width:20px}.navigation .bottom-right button:hover{opacity:1}.navigation .noise{display:none}.nav-open{-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;position:fixed;top:16px;left:16px;width:40px;display:flex;align-items:center;justify-content:center;height:40px;background-color:var(--color-white);color:var(--color-text);z-index:1005}.nav-open svg{width:24px;height:24px}@media screen and (max-width: 678px){:root{--header-width: 0px}.navigation{transform:translate(-100%);border-right:1px solid var(--color-border);max-height:100dvh;background-color:var(--color-white)}.navigation .logo:before{display:none!important}.navigation .logo img{width:32px}.navigation.mobile-active{transform:translate(0)}.navigation .noise{display:block}.nav-open.active{left:96px}}.flex-1{flex:1}.container{display:block;margin:0 auto;width:100%}.route-about{max-height:100vh;padding-top:20px;padding-left:calc(var(--header-width) + 40px)}.route-about .gradient-float-wrap{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;transition:all .1s ease-in-out;filter:blur(50px);position:fixed;top:15%;left:-18vw}.route-about .gradient-float-wrap .gradient-wrap{border-radius:50%;width:40vw!important;height:40vw!important;z-index:-1;opacity:.3}.route-about .about-title{margin-bottom:64px;position:relative;z-index:1;overflow:hidden}.route-about .about-title:after{content:"About";display:block;position:absolute;top:40%;left:25%;z-index:-1;opacity:.15;font-size:40rem;color:transparent;-webkit-text-stroke:1px var(--color-text)}.route-about .about-title img{height:456px;width:100%;max-width:888px;object-position:center;object-fit:cover;margin-bottom:32px}.route-about .about-title .stack-title{margin-bottom:0;padding-bottom:0}.route-about .about-title h1{font-family:General Sans,sans-serif;font-weight:700;font-size:12rem;text-transform:uppercase}.route-about .about-title h1 span{display:block;color:var(--color-text);font-size:1.8rem;line-height:auto}.route-about .about-title .about-socials{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;position:relative;border-bottom:1px solid var(--color-border);padding-bottom:24px;margin-top:16px;padding-right:16px}.route-about .about-title .about-socials ul{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:20px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.route-about .about-title .about-socials ul li.cv a{font-family:General Sans,sans-serif;font-weight:600;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;width:36px;height:36px;min-width:36px;min-height:36px;border-radius:10px;font-size:1.2rem;border:1px solid var(--color-accent);color:var(--color-accent)}.route-about .about-title .about-socials ul li.cv a:hover{background-color:rgba(var(--color-accent-rgb),.15)}.route-about .about-title .about-socials ul li button,.route-about .about-title .about-socials ul li a{display:block;font-size:2.4rem}.route-about .about-title .about-socials ul li button:hover,.route-about .about-title .about-socials ul li a:hover{color:var(--color-accent)}.route-about .about-content-wrap{display:block;z-index:5;padding-bottom:var(--bottom-padding)}.route-about .about-content-wrap .about-content{width:100%;max-width:720px}.route-about .about-content-wrap .about-content p{display:block;font-size:2.4rem;line-height:1.5em;margin:0 auto 50px}.route-about .about-content-wrap .about-content .star{display:block;width:64px;margin:64px auto 0}.projects-header{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;position:relative;overflow:hidden;width:100%;z-index:1;min-height:20vh;padding-left:calc(var(--header-width) + 80px)}.projects-header .card{z-index:5;width:100%;position:relative;margin-bottom:80px;padding-bottom:20px}.projects-header .card:after{content:"";display:block;width:128px;position:absolute;bottom:0;left:0;border-bottom:5px solid var(--color-text)}.projects-header .card h1{font-family:MyMonument,sans-serif;font-weight:400;font-size:10rem;margin-bottom:20px;text-transform:uppercase;white-space:wrap;word-break:break-all;word-wrap:break-word}.projects-header .card hr{border:none;border-bottom:1px solid var(--color-border)}.projects-header .card p{font-family:General Sans,sans-serif;font-weight:700;font-size:2em;line-height:1.35em;text-transform:uppercase;width:100%;max-width:668px}.projects-header .dot{position:absolute;z-index:-1}.projects{padding-top:60px}.projects .active-project-modal{display:block;position:fixed;top:0;bottom:0;width:75vw;right:0;background-color:var(--color-white);z-index:10000}.projects .active-project-modal:after{content:"";position:absolute;right:100%;width:50vw;top:0;bottom:0;display:block;z-index:-1;background-color:rgba(var(--color-black-rgb),.8)}.projects .container .project-list-wrap{z-index:5;padding-bottom:var(--bottom-padding);padding:0 20px 64px;margin-top:-45px;padding-left:calc(var(--header-width) + 80px)}.projects .container .project-list-wrap .project-group{display:-ms-grid;display:grid;gap:80px;grid-template-columns:128px 4fr}.projects .container .project-list-wrap .project-group>div:first-child{position:relative}.projects .container .project-list-wrap h2{padding-top:48px;padding-bottom:10px;margin-bottom:20px;position:sticky;top:0;z-index:100}.projects .container .project-list-wrap .project-list{display:block;padding-bottom:20px;padding-top:20px}.projects .container .project-list-wrap .project-item{-webkit-transition:all .3s ease-in-out;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block;text-align:left;position:relative;z-index:5;padding:25px 0 25px 20px;overflow:hidden;border:1px solid transparent}.projects .container .project-list-wrap .project-item img{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;transition:all .1s ease-in-out;position:absolute;right:-40px;opacity:0;bottom:10px;transform:rotate(90deg);filter:invert(1);height:30px}.projects .container .project-list-wrap .project-item:before{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:10%;z-index:-1;background-color:transparent;opacity:.75}.projects .container .project-list-wrap .project-item.router-link-active:before,.projects .container .project-list-wrap .project-item:hover:before{background-color:var(--color-bg);left:0}.projects .container .project-list-wrap .project-item.router-link-active img,.projects .container .project-list-wrap .project-item:hover img{opacity:1;right:30px;filter:invert(0%) sepia(95%) saturate(7480%) hue-rotate(346deg) brightness(80%) contrast(98%)}.projects .container .project-list-wrap .project-item strong{font-family:MyMonument,sans-serif;font-weight:400;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:10px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;font-size:1.6rem;margin-bottom:10px;letter-spacing:.04em;text-transform:uppercase}.projects .container .project-list-wrap .project-item p{font-family:General Sans,sans-serif;font-weight:400;color:var(--color-text-light);font-size:1.4rem}.route-project-detail{position:absolute;top:0;right:0;bottom:0;left:0;padding:0 80px;overflow-y:auto}.route-project-detail .project-scroll{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:32px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;position:sticky;top:0;margin:0 -40px;padding:20px 40px;background-color:rgba(var(--color-white-rgb),.75);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100}.route-project-detail .project-scroll:after{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;transition:all .1s ease-in-out;content:"";position:absolute;bottom:0;left:40px;right:40px;border-bottom:1px solid var(--color-border);opacity:0}.route-project-detail .project-scroll.is-visible:after{opacity:1}.route-project-detail .project-scroll .title{font-family:MyMonument,sans-serif;font-weight:700;margin:auto;text-transform:uppercase;font-size:1.8rem;flex:1}.route-project-detail .project-scroll button{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;transition:all .1s ease-in-out;font-size:1.4rem;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:10px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.route-project-detail .project-scroll button svg{font-size:2rem}.route-project-detail .project-scroll button:hover{color:var(--color-accent)}.route-project-detail .project-header{container-type:inline-size;border-bottom:1px solid var(--color-border);margin-bottom:80px;z-index:100}.route-project-detail .project-header .title-wrap{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:40px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;margin-bottom:10px}.route-project-detail .project-header .title-wrap h1{font-family:MyMonument,sans-serif;font-weight:700;font-size:12rem;word-wrap:break-word;word-break:break-all;text-transform:uppercase}.route-project-detail .project-header .title-wrap .gradient-wrap{width:80px!important;height:80px!important}.route-project-detail .project-header .meta{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:20px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;margin-bottom:20px}.route-project-detail .project-header .meta a,.route-project-detail .project-header .meta span{font-family:General Sans,sans-serif;font-weight:400;font-size:1.5rem;color:var(--color-text-light)}.route-project-detail .project-header .meta a{display:block;font-size:1.5rem;text-decoration:none}.route-project-detail .project-header .meta a:hover{text-decoration:underline}.route-project-detail .project-content{width:100;max-width:760px;margin:0 auto;z-index:1;padding-bottom:var(--bottom-padding)}.route-project-detail .project-detail-error{padding-top:40px}.route-project-detail .project-detail-error h1{font-family:MyMonument,sans-serif;font-weight:400;font-size:4rem;margin-bottom:40px}.route-project-detail .project-detail-error a{font-size:1.4rem;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:20px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;display:inline-flex;height:20px;margin-bottom:20px}.route-project-detail .project-detail-error a:hover span:after{width:100%}.route-project-detail .project-detail-error a svg{font-size:1.6rem}.route-project-detail .project-detail-error .image-wrap{display:inline-block;position:relative}.route-project-detail .project-detail-error .image-wrap .gradient{display:block;width:512px}.route-project-detail .project-detail-error .image-wrap .star{width:80px;position:absolute;right:-256px;bottom:-80px}.route-home-3{overflow:hidden}.route-home-3 .stage.homepage{height:90vh;position:relative;overflow:hidden}.route-home-3 .bg-star{display:block;object-fit:contain;object-position:center;width:756px;height:756px;position:absolute;bottom:-20%;left:12vw;filter:invert(39%) sepia(45%) saturate(6375%) hue-rotate(322deg) brightness(93%) contrast(114%)}.route-home-3 .text-wrap{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:10vh;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.route-home-3 .text-wrap .inner-wrapper{overflow:hidden;width:100%}.route-home-3 .text-wrap.animate-links .links,.route-home-3 .text-wrap.animate-text p,.route-home-3 .text-wrap.animate-header h1{transform:translateY(0) rotate(0)}.route-home-3 .text-wrap .links,.route-home-3 .text-wrap p,.route-home-3 .text-wrap h1{-webkit-transition:all .5s cubic-bezier(.87,0,.13,1);-moz-transition:all .5s cubic-bezier(.87,0,.13,1);-o-transition:all .5s cubic-bezier(.87,0,.13,1);transition:all .5s cubic-bezier(.87,0,.13,1);transform:translateY(110%);width:100%}.route-home-3 .text-wrap h1{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:space-between;-ms-flex-pack:space-between;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;font-family:MyMonument,sans-serif;font-weight:400;font-size:6.6666666667vw;text-transform:uppercase;width:100%;line-height:.8em;z-index:10;pointer-events:none;color:var(--color-text);padding-top:50px}.route-home-3 .text-wrap h1 img{width:40px;margin:0 20px}.route-home-3 .text-wrap h1 span{font-size:inherit}.route-home-3 .text-wrap p{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:space-between;-ms-flex-pack:space-between;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-transition:all .75s cubic-bezier(.87,0,.13,1);-moz-transition:all .75s cubic-bezier(.87,0,.13,1);-o-transition:all .75s cubic-bezier(.87,0,.13,1);transition:all .75s cubic-bezier(.87,0,.13,1);font-family:MyMonument,sans-serif;font-weight:400;font-size:2.6rem;text-transform:uppercase;text-align:right;color:var(--color-text)}.route-home-3 .text-wrap .links{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:flex-end;-ms-flex-pack:flex-end;justify-content:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-transition:all 1s cubic-bezier(.87,0,.13,1);-moz-transition:all 1s cubic-bezier(.87,0,.13,1);-o-transition:all 1s cubic-bezier(.87,0,.13,1);transition:all 1s cubic-bezier(.87,0,.13,1);list-style:none;width:50%}.route-home-3 .text-wrap .links li{display:block;width:100%}.route-home-3 .text-wrap .links li a{-webkit-transition:all .05s ease-in-out;-moz-transition:all .05s ease-in-out;-o-transition:all .05s ease-in-out;transition:all .05s ease-in-out;font-family:General Sans,sans-serif;font-weight:400;width:100%;text-align:right;font-size:1.4rem;display:block;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--color-text);text-transform:uppercase;color:var(--color-text)}.route-home-3 .text-wrap .links li a:hover{color:var(--color-accent);border-color:var(--color-accent)}.route-home-3 .text-wrap .links li a:hover{text-decoration:none}.route-home-3 .me{position:absolute;right:0;bottom:-256px;overflow:hidden}.route-home-3 .me.animate-me img{transform:translateY(0) rotate(0)}.route-home-3 .me.animate-me:before{width:512px;height:512px;transform:translateY(0) rotate(0)}.route-home-3 .me:before{-webkit-transition:all 1s cubic-bezier(.87,0,.13,1);-moz-transition:all 1s cubic-bezier(.87,0,.13,1);-o-transition:all 1s cubic-bezier(.87,0,.13,1);transition:all 1s cubic-bezier(.87,0,.13,1);content:"";border:2px solid var(--color-text);width:256px;height:256px;border-radius:50%;position:absolute;bottom:-256px;right:0;transform:translateY(100%)}.route-home-3 .me img{-webkit-transition:all 1s cubic-bezier(.87,0,.13,1);-moz-transition:all 1s cubic-bezier(.87,0,.13,1);-o-transition:all 1s cubic-bezier(.87,0,.13,1);transition:all 1s cubic-bezier(.87,0,.13,1);display:block;width:324px;transform:translateY(100%)}.route-cv{display:block;width:100%;padding-top:10vh;padding-bottom:var(--bottom-padding)}.route-cv .recommendations{padding:32px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:64px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.route-cv .recommendations strong{font-family:MyMonument,sans-serif;font-weight:400;font-size:2.4rem;display:block}.route-cv .projects-header{margin-bottom:40px}.route-cv .projects-header .card{position:relative;overflow:hidden;border-bottom:1px solid var(--color-border)}.route-cv .projects-header .card .title-wrap{display:flex;align-items:baseline;gap:32px}.route-cv .projects-header .card .title-wrap .padder{width:80px}.route-cv .projects-header h1{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:32px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;font-family:General Sans,sans-serif;font-weight:700;font-size:20rem;margin-bottom:4vh;position:relative}.route-cv .projects-header h1 .padder{width:5%}.route-cv .projects-header h1:after{content:"CV";display:block;position:absolute;bottom:-175%;right:-160%;z-index:-1;opacity:.15;font-size:50rem;color:transparent;-webkit-text-stroke:1px var(--color-text)}.route-cv .projects-header h1 .header-link{display:inline-block;height:32px;line-height:32px}.route-cv .projects-header h1 .header-link svg{display:inline-block;vertical-align:middle;margin-left:15px;font-size:2rem}.route-cv .cv-container{padding-left:calc(var(--header-width) + 80px);padding-right:20px;max-width:1920px}.route-cv .cv-stack{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:128px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;margin-bottom:100px}.route-cv .cv-stack>div{max-width:512px}.route-cv .cv-stack .stack-list{display:block}.route-cv .cv-stack .stack-list li{font-family:General Sans,sans-serif;font-weight:400;font-size:1.6rem;line-height:1.3em;margin-bottom:12px;color:var(--color-text)}.route-cv .cv-stack .stack-list li span{color:var(--color-text-light)}.route-cv .cv-stack .stack-list li:last-of-type{margin-bottom:0}.route-cv .work-experience{display:block}.route-cv .work-experience .experience-item{display:-ms-grid;display:grid;gap:20px;grid-template-columns:96px 1fr;margin-bottom:100px}.route-cv .work-experience .experience-item .year-col{position:relative}.route-cv .work-experience .experience-item .year-col span{font-family:General Sans,sans-serif;font-weight:300;position:sticky;top:20px;padding-top:12px;font-size:1.5rem}.route-cv .work-experience .experience-item .content-col .content-title{margin-bottom:40px}.route-cv .work-experience .experience-item .content-col .content-title .title{display:-ms-grid;display:grid;gap:20px;grid-template-columns:25px 1fr;margin-bottom:10px}.route-cv .work-experience .experience-item .content-col .content-title .title .gradient-wrap{width:25px!important;background-color:var(--color-black-static)}.route-cv .work-experience .experience-item .content-col .content-title .title strong{font-family:MyMonument,sans-serif;font-weight:400;display:block;font-size:2.6rem;text-transform:uppercase}.route-cv .work-experience .experience-item .content-col .content-title p{font-size:1.8rem;color:var(--color-text-light);padding-left:45px}.route-cv .work-experience .experience-item .content-col .article-style{display:block;width:85%;max-width:724px}.route-cv .work-experience .experience-item .content-col .article-style p{font-size:2rem}.route-cv .work-experience .experience-item .content-col .article-style h6{font-family:General Sans,sans-serif;font-weight:700;font-size:2rem;margin-bottom:25px;text-transform:capitalize}.route-cv .work-experience .experience-item:last-of-type{margin-bottom:0}.stack-title{font-family:MyMonument,sans-serif;font-weight:400;display:block;font-size:1.3rem;margin-bottom:24px;padding-bottom:10px;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.25em}.route-gallery{display:block;width:100%;padding-top:60px;padding-bottom:var(--bottom-padding);padding-left:calc(var(--header-width) + 80px)}.route-gallery .projects-header{padding-left:0}.route-gallery .gallery-cameras{display:grid;grid-template-columns:1fr 1fr;gap:30px;width:100%;max-width:1254px;margin-bottom:64px}.route-gallery .gallery-cameras .stack-title{padding-bottom:0}.route-gallery .gallery-cameras strong{font-family:General Sans,sans-serif;font-weight:400;display:block;font-size:1.6rem;margin-bottom:12px}.route-gallery .gallery-cameras strong.old{opacity:.25}.route-gallery .gallery-cameras strong:last-of-type{margin-bottom:0}.route-gallery .gallery-grid-photos{display:-ms-grid;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,612px)}.route-gallery .gallery-grid-photos .photo-item:hover strong{color:var(--color-accent)}.route-gallery .gallery-grid-photos .photo-item .photo-image{display:block;width:100%;max-width:612px;height:65vh;position:relative;overflow:hidden;margin-bottom:8px}.route-gallery .gallery-grid-photos .photo-item .photo-image img{display:block;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.route-gallery .gallery-grid-photos .photo-item .photo-info{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:16px;-webkit-box-pack:space-between;-ms-flex-pack:space-between;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.route-gallery .gallery-grid-photos .photo-item strong,.route-gallery .gallery-grid-photos .photo-item span{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;transition:all .1s ease-in-out;font-family:General Sans,sans-serif;font-weight:400;color:var(--color-text-light);font-size:1.4rem;text-align:left}.route-gallery .gallery-grid-photos .photo-item .divider{width:8px;height:2px;background-color:var(--color-border)}.route-gallery .gallery-grid-photos .photo-item strong{flex:1}.route-gallery .gallery-grid-photos .photo-item span{font-size:1.2rem}.scroll-up{position:absolute!important;bottom:0;right:40px}.scroll-up img{width:24px;margin:0!important}@media screen and (max-width: 678px){.route-gallery{padding:80px 32px}}.fade-enter-active,.fade-leave-active{transition:.1s all linear;opacity:1}.fade-enter-from,.fade-leave-to{opacity:0}.page-enter-active,.page-leave-active{-webkit-transition:all .15s ease-in-out;-moz-transition:all .15s ease-in-out;-o-transition:all .15s ease-in-out;transition:all .15s ease-in-out;opacity:1;transform:translateY(0)}.page-enter-from{transform:translateY(20px);opacity:0}.page-leave-to{opacity:0;transform:translateY(-20px)}.post-enter-active,.post-leave-active{-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;opacity:1;transform:translate(0)}.post-leave-to,.post-enter-from{transform:translate(80px);opacity:0}[data-title-left],[data-title-right],[data-title-bottom],[data-title-bottom-left],[data-title-bottom-right],[data-title-top],[data-title-top-left],[data-title-top-right]{position:relative}[data-title-left]:before,[data-title-right]:before,[data-title-bottom]:before,[data-title-bottom-left]:before,[data-title-bottom-right]:before,[data-title-top]:before,[data-title-top-left]:before,[data-title-top-right]:before{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;transition:all .1s ease-in-out;font-family:General Sans,sans-serif;font-weight:600;background-color:var(--color-black);color:var(--color-white);font-size:1.1rem;position:absolute;padding:6px 10px;white-space:nowrap;opacity:0;z-index:99999;cursor:default;text-transform:uppercase;visibility:hidden;pointer-events:none}[data-title-left].tooltip-forced:before,[data-title-left]:hover:before,[data-title-right].tooltip-forced:before,[data-title-right]:hover:before,[data-title-bottom].tooltip-forced:before,[data-title-bottom]:hover:before,[data-title-bottom-left].tooltip-forced:before,[data-title-bottom-left]:hover:before,[data-title-bottom-right].tooltip-forced:before,[data-title-bottom-right]:hover:before,[data-title-top].tooltip-forced:before,[data-title-top]:hover:before,[data-title-top-left].tooltip-forced:before,[data-title-top-left]:hover:before,[data-title-top-right].tooltip-forced:before,[data-title-top-right]:hover:before{visibility:visible;opacity:1}[data-title-left]:before{content:attr(data-title-left);top:50%;transform:translateY(-50%);z-index:99999;right:calc(100% + 4px)}[data-title-right]:before{content:attr(data-title-right);top:50%;transform:translateY(-50%);z-index:99999;left:calc(100% + 4px)}[data-title-bottom]:before,[data-title-bottom-left]:before,[data-title-bottom-right]:before{content:attr(data-title-bottom);top:calc(100% + 4px);transform:translate(-50%);left:50%}[data-title-bottom-left]:before{content:attr(data-title-bottom-left);transform:unset;left:0}[data-title-bottom-right]:before{content:attr(data-title-bottom-right);transform:unset;left:unset;right:0}[data-title-top]:before,[data-title-top-left]:before,[data-title-top-right]:before{content:attr(data-title-top);bottom:calc(100% + 4px);transform:translate(-50%);left:50%}[data-title-top-left]:before{content:attr(data-title-top-left);transform:unset;left:0}[data-title-top-right]:before{content:attr(data-title-top-right);transform:unset;left:unset;right:0}[data-title-left].tooltip-forced:after,[data-title-left]:hover:after{right:calc(100% + 10px)}[data-title-right].tooltip-forced:after,[data-title-right]:hover:after{left:calc(100% + 10px)}[data-title-top].tooltip-forced:after,[data-title-top]:hover:after,[data-title-top-left].tooltip-forced:after,[data-title-top-left]:hover:after,[data-title-top-right].tooltip-forced:after,[data-title-top-right]:hover:after{bottom:calc(100% + 10px)}[data-title-bottom].tooltip-forced:after,[data-title-bottom]:hover:after,[data-title-bottom-left].tooltip-forced:after,[data-title-bottom-left]:hover:after,[data-title-bottom-right].tooltip-forced:after,[data-title-bottom-right]:hover:after{top:calc(100% + 10px)}.article-style p{display:block;font-size:2.2rem;line-height:1.3em;margin-bottom:32px}.article-style hr{margin:40px 0;border:0;border-bottom:2px solid var(--color-border)}.article-style em{font-style:italic}.article-style strong{font-family:General Sans,sans-serif;font-weight:600;font-size:inherit}.article-style u{font-size:inherit;text-decoration-style:dotted;text-decoration-thickness:2px;text-decoration-color:var(--color-text-light)}.article-style a{font-family:General Sans,sans-serif;font-weight:400;color:var(--color-accent);font-size:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.article-style a:hover{text-decoration:none}.article-style h1,.article-style h2,.article-style h3,.article-style h4,.article-style h5,.article-style h6{font-family:MyMonument,sans-serif;font-weight:700;margin-top:64px;margin-bottom:24px}.article-style h4,.article-style h5,.article-style h6{font-family:MyMonument,sans-serif;font-weight:400}.article-style h1{font-size:5rem}.article-style h2{font-size:4rem}.article-style h3{font-size:3rem}.article-style h4,.article-style h5,.article-style h6{font-size:2.2rem;text-transform:uppercase}.article-style ul{list-style:none;margin-bottom:20px;padding-left:20px}.article-style ul li{display:block;margin-bottom:10px;position:relative;padding-left:30px;font-size:2rem;line-height:1.3em}.article-style ul li p{margin:0}.article-style ul li ul{padding-top:8px}.article-style ul li:before{content:"";position:absolute;width:6px;height:6px;top:10px;left:0;background-color:var(--color-text-light)}.article-style ul li:last-of-type{margin-bottom:0}.article-style code{font-family:JetBrains Mono,sans-serif;font-weight:400;background-color:var(--color-black);color:var(--color-white);padding:1px 5px;border-radius:99px;font-size:1.6rem}.article-style code.hljs{overflow:unset}.article-style img{max-width:100%;box-shadow:var(--shadow);cursor:pointer}.article-style pre{background-color:var(--color-black-static);color:var(--color-white-static);font-size:1.6rem;margin-bottom:32px;padding:16px;word-break:break-word;white-space:break-spaces}.article-style pre p{margin:0}.article-style pre code{font-family:JetBrains Mono,sans-serif;font-weight:400;color:var(--color-white-static);font-size:1.4rem;line-height:1.3em;background-color:transparent;border-radius:0;padding:0!important}.hover-underline,.badge p a,.header-link,.route-project-detail .project-detail-error a span{position:relative}.hover-underline:hover:after,.badge p a:hover:after,.header-link:hover:after,.route-project-detail .project-detail-error a span:hover:after{width:25%}.hover-underline:after,.badge p a:after,.header-link:after,.route-project-detail .project-detail-error a span:after{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;transition:all .1s ease-in-out;content:"";display:block;position:absolute;bottom:-4px;left:0;width:0;height:1px;background-color:var(--color-text)}button{margin:0;padding:0;color:var(--color-text)}.header-link{font-family:General Sans,sans-serif;font-weight:400;text-decoration:none;color:var(--color-accent);text-transform:uppercase;font-size:1.4rem}.header-link svg{display:inline-block;vertical-align:middle;margin-left:15px;font-size:2rem}.header-link:after{background-color:var(--color-accent)!important}.chip{font-family:General Sans,sans-serif;font-weight:600;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:5px;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;display:inline-flex;height:22px;font-size:1.4rem;padding:0 8px}.chip.gray{background-color:var(--color-bg);color:var(--color-text)}.badge{font-family:General Sans,sans-serif;font-weight:700;z-index:4;position:relative;margin-bottom:32px;text-align:center;background-color:var(--color-bg)}.badge p{font-family:General Sans,sans-serif;font-weight:400;font-size:1.5rem!important;color:var(--color-highlig);padding:20px 15px!important;margin:0!important}.badge p a{font-family:General Sans,sans-serif;font-weight:700;color:#5527fd}.modal{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;position:fixed;left:0;top:0;height:100vh;width:100vw;padding:16px;z-index:10000;background-color:#070707bf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal .modal-wrapper{display:block;overflow-y:auto;overflow-x:hidden;width:100%;max-height:100%}.modal img{display:block;margin:0 auto;object-fit:contain;max-width:100%;max-height:95vh;box-shadow:var(--shadow)}.modal .close{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;position:absolute;top:16px;left:16px;color:var(--color-white-static);font-size:2rem;width:32px;height:32px;background-color:var(--color-black-static);border:1px solid var(--color-border)}body{text-rendering:optimizeLegibility}.app{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;position:relative}.app>div:not(.navigation){flex:1}.noise{display:block;position:fixed;z-index:5;top:0;right:0;bottom:0;left:0;background-image:url(/backgrounds/noise.gif);background-repeat:repeat;pointer-events:none;opacity:.2;z-index:-1}:root.dark{--color-white: #070707;--color-white-rgb: 7, 7, 7;--color-black: #e0e0e0;--color-black-rgb: 32, 32, 32;--color-text: #d6d6d6;--color-text-light: #8a8a8a;--color-bg: #111111;--color-border: #353535}html.dark .navigation .bottom-right button img,html.dark .route-home .float-name img,html.dark .star,html.dark .scroll-up img{filter:invert(100%) sepia(100%) saturate(0%) hue-rotate(75deg) brightness(105%) contrast(101%)}html.dark .projects .container .route-projects-cols .second .project-item img{filter:invert(0%) sepia(95%) saturate(7480%) hue-rotate(346deg) brightness(80%) contrast(98%)}html.dark .article-style pre{border:1px solid var(--color-border)}html.dark .noise{opacity:.02}@media screen and (max-width: 1440px){.projects-header .card{margin-bottom:64px}.projects-header .card h1{font-size:6rem}.projects-header .card p{font-size:1.5rem}.projects .container .project-list-wrap .project-group{gap:48px}.projects .active-project-modal{width:90vw}.projects .active-project-modal .route-project-detail{padding:0 48px}.route-gallery{padding-right:32px}.route-cv .projects-header h1{font-size:12rem}.route-cv .projects-header h1:after{font-size:25rem;bottom:-150%;white-space:nowrap}.route-cv .cv-stack{gap:48px}}@media screen and (max-width: 986px){:root{--bottom-padding: 17.5vh}.projects .container .project-list-wrap .project-group{display:block}.projects .container .project-list-wrap .project-group .stack-title{padding-top:0;margin-bottom:0;padding-bottom:0}.projects .container .project-list-wrap .project-list{margin-left:-16px}.projects .container .project-list-wrap .project-item{padding:16px}.projects .container .project-list-wrap .project-item strong{font-size:1.4rem}.route-gallery .gallery-grid-photos{display:flex;flex-direction:column}.route-gallery .gallery-grid-photos .photo-item .photo-image{width:100%;max-width:unset;height:55vh}.stack-title{letter-spacing:.002em}.route-about,.route-cv .cv-container,.route-gallery,.projects-header,.projects .container .project-list-wrap{padding-left:calc(var(--header-width) + 32px);padding-right:32px}.route-about .about-title h1{font-size:8rem;word-wrap:break-word;word-break:break-all}.route-about .about-title{margin-bottom:40px}.route-about .about-content-wrap .about-content p{font-size:1.8rem}.route-project-detail .project-header{margin-bottom:32px}.route-project-detail .project-header .title-wrap .gradient-wrap{display:none!important}.route-project-detail .project-header .title-wrap h1{font-size:6rem}.route-project-detail .project-header .meta{flex-wrap:wrap}.route-project-detail .project-header .meta .divider{display:none}.route-project-detail .project-header .meta a,.route-project-detail .project-header .meta span{font-size:1.2rem}.projects .active-project-modal .route-project-detail{padding-inline:16px}.article-style p{font-size:1.6rem;margin-bottom:24px}.article-style h1,.article-style h2,.article-style h3,.article-style h4,.article-style h5,.article-style h6{margin-top:48px;margin-bottom:16px}.article-style h1{font-size:4rem}.article-style h2{font-size:3.2rem}.article-style h3{font-size:2.6rem}.article-style code{font-size:1.4rem}.article-style pre{margin-bottom:24px}.article-style pre code{font-size:1.4rem}.article-style ul{margin-bottom:16px;padding-left:16px}.article-style ul li{padding-left:24px;font-size:1.6rem}.article-style hr{margin:24px 0}.route-cv .projects-header .card{margin-bottom:16px}.route-cv .projects-header .card .title-wrap{flex-wrap:wrap}.route-cv .projects-header .card .title-wrap h1{width:100%;margin:0}.route-cv .projects-header .card .title-wrap .padder{display:none}.route-cv .projects-header .card .article-style{margin-top:16px}.route-cv .cv-stack{flex-wrap:wrap;gap:40px 64px;margin-bottom:64px}.route-cv .cv-stack>div:nth-child(2){order:3}.route-cv .cv-stack .stack-list li{margin-bottom:8px}.header-link svg{margin-left:8px}.route-cv .work-experience .experience-item{display:-ms-grid;display:grid;gap:16px;grid-template-columns:72px 1fr;margin-bottom:64px}.route-cv .work-experience .experience-item .year-col span{font-size:1.2rem}.route-cv .work-experience .experience-item .content-col .content-title{margin-bottom:32px}.route-cv .work-experience .experience-item .content-col .content-title p{padding-left:41px;font-size:1.4rem}.route-cv .work-experience .experience-item .content-col .content-title .title{gap:16px;margin-bottom:8px}.route-cv .work-experience .experience-item .content-col .content-title .title strong{font-size:2.2rem}.route-cv .work-experience .experience-item .content-col .article-style p{font-size:1.8rem}.route-cv .recommendations{flex-direction:column;gap:16px;align-items:flex-start}.route-cv .recommendations strong{font-size:1.8rem}.route-home-3{padding:80px 32px 32px;display:flex;height:100vh;align-items:center;justify-content:flex-start;flex-direction:column;gap:32px;overflow:unset}.route-home-3 h1{font-family:MyMonument,sans-serif;font-weight:400;font-size:7.4rem;width:auto;text-align:center}.route-home-3 p{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:space-between;-ms-flex-pack:space-between;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-transition:all .75s cubic-bezier(.87,0,.13,1);-moz-transition:all .75s cubic-bezier(.87,0,.13,1);-o-transition:all .75s cubic-bezier(.87,0,.13,1);transition:all .75s cubic-bezier(.87,0,.13,1);font-family:MyMonument,sans-serif;font-weight:400;font-size:1.4rem;text-transform:uppercase;text-align:right;color:var(--color-text);width:100%;max-width:512px;margin-bottom:64px}.route-home-3 .star{width:96px}.route-home-3 .links{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:0;-webkit-box-pack:flex-end;-ms-flex-pack:flex-end;justify-content:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-transition:all 1s cubic-bezier(.87,0,.13,1);-moz-transition:all 1s cubic-bezier(.87,0,.13,1);-o-transition:all 1s cubic-bezier(.87,0,.13,1);transition:all 1s cubic-bezier(.87,0,.13,1);list-style:none;width:100%;max-width:512px}.route-home-3 .links li{display:block;width:100%}.route-home-3 .links li a{-webkit-transition:all .05s ease-in-out;-moz-transition:all .05s ease-in-out;-o-transition:all .05s ease-in-out;transition:all .05s ease-in-out;font-family:General Sans,sans-serif;font-weight:400;width:100%;text-align:center;font-size:1.4rem;display:block;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--color-text);text-transform:uppercase;color:var(--color-text)}.route-home-3 .links li a:hover{color:var(--color-accent);border-color:var(--color-accent)}.route-home-3 .links li a:hover{text-decoration:none}.route-project-detail .project-scroll{margin-inline:-16px;padding-inline:16px}.route-project-detail .project-scroll:after{left:16px;right:16px}}@media screen and (max-width: 512px){:root{--bottom-padding: 10vh}.route-gallery .gallery-cameras strong,.stack-title{font-size:1.2rem}.route-gallery .gallery-cameras{gap:24px}.route-gallery .gallery-grid-photos .photo-item .photo-info{gap:8px}.route-gallery .gallery-grid-photos .photo-item .photo-info .divider{display:none}.route-gallery .gallery-grid-photos .photo-item .photo-info span,.route-gallery .gallery-grid-photos .photo-item .photo-info strong{font-size:1.1rem}.route-project-detail .project-header{margin-bottom:24px}.route-project-detail .project-header .title-wrap h1{font-size:3.2rem}.route-project-detail .project-header .meta{gap:8px}.route-project-detail .project-header .meta a,.route-project-detail .project-header .meta span{font-size:1rem}.badge{margin-bottom:32px}.badge p{font-size:1.2rem!important}.route-project-detail .project-scroll .title{text-align:center;font-size:1.6rem}.route-project-detail .project-scroll button{font-size:1.2rem}.route-project-detail .project-scroll button span{display:none}.article-style p{font-size:1.4rem;margin-bottom:16px}.article-style h1,.article-style h2,.article-style h3,.article-style h4,.article-style h5,.article-style h6{margin-top:32px;margin-bottom:16px}.article-style h1{font-size:3.2rem}.article-style h2{font-size:2.4rem}.article-style h3{font-size:2.2rem}.article-style code{font-size:1.2rem}.article-style pre{margin-bottom:24px}.article-style pre code{font-size:1.2rem}.article-style ul{margin-bottom:16px;padding-left:0}.article-style ul li{padding-left:16px;font-size:1.4rem}.article-style hr{margin:16px 0;border-width:1px}.projects .container .project-list-wrap .project-item{padding:12px}.projects .container .project-list-wrap .project-item p{font-size:1.2rem}.route-about .about-title img{height:356px;margin-bottom:16px}.route-about .about-title h1{font-size:6.2rem}.route-about .about-title:after{left:-25%;font-size:16rem;top:15%}.route-about .about-content-wrap .about-content p{margin-bottom:32px}.route-cv .cv-stack .stack-list li{font-size:1.3rem}.route-cv .projects-header .card .title-wrap{gap:12px}.projects-header .card p{font-size:1.4rem}.stack-title{padding-bottom:8px;margin-bottom:8px}.route-cv .work-experience{margin-top:32px}.route-cv .work-experience .experience-item{display:flex;flex-direction:column}.route-cv .work-experience .experience-item .content-col .article-style{width:100%}.route-cv .work-experience .experience-item .content-col .article-style p{font-size:1.4rem}.route-cv .work-experience .experience-item .content-col .article-style h6{font-size:1.8rem;margin-bottom:16px}.route-cv .work-experience .experience-item .content-col .content-title{margin-bottom:24px}.route-cv .work-experience .experience-item .content-col .content-title p{font-size:1.2rem;padding-left:33px}.route-cv .work-experience .experience-item .content-col .content-title .title{gap:8px}.route-cv .work-experience .experience-item .content-col .content-title .title .gradient-wrap{width:16px!important;height:16px!important}.projects .active-project-modal{width:100%}.route-home-3{height:100dvh;padding-top:64px}.route-home-3 .star{width:72px;margin-bottom:48px}.route-home-3 h1{font-size:4rem}.route-home-3 p{font-size:1.2rem;margin-bottom:40px}.route-home-3 .links li a{font-size:1.2rem}}.slider{z-index:1}.slider img{pointer-events:none;height:100%;width:100%;object-fit:cover}.slider .slide{background-color:transparent}.slider .slider-dots .slider-dot.active{background-color:var(--color-accent)}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}
