:root{--bg: #0f0f13;--bg-elevated: #17171d;--fg: #e8e8ea;--fg-muted: #9b9ba4;--fg-subtle: #6b6b74;--accent: #7aa2f7;--accent-warm: #e0af68;--border: #2a2a32;--max-width: 760px;--radius: 8px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);background:var(--bg);color:var(--fg);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-size-adjust:100%}body{line-height:1.65;font-size:16px;min-height:100vh;display:flex;flex-direction:column}main{flex:1;max-width:var(--max-width);margin:0 auto;padding:4rem 1.5rem 6rem;width:100%}h1,h2,h3,h4{font-weight:600;line-height:1.25;letter-spacing:-.01em;color:var(--fg)}h1{font-size:2.25rem;margin-bottom:.75rem;letter-spacing:-.02em}h2{font-size:1.5rem;margin-top:3rem;margin-bottom:1rem;padding-top:1.5rem;border-top:1px solid var(--border)}h3{font-size:1.15rem;margin-top:2rem;margin-bottom:.5rem}p{margin-bottom:1.25rem;color:var(--fg)}p+p{margin-top:-.25rem}a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s ease}a:hover{border-bottom-color:var(--accent)}strong{color:var(--fg);font-weight:600}em{color:var(--fg-muted)}code{font-family:var(--font-mono);font-size:.88em;background:var(--bg-elevated);padding:.15em .4em;border-radius:4px;color:var(--accent-warm)}pre{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;overflow-x:auto;margin:1.5rem 0;font-size:.85rem;line-height:1.55}pre code{background:transparent;padding:0;color:inherit;font-size:inherit}blockquote{border-left:3px solid var(--border);padding-left:1rem;margin:1.5rem 0;color:var(--fg-muted);font-style:italic}ul,ol{margin:1rem 0 1.5rem 1.5rem;color:var(--fg)}li{margin-bottom:.5rem}hr{border:none;border-top:1px solid var(--border);margin:3rem 0}table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.92rem}th,td{text-align:left;padding:.6rem .75rem;border-bottom:1px solid var(--border)}th{font-weight:600;color:var(--fg);background:var(--bg-elevated)}td,.muted{color:var(--fg-muted)}.subtle{color:var(--fg-subtle)}.mono{font-family:var(--font-mono)}.small{font-size:.9rem}header.site-header{max-width:var(--max-width);margin:0 auto;padding:2rem 1.5rem 0;width:100%;display:flex;justify-content:space-between;align-items:center;font-size:.9rem}header.site-header a{color:var(--fg-muted);border-bottom:none}header.site-header a:hover{color:var(--fg)}header.site-header nav{display:flex;gap:1.5rem}footer.site-footer{max-width:var(--max-width);margin:0 auto;padding:2rem 1.5rem 3rem;width:100%;border-top:1px solid var(--border);color:var(--fg-subtle);font-size:.85rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem}footer.site-footer a{color:var(--fg-muted)}.hero{padding:2rem 0 1.5rem}.hero .tagline{color:var(--fg-muted);font-size:1.1rem;margin-bottom:1.5rem}.hero .chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.chip{display:inline-block;padding:.25rem .7rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;font-size:.8rem;color:var(--fg-muted);font-family:var(--font-mono)}.case-study-card{display:block;padding:1.25rem 1.5rem;margin-bottom:1rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .15s ease,transform .15s ease;border-bottom:1px solid var(--border)}.case-study-card:hover{border-color:var(--accent);transform:translateY(-1px)}.case-study-card h3{margin:0 0 .5rem;color:var(--fg)}.case-study-card p{margin:0 0 .75rem;color:var(--fg-muted);font-size:.95rem}.case-study-card .meta{font-size:.8rem;color:var(--fg-subtle);font-family:var(--font-mono)}.project-list{list-style:none;margin:0;padding:0}.project-list li{padding:.75rem 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:1rem}.project-list li:last-child{border-bottom:none}.project-list .name{font-family:var(--font-mono);color:var(--fg);font-size:.95rem}.project-list .desc{color:var(--fg-muted);font-size:.88rem;flex:1;margin-left:1rem}@media(max-width:600px){main{padding:2.5rem 1.25rem 4rem}h1{font-size:1.75rem}h2{font-size:1.3rem}header.site-header nav{gap:1rem}.project-list li{flex-direction:column;align-items:flex-start;gap:.25rem}.project-list .desc{margin-left:0}}::selection{background:var(--accent);color:var(--bg)}
