:root{
  --paper:#FFFFFF;
  --paper-2:#F5F6F8;
  --ink:#1A1D23;
  --ink-dim:#5F6570;
  --rule: rgba(26,29,35,0.10);
  --accent:#2454C7;
  --accent-dim:#6E8FD9;
  --accent-tint:#EAF0FC;
  --advanced:#7C3AED;
  --advanced-dim:#B79CF2;
  --advanced-tint:#F2EDFD;
  --economics:#0F9D8C;
  --economics-dim:#7DCFC5;
  --economics-tint:#E7F8F5;
  --forum:#C2740A;
  --forum-dim:#E3AD64;
  --forum-tint:#FBF0E1;
  --moss:#2E7D5B;
  --max: 1140px;
  --read: 760px;
  --side: 240px;
  --gutter: 48px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Roboto', sans-serif;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;}
.wrap{max-width:var(--max); margin:0 auto; padding:0 24px;}

/* ---------- Header ---------- */
header{
  padding:48px 0 26px;
  border-bottom:1px solid var(--rule);
}
.wordmark-link{text-decoration:none;}
.brand{display:flex; align-items:center; gap:14px;}
.brand-mark{display:block; flex-shrink:0;}
a.skip{position:absolute; left:-9999px; top:8px; background:var(--accent); color:#fff; padding:8px 14px; border-radius:6px; z-index:10;}
a.skip:focus{left:16px;}
.sr{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap;}
.wordmark{
  display:block;
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:clamp(2rem, 5vw, 2.6rem);
  letter-spacing:-0.01em;
  margin:0;
  color:var(--ink);
}
.wordmark span{color:var(--accent);}
.tagline{
  margin:14px 0 0;
  font-size:0.97rem;
  color:var(--ink-dim);
  max-width:46ch;
}
nav{
  margin-top:28px;
  display:flex;
  gap:22px;
  flex-wrap:wrap;
  font-size:0.85rem;
}
nav a{
  text-decoration:none;
  color:var(--ink-dim);
  font-weight:500;
  border-bottom:2px solid transparent;
  padding-bottom:4px;
  transition:color .15s, border-color .15s;
}
nav a:hover, nav a.active{color:var(--accent); border-color:var(--accent);}

/* ---------- About page ---------- */
.about-hero{
  padding:56px 0 8px;
  position:relative;
}
.about-hero h1{
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:clamp(1.9rem, 4.8vw, 2.8rem);
  line-height:1.2;
  margin:0 0 22px;
  max-width:20ch;
}
.lede{
  font-size:1.12rem;
  color:var(--ink-dim);
  max-width:60ch;
}
.about-body{padding:36px 0; border-top:1px solid var(--rule);}
.about-body h2{
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:1.5rem;
  margin:0 0 22px;
}
.about-body p{max-width:64ch; color:var(--ink-dim);}

.pillar-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.pillar{
  display:block;
  text-decoration:none;
  background:var(--paper);
  border:1px solid var(--rule);
  border-top:4px solid var(--accent);
  border-radius:10px;
  padding:26px;
  box-shadow:0 1px 3px rgba(26,29,35,0.05);
  transition:transform .15s ease, box-shadow .15s ease;
}
.pillar:hover{transform:translateY(-3px); box-shadow:0 8px 20px rgba(26,29,35,0.09);}
.pillar.beginner{border-top-color:var(--accent);}
.pillar.advanced{border-top-color:var(--advanced);}
.pillar.economics{border-top-color:var(--economics);}
.pillar.forum{border-top-color:var(--forum);}
.pillar-icon{
  width:38px; height:38px;
  display:flex; align-items:center; justify-content:center;
  border-radius:8px;
  margin-bottom:14px;
  background:var(--accent-tint);
  color:var(--accent);
}
.pillar.advanced .pillar-icon{background:var(--advanced-tint); color:var(--advanced);}
.pillar.economics .pillar-icon{background:var(--economics-tint); color:var(--economics);}
.pillar.forum .pillar-icon{background:var(--forum-tint); color:var(--forum);}
.pillar-icon svg{width:20px; height:20px;}
.pillar-tag{
  font-family:'Roboto', sans-serif;
  font-weight:500;
  font-size:0.7rem;
  letter-spacing:0.05em;
  text-transform:uppercase;
  color:var(--accent);
}
.pillar.advanced .pillar-tag{color:var(--advanced);}
.pillar.economics .pillar-tag{color:var(--economics);}
.pillar.forum .pillar-tag{color:var(--forum);}
.pillar h3{
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:1.15rem;
  margin:10px 0 8px;
}
.pillar p{font-size:0.92rem; color:var(--ink-dim); margin:0;}
@media (max-width:560px){.pillar-grid{grid-template-columns:1fr;}}
.pillar-grid.single{grid-template-columns:1fr; margin-top:22px;}
.motto{
  font-weight:700;
  font-size:1.1rem;
  color:var(--accent) !important;
  margin-top:22px;
}
.about-sub{
  font-size:1.15rem;
  font-weight:700;
  margin:30px 0 10px;
}
.author-card{
  margin-top:32px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:16px;
  padding:20px 24px;
  background:var(--accent-tint);
  border-radius:10px;
}
.author-card p{margin:0;}
.author-label{font-size:0.75rem; text-transform:uppercase; letter-spacing:0.05em; font-weight:500;}
.author-name{font-size:1.2rem; font-weight:700; color:var(--ink) !important;}
.author-link{
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 16px;
  background:#0A66C2; color:#fff;
  border-radius:6px;
  font-size:0.88rem; font-weight:500;
  text-decoration:none;
}
.author-link:hover{background:#004182;}
article.post .byline a{color:var(--accent); text-decoration:none; font-weight:500;}
article.post .byline a:hover{text-decoration:underline;}

/* ---------- Ledger / listing pages ---------- */
.page-intro{padding:48px 0 8px;}
.page-intro h1{
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:clamp(1.7rem, 4.2vw, 2.3rem);
  margin:0 0 12px;
}
.page-intro p{color:var(--ink-dim); max-width:58ch; font-size:1.05rem;}

.ledger{padding:24px 0 48px;}
.entry{
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  align-items:baseline;
  padding:24px 4px;
  border-bottom:1px solid var(--rule);
  border-radius:8px;
  transition:background .15s ease;
}
.entry:hover{background:var(--paper-2);}
.entry:last-child{border-bottom:none;}
.entry-title{
  font-family:'Roboto', sans-serif;
  font-size:1.2rem;
  font-weight:700;
  line-height:1.35;
}
.entry-title a{text-decoration:none;}
.entry-title a:hover{color:var(--accent);}
.entry-dek{font-size:0.92rem; color:var(--ink-dim); margin-top:6px; max-width:54ch;}
.entry-date{
  font-family:'Roboto', sans-serif;
  font-size:0.72rem;
  font-weight:500;
  color:var(--ink-dim);
  white-space:nowrap;
}
@media (max-width:560px){
  .entry{grid-template-columns:1fr;}
}

/* ---------- Article / post ---------- */
article.post{padding:52px 0 64px;}
article.post .tag{
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:0.72rem;
  letter-spacing:0.06em;
  color:var(--accent);
  background:var(--accent-tint);
  padding:5px 10px;
  border-radius:5px;
  display:inline-block;
  margin-bottom:18px;
}
article.post[data-category="advanced"] .tag{color:var(--advanced); background:var(--advanced-tint);}
article.post[data-category="economics"] .tag{color:var(--economics); background:var(--economics-tint);}
article.post h1{
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:clamp(1.9rem, 4.8vw, 2.5rem);
  line-height:1.16;
  margin:0 0 14px;
}
article.post .byline{
  font-size:0.85rem;
  color:var(--ink-dim);
  margin-bottom:32px;
  padding-bottom:22px;
  border-bottom:1px solid var(--rule);
}
article.post p{font-size:1.08rem; color:var(--ink); max-width:64ch;}
article.post h2{
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:1.35rem;
  margin-top:2em;
}
article.post ul, article.post ol{
  font-size:1.08rem;
  color:var(--ink);
  max-width:64ch;
  padding-left:1.3em;
}
article.post li{margin-bottom:0.4em;}
article.post .pull{
  font-style:italic;
  font-size:1.25rem;
  color:var(--ink);
  background:var(--accent-tint);
  border-left:4px solid var(--accent);
  padding:18px 22px;
  border-radius:0 8px 8px 0;
  margin:2em 0;
  max-width:56ch;
}
article.post[data-category="advanced"] .pull{background:var(--advanced-tint); border-left-color:var(--advanced);}
article.post[data-category="economics"] .pull{background:var(--economics-tint); border-left-color:var(--economics);}
article.post table{
  border-collapse:collapse;
  width:100%;
  max-width:64ch;
  margin:1.5em 0;
  font-size:0.92rem;
  border-radius:8px;
  overflow:hidden;
}
article.post th, article.post td{
  border:1px solid var(--rule);
  padding:11px 13px;
  text-align:left;
  vertical-align:top;
}
article.post th{
  background:var(--paper-2);
  font-weight:700;
}
.back-link{
  display:inline-block;
  margin-top:36px;
  font-size:0.85rem;
  font-weight:500;
  color:var(--accent);
  text-decoration:none;
}
.back-link:hover{text-decoration:underline;}

article.post .table-scroll{overflow-x:auto; max-width:100%;}
article.post .table-scroll table{min-width:560px;}

/* ---------- Comments (lightweight, no login) ---------- */
.comments{
  margin-top:56px;
  padding-top:32px;
  border-top:1px solid var(--rule);
}
.comments h3{
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:1.15rem;
  margin:0 0 20px;
}
.comment-list{margin-bottom:28px;}
.comment{padding:16px 0; border-bottom:1px solid var(--rule);}
.comment-meta{font-size:0.78rem; color:var(--ink-dim); margin-bottom:4px;}
.comment-meta b{color:var(--ink);}
.comment p{margin:0; font-size:0.95rem;}
.comment-form{display:flex; flex-direction:column; gap:10px; max-width:480px;}
.comment-form input, .comment-form textarea{
  font-family:'Roboto', sans-serif;
  font-size:0.92rem;
  padding:10px 12px;
  border:1px solid var(--rule);
  background:var(--paper-2);
  color:var(--ink);
  border-radius:6px;
}
.comment-form textarea{min-height:80px; resize:vertical;}
.comment-form button{
  align-self:flex-start;
  font-family:'Roboto', sans-serif;
  font-size:0.88rem;
  font-weight:600;
  padding:10px 22px;
  background:var(--accent);
  color:#fff;
  border:none;
  border-radius:6px;
  cursor:pointer;
  box-shadow:0 2px 6px rgba(36,84,199,0.25);
}
.comment-form button:hover{background:#1B3E9E;}
.comment-note{font-size:0.78rem; color:var(--ink-dim); margin-top:-4px;}

/* ---------- Footer ---------- */
footer{
  border-top:1px solid var(--rule);
  padding:36px 0 56px;
  font-size:0.8rem;
  color:var(--ink-dim);
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
}
footer a{text-decoration:none; color:var(--ink-dim);}
footer a:hover{color:var(--accent);}
footer .credit{font-size:0.74rem; color:var(--ink-dim); opacity:0.85;}

@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto;}}

/* ---------- AEO / article furniture ---------- */
.breadcrumbs ol{list-style:none; margin:0 0 18px; padding:0; display:flex; flex-wrap:wrap; gap:6px; font-size:0.8rem; color:var(--ink-dim);}
.breadcrumbs li+li::before{content:"›"; margin-right:6px; color:var(--ink-dim);}
.breadcrumbs a{text-decoration:none; color:var(--accent);}
.breadcrumbs a:hover{text-decoration:underline;}
.wrap > .breadcrumbs{padding-top:28px;}
.wrap > .breadcrumbs + .page-intro{padding-top:12px;}

.answer-box, .takeaways, .formula{
  background:var(--accent-tint);
  border-radius:10px;
  padding:18px 22px;
  margin:0 0 20px;
}
.answer-box{border-left:4px solid var(--accent); border-radius:0 10px 10px 0;}
.answer-box p:last-child{margin-bottom:0;}
.takeaways{background:var(--paper-2);}
.answer-label{
  font-size:0.72rem !important; font-weight:700; letter-spacing:0.06em; text-transform:uppercase;
  color:var(--accent) !important; margin:0 0 6px !important;
}
.formula-eq{font-weight:700; font-size:1.12rem !important; margin:0 !important; font-variant-numeric:tabular-nums;}

.stat-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:12px;}
.stat{background:var(--paper); border:1px solid var(--rule); border-radius:8px; padding:14px 16px; display:flex; flex-direction:column; gap:4px;}
.stat-val{font-size:1.6rem; font-weight:700; color:var(--ink); line-height:1.1;}
.stat-lbl{font-size:0.82rem; color:var(--ink-dim); line-height:1.35;}
.about-body .stat-grid{margin-bottom:24px;}

.toc{border:1px solid var(--rule); border-radius:10px; padding:16px 22px; margin:0 0 28px;}
.toc-title{font-size:0.72rem !important; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; color:var(--ink-dim) !important; margin:0 0 6px !important;}
.toc ol{margin:0; padding-left:1.2em; font-size:0.95rem !important; columns:2; column-gap:28px;}
.toc li{margin-bottom:0.25em;}
.toc a{color:var(--accent); text-decoration:none;}
.toc a:hover{text-decoration:underline;}
@media (max-width:560px){.toc ol{columns:1;}}
article.post h2[id], .faq, section[id], figure[id], .term{scroll-margin-top:16px;}

article.post a:not(.back-link):not(.author-link):not(.gl){color:var(--accent);}
a.gl{color:inherit; text-decoration:underline dotted var(--accent-dim); text-underline-offset:3px;}
a.gl:hover{color:var(--accent);}

article.post caption{caption-side:top; text-align:left; font-size:0.85rem; font-weight:700; color:var(--ink); padding:0 0 8px;}
.table-scroll{overflow-x:auto; max-width:100%; margin:1.5em 0; -webkit-overflow-scrolling:touch;}
.table-scroll table{margin:0 !important;}
article.post .table-scroll table{min-width:520px;}
article.post .table-scroll table.example{min-width:0;}
article.post td, article.post th{font-variant-numeric:tabular-nums;}
article.post tbody th{font-weight:500; background:transparent;}
.pill{display:inline-block; font-size:0.78rem; font-weight:700; padding:2px 8px; border-radius:999px; white-space:nowrap;}
.pill.good{background:#e6f5e6; color:#006300;}
.pill.bad{background:#fbe9e9; color:#a32626;}
.callout{background:var(--forum-tint); border-radius:8px; padding:14px 18px; font-size:1rem !important;}
.example-title{font-weight:700; margin:1.4em 0 0 !important; font-size:1rem !important;}
table.example th{width:44%;}

ul.blueprint{list-style:none; padding:0 !important;}
ul.blueprint li{display:flex; gap:12px; padding:12px 0; border-bottom:1px solid var(--rule); margin:0 !important;}
ul.blueprint li:last-child{border-bottom:none;}
.bp-ico{flex-shrink:0; width:28px; font-size:1.15rem;}
ol.steps li, ol.checklist li{margin-bottom:0.6em;}
ol.checklist{list-style:none; padding-left:0 !important;}
ol.checklist li{padding-left:30px; position:relative;}
ol.checklist li::before{content:"☐"; position:absolute; left:0; color:var(--accent); font-size:1.15rem; line-height:1.4;}

/* ---------- Charts ---------- */
figure.chart{margin:2em 0; padding:18px 18px 14px; border:1px solid var(--rule); border-radius:10px; background:#fcfcfb;}
svg.viz{display:block; width:100%; height:auto; overflow:visible;}
svg.viz text{font-family:'Roboto', sans-serif;}
svg.viz .ax{font-size:11px; fill:#898781; font-variant-numeric:tabular-nums;}
svg.viz .ax.cat{font-size:12px; fill:var(--ink-dim);}
svg.viz .lbl{font-size:11.5px; fill:var(--ink-dim);}
svg.viz .lbl.strong{fill:var(--ink); font-weight:500;}
svg.viz [data-tip]{cursor:crosshair; outline:none;}
svg.viz path[data-tip]:hover, svg.viz path[data-tip]:focus{opacity:0.82;}
.chart-legend{display:flex; flex-wrap:wrap; gap:6px 18px; font-size:0.8rem; color:var(--ink-dim); margin:0 0 10px;}
.lg-item{display:inline-flex; align-items:center; gap:6px;}
.lg-swatch{display:inline-block; width:12px; height:12px; border-radius:3px; opacity:0.55;}
figure.chart figcaption{font-size:0.9rem; color:var(--ink); margin-top:10px; line-height:1.5;}
.fig-note{display:block; font-size:0.78rem; color:var(--ink-dim); margin-top:4px;}
details.data-table{margin-top:10px; font-size:0.85rem;}
details.data-table summary{cursor:pointer; color:var(--accent); font-weight:500;}
details.data-table .table-scroll{margin:10px 0 0;}
details.data-table table{min-width:0 !important; font-size:0.85rem;}
.chart-tip{
  position:fixed; z-index:20; pointer-events:none; white-space:pre-line;
  background:var(--ink); color:#fff; font-size:0.8rem; line-height:1.45;
  padding:8px 11px; border-radius:6px; box-shadow:0 6px 18px rgba(26,29,35,0.18);
  font-variant-numeric:tabular-nums; max-width:260px;
}

/* ---------- FAQ, related, glossary ---------- */
.faq{margin-top:2.5em;}
.faq .qa{padding:14px 0; border-bottom:1px solid var(--rule);}
.faq .qa:last-child{border-bottom:none;}
.faq h3{font-size:1.05rem; margin:0 0 6px;}
.faq p{margin:0; font-size:1rem !important;}
.about-body .faq{margin-top:0;}
.related{margin-top:2.5em; padding:22px 24px; background:var(--paper-2); border-radius:10px;}
.related h2{margin-top:0 !important;}
.related ul{list-style:none; padding:0 !important;}
.related li{margin-bottom:0.6em; font-size:1rem !important;}
.related a{text-decoration:none;}
.related a:hover{text-decoration:underline;}
.sources{font-size:0.85rem !important; color:var(--ink-dim) !important; margin-bottom:0;}

.az{display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 24px;}
.az a{font-size:0.8rem; text-decoration:none; background:var(--paper-2); border:1px solid var(--rule); border-radius:999px; padding:4px 11px; color:var(--ink-dim);}
.az a:hover{color:var(--accent); border-color:var(--accent-dim);}
dl.glossary{margin:0 0 56px;}
.term{padding:18px 0; border-top:1px solid var(--rule);}
.term:target{background:var(--accent-tint); border-radius:8px; padding-left:12px; padding-right:12px;}
.term dt{font-weight:700; font-size:1.1rem; margin-bottom:4px;}
.term dfn{font-style:normal;}
.term dd{margin:0; color:var(--ink-dim); max-width:64ch;}
.term dd a{color:var(--accent);}

.entry-kicker{font-size:0.72rem; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; color:var(--accent); margin:0 0 4px;}
h2.entry-title{margin:0;}
.entry-meta{font-size:0.78rem; color:var(--ink-dim); margin:8px 0 0;}
.path td a{color:var(--accent); text-decoration:none; font-weight:500;}
.about-body table{border-collapse:collapse; width:100%; font-size:0.92rem;}
.about-body th, .about-body td{border:1px solid var(--rule); padding:10px 12px; text-align:left; vertical-align:top;}
.about-body thead th{background:var(--paper-2);}
.author-bio{font-size:0.88rem; color:var(--ink-dim) !important; margin-top:4px !important; max-width:52ch;}
article.post .author-card{margin-top:2.5em;}
article.post .comments h2{font-size:1.15rem; margin:0 0 6px;}
article.post .table-scroll table{max-width:none; width:100%;}
article.post th, article.post td{line-height:1.45;}

/* ---------- Flashcards (Pitfalls · Beginner) ---------- */
.flashcards{display:grid; grid-template-columns:minmax(0, 1fr); gap:20px; padding:28px 0 64px;}
@media (min-width:700px){.flashcards{grid-template-columns:repeat(2, minmax(0, 1fr));}}
.flashcard{
  display:flex; flex-direction:column; gap:12px;
  text-decoration:none; color:var(--ink);
  background:var(--paper);
  border:1px solid var(--rule); border-radius:14px;
  padding:22px 24px 20px;
  box-shadow:0 1px 2px rgba(26,29,35,0.05), 0 6px 0 -3px var(--paper), 0 6px 0 -2px var(--rule);
  transition:transform .18s ease, box-shadow .18s ease;
}
.flashcard:hover, .flashcard:focus-visible{transform:translateY(-4px) rotate(-0.4deg); box-shadow:0 12px 26px rgba(26,29,35,0.10);}
.fc-num{align-self:flex-start; font-size:0.72rem; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; color:#fff; background:var(--accent); padding:4px 10px; border-radius:999px;}
.fc-title{font-size:1.25rem; line-height:1.3; margin:6px 0 0; padding-bottom:12px; border-bottom:2px solid #F2C4C4; text-wrap:balance;}
.fc-desc{margin:0; color:var(--ink-dim); font-size:0.95rem; line-height:1.55;}
.fc-tags{display:flex; flex-wrap:wrap; gap:6px; margin-top:auto; padding-top:6px;}
.fc-tag{font-size:0.75rem; font-weight:500; color:var(--accent); background:var(--accent-tint); border-radius:6px; padding:3px 9px;}
.fc-go{font-size:0.85rem; font-weight:700; color:var(--accent);}
@media (prefers-reduced-motion: reduce){.flashcard{transition:none;} .flashcard:hover{transform:none;}}

/* ---------- Team ---------- */
.team{display:grid; gap:16px;}
.team .author-card{margin-top:0;}
.author-role{font-size:0.82rem !important; font-weight:500; color:var(--accent) !important; margin:2px 0 6px !important;}
.author-card .author-bio + .author-bio{margin-top:8px !important;}


/* ---------- Desktop: one shared two-column grid ----------
   Left column (--side): section headings, or the table of contents on posts.
   Right column (--read): every paragraph, box, chart, table and card, so their
   left and right edges line up on every page. */
@media (min-width:900px){
  header{display:grid; grid-template-columns:auto 1fr; align-items:center; column-gap:40px; padding:36px 0 22px;}
  header .tagline{grid-column:1 / -1; grid-row:2; max-width:70ch;}
  header nav{margin-top:0; justify-self:end; gap:28px; font-size:0.9rem;}

  .about-hero{padding:72px 0 32px;}
  .about-hero h1{max-width:none;}
  .lede{font-size:1.2rem; max-width:68ch;}
  .page-intro{padding:64px 0 8px;}

  .about-body,
  article.post{
    display:grid;
    grid-template-columns:var(--side) minmax(0, var(--read));
    column-gap:var(--gutter);
    align-items:start;
  }
  .about-body{padding:48px 0;}
  .about-body > *{grid-column:2; max-width:none;}
  .about-body > h2{grid-column:1; margin:0; text-wrap:balance;}
  .about-body p, .about-body .stat-grid, .about-body figure.chart{max-width:none;}
  .about-body > .faq{grid-column:1 / -1; display:grid; grid-template-columns:var(--side) minmax(0, var(--read)); column-gap:var(--gutter); margin:0;}
  .about-body > .faq > h2{grid-column:1; margin:0;}
  .about-body > .faq > .qa{grid-column:2;}
  .about-body .pillar-grid{grid-template-columns:1fr 1fr;}

  article.post > *{grid-column:2; max-width:none;}
  article.post > .toc{
    grid-column:1; grid-row:1 / span 400;
    position:sticky; top:24px; margin:0;
    border:none; padding:0;
  }
  .toc ol{columns:1; font-size:0.88rem !important; padding-left:1.1em;}
  article.post p, article.post ul, article.post ol, article.post .pull,
  article.post .table-scroll, article.post table{max-width:none;}
  article.post .author-card, article.post .related, article.post .comments{margin-left:0; margin-right:0;}

  .team{grid-template-columns:1fr 1fr; align-items:stretch;}
  .team .author-card{flex-direction:column; align-items:flex-start; justify-content:space-between;}
}
