:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:400;color:#000;text-decoration:inherit}a:hover{color:gray}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:.9em;font-weight:500;font-family:inherit;color:#fff;background-color:#1a1a1a;cursor:pointer;transition:transform .25s}button:hover{transform:scale(1.05)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#000;background-color:#fff}button{background-color:#1a1a1a}}#root{max-width:1280px;margin:0 auto;padding:1rem 2rem;color-scheme:light only}.app-container{display:flex;flex-direction:column;min-height:100vh}.content{flex:1;display:flex;justify-content:center}html,body{background-color:#fff!important;color:#000!important;color-scheme:light only}*{color-scheme:light only}.navbar{display:flex;justify-content:space-between;align-items:baseline;z-index:10;position:relative;padding:1rem}.navbar h1{cursor:pointer;font-size:2rem;font-weight:700}.nav-links{display:flex;gap:3rem;justify-self:space-between;list-style:none;margin:0;padding:0}.navbar a{color:#000;cursor:pointer;text-decoration:none;transition:color .3s ease}.navbar ul>a:hover{color:#999}.hamburger{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:.5rem;z-index:1001}.hamburger span{width:25px;height:3px;background-color:#000;margin:3px 0;transition:.3s;border-radius:2px}.hamburger.active span:nth-child(1){transform:rotate(-45deg) translate(-6px,6px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(45deg) translate(-6px,-6px)}.menu-overlay{display:none}@media (max-width: 768px){.navbar{padding:1rem;align-items:center}.navbar h1{font-size:1.75rem}.hamburger{display:flex}.nav-links{position:fixed;top:0;right:-100%;height:100vh;width:300px;background-color:#fff;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:5rem;gap:2rem;transition:right .3s ease;box-shadow:-2px 0 10px #0000001a;z-index:1000}.nav-links.active{right:0}.menu-overlay{display:block;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:999}.nav-links a{font-size:1.1rem;padding:1rem;width:100%;text-align:center;border-bottom:1px solid #eee}}@media (max-width: 480px){.navbar{padding:.75rem}.navbar h1{font-size:1.5rem}.nav-links{width:280px;padding-top:4rem}.nav-links a{font-size:1rem}}.footer{padding:1rem;color:#000;text-align:center;border-top:1px solid #333;margin-top:auto}.footer-content{display:flex;align-items:center;justify-content:space-between;max-width:1280px;margin:0 auto;padding:0 1rem}.footer-links{color:#333;display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.footer-links a{color:#333;text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:#646cff}@media (max-width: 768px){.footer{padding:1.5rem 1rem}.footer-content{flex-direction:column;gap:1rem;padding:0}.footer-links{gap:1rem}.footer-links a{padding:.25rem .5rem;font-size:.9rem}}@media (max-width: 480px){.footer{padding:1rem .75rem}.footer-content p{font-size:.85rem;margin:0}.footer-links{gap:.75rem}.footer-links a{font-size:.85rem}}.home{display:flex;justify-content:space-around;margin-top:-8rem;align-items:center;box-sizing:border-box;padding:0 2rem;min-height:calc(100vh - 200px)}.home img{width:115px;height:115px;object-fit:cover;border-radius:50%}.left{width:55vw}.right{margin-top:-2rem}.home h1,.home h2,.home p,.home button{font-weight:400}.home h1{font-size:3.9rem;margin-top:20px;line-height:1.1}.home h2{font-size:2.5rem;margin-bottom:0;line-height:1.2}.home p{padding-top:0;font-size:1.1rem;line-height:1.5}.buttons{margin-top:3rem;display:flex;gap:1rem;font-size:1.2rem}.buttons button{padding:.75rem 1.5rem;border-radius:6px;border:none;cursor:pointer;transition:all .3s ease}.buttons button:first-of-type{background-color:#000;color:#fff}.buttons button:nth-of-type(2){background-color:#fff;color:#000;border:1px solid grey}.buttons button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}@media (max-width: 1024px){.home{margin-top:-6rem;padding:0 1.5rem}.home h1{font-size:3.2rem}.home h2{font-size:2.1rem}.right{margin-top:-1.5rem}}@media (max-width: 768px){.home{flex-direction:column;text-align:center;margin-top:2rem;gap:0;padding:0 1rem 2rem;justify-content:center}.left{width:100%;order:1}.right{width:100%;margin-top:0;order:2}.home img{width:100px;height:100px}.home h1{font-size:2.8rem;margin-top:1rem}.home h2{font-size:1.8rem;margin-bottom:1rem}.home p{font-size:1rem;max-width:500px;margin:0 auto}.buttons{margin-top:4rem;justify-content:center;flex-wrap:wrap}}@media (max-width: 480px){.home{margin-top:2rem;gap:0;padding:0 1rem 2rem;justify-content:center}.home img{width:85px;height:85px}.home h1{font-size:2.2rem;margin-top:.75rem}.home h2{font-size:1.5rem;margin-bottom:.75rem}.home p{font-size:.95rem;line-height:1.4}.buttons{flex-direction:column;gap:.75rem;margin-top:4rem}.buttons button{width:100%;max-width:280px;margin:0 auto;padding:.875rem 1.5rem;font-size:1.1rem}}@media (max-width: 360px){.home{margin-top:-1rem;padding:0 .75rem}.home h1{font-size:1.9rem}.home h2{font-size:1.3rem}.home img{width:75px;height:75px}}.projects{margin-top:1rem;display:flex;flex-direction:column;gap:2rem;width:auto;padding:0 1rem}.projects h2{font-size:1.7rem;font-weight:500}.featured h2{text-align:center}.featured-projects,.all-projects{display:flex;gap:2rem;padding:0;flex-wrap:wrap;justify-content:center}.all-projects>div{flex:0 0 calc(33.333% - 2rem);max-width:calc(33.333% - 2rem);margin-bottom:2rem}.featured-projects>div,.all-projects>div{max-width:350px;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #0000001a;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;background-color:#fff}.featured-projects>div:hover,.all-projects>div:hover{transform:translateY(-5px);box-shadow:0 5px 15px #00000026}.featured-projects div>img,.all-projects div>img{width:100%;height:200px;object-fit:cover}.featured-projects div>h3,.all-projects div>h3{padding:.5rem 1rem;margin:.5rem 0;font-size:1.2rem}.featured-projects div>p,.all-projects div>p{padding:0 1rem 1rem;margin:0;color:#666}.projects ul{display:flex;gap:.7rem;flex-wrap:wrap}.projects li{cursor:pointer;align-self:center;text-decoration:none;list-style:none;padding:4px 24px;background-color:#fff;color:#000;border:1px black solid;border-radius:100px;transition:transform .2s ease-in-out}.projects li:hover{transform:scale(1.05)}.all-header{display:flex;align-items:baseline;justify-content:space-around;align-self:center}@media (max-width: 1024px){.projects{padding:0 1.5rem}.all-projects>div{flex:0 0 calc(50% - 1rem);max-width:calc(50% - 1rem)}.featured-projects,.all-projects{gap:1.5rem}}@media (max-width: 768px){.projects{margin-top:.5rem;gap:2.5rem;padding:0 1rem}.projects h2{font-size:1.5rem}.featured-projects,.all-projects{gap:1.5rem}.all-projects>div{flex:0 0 calc(50% - .75rem);max-width:calc(50% - .75rem)}.featured-projects>div,.all-projects>div{max-width:none}.featured-projects div>img,.all-projects div>img{height:150px}.featured-projects div>h3,.all-projects div>h3{font-size:1.1rem;padding:.4rem .8rem}.featured-projects div>p,.all-projects div>p{padding:0 .8rem .8rem;font-size:.9rem}.all-header{flex-direction:column;gap:1.25rem;align-items:center}.all-header>ul{display:none}.projects ul{justify-content:center}.projects li{padding:3px 18px;font-size:.9rem}}@media (max-width: 480px){.projects{padding:0 .75rem;gap:2rem}.projects h2{font-size:1.4rem}.featured-projects,.all-projects{flex-direction:column;align-items:center;gap:1.25rem}.all-projects>div{flex:none;max-width:100%;width:100%;max-width:350px}.featured-projects>div,.all-projects>div{width:100%;max-width:350px}.featured-projects div>img,.all-projects div>img{height:180px}.all-header{gap:1rem;padding:0 .5rem}.projects ul{gap:.5rem;justify-content:center;max-width:100%}.projects li{padding:3px 16px;font-size:.85rem}}@media (max-width: 360px){.projects{padding:0 .5rem}.projects h2{font-size:1.3rem}.featured-projects div>img,.all-projects div>img{height:160px}.featured-projects div>h3,.all-projects div>h3{font-size:1rem;padding:.4rem .6rem}.featured-projects div>p,.all-projects div>p{padding:0 .6rem .6rem;font-size:.85rem}.projects li{padding:2px 12px;font-size:.8rem}}.project-page{margin:0;padding:2rem 1rem 0}.project-page>svg{margin-left:-1rem}.project-page>.main{padding-top:2rem;display:flex;align-items:center;gap:6rem}.project-page>.main>.text{max-width:50vw}.project-page>.main>img{height:360px;width:auto;object-fit:contain;border-radius:.5rem;border:1px grey solid}.project-page>.main>.text h1{font-size:3rem;margin-bottom:.5rem;margin-top:0;font-weight:500}.project-page h2{font-size:2.2rem}.project-page>.main>.text p{font-weight:400;font-size:1.05rem;margin:2.2rem auto;line-height:1.6}.project-page .tags{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.project-page .tags li{cursor:pointer;align-self:center;text-decoration:none;list-style:none;padding:4px 24px;color:#000;border:1px black solid;border-radius:100px;transition:transform .2s ease-in-out}.project-page>.main button{border-radius:8px;border:1px solid transparent;padding:.6em 1.4em;font-size:1.1rem;font-weight:400;font-family:inherit;color:#fff;background-color:#000;cursor:pointer;transition:transform .25s}.project-page>.main button:hover{transform:translateY(-2px)}.project-page>.details{margin:6rem auto 2rem;display:flex;flex-direction:column;align-items:center;text-align:center;border-top:solid 1px black;max-width:70vw}.project-page>.details>h2{font-weight:500}.project-page>.details>.containers{width:100%;display:flex;flex-direction:column;gap:.5rem}.project-page>.details>.containers>*{cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;border:1px solid gray;text-align:left;padding:.5rem 1rem;border-radius:28px;gap:12px}.project-page>.details>.containers>*:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a;transition:all .2s ease-in-out}.project-page .main,.project-page .details{animation:fadeInUp .5s ease-in-out both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1024px){.project-page{padding:1.5rem 1.5rem 0}.project-page>.main{gap:4rem}.project-page>.main>.text{max-width:55vw}.project-page>.main>img{height:300px}.project-page>.main>.text h1{font-size:2.5rem}.project-page h2{font-size:2rem}.project-page>.details{max-width:80vw;margin:5rem auto 2rem}}@media (max-width: 768px){.project-page{padding:1rem 1rem 0}.project-page>svg{margin-left:0;width:32px;height:32px}.project-page>.main{flex-direction:column;gap:2rem;padding-top:1.5rem;text-align:center}.project-page>.main>.text{max-width:100%;order:2}.project-page>.main>img{height:250px;width:100%;max-width:400px;order:1}.project-page>.main>.text h1{font-size:2.2rem;margin-bottom:1rem}.project-page h2{font-size:1.8rem}.project-page>.main>.text p{font-size:1rem;margin:1.5rem auto;text-align:left}.project-page .tags{justify-content:center;gap:.75rem;margin-bottom:1.5rem}.project-page .tags li{padding:3px 18px;font-size:.9rem}.project-page>.main button{padding:.7em 1.6em;font-size:1rem}.project-page>.details{max-width:95vw;margin:4rem auto 2rem}}@media (max-width: 480px){.project-page{padding:.75rem .75rem 0}.project-page>svg{width:28px;height:28px}.project-page>.main{gap:1.5rem;padding-top:1rem}.project-page>.main>img{height:200px;max-width:100%}.project-page>.main>.text h1{font-size:1.8rem;margin-bottom:1rem}.project-page h2{font-size:1.6rem}.project-page>.main>.text p{font-size:.95rem;margin:1.25rem auto;line-height:1.5}.project-page .tags{gap:.5rem;margin-bottom:1.25rem}.project-page .tags li{padding:2px 14px;font-size:.85rem}.project-page>.main button{padding:.75em 1.8em;font-size:.95rem;width:100%;max-width:200px}.project-page>.details{margin:3rem auto 1.5rem}.project-page>.details>.containers>*{padding:.75rem 1rem;border-radius:20px}}@media (max-width: 360px){.project-page{padding:.5rem .5rem 0}.project-page>.main>.text h1{font-size:1.6rem}.project-page h2{font-size:1.4rem}.project-page>.main>img{height:180px}.project-page>.main>.text p{font-size:.9rem}.project-page .tags li{padding:2px 12px;font-size:.8rem}}
