:root{--bg: #38342E;--bg-alt: #4D4538;--text: #F0F0EB;--text-muted: #BBB3A4;--accent: #CC9B4E;--line: #6B6354;--serif: "Source Serif 4", Georgia, serif;--sans: "Source Sans 3", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--serif);font-size:18px;line-height:1.7;font-feature-settings:"kern","liga","onum";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.site{max-width:760px;margin:0 auto;padding:0 32px;min-height:100vh;display:flex;flex-direction:column}.masthead{padding:64px 0 48px;border-bottom:1px solid var(--line)}.masthead .name{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:.01em;margin-bottom:4px}.masthead .name a{color:var(--text);text-decoration:none;border-bottom:none}.masthead .role{font-family:var(--sans);font-size:14px;color:var(--text-muted);letter-spacing:.02em}.nav{margin-top:32px;display:flex;gap:28px;font-family:var(--sans);font-size:15px;font-weight:500}.nav a{color:var(--text);text-decoration:none;padding-bottom:2px;border-bottom:1px solid transparent;transition:border-color .15s ease,color .15s ease}.nav a:hover{color:var(--accent)}.nav a.active{color:var(--accent);border-bottom-color:var(--accent)}main.page{padding:56px 0 96px;flex:1}h1{font-family:var(--serif);font-size:42px;font-weight:600;line-height:1.15;letter-spacing:-.01em;margin-bottom:24px;font-variation-settings:"opsz" 36}h2{font-family:var(--serif);font-size:24px;font-weight:600;line-height:1.25;margin:48px 0 18px;letter-spacing:0}h2:before{content:"";display:inline-block;width:20px;height:1px;background:var(--accent);vertical-align:middle;margin-right:14px;transform:translateY(-3px)}h3{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--accent);margin:28px 0 10px;letter-spacing:.005em}p{margin-bottom:18px}p+p{margin-top:0}em{font-style:italic}strong{font-weight:600}a{color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(204,155,78,.35);transition:border-color .15s ease}a:hover{border-bottom-color:var(--accent)}ul{list-style:none;margin-bottom:18px}ul li{padding-left:18px;position:relative;margin-bottom:8px}ul li:before{content:"—";position:absolute;left:0;color:var(--accent)}.home-lead{font-size:32px;line-height:1.3;font-weight:400;margin:24px 0 36px;letter-spacing:-.005em;color:var(--text)}.home-intro{font-size:18px;line-height:1.75;margin-bottom:24px}.home-links{margin-top:48px;display:flex;gap:32px;font-family:var(--sans);font-size:15px;font-weight:500}.home-links a{color:var(--accent);border-bottom:1px solid var(--accent);padding-bottom:3px}.pub-section{margin-top:32px}.pub-meta{font-family:var(--sans);font-size:13px;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:14px}.pub-list{list-style:none;margin-bottom:0}.pub-list li{padding:14px 0;border-bottom:1px solid var(--line);margin-bottom:0}.pub-list li:before{display:none}.pub-list li:last-child{border-bottom:none}.pub-list .title{font-style:italic;color:var(--text)}.pub-list .authors{font-family:var(--sans);font-size:14px;color:var(--text-muted);margin-bottom:4px}.pub-list .venue{font-family:var(--sans);font-size:14px;color:var(--text-muted);margin-top:4px}.pub-list .download{display:inline-block;margin-top:8px;font-family:var(--sans);font-size:13px;letter-spacing:.04em;text-transform:uppercase}.orcid{font-family:var(--sans);font-size:14px;color:var(--text-muted);margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--line)}.orcid a{color:var(--text-muted);border-bottom-color:#bbb3a44d}.foot{margin-top:auto;padding:32px 0 48px;border-top:1px solid var(--line);font-family:var(--sans);font-size:13px;color:var(--text-muted);letter-spacing:.01em}.foot a{color:var(--text-muted);border-bottom-color:#bbb3a44d}.contact-line{margin-bottom:12px;font-family:var(--sans);font-size:16px}.contact-line .label{display:inline-block;width:80px;color:var(--text-muted);font-size:13px;letter-spacing:.04em;text-transform:uppercase}@media(max-width:600px){.site{padding:0 24px}.masthead{padding:40px 0 32px}.home-lead{font-size:26px}h1{font-size:32px}h2{font-size:22px}.nav{gap:18px;flex-wrap:wrap;font-size:14px}.home-links{flex-direction:column;gap:14px}}
