*{box-sizing:border-box}html,body{background-color:#030407;line-height:1.5}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:18px}.topnav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:linear-gradient(#111a2a,#0e1625dd);align-items:center;gap:32px;width:100%;height:72px;padding:10px 32px;font-size:24px;display:flex;position:fixed;top:0;left:0}.topnav>:first-child{align-items:center;margin-right:auto;display:flex}.topnav>:first-child img{margin-right:12px}@media (width<=720px){.topnav{padding:12px 18px}}label#sidenav-toggle-btn{z-index:1000;flex-direction:column;justify-content:space-between;width:35px;height:35px;padding:8px 6px;display:flex;position:fixed;top:18.5px;right:18px;transform:translateZ(1px)}label#sidenav-toggle-btn .line,label#sidenav-toggle-btn .center{z-index:1;background-color:#fff;border:1.5px solid #fff;border-radius:50px;width:100%;transition:transform 1s;position:relative}label#sidenav-toggle-btn .center{z-index:0;pointer-events:none;width:calc(100% - 12px);height:0;transition:width 1s,height 1s,opacity 1s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.overlay{pointer-events:none;opacity:.5;z-index:100;overscroll-behavior:contain;-webkit-tap-highlight-color:#0000;background-color:#0000;width:100vw;height:100vh;transition:background-color .5s;display:block;position:fixed;top:0;left:0;overflow:auto;transform:translateZ(0)}.overlay::-webkit-scrollbar{display:none}.overlay::-moz-scrollbar{display:none}.overlay label{position:absolute;inset:0}.sidenav{z-index:100;text-transform:uppercase;letter-spacing:1px;overscroll-behavior:contain;background-color:#030407;width:320px;height:100vh;margin:0;padding:72px 44px 48px;font-size:20px;transition:right .75s;position:fixed;top:0;right:-320px;overflow:auto}.sidenav ul,.sidenav li{list-style-type:none}.sidenav ul{margin:0;padding-top:6px;padding-left:0}.sidenav ul li{text-transform:none;letter-spacing:0;font-size:17px}.sidenav li{padding:6px 0}#sidenav-toggle:checked~label#sidenav-toggle-btn .line:first-child{transform:translateY(8px)rotate(-45deg)scaleX(1.25)}#sidenav-toggle:checked~label#sidenav-toggle-btn .line:last-child{transform:translateY(-8px)rotate(45deg)scaleX(1.25)}#sidenav-toggle:checked~label#sidenav-toggle-btn .center{opacity:.2;width:44px;height:44px}#sidenav-toggle:checked~.sidenav{right:0}#sidenav-toggle:checked~.overlay{pointer-events:all;background-color:#444}.topnav a,.sidenav a,footer a{color:inherit;text-decoration:none;transition:opacity .2s}.topnav a:hover,.sidenav a:hover,footer a:hover{opacity:.8}.topnav a:active,.sidenav a:active,footer a:active{opacity:.5}.topnav a:not([href]),.sidenav a:not([href]),footer a:not([href]){opacity:.3}.center{text-align:center}.mt-64{margin-top:64px}.hug-wave{z-index:1;margin-bottom:calc(-2vw - 60px);position:relative}section{padding:32px;position:relative;overflow-x:clip}section.gradient{background-image:linear-gradient(#111a2b,#030407);background-repeat:no-repeat;background-size:100% 480px;min-height:480px}section.fullsize{min-height:840px}@media (width<=1100px){section.fullsize{min-height:640px}}@media (width<=720px){section.fullsize{min-height:0}}section.page-header{padding:100px 5vw 10vh}section.page-header .heading-container{padding-inline:32px}section.page-header h1,section.page-header h2{margin-block:16px}section.page-header.gradient{background-repeat:no-repeat;background-size:100% 480px}section a{color:inherit}h1,h2,h3{font-weight:inherit}h1{font-size:40px}h2{font-size:24px}@media (width<=720px){h1{font-size:28px}h2{font-size:20px}body [data-screen=desktop-only]{display:none!important}}@media (width>=720.1px){body [data-screen=mobile-only]{display:none!important}}.content-only{display:contents}.timeline{justify-content:center;gap:32px;margin:auto;padding:10vh 10% 0;display:flex}@media (width<=960px) and (width>=720.1px){.timeline{padding-left:5%}}.timeline.tl-start{padding-top:20vh}.timeline .heading-container{flex-direction:column;justify-content:space-around;height:128px;padding-block:6px 12px;display:flex}.timeline .heading-container h1,.timeline .heading-container h2{font-weight:inherit;margin-block:0}.timeline .content{z-index:0;width:100%;max-width:840px}.timeline .content h3{font-size:36px;font-weight:inherit;margin-bottom:0}.timeline .content p{font-size:24px}.timeline .content .large{font-size:28px}.timeline .content .heading-container,.timeline .content p{z-index:1;position:relative}.timeline .line{z-index:1;grid-auto-rows:128px;grid-auto-columns:128px;place-items:center;width:128px;display:grid;position:relative}.timeline .line:after{content:" ";background-color:#fff;width:10px;height:calc(10vh + 100%);position:absolute;top:64px;left:59px}.timeline.tl-start .line:after{background-color:#0000;background-image:linear-gradient(#fff6,#fff 60%);height:calc(20vh + 100%)}.timeline .img-container{z-index:1;position:relative}.timeline:not(.tl-start) .line .img-container{--test:1;width:calc(var(--test,1)*96px);height:calc(var(--test,1)*96px);border:4px solid #fff;border-width:calc(15px - var(--test,1)*10px);background-image:radial-gradient(50% 50%,#4b5982 0%,#0f172e 99.99%);border-radius:50px;justify-content:center;align-items:center;margin:0;transition:all 1s;display:flex;overflow:hidden}.timeline.tl-start,.timeline.tl-end{padding-bottom:10vh}.timeline.tl-end .heading-container{padding-top:32px}.timeline.tl-end .heading-container h1{margin-bottom:12px}.timeline.tl-end .line:after{display:none}.timeline.tl-end .line .img-container{--test:0}.timeline.tl-end .heading-container{height:auto}@media (width<=720px){.timeline{flex-direction:column;gap:0;position:relative}.timeline .line{grid-auto-rows:unset;width:100%;position:relative;top:-2vh;left:0}.timeline .line:after{width:150%;height:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.timeline .line .img-container{transform:translate(-20px)}.timeline .heading-container{gap:4px;height:auto}.timeline .content .large{font-size:22px}.timeline.tl-start{padding-bottom:0}.timeline.tl-start .img-container img{width:96px;height:auto}.timeline.tl-start .line:after{display:none}.timeline.tl-end{padding-top:5vh}.timeline.tl-end .line{display:none}.timeline .language-grid{grid-template-columns:repeat(auto-fill,50px);grid-auto-rows:50px;grid-auto-flow:row;gap:25px;max-width:425px;display:grid}.timeline .content h3{font-size:28px}.timeline .content p{font-size:20px}.timeline .showcase-item img{z-index:1;max-width:100%;height:auto;position:relative}}#langinput-react:checked~.language-grid label[for=langinput-react] .color{opacity:1}#langinput-react:checked~.langdesc[data-lang=react]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-typescript:checked~.language-grid label[for=langinput-typescript] .color{opacity:1}#langinput-typescript:checked~.langdesc[data-lang=typescript]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-js:checked~.language-grid label[for=langinput-js] .color{opacity:1}#langinput-js:checked~.langdesc[data-lang=js]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-html:checked~.language-grid label[for=langinput-html] .color{opacity:1}#langinput-html:checked~.langdesc[data-lang=html]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-css:checked~.language-grid label[for=langinput-css] .color{opacity:1}#langinput-css:checked~.langdesc[data-lang=css]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-sass:checked~.language-grid label[for=langinput-sass] .color{opacity:1}#langinput-sass:checked~.langdesc[data-lang=sass]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-tailwind:checked~.language-grid label[for=langinput-tailwind] .color{opacity:1}#langinput-tailwind:checked~.langdesc[data-lang=tailwind]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-git:checked~.language-grid label[for=langinput-git] .color{opacity:1}#langinput-git:checked~.langdesc[data-lang=git]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-postgresql:checked~.language-grid label[for=langinput-postgresql] .color{opacity:1}#langinput-postgresql:checked~.langdesc[data-lang=postgresql]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-mongodb:checked~.language-grid label[for=langinput-mongodb] .color{opacity:1}#langinput-mongodb:checked~.langdesc[data-lang=mongodb]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-node:checked~.language-grid label[for=langinput-node] .color{opacity:1}#langinput-node:checked~.langdesc[data-lang=node]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-python:checked~.language-grid label[for=langinput-python] .color{opacity:1}#langinput-python:checked~.langdesc[data-lang=python]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-sklearn:checked~.language-grid label[for=langinput-sklearn] .color{opacity:1}#langinput-sklearn:checked~.langdesc[data-lang=sklearn]{animation:.33s ease-in-out forwards slide-up;display:block}#langinput-jest:checked~.language-grid label[for=langinput-jest] .color{opacity:1}#langinput-jest:checked~.langdesc[data-lang=jest]{animation:.33s ease-in-out forwards slide-up;display:block}@keyframes slide-up{0%{opacity:.1;transform:translateY(8%)}to{opacity:1;transform:translateY(0)}}.language-grid{grid-template-columns:repeat(6,84px);grid-auto-rows:84px;grid-auto-flow:row;gap:42px;display:grid}.language-grid img{width:100%;height:auto;transition:opacity .2s,transform .2s;position:absolute}.language-grid label{position:relative}.language-grid label .color,.language-grid label input:checked~.monochrome{opacity:0}@media (width<=1080px){.language-grid{grid-template-columns:repeat(4,72px);grid-auto-rows:72px}}.langdesc{display:none}.showcase-item{z-index:0;position:relative}.showcase-item .img-container{width:-moz-fit-content;width:fit-content;display:flex;position:relative}.showcase-item .img-container:before{content:" ";pointer-events:none;background-image:radial-gradient(50% 50% at 50% 50%,var(--color,transparent)30%,transparent 100%);z-index:-1;border-radius:50%;width:100vw;max-width:1400px;height:65vw;max-height:800px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.showcase-item .img-container img{z-index:1;width:100%;max-width:706px;height:auto;position:relative}.showcase-item p.links{gap:16px;margin-block:16px;font-size:18px;display:flex}.showcase-item p.links a{color:#fff;font-size:18px;line-height:1.25;text-decoration:none;transition:opacity .3s;position:relative}.showcase-item p.links a:hover{opacity:.9}.showcase-item p.links a:active{opacity:.6}.showcase-item p.links a:before{content:"";opacity:.25;background-color:#fff;width:0%;transition:width .3s,opacity .3s;display:block;position:absolute;inset:100% 0 -2px}.showcase-item p.links a:after{content:"";background-image:url(../images/arrow-diagonal.svg);background-position:100% 100%;background-repeat:no-repeat;background-size:16px;width:20px;height:20px;transition:transform .3s;display:inline-block;position:relative;top:1px}.showcase-item p.links a:hover:before{opacity:1;width:102%}.showcase-item p.links a:hover:after{transform:scale(1.2)translate(1px,-1px)}.project-grid{grid-template-columns:repeat(auto-fill,min(440px,100%));grid-auto-flow:row;justify-content:center;gap:48px;max-width:100%;display:grid}.project-grid .project-card{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit;transform-style:preserve-3d;background:#2b2d32;border-radius:8px;width:440px;max-width:100%;transition:opacity .2s,box-shadow .2s}.project-grid .project-card h3,.project-grid .project-card p{margin-inline:18px;transform:translateZ(12px)}.project-grid .project-card h3{margin-block:14px 8px;font-size:25px;font-weight:700}.project-grid .project-card p{margin-block:0 18px;font-size:17px}.project-grid .project-card p.subtitle{margin-block:-8px 8px}@media (width<=720px){.project-grid .project-card h3{font-size:20px}}.project-grid .project-card>img{width:inherit;border-radius:8px 8px 0 0;max-width:100%;height:auto;transition:box-shadow .2s;display:flex;position:relative}.project-grid .project-card:hover{box-shadow:0 0 32px #fff2}.project-grid .project-card:hover *{z-index:1;position:relative}.project-grid .project-card:hover:before{content:" ";width:115%;height:115%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.project-grid .project-card:hover>img{box-shadow:0 4px 12px 2px #1112}.project-grid .project-card:active{opacity:.8}.footer-lead-in{width:100%;position:absolute;bottom:min(160px - 30vw,-40px);left:0}footer{align-items:center;height:calc(33vw + 48px);max-height:512px;padding:8vw 10% 48px;display:flex;position:relative;overflow:hidden}footer:after{content:" ";background-color:#172444;position:absolute;inset:30vw 0 0}footer>img{width:100%;position:absolute;top:0;left:0}footer>img~*{z-index:1;position:relative}footer .footer-flex{gap:50px;width:100%;display:flex}footer .footer-flex :first-child{margin-right:auto}footer .footer-flex h3{margin-block:0 18px;font-size:24px}footer .footer-flex ul{padding-left:0;list-style:none}footer .footer-flex li{margin-block:12px}footer .footer-flex .column li *>a{text-decoration:underline}@media (width<=1140px){footer{padding-inline:5%}footer .footer-flex{gap:32px}}@media (width<=960px){footer{padding-top:calc(8vw + 36px);height:auto;max-height:none;padding-inline:10%}footer .footer-flex{flex-direction:column;justify-content:flex-end;gap:16px;max-width:720px;margin-inline:auto}footer .footer-flex li{margin-block:6px}footer .footer-flex .column:first-child{position:absolute;top:0;right:0}}p.caption{margin-block:0;font-size:16px}section{padding-inline:5vw}section p>a{color:inherit}section.page-header{padding-bottom:0}section.page-header div.heading-container,.content-wrapper{max-width:1000px;margin-inline:auto;padding-inline:0}.content-wrapper .icons-container{flex-wrap:wrap;gap:20px;display:flex}.content-wrapper .icons-container .icons-row{align-items:center;gap:16px;display:inline-flex}@media (width<=480px){.content-wrapper .icons-container,.content-wrapper .icons-row{gap:12px}.content-wrapper .icons-row img{width:32px}}.center.flex{flex-wrap:wrap;justify-content:center;gap:0 24px;display:flex}.center img{max-width:100%}@supports (aspect-ratio:1/1){.center iframe{aspect-ratio:16/9;max-width:100%;height:auto}}a.button{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit;border-radius:28px;justify-content:center;align-items:center;min-width:180px;height:50px;margin-top:24px;padding-inline:24px;transition:box-shadow .2s;display:inline-flex;box-shadow:0 4px 4px #00000040,inset 2px 4px 4px #ffff8980}a.button:active{box-shadow:0 4px 4px #00000040,inset 2px 4px 4px #00001280}a.button.orange-cta{-webkit-tap-highlight-color:#0000;background-color:#ca8762}.hug-bottom{margin-bottom:8px}.flex.multicolumn{flex-wrap:wrap;justify-content:center;gap:32px;width:100%;margin-block:32px;display:flex}.flex.multicolumn .column{max-width:100%}.flex.multicolumn .column h2{margin-block:0 8px}.flex.multicolumn .column ol{margin-block:0 8px;padding-inline:0;list-style-type:none;display:flex}.flex.multicolumn .column ol li{padding-inline:0 24px}.flex.multicolumn .column ol li label{cursor:pointer;transition:opacity .2s}.flex.multicolumn .column .select-img-container{position:relative}.flex.multicolumn .column img{max-width:100%;transition:opacity .2s cubic-bezier(.92,.25,0,.79),box-shadow .2s,transform .2s}.flex.multicolumn .column img:nth-child(n+2){position:absolute;inset:0}.reviews-grid{z-index:1;flex-flow:column wrap;align-content:center;gap:16px;display:flex;position:relative}@media (width>=1060px){.reviews-grid{max-height:300px}}@media (width<=1059.9px){.reviews-grid img{width:440px;max-width:100%}}:is(#ezorg-s1,#ezjdg-s1):not(:checked)~ol label[for$=s1]{opacity:.5}:is(#ezorg-s1,#ezjdg-s1):not(:checked)~ol label[for$=s1]:hover{opacity:.8}:is(#ezorg-s1,#ezjdg-s1):not(:checked)~ol label[for$=s1]:active{opacity:.7}:is(#ezorg-s1,#ezjdg-s1):not(:checked)~.select-img-container [data-for="1"]{opacity:0}:is(#ezorg-s2,#ezjdg-s2):not(:checked)~ol label[for$=s2]{opacity:.5}:is(#ezorg-s2,#ezjdg-s2):not(:checked)~ol label[for$=s2]:hover{opacity:.8}:is(#ezorg-s2,#ezjdg-s2):not(:checked)~ol label[for$=s2]:active{opacity:.7}:is(#ezorg-s2,#ezjdg-s2):not(:checked)~.select-img-container [data-for="2"]{opacity:0}:is(#ezorg-s3,#ezjdg-s3):not(:checked)~ol label[for$=s3]{opacity:.5}:is(#ezorg-s3,#ezjdg-s3):not(:checked)~ol label[for$=s3]:hover{opacity:.8}:is(#ezorg-s3,#ezjdg-s3):not(:checked)~ol label[for$=s3]:active{opacity:.7}:is(#ezorg-s3,#ezjdg-s3):not(:checked)~.select-img-container [data-for="3"]{opacity:0}.screenshot-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));grid-auto-flow:row;justify-content:center;justify-items:center;gap:32px;display:grid}@media (width<=440px){.screenshot-grid{grid-template-columns:repeat(auto-fill,100%)}}.screenshot-grid .img-container,.screenshot-grid img{width:100%;max-width:512px}.screenshot-grid img.border{border:4px solid #fff8}.screenshot-grid-small{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));grid-auto-flow:row;justify-content:center;justify-items:center;gap:36px;display:grid}.screenshot-grid-small .img-container,.screenshot-grid-small img{width:100%;max-width:420px}.flex img,.screenshot-grid img,.reviews-grid img,.center img{transition:box-shadow .2s,transform .2s}.flex .rounded,.screenshot-grid .rounded,.reviews-grid .rounded,.center .rounded{border-radius:8px}.flex>a,.screenshot-grid>a,.reviews-grid>a,.center>a{color:inherit;text-decoration:none}.flex>a img:hover,.screenshot-grid>a img:hover,.reviews-grid>a img:hover,.center>a img:hover{box-shadow:0 0 16px 8px #fff8}.flex>a img:active,.screenshot-grid>a img:active,.reviews-grid>a img:active,.center>a img:active{opacity:.7;transform:scale(.96)}
/*# sourceMappingURL=project.css.map */
