@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');

:root{
  --bg:#faf7f2;
  --paper:#fffdf9;
  --ink:#1c1917;
  --muted:#57534e;
  --faint:#8a817a;
  --clay:#b84f2d;
  --clay-soft:#f4e3d9;
  --blue-soft:#e7f0f4;
  --green:#356b58;
  --line:rgba(28,25,23,.13);
  --shadow:0 22px 70px -42px rgba(28,25,23,.34);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Inter",sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
::selection{background:var(--clay);color:white}
.site-nav{height:72px;display:flex;align-items:center;justify-content:space-between;max-width:1120px;margin:0 auto;padding:0 28px}
.site-nav .brand{font-family:"JetBrains Mono",monospace;font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;text-decoration:none;color:var(--clay)}
.site-nav .links{display:flex;gap:24px;align-items:center}
.site-nav .links a{font-size:13px;color:var(--muted);text-decoration:none}
.site-nav .links a:hover{color:var(--clay)}
.article-hero{max-width:980px;margin:0 auto;padding:86px 28px 52px}
.kicker{font-family:"JetBrains Mono",monospace;color:var(--clay);font-size:12px;font-weight:600;letter-spacing:1.1px;text-transform:uppercase;margin-bottom:24px}
h1{font-family:"Fraunces",serif;font-size:clamp(46px,7vw,82px);line-height:1.02;letter-spacing:-2.3px;font-weight:500;margin:0;max-width:930px}
.dek{font-family:"Fraunces",serif;font-size:clamp(21px,2.7vw,29px);line-height:1.42;color:var(--muted);max-width:820px;margin:28px 0 0}
.byline{display:flex;align-items:center;gap:14px;margin-top:34px;color:var(--muted);font-size:13px}
.byline img{width:48px;height:48px;border-radius:50%;object-fit:cover;object-position:center 24%}
.byline strong{display:block;color:var(--ink);font-weight:600}
.byline span{display:block}
.article-shell{max-width:980px;margin:0 auto;padding:0 28px 90px;display:grid;grid-template-columns:minmax(0,680px) 220px;gap:60px;align-items:start}
.article-body{min-width:0}
.article-body p{font-size:17px;margin:0 0 24px;color:#37322f}
.article-body h2{font-family:"Fraunces",serif;font-size:clamp(29px,4vw,42px);line-height:1.18;letter-spacing:-.7px;font-weight:500;margin:66px 0 22px}
.article-body h3{font-size:19px;line-height:1.35;margin:34px 0 12px}
.article-body ul,.article-body ol{margin:0 0 28px;padding-left:24px;color:#37322f}
.article-body li{padding-left:6px;margin:10px 0;font-size:16px}
.article-body strong{color:var(--ink)}
.article-body code{font-family:"JetBrains Mono",monospace;font-size:.88em;background:#f0ebe4;border-radius:5px;padding:2px 6px}
.article-body .lede-copy{font-size:20px;line-height:1.58;color:var(--ink)}
.takeaways{background:var(--paper);box-shadow:var(--shadow);border-radius:22px;padding:28px 30px;margin:18px 0 48px}
.takeaways h2{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--clay);margin:0 0 15px}
.takeaways ol{margin:0;padding-left:22px}
.takeaways li{font-size:15px;margin:9px 0}
.figure{margin:44px 0 48px;background:var(--paper);border-radius:24px;padding:28px;box-shadow:var(--shadow)}
.figure svg{display:block;width:100%;height:auto}
.figure img{display:block;width:100%;height:auto;border-radius:14px}
.figure figcaption{font-size:13px;line-height:1.55;color:var(--muted);margin-top:18px}
.figure figcaption strong{color:var(--ink)}
.pullquote{font-family:"Fraunces",serif;font-size:clamp(28px,4vw,40px);line-height:1.27;color:var(--clay);margin:56px 0;padding-left:25px;border-left:5px solid var(--clay)}
.equation{font-family:"JetBrains Mono",monospace;font-size:clamp(16px,2.3vw,21px);line-height:1.6;background:var(--ink);color:white;border-radius:18px;padding:24px 26px;margin:28px 0;overflow-x:auto}
.data-table{width:100%;border-collapse:collapse;margin:28px 0 38px;font-size:14px;background:var(--paper);box-shadow:var(--shadow);border-radius:16px;overflow:hidden;display:table}
.data-table th,.data-table td{padding:13px 14px;text-align:right;border-bottom:1px solid var(--line)}
.data-table th:first-child,.data-table td:first-child{text-align:left}
.data-table th{font-size:12px;letter-spacing:.4px;text-transform:uppercase;color:var(--muted);background:#f2ece4}
.data-table tr:last-child td{border-bottom:0}
.audit-note{background:var(--clay-soft);border-radius:18px;padding:22px 24px;margin:34px 0;color:#4b2b1f}
.audit-note strong{display:block;color:#7c3019;margin-bottom:6px}
.article-aside{position:sticky;top:30px;padding-top:10px}
.article-aside .aside-label{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--faint);margin-bottom:12px}
.article-aside a{display:block;text-decoration:none;font-size:13px;line-height:1.4;color:var(--muted);padding:10px 0;border-bottom:1px solid var(--line)}
.article-aside a:hover{color:var(--clay)}
.author-card{display:grid;grid-template-columns:82px 1fr;gap:20px;align-items:center;background:var(--paper);border-radius:22px;padding:26px;margin-top:66px;box-shadow:var(--shadow)}
.author-card img{width:82px;height:82px;border-radius:18px;object-fit:cover;object-position:center 24%}
.author-card h2{font-family:"Inter",sans-serif;font-size:17px;margin:0 0 5px;letter-spacing:0;font-weight:600}
.author-card p{font-size:14px;line-height:1.55;margin:0;color:var(--muted)}
.author-card .author-links{display:flex;gap:16px;margin-top:10px}
.author-card a{font-size:13px;color:var(--clay);text-decoration:none;font-weight:600}
.article-footer{max-width:1120px;margin:0 auto;border-top:1px solid var(--line);padding:30px 28px 48px;display:flex;justify-content:space-between;gap:20px;color:var(--faint);font-size:12px}
.hub-hero{max-width:1120px;margin:0 auto;padding:92px 28px 44px}
.hub-hero h1{max-width:880px}
.hub-dek{font-size:19px;color:var(--muted);max-width:700px;margin-top:24px}
.article-grid{max-width:1120px;margin:0 auto;padding:26px 28px 100px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.article-card{min-width:0;background:var(--paper);border-radius:22px;overflow:hidden;box-shadow:var(--shadow);text-decoration:none;display:flex;flex-direction:column;transition:transform .25s ease}
.article-card:hover{transform:translateY(-5px)}
.article-card img{width:100%;max-width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover;display:block}
.article-card-body{padding:24px;display:flex;flex-direction:column;flex:1}
.article-card .eyebrow{font-family:"JetBrains Mono",monospace;font-size:10px;color:var(--clay);text-transform:uppercase;letter-spacing:.7px}
.article-card h2{font-family:"Fraunces",serif;font-size:25px;line-height:1.18;font-weight:500;margin:12px 0}
.article-card p{font-size:14px;color:var(--muted);line-height:1.55;margin:0 0 22px}
.article-card .read{font-size:12px;color:var(--clay);font-weight:600;margin-top:auto}
@media(max-width:860px){.article-shell{grid-template-columns:1fr}.article-aside{display:none}.article-grid{grid-template-columns:1fr}.article-hero{padding-top:60px}}
@media(max-width:600px){.site-nav{padding:0 20px}.site-nav .links a:nth-child(2){display:none}.article-hero,.article-shell,.hub-hero,.article-grid{padding-left:21px;padding-right:21px}h1{font-size:47px;letter-spacing:-1.3px}.dek{font-size:21px}.article-body p{font-size:16.5px}.takeaways,.figure{padding:22px;margin-left:-5px;margin-right:-5px}.author-card{grid-template-columns:64px 1fr;padding:20px}.author-card img{width:64px;height:64px}.article-footer{flex-direction:column;padding-left:21px;padding-right:21px}.data-table{font-size:12px}.data-table th,.data-table td{padding:10px 8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.site-nav,.article-aside{display:none}.article-shell{display:block}.article-hero,.article-shell{max-width:760px}.figure,.takeaways,.author-card{box-shadow:none;border:1px solid #ddd;break-inside:avoid}.article-body h2{break-after:avoid}}
