*,*:before,*:after{box-sizing:border-box}a{all:unset;display:inline-flex;cursor:pointer;color:inherit;text-decoration:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}button{all:unset;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font:inherit;color:inherit;background-color:transparent;padding:0;margin:0;border:none;outline:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}video{outline:none}@font-face{font-family:Geist Mono;src:url(/assets/fonts/GeistMono%5Bwght%5D.woff2) format("woff2")}:root{--bg: #141414;--text: #f7f7f7;--text-muted: #555;--border: #353535;--surface: #191919;height:100%}@media (prefers-color-scheme: light){:root{--bg: white;--text: black;--text-muted: #777;--border: oklch(90% 0 0);--surface: #eee}}body{margin:0 auto;display:flex;flex-direction:column;max-width:656px;font-family:Geist Mono;background-color:var(--bg);color:var(--text);height:100%;overflow:hidden;color-scheme:only light}#root{position:relative;height:100%}.nav-back{font-weight:500;display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.nav-back svg{width:20px;height:20px;color:var(--text-muted)}nav{display:flex;align-items:center;justify-content:space-between}nav #branding{font-weight:500}nav div{display:flex;align-items:center;gap:.5rem}nav #links{gap:.75rem}nav #links a{color:var(--text-muted);transition:color .2s ease-in-out}nav #links a:hover{color:var(--text)}.text-muted{color:var(--text-muted)}main{display:flex;flex-direction:column;gap:1rem}#grid{height:5rem;width:100%}footer{position:relative;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding:1rem 0;color:var(--text-muted);margin-top:auto}footer:before{position:absolute;content:"";width:100%;top:-26px;height:25px;background:linear-gradient(to top,var(--bg) 0%,transparent 100%);z-index:10000}footer div{display:flex;gap:.5rem;align-items:center}footer div canvas{width:18px;height:18px}section>h1{padding-bottom:.5rem;border-bottom:1px solid var(--border)}section:last-child{margin-bottom:2rem}h1{font-size:1.15rem;font-weight:500}.card{position:relative;flex:1;padding:.5rem;border-radius:.5rem;transition:background-color .1s ease-in-out;display:flex;gap:1rem;align-items:center}.card h1{line-height:1;margin:0}.card:hover{background-color:var(--surface)}.projects .card{cursor:pointer;margin:0 -.75rem}.projects .card:hover [data-lucide=arrow-right]{color:var(--text);transform:translateY(-50%) rotate(0)}.projects .card svg:first-child{width:3rem;height:3rem;border-radius:.5rem;flex-shrink:0;align-self:flex-start}.projects .card h1{font-size:.9rem}.projects .card span:not(.badge){display:inline-block;color:var(--text-muted);font-size:.8rem;margin-right:1.5rem}.projects .card .badge{font-size:.75rem}.projects .card [data-lucide=arrow-right]{position:absolute;right:.5rem;top:50%;color:var(--text-muted);transform:translateY(-50%) rotate(-45deg);width:1.15rem;height:1.15rem;margin-left:auto;transition:transform .1s ease-in-out;flex-shrink:0}.projects .card .logo{width:48px;height:48px;background-color:#000;border-radius:15.8%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.projects .card .logo img{width:32px;height:32px}span.badge.badge{display:inline-block;padding:.1rem .5rem;background-color:color-mix(in srgb,oklch(59.6% .145 163.225),transparent 85%);color:#009669;color:oklch(59.6% .145 163.225);border-radius:.25rem;font-weight:500;font-size:.85rem;flex-shrink:0}.group{display:flex;align-items:center;gap:.5rem}.page{position:absolute;top:0;left:0;display:flex;flex-direction:column;height:100%;padding:4rem 2rem 0;opacity:0;transition:opacity .4s;overflow-y:overlay;overflow-x:hidden}.page[active]{opacity:1;z-index:1000}.project.page{background-color:var(--bg);color:var(--text);display:flex;flex-direction:column}.project.page .date{color:var(--text-muted);font-size:.9rem}.project.page video{margin:1.25rem 0;aspect-ratio:16/9;width:100%;border-radius:.5rem;object-fit:cover;border:1px solid var(--border);box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.project.page .title{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:1rem;width:100%}.project.page .title h1{line-height:0}.project.page header{display:flex;flex-direction:column;align-items:start}.project.page header .group{gap:.5rem}.btn{display:flex;align-items:center;justify-content:center;padding:.5rem 1rem;font-weight:500;background-color:var(--text);color:var(--bg);border-radius:.5rem}.btn svg{width:18px;height:18px;stroke-width:2.5}.btn svg:last-child{margin-left:.5rem}.animate{transform:translateY(-.75rem);opacity:0;transition:transform .3s ease-out,opacity .3s ease-out}.animate.show{transform:translateY(0);opacity:1}@media screen and (max-width: 768px){.projects .card .badge{margin-left:auto}.card span{font-size:.75rem}footer{flex-direction:column}.project.page .title{flex-direction:column;align-items:flex-start}}
