:root{color-scheme:light;--paper: #f7f5ef;--ink: #1f2a2e;--muted: #657276;--line: #d8d3c7;--blue: #58758a;--blue-dark: #2f4d5f;--sage: #7a8a79;--white: #fffdf8;--font-serif: Georgia, "Times New Roman", Times, serif;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);line-height:1.6}a{color:inherit;text-decoration:none}.site-header,.site-footer,main{width:min(1120px,calc(100% - 32px));margin:0 auto}.site-header{display:flex;align-items:center;justify-content:space-between;padding:28px 0;border-bottom:1px solid var(--line)}.brand{font-family:var(--font-serif);font-size:1.18rem;font-weight:700;letter-spacing:0}nav{display:flex;gap:18px;color:var(--muted);font-size:.95rem}nav a:hover{color:var(--ink)}.hero{min-height:54vh;display:grid;align-content:center;gap:18px;border-bottom:1px solid var(--line)}.hero h1,.page-intro h1{max-width:880px;margin:0;font-family:var(--font-serif);font-size:5.2rem;line-height:1;font-weight:600}.hero p,.page-intro p,.lede{max-width:720px;margin:0;color:var(--muted);font-size:1.08rem}.eyebrow,.meta{margin:0;color:var(--blue-dark);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:0}.section-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;padding:56px 0}.section-grid h2,.publication-section h2,.topic-panel h2{margin:0 0 18px;font-family:var(--font-serif);font-size:1.1rem}.card-list,.feature-grid,.topic-grid{display:grid;gap:16px}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:48px}.topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.article-card,.feature-card,.topic-card,.topic-panel,.tweet-entry,.empty-panel{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:22px}.article-card:hover,.feature-card:hover{border-color:var(--blue)}.article-card h2,.article-card h3,.feature-card h2,.topic-card h2{margin:8px 0;font-family:var(--font-serif);line-height:1.15;font-weight:600}.article-card p,.feature-card p,.topic-card p{margin-bottom:0;color:var(--muted)}.topic-panel ul{display:grid;gap:10px;padding:0;margin:0;list-style:none}.topic-panel li{padding-bottom:10px;border-bottom:1px solid var(--line)}.tweet-grid{column-count:2;column-gap:20px;padding-bottom:56px}.tweet-entry{display:inline-grid;width:100%;gap:14px;margin-bottom:20px;break-inside:avoid;overflow:hidden}.tweet-entry-header{display:grid;gap:8px}.tweet-entry-header p{margin:0;color:var(--muted)}.empty-panel{margin-bottom:56px}.empty-panel p{margin:0;color:var(--muted)}.publication-section,.page-intro{padding:56px 0}.page-intro{display:grid;gap:18px}.narrow{max-width:760px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px}.section-heading a,.section-heading span,.back-link{color:var(--blue-dark);font-size:.95rem}.publication-table{border-top:1px solid var(--line)}.publication-row{display:grid;grid-template-columns:140px 180px minmax(0,1fr);gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.publication-row time,.publication-row span{color:var(--muted)}.publication-row strong{font-family:var(--font-serif);font-size:1.08rem;font-weight:600}.article-shell{max-width:820px;padding:48px 0 72px}.article-header{display:grid;gap:16px;padding:28px 0 40px;border-bottom:1px solid var(--line)}.article-header h1{margin:0;font-family:var(--font-serif);font-size:4.6rem;line-height:1;font-weight:600}.article-cover{display:block;width:100%;margin-top:28px;border:1px solid var(--line);border-radius:8px;background:var(--white)}.tag-row{display:flex;flex-wrap:wrap;gap:8px}.tag-row span{border:1px solid var(--line);border-radius:999px;padding:4px 10px;color:var(--muted);font-size:.85rem}.prose{padding-top:36px;font-size:1.08rem}.prose h2,.prose h3{margin-top:2em;font-family:var(--font-serif);line-height:1.2;font-weight:600}.prose a{color:var(--blue-dark);text-decoration:underline;text-underline-offset:3px}.site-footer{padding:32px 0;border-top:1px solid var(--line);color:var(--muted)}@media(max-width:760px){.hero h1,.page-intro h1{font-size:3rem}.article-header h1{font-size:2.8rem}.site-header{align-items:flex-start;flex-direction:column;gap:16px}nav{flex-wrap:wrap}.section-grid,.feature-grid,.topic-grid,.publication-row{grid-template-columns:1fr}.tweet-grid{column-count:1}.publication-row{gap:4px}}
