*,:before,:after{box-sizing:border-box}:root{--bg-page:#060b18;--bg-surface:#0a0f1e;--bg-subtle:#0f172a;--border:#1e293b;--border-hover:#2b69cd;--text-loud:#f1f5f9;--text-base:#e2e8f0;--text-muted:#b0bcce;--text-faint:#8897aa;--text-dimmer:#6b7a8d;--text-footer:#4e5f72;--accent:#3b82f6;--accent-gradient:linear-gradient(135deg, #3b82f6, #8b5cf6);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}body{background:var(--bg-page);color:var(--text-muted);margin:0}#root{min-height:100vh}.page{flex-direction:column;min-height:100vh;display:flex}main{flex:1;width:100%;max-width:900px;margin:0 auto;padding:80px 24px 60px}.hero{align-items:flex-start;gap:36px;margin-bottom:80px;display:flex}.avatar{background:var(--accent-gradient);color:#fff;letter-spacing:-1px;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;font-size:28px;font-weight:600;display:flex}.hero-text h1{letter-spacing:-.5px;color:var(--text-loud);margin:0 0 4px;font-size:32px;font-weight:600}.role{color:var(--text-faint);text-transform:uppercase;letter-spacing:1px;margin:0 0 16px;font-size:14px}.bio{color:var(--text-muted);max-width:480px;margin:0 0 24px;font-size:15px;line-height:1.7}.links{flex-wrap:wrap;gap:8px;display:flex}.link-pill{border:1px solid var(--border);background:var(--bg-subtle);color:var(--text-muted);border-radius:100px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;text-decoration:none;transition:border-color .2s,color .2s;display:inline-flex}.link-pill:hover{border-color:var(--accent);color:var(--text-loud)}.cta{border:1px solid var(--border);background:var(--bg-surface);border-radius:12px;align-items:center;gap:20px;margin-top:32px;margin-bottom:32px;padding:28px 32px;display:flex}.cta p{color:var(--text-muted);flex:1;margin:0;font-size:15px}@media (width<=480px){.cta{flex-direction:column;align-items:flex-start;gap:14px;padding:20px}}.projects h2{text-transform:uppercase;letter-spacing:1.5px;color:var(--text-dimmer);margin:0 0 24px;font-size:12px;font-weight:500}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.project-card{border:1px solid var(--border);background:var(--bg-surface);color:inherit;border-radius:12px;text-decoration:none;transition:border-color .2s,transform .2s;display:block;overflow:hidden}.project-card:hover{border-color:var(--border-hover)}.project-image{aspect-ratio:16/9;background:var(--bg-subtle);width:100%;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.project-card:hover .project-image img{transform:scale(1.03)}.project-image-placeholder{background:linear-gradient(135deg, var(--bg-subtle) 0%, var(--border) 100%);width:100%;height:100%}.project-body{padding:20px 24px 24px}.project-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.project-year{color:var(--text-dimmer);font-size:12px}.arrow-icon{width:16px;height:16px;color:var(--text-dimmer);transition:color .2s}.project-card:hover .arrow-icon{color:var(--accent)}.project-card h3{color:var(--text-base);margin:0 0 8px;font-size:16px;font-weight:500;transition:color .2s ease-in-out,font-size .2s ease-in-out}.project-card p{color:var(--text-faint);margin:0 0 16px;font-size:13px;line-height:1.6}.tags{flex-wrap:wrap;gap:6px;display:flex}.tag{background:var(--bg-subtle);border:1px solid var(--border);color:var(--text-faint);border-radius:4px;padding:3px 8px;font-size:11px}footer{border-top:1px solid var(--bg-subtle);box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;max-width:900px;margin:0 auto;padding:20px 24px;display:flex}footer p{color:var(--text-footer);margin:0;font-size:12px}.footer-links{gap:20px;display:flex}.footer-links a{color:var(--text-footer);font-size:12px;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--text-muted)}.footer-links a.active{color:var(--text-faint)}@media (width<=600px){main{padding:48px 20px 40px}.hero{flex-direction:column;gap:20px;margin-bottom:56px}.hero-text h1{font-size:26px}.projects-grid{grid-template-columns:1fr}}.legal{max-width:640px;padding:60px 24px 80px}.back-link{color:#64748b;align-items:center;gap:6px;margin-bottom:40px;font-size:13px;text-decoration:none;transition:color .2s;display:inline-flex}.back-link:hover{color:#f1f5f9}.legal h1{color:#f1f5f9;letter-spacing:-.5px;margin:0 0 40px;font-size:28px;font-weight:600}.legal h2{text-transform:uppercase;letter-spacing:1px;color:#475569;margin:32px 0 10px;font-size:13px;font-weight:500}.legal p{color:#64748b;margin:0;font-size:14px;line-height:1.8}.legal p+p{margin-top:12px}.legal ul{flex-direction:column;gap:6px;margin:10px 0 0;padding-left:20px;display:flex}.legal ul li{color:#64748b;font-size:14px;line-height:1.7}.legal a{color:#3b82f6;text-decoration:none}.legal a:hover{text-decoration:underline}
