@tailwind base;@tailwind components;@tailwind utilities;:root{--bg:#fff;--bg-soft:#f9f9f9;--surface:#fff;--surface-muted:#f4f4f4;--ink:#111;--ink-soft:#666;--line:#eaeaea;--line-strong:#ccc}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background-color:var(--bg);color:var(--ink);font-family:IBM Plex Sans,Helvetica Neue,Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit}.site-shell{margin:0 auto;max-width:900px;padding:2rem 1.5rem 4rem}.topbar{animation:reveal .32s ease-out both;background:var(--bg);border-bottom:1px solid var(--line);display:flex;gap:1rem;justify-content:space-between;margin-bottom:3rem;padding:1rem 0;top:0;z-index:20}.brand,.topbar{align-items:center}.brand{display:inline-flex;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:.82rem;font-weight:600;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}.nav{display:flex;flex-wrap:wrap;gap:.9rem}.nav a{color:var(--ink-soft);font-size:.78rem;font-weight:600;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;transition:color .14s ease}.nav a:hover{color:var(--ink)}.hero{animation:reveal .48s ease-out both;background:var(--surface);padding:2rem 0 3rem;position:relative}.eyebrow{color:var(--ink-soft);font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:.7rem;font-weight:600;letter-spacing:.12em;margin:0;text-transform:uppercase}.title{color:var(--ink);font-size:clamp(2.5rem,5vw,4rem);font-weight:700;letter-spacing:-.02em;line-height:1.1;margin:1rem 0 0;max-width:900px}.subtitle{color:var(--ink-soft);font-size:1.125rem;line-height:1.6;margin:1.5rem 0 0;max-width:700px}.hero-location{align-items:center;background:var(--surface-muted);border:1px solid var(--line);border-radius:6px;display:inline-flex;font-size:.9rem;font-weight:500;gap:.45rem;margin-top:1.75rem;padding:.5rem .85rem}.hero-location,.location-icon{color:var(--ink-soft)}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.5rem}.btn{align-items:center;border-radius:4px;display:inline-flex;font-size:.875rem;font-weight:500;justify-content:center;padding:.75rem 1.25rem;text-decoration:none;transition:all .15s ease}.btn-primary{background:var(--ink);border:1px solid var(--ink);color:#fff}.btn-primary:hover{background:#000}.btn-ghost{background:transparent;border:1px solid var(--line-strong);color:var(--ink)}.btn-ghost:hover{background:var(--surface-muted);border-color:var(--ink)}.experience{animation:reveal .56s ease-out both;margin-top:4rem;padding:0}.section-head{align-items:center;display:flex;gap:1rem;justify-content:space-between}.section-head h2{font-size:1.34rem;letter-spacing:-.02em;margin:0}.section-copy{color:var(--ink-soft);font-size:1.05rem;margin:.5rem 0 0;max-width:700px}.competency-cloud{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:.95rem 0 0;padding:0}.competency-cloud li{background:var(--surface-muted);border-radius:4px;color:var(--ink-soft);font-size:.75rem;font-weight:500;padding:.35rem .6rem}.timeline{display:grid;gap:2rem 1.5rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:2.5rem}.role-card{border-left:2px solid var(--line);padding-left:1rem}.role-period{color:var(--ink-soft);font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:.75rem;margin:0}.role-title{font-size:1.125rem;font-weight:600;line-height:1.3;margin:.5rem 0 0}.role-company{font-size:.78rem;font-weight:600;margin:.3rem 0 0}.role-location{color:var(--ink-soft);font-size:.75rem;margin:.22rem 0 0}.role-summary{font-size:.95rem;line-height:1.6}.role-highlights,.role-summary{color:var(--ink-soft);margin:.75rem 0 0}.role-highlights{display:grid;font-size:.9rem;gap:.4rem;line-height:1.5;padding-left:1.1rem}.role-highlights li::marker{color:var(--line-strong)}.role-skills{display:flex;flex-wrap:wrap;gap:.36rem;list-style:none;margin:.6rem 0 0;padding:0}.role-skills li{background:var(--surface-muted);border-radius:4px;color:var(--ink-soft);font-size:.7rem;font-weight:500;padding:.2rem .5rem}.posts{animation:reveal .66s ease-out both;margin-top:4rem;padding:0}.post-grid{display:grid;gap:2rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.5rem}.post-card{border-top:2px solid var(--line);padding-top:1rem}.post-meta{color:var(--ink-soft);font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:.68rem;margin:0}.post-card h3{font-size:1.25rem;line-height:1.3;margin:.5rem 0 0}.post-title-link{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.post-title-link:hover{color:#000}.post-excerpt{color:var(--ink-soft);font-size:.95rem;line-height:1.6;margin:.75rem 0 1rem}.post-tags{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:0;padding:0}.post-tags li{background:var(--surface-muted);border-radius:4px;color:var(--ink-soft);font-size:.7rem;font-weight:500;padding:.2rem .5rem}.text-link{color:var(--ink);font-size:.8rem;font-weight:600;text-underline-offset:3px}.text-link:hover{color:#000}.footer{align-items:center;animation:reveal .72s ease-out both;border-top:1px solid var(--line);display:flex;gap:1rem;justify-content:space-between;margin-top:4rem;padding:2rem 0 0}.footer p{color:var(--ink-soft);font-size:.82rem;margin:0}.footer-links{display:flex;flex-wrap:wrap;gap:.72rem}@keyframes reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.post-grid,.timeline{grid-template-columns:1fr}}@media(max-width:760px){.site-shell{padding:1.5rem 1.25rem 3rem}.topbar{margin-bottom:2rem;position:static}.title{max-width:100%}.experience,.hero,.posts{padding:0}.nav{gap:.52rem}.nav a{font-size:.7rem}.footer{align-items:flex-start;flex-direction:column}}
