@import "https://fonts.googleapis.com/css2?family=Share+Tech+Mono&display=swap";:root{--gold:#ecad0a;--blue:#209dd7;--teal:#0e8a7a;--bg:#05050a;--surface:#0a0a12eb;--text:#d4d4d8;--muted:#5e8a84}*{box-sizing:border-box;margin:0;padding:0}html{background:radial-gradient(2px 2px at 10% 15%,#ecad0ab3,#0000),radial-gradient(1.5px 1.5px at 25% 80%,#ffffff80,#0000),radial-gradient(3px 3px at 40% 35%,#209dd799,#0000),radial-gradient(2px 2px at 55% 60%,#ffffff73,#0000),radial-gradient(2px 2px at 70% 20%,#0e8a7a99,#0000),radial-gradient(3px 3px at 85% 75%,#ecad0a80,#0000);background-color:var(--bg);background-attachment:fixed;font-size:130%}body{color:var(--text);font-family:Share Tech Mono,monospace}body:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000014 2px 4px) 0 0/100% 100%,linear-gradient(135deg,#ecad0a14 0%,#0e8a7a1a 50%,#209dd714 100%) 0 0/400% 400%;animation:20s infinite gradientShift;position:fixed;inset:0}body:after{content:"";pointer-events:none;background:radial-gradient(#0000 55%,#0006 100%);position:fixed;inset:0}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.navbar{background:#05050af2;border-bottom:1px solid #ecad0a26;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.nav-links{gap:1.5rem;display:flex}.nav-icons{gap:1rem;display:flex}.nav-icons svg{display:block}a{color:var(--text);letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;text-decoration:none;transition:all .2s}a:hover{color:var(--gold);text-shadow:0 0 8px #ecad0a66}.page{max-width:820px;margin:0 auto;padding:3rem}.page h1{color:var(--gold);text-transform:uppercase;letter-spacing:.05em;text-shadow:0 0 10px #ecad0a66,0 0 30px #ecad0a33;border-left:3px solid var(--gold);margin-bottom:1rem;padding-left:14px;animation:6s ease-in-out infinite glitch}@keyframes glitch{0%,92%,to{transform:translate(0)}93%{transform:translate(-4px,1px)skew(-1deg)}94%{transform:translate(3px,-1px)skew(.5deg)}95%{transform:translate(-2px,2px)}96%{transform:translate(0)}}.hero{padding:1.5rem 0}.hero-role{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}.hero-tagline{color:var(--text);margin-top:.25rem;font-size:.9rem}.blink{color:var(--gold);animation:1s step-end infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.featured{padding:0}.featured-project{padding:1rem 0}.featured-project h2{color:var(--gold);letter-spacing:.05em;text-transform:uppercase;margin-top:0;margin-bottom:.75rem;font-size:1.1rem}.fp-desc{color:var(--text);margin-bottom:.75rem;font-size:.8rem;line-height:1.7}.fp-stack{color:var(--muted);letter-spacing:.06em;margin-bottom:.75rem;font-size:.7rem}.fp-links{align-items:center;gap:1.5rem;display:flex}.fp-links a{color:var(--gold);text-transform:none;font-size:.75rem}.stack{padding:2rem 0}.stack-label{color:var(--gold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.85rem}.stack-list{color:var(--muted);letter-spacing:.03em;font-size:.75rem;line-height:1.8}.footer{padding:2rem 0 4rem}.footer-label{color:var(--gold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.85rem}.footer-links{gap:1.5rem;display:flex}.footer-links a{font-size:.75rem}.other-projects{padding:2rem 0}.project-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.grid-project{border:1px solid #ecad0a1a;flex-direction:column;padding:1.25rem;transition:all .3s;display:flex}.grid-project:hover{border-color:#ecad0a66;box-shadow:0 0 15px #ecad0a1a}.grid-project h3{color:var(--text);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.85rem}.grid-project p{color:var(--muted);flex:1;margin-bottom:.75rem;font-size:.7rem;line-height:1.6}.grid-project .fp-links{flex-direction:column;align-items:flex-start;gap:.25rem}.blog-list{padding:1rem 0}.blog-entry{padding:1.5rem 0;text-decoration:none;display:block}.blog-entry h2{color:var(--text);text-transform:none;letter-spacing:.02em;margin-bottom:.5rem;font-size:.95rem}.blog-entry:hover h2{color:var(--gold)}.blog-date{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.25rem;font-size:.7rem}.blog-summary{color:var(--muted);font-size:.75rem;line-height:1.6}.hero,.featured-project,.stack,.blog-entry{border-bottom:1px solid #ecad0a26}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:#ecad0a26;border:1px solid #ecad0a1a}::-webkit-scrollbar-thumb:hover{background:#ecad0a4d}::selection{background:var(--gold);color:#050505}.view-all{color:var(--gold);text-transform:none;letter-spacing:.03em;border-bottom:1px solid #ecad0a26;width:100%;padding:1rem 0;font-size:.8rem;display:inline-block}.blog-content .blog-date+h1{margin-top:.25rem}.blog-content h2{color:var(--gold);letter-spacing:.04em;margin-top:2.5rem;margin-bottom:.75rem;font-size:1rem}.blog-content h3{color:var(--text);margin-top:2rem;margin-bottom:.5rem;font-size:.9rem}.blog-content p{color:var(--text);margin-bottom:1rem;font-size:.85rem;line-height:1.8}.blog-content ul,.blog-content ol{margin-bottom:1rem;padding-left:1.5rem}.blog-content li{color:var(--text);margin-bottom:.25rem;font-size:.85rem;line-height:1.8}.blog-content code{color:var(--gold);background:#ecad0a14;border:1px solid #ecad0a26;padding:.15rem .4rem;font-size:.75rem}.blog-content pre{background:#05050acc;border:1px solid #ecad0a26;margin-bottom:1.5rem;padding:1.25rem;overflow-x:auto}.blog-content pre code{color:var(--text);background:0 0;border:none;padding:0;font-size:.7rem;line-height:1.7}.blog-content img{border:1px solid #ecad0a26;max-width:100%;margin:1.5rem 0}.blog-content strong{color:var(--gold)}.blog-content blockquote{border-left:3px solid var(--teal);color:var(--muted);margin:1.5rem 0;padding-left:1rem}
