*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#111;background:#fff;margin:0;font-family:Inter,system-ui,-apple-system,sans-serif}.nav{border-bottom:1px solid #ddd}.nav-inner{justify-content:space-between;align-items:center;max-width:800px;margin:0 auto;padding:14px 24px;display:flex}.nav-brand{color:#333;font-size:16px;font-weight:600;text-decoration:none}.nav-links{gap:24px;display:flex}.nav-links a{color:#555;font-size:14px;text-decoration:none}.nav-links a:hover{color:#111}.hero{background:#fafafa;border-bottom:1px solid #eee;justify-content:center;padding:80px 24px 64px;display:flex}.hero-content{text-align:center;max-width:600px}.headshot{object-fit:cover;border-radius:50%;width:160px;height:160px;margin-bottom:24px}.hero h1{color:#222;margin:0 0 12px;font-size:36px;font-weight:700}.hero-sub{color:#555;margin:0 0 24px;font-size:18px;line-height:1.6}main{max-width:800px;margin:0 auto;padding:48px 24px 32px}main p{color:#444;margin:0 0 12px;font-size:16px;line-height:1.7}main a{color:#2563eb;text-decoration:none}main a:hover{text-decoration:underline}.social-links{gap:20px;margin-top:20px;display:flex}.social-links a{color:#2563eb;font-size:15px;text-decoration:none}.social-links a:hover{text-decoration:underline}hr{border:none;border-top:1px solid #e5e5e5;margin:40px 0}section h2{color:#222;margin:0 0 24px;font-size:22px;font-weight:600}.topic{margin-bottom:28px}.topic h3{color:#222;margin:0 0 6px;font-size:17px;font-weight:600}.topic p{color:#555;margin:0;font-size:15px;line-height:1.7}.pub-list{margin:0;padding:0;list-style:none}.pub-list li{color:#333;border-bottom:1px solid #f0f0f0;padding:14px 0;font-size:15px;line-height:1.6}.pub-list li:last-child{border-bottom:none}.pub-list a{color:#2563eb;text-decoration:none}.pub-list a:hover{text-decoration:underline}.pub-meta{color:#888;font-size:14px}footer{border-top:1px solid #e5e5e5;max-width:800px;margin:0 auto;padding:24px}footer p{color:#bbb;margin:0;font-size:13px}@media (width<=600px){.nav-links{gap:16px}.hero{padding:60px 24px 48px}.hero h1{font-size:28px}.headshot{width:120px;height:120px}.social-links{flex-wrap:wrap}}
