@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600&family=Inter:wght@400;500&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg:#0b1014;--surface-pro:#242b3094;--surface-lab:#1b262b8a;--surface-sunken:#050b0e9e;--border:#d8e8e229;--surface-overlay:#dcf0e812;--glass-highlight:#ffffff1a;--glass-shadow:0 18px 50px #0000003d;--glass-blur:blur(18px);--transparent:transparent;--background-teal:#7ee0c41a;--background-amber:#f2c87914;--background-coral:#ff6b6b0f;--background-start:#10181b;--background-end:#141216;--shadow-portrait:0 12px 30px #00000047;--shadow-accent:0 8px 20px #f2c87924;--shadow-card:0 10px 28px #00000029;--button-glass:#ffffff09;--thumbnail-border:#ffffff14;--tag-background:#ffffff0f;--footer-background:#0c151861;--text:#ededef;--text-muted:#8b8fa3;--text-dim:#5f6270;--accent-pro:#f2c879;--accent-pro-ink:#412402;--accent-software:#7ee0c4;--accent-hardware:#ff6b6b;--font-display:"Space Grotesk", "Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--radius:10px;--content-width:780px}*{box-sizing:border-box}html{color-scheme:dark}body{background-color:var(--bg);background-image:radial-gradient(ellipse 70% 45% at 8% 4%, var(--background-teal), var(--transparent) 70%), radial-gradient(ellipse 60% 40% at 92% 30%, var(--background-amber), var(--transparent) 72%), radial-gradient(ellipse 70% 45% at 55% 100%, var(--background-coral), var(--transparent) 72%), linear-gradient(135deg, var(--background-start) 0%, var(--bg) 46%, var(--background-end) 100%);color:var(--text);font-family:var(--font-body);background-attachment:fixed;margin:0;font-size:16px;line-height:1.6}h1,h2,h3{font-family:var(--font-display);color:var(--text);margin:0;font-weight:600}a{color:inherit}img{max-width:100%;display:block}.wrap{max-width:var(--content-width);margin:0 auto;padding:0 20px}.site-nav{z-index:1;justify-content:space-between;align-items:center;padding:28px 0 24px;display:flex;position:relative}.site-nav .brand{font-family:var(--font-display);font-size:15px;font-weight:600}.site-nav .links{color:var(--text-muted);align-items:center;gap:18px;font-size:13px;display:flex}.site-nav .links a{color:inherit;text-decoration:none}.site-nav .links a:hover{color:var(--text)}.site-nav .divider{color:var(--text-dim)}.eyebrow{font-family:var(--font-mono);letter-spacing:.02em;margin:0 0 10px;font-size:12px}.eyebrow.pro{color:var(--accent-pro)}.zone-pro{background:var(--surface-pro);border:1px solid var(--border);border-top-color:var(--glass-highlight);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-blur);border-radius:16px;margin-bottom:20px;padding:32px}.hero h1{max-width:520px;margin-bottom:12px;font-size:28px;line-height:1.4}.hero{grid-template-columns:minmax(0,1fr) minmax(220px,.65fr);align-items:center;gap:32px;display:grid}.hero-portrait{object-fit:cover;object-position:center;border:1px solid var(--glass-highlight);width:100%;max-width:360px;height:auto;box-shadow:var(--shadow-portrait);border-radius:10%}.hero p.lede{color:var(--text-muted);max-width:460px;margin:0 0 22px;font-size:15px}.btn-accent{background:var(--accent-pro);color:var(--accent-pro-ink);box-shadow:var(--shadow-accent);border-radius:8px;padding:11px 20px;font-size:14px;font-weight:500;text-decoration:none;display:inline-block}.btn-accent:hover{opacity:.9}.btn-ghost{border:1px solid var(--border);color:var(--text);background:var(--button-glass);-webkit-backdrop-filter:blur(10px);border-radius:8px;padding:10px 18px;font-size:14px;text-decoration:none;display:inline-block}.btn-ghost:hover{border-color:var(--accent-pro)}.expertise-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:20px 0;display:grid}.expertise-card{background:var(--surface-overlay);border:1px solid var(--border);border-left:3px solid var(--accent-pro);border-radius:0 var(--radius) var(--radius) 0;-webkit-backdrop-filter:blur(10px);padding:16px}.expertise-card h3{margin-bottom:6px;font-size:14px}.expertise-card p{color:var(--text-muted);margin:0;font-size:13px}.work-with-me{background:var(--surface-overlay);border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);margin-top:4px;padding:18px 20px}.work-with-me h3{margin-bottom:6px;font-size:14px}.work-with-me p{color:var(--text-muted);margin:0 0 14px;font-size:13px}.experience-item{border-top:1px solid var(--border);gap:16px;padding:14px 0;display:flex}.experience-item:first-of-type{border-top:none}.experience-item .years{font-family:var(--font-mono);color:var(--text-dim);flex-shrink:0;min-width:90px;padding-top:2px;font-size:12px}.experience-item h3{margin-bottom:4px;font-size:14px}.experience-item p{color:var(--text-muted);margin:0;font-size:13px}.zone-divider{align-items:center;gap:10px;margin:40px 0 20px;display:flex}.zone-divider .line{background:var(--border);flex:1;height:1px}.zone-divider span.label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-size:10px}.section-heading{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);margin-bottom:12px;font-size:12px}.project-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:32px;display:grid}.project-card{background:var(--surface-lab);border:1px solid var(--border);border-radius:var(--radius);border-left:3px solid var(--accent-software);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur);padding:14px;text-decoration:none;display:block}.project-card.hardware{border-left-color:var(--accent-hardware)}.project-card .thumb{aspect-ratio:16/9;background:var(--surface-sunken);border:1px solid var(--thumbnail-border);height:auto;font-family:var(--font-mono);color:var(--accent-software);border-radius:6px;justify-content:center;align-items:center;margin-bottom:10px;font-size:11px;display:flex}.project-card .thumb img{object-fit:contain;border-radius:4px;width:100%;height:100%}.project-card.hardware .thumb{color:var(--accent-hardware)}.article-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:32px;display:grid}.article-card{background:var(--surface-lab);border:1px solid var(--border);border-radius:var(--radius);border-left:3px solid var(--accent-pro);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--glass-blur);padding:16px;text-decoration:none;display:block}.article-card .article-kind{color:var(--accent-pro);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px;font-size:10px}.article-card h3{margin-bottom:6px;font-size:15px}.article-card p{color:var(--text-muted);margin:0;font-size:13px}.article-title{max-width:620px;margin-bottom:10px;font-size:32px;line-height:1.25}.article-summary{color:var(--text-muted);max-width:620px;margin:0 0 12px;font-size:16px}.article-meta{color:var(--text-dim);font-family:var(--font-mono);gap:12px;margin-bottom:32px;font-size:11px;display:flex}.article-content{max-width:620px;font-size:15px;line-height:1.75}.article-content h2{margin:32px 0 8px;font-size:20px}.article-content a{color:var(--accent-pro)}.article-content li{margin-bottom:8px}.project-card h3{margin-bottom:4px;font-size:13px}.project-card p.meta{color:var(--text-muted);margin:0 0 8px;font-size:12px}.tag-row{flex-wrap:wrap;gap:6px;display:flex}.tag{background:var(--tag-background);color:var(--text-muted);border-radius:20px;padding:3px 9px;font-size:10px}table.bom{border-collapse:collapse;width:100%;margin:16px 0 28px;font-size:13px}table.bom th,table.bom td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}table.bom th{color:var(--text-dim);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:500}.site-footer{border-top:1px solid var(--border);color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--footer-background);-webkit-backdrop-filter:blur(14px);justify-content:space-between;align-items:center;margin-top:20px;padding:20px 14px 40px;font-size:12px;display:flex}.site-footer a.email{color:var(--accent-pro);font-family:var(--font-mono);text-decoration:none}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.footer-links a{color:var(--text-muted);text-decoration:none}.footer-links a:hover{color:var(--text)}@media (width<=600px){.site-nav .links{display:none}.zone-pro{padding:22px}.hero{grid-template-columns:1fr;gap:24px}.hero-portrait{max-width:360px}.site-footer{flex-direction:column;align-items:flex-start;gap:12px}.footer-links{justify-content:flex-start}}
