:root{--bg:#0a0a0a;--surface:#111;--text:#f0ede8;--muted:#555;--accent:#e8f542;--font-display:"Space Grotesk", sans-serif;--font-body:"Inter", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,ul{margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--bg);color:var(--text);font-family:var(--font-body)}body{flex-direction:column;min-height:100vh;display:flex;position:relative;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}body:before{content:"";z-index:9999;pointer-events:none;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' fill='black' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px 200px;position:fixed;inset:0}.hero{flex-direction:column;justify-content:center;align-items:center;width:100%;height:100vh;display:flex;position:relative;overflow:hidden}.hero-bg{filter:grayscale(.85)contrast(1.1);z-index:0;background-image:url(/hero.png);background-position:50%;background-size:cover;width:100%;height:100%;position:absolute;top:0;left:0}.hero-overlay{filter:grayscale(.85)contrast(1.2)blur(12px);clip-path:polygon(0 0,100% 0,100% 50%,0 100%);z-index:1;mix-blend-mode:screen;opacity:.5;background-image:url(/hero.png);background-position:50%;background-size:cover;width:100%;height:100%;position:absolute;top:0;left:0;transform:scale(1.05)}.hero:after{content:"";z-index:2;background:radial-gradient(circle,#0a0a0a80 0%,#0a0a0af2 100%);width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{z-index:10;text-align:center;position:relative}.display-name{font-family:var(--font-display);letter-spacing:.3em;color:var(--text);text-transform:uppercase;opacity:0;margin:0 -.3em 0 0;font-size:clamp(3rem,10vw,9rem);font-weight:700;line-height:1;transition:opacity 1s ease-out,transform 1s ease-out;transform:translateY(30px)}.display-name.visible{opacity:1;transform:translateY(0)}.subtitle{color:var(--muted);text-transform:lowercase;font-variant:small-caps;letter-spacing:.4em;opacity:0;margin-top:1rem;margin-right:-.4em;font-size:.85rem;transition:opacity 1s ease-out .2s,transform 1s ease-out .2s;transform:translateY(20px)}.subtitle.visible{opacity:1;transform:translateY(0)}.section-divider{z-index:20;border:none;border-top:1px solid #1a1a1a;width:100%;margin:0;position:relative}.skills-strip{background:var(--bg);z-index:20;white-space:nowrap;width:100%;padding:1.5rem 0;display:flex;position:relative;overflow:hidden}.skills-strip::-webkit-scrollbar{display:none}.skills-track{width:max-content;animation:35s linear infinite marquee;display:flex}.skills-track.paused{animation-play-state:paused}.marquee-block{align-items:center;display:flex}.skill-item{font-family:var(--font-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.1em;padding:0 1.5rem;font-size:.9rem}.skill-separator{color:var(--muted);opacity:.3;font-family:var(--font-mono)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.projects{z-index:20;width:100%;max-width:1200px;margin:0 auto;padding:8rem 2rem;position:relative}.project-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.project-card{background:var(--surface);opacity:0;border:1px solid #1a1a1a;padding:3rem 2rem;transition:transform .3s,box-shadow .3s,border-color .3s;transform:translateY(40px)}.project-card.visible{opacity:1;transition:opacity .8s,transform .8s,box-shadow .3s,border-color .3s;transform:translateY(0)}.project-card:hover{border-color:#e8f5424d;transform:translateY(-5px);box-shadow:0 10px 30px #e8f5421f}.project-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.project-title{font-family:var(--font-display);color:var(--text);font-size:1.8rem;font-weight:700;line-height:1.1}.project-tag{color:var(--accent);font-size:.75rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background:#1a1a1a;padding:.25rem .75rem}.project-desc{color:var(--muted);font-size:1rem;font-weight:400;line-height:1.6}.about{background-color:var(--bg);z-index:20;width:100%;padding:120px 2rem;position:relative}.about-container{grid-template-columns:1fr 1fr;gap:4rem;max-width:1200px;margin:0 auto;display:grid}.about-left{flex-direction:column;display:flex}.about-heading{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.2em;color:var(--accent);margin-bottom:1.5rem;font-size:1rem;font-weight:700}.about-body{font-family:var(--font-body);color:var(--text);max-width:480px;font-size:1.1rem;line-height:1.8}.about-right{flex-direction:column;align-items:flex-start;display:flex}.github-card{background:#111;border:1px solid #1e1e1e;align-items:center;gap:1rem;width:100%;max-width:320px;padding:1rem;text-decoration:none;transition:border-color .2s;display:flex}.github-card:hover{border-color:var(--accent)}.github-avatar{object-fit:cover;border-radius:50%;width:48px;height:48px}.github-stats{flex-direction:column;gap:.25rem;display:flex}.github-username{color:var(--text);font-size:1rem;font-weight:600;font-family:var(--font-body)}.github-numbers{color:var(--muted);font-size:.85rem;font-family:var(--font-mono);gap:.5rem;display:flex}.github-card.skeleton{pointer-events:none;animation:1.5s ease-in-out infinite pulse}.skeleton-avatar{background:#222;border-radius:50%;width:48px;height:48px}.skeleton-text-block{flex-direction:column;gap:.5rem;display:flex}.skeleton-text-1{background:#222;width:120px;height:16px}.skeleton-text-2{background:#222;width:180px;height:14px}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.github-card.error{color:var(--muted);font-family:var(--font-mono);justify-content:center;font-size:.9rem}.support-btn{color:var(--muted);font-family:var(--font-body);background:0 0;border:1px solid #333;border-radius:0;align-items:center;gap:.75rem;margin-top:16px;padding:10px 20px;font-size:.95rem;text-decoration:none;transition:all .2s;display:inline-flex}.support-btn svg{fill:currentColor;width:18px;height:18px}.support-btn:hover{border-color:var(--accent);color:var(--accent)}.footer{z-index:20;background:var(--bg);justify-content:center;align-items:center;gap:3rem;margin-top:auto;padding:4rem 2rem;display:flex;position:relative}.footer-link{color:var(--muted);font-family:var(--font-mono);text-transform:lowercase;letter-spacing:.05em;align-items:center;gap:.75rem;font-size:.9rem;text-decoration:none;transition:color .3s;display:flex}.footer-link:hover{color:var(--accent)}.footer-link svg{fill:currentColor;width:20px;height:20px;transition:transform .3s}.footer-link:hover svg{transform:scale(1.1)}.footer-year{color:var(--muted);font-family:var(--font-mono);font-size:.9rem}@media (width<=768px){.projects{padding:4rem 1.5rem}.project-card{padding:2rem 1.5rem}.about{padding:80px 1.5rem}.about-container{grid-template-columns:1fr;gap:3rem}.footer{flex-direction:column;align-items:center;gap:2rem;padding:3rem 1.5rem}.project-header{flex-direction:column}}@media (prefers-reduced-motion:reduce){.display-name,.subtitle,.project-card,.skills-track{opacity:1!important;transition:none!important;animation:none!important;transform:none!important}.project-card.visible{transition:none!important}}
