:root{
  --ground:#EFF1F2; --surface:#FAFBFB; --sunk:#E5E9EA;
  --ink:#16202A; --soft:#57666F; --faint:#84949C;
  --rule:#D2D9DC; --rule-strong:#B6C0C5; --accent:#A96C12;
  --f-display:"Archivo","Helvetica Neue",Arial,sans-serif;
  --f-body:"Source Serif 4",Georgia,"Times New Roman",serif;
  --f-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
@media (prefers-color-scheme:dark){:root{
  --ground:#0F1518; --surface:#161D21; --sunk:#1C2429;
  --ink:#E0E6E8; --soft:#93A1A8; --faint:#6C7C84;
  --rule:#293338; --rule-strong:#3A474D; --accent:#E0A64A;
}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--f-body);
  font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased}
main,header.site,footer.site{max-width:40rem;margin:0 auto;padding:0 1.5rem}
header.site{padding-top:3.5rem;padding-bottom:1.75rem;margin-bottom:2.5rem;border-bottom:1px solid var(--rule-strong)}
.brand{font-family:var(--f-display);font-weight:700;font-size:1.32rem;letter-spacing:-.018em;
  color:var(--ink);text-decoration:none;display:block}
.tagline{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--faint);margin:.5rem 0 0}
.intro{font-size:1.05rem;color:var(--soft);margin:0 0 2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--rule)}
ul.posts{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2rem}
ul.posts li{display:flex;flex-direction:column;gap:.3rem}
ul.posts time{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
ul.posts a{font-family:var(--f-display);font-weight:600;font-size:1.16rem;line-height:1.3;
  letter-spacing:-.012em;color:var(--ink);text-decoration:none;text-wrap:balance}
ul.posts a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}
ul.posts span{font-size:.95rem;color:var(--soft);line-height:1.5}
.kicker{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;
  color:var(--accent);margin:0 0 .85rem}
.post h1{font-family:var(--f-display);font-weight:700;font-size:clamp(1.85rem,5vw,2.5rem);
  line-height:1.1;letter-spacing:-.022em;margin:0 0 1rem;text-wrap:balance}
.standfirst{font-size:1.12rem;color:var(--soft);line-height:1.52;margin:0 0 2.25rem;
  padding-bottom:1.75rem;border-bottom:1px solid var(--rule)}
.post h2{font-family:var(--f-display);font-weight:600;font-size:1.38rem;letter-spacing:-.012em;
  line-height:1.2;margin:2.75rem 0 .85rem;text-wrap:balance}
.post p{margin:0 0 1.15rem}
.post strong{font-weight:600}
.post blockquote{margin:1.6rem 0;padding:.9rem 1.2rem;border-left:3px solid var(--accent);
  background:var(--sunk)}
.post blockquote p{margin:0;font-size:1rem}
a{color:var(--accent);text-underline-offset:2px}
code{font-family:var(--f-mono);font-size:.84em;background:var(--sunk);padding:.12em .36em;border-radius:2px}
pre{background:var(--sunk);border:1px solid var(--rule);padding:1rem 1.1rem;overflow-x:auto;
  font-size:.82rem;line-height:1.55;margin:0 0 1.3rem}
pre code{background:none;padding:0;font-size:1em}
table{border-collapse:collapse;width:100%;font-size:.92rem;margin:0 0 1.3rem}
.table-wrap,.post table{display:table}
th{font-family:var(--f-mono);font-size:.66rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--faint);text-align:left;padding:0 .85rem .5rem 0;border-bottom:1px solid var(--rule-strong)}
td{padding:.6rem .85rem .6rem 0;border-bottom:1px solid var(--rule);vertical-align:top}
tr:last-child td{border-bottom:none}
.backlink{margin:3.5rem 0 0;font-family:var(--f-mono);font-size:.74rem;letter-spacing:.06em}
footer.site{margin-top:4rem;padding-top:1.5rem;padding-bottom:4rem;border-top:1px solid var(--rule);
  display:flex;gap:1.5rem;font-family:var(--f-mono);font-size:.7rem;letter-spacing:.09em;
  text-transform:uppercase;color:var(--faint)}
footer.site a{color:var(--faint)}
a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media (max-width:600px){body{font-size:17px}.post table{font-size:.84rem}}
.empty{font-family:var(--f-mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
