/* Decibel Labs — article styles.
   Ported from the Asset State Series house style, scoped under
   .article-body and rethemed to the site tokens. Semantic state,
   authority, flow and plane colours are intentionally preserved. */
/* Decibel Labs — website article house style (Asset State Series)
   Derived from the Universal Asset Depository paper design tokens.
   Inlined into each article so files stay portable into any CMS. */

:root {
  --bg-page:#ffffff;
  --text-primary:#111827;
  --text-secondary:#4b5563;
  --text-muted:#9ca3af;
  --border-light:#e5e7eb;
  --border-medium:#d1d5db;

  --state-pre:#f3f4f6;
  --state-approved:#ecfdf5;      --state-approved-border:#10b981;
  --state-active:#eff6ff;        --state-active-border:#3b82f6;
  --state-restricted:#fef3c7;    --state-restricted-border:#f59e0b;
  --state-suspended:#fee2e2;     --state-suspended-border:#ef4444;
  --state-freeze:#1f2937;        --state-freeze-text:#ffffff;
  --state-custody:#f5f3ff;       --state-custody-border:#8b5cf6;
  --state-terminal:#f9fafb;      --state-terminal-border:#6b7280;

  --auth-issuer:#3b82f6;
  --auth-regulator:#dc2626;
  --auth-custodian:#8b5cf6;
  --auth-admin:#059669;
  --auth-attester:#0d9488;

  --flow-normal:#6b7280;
  --flow-emergency:#dc2626;
  --flow-override:#f59e0b;

  --plane-compliance:#3b82f6;
  --plane-physical:#0d9488;
  --plane-economic:#b45309;
}

.article-body{margin:0;padding:0;box-sizing:border-box}
.article-body{scroll-behavior:smooth}
.article-body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--bg-page);color:var(--text-primary);line-height:1.4;-webkit-font-smoothing:antialiased}
.article-body .container{max-width:900px;margin:0 auto;padding:48px 28px 64px}

/* ---- header ---- */
.eyebrow{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:2px;margin-bottom:12px}
.article-body h1.doc-title{font-size:32px;font-weight:700;letter-spacing:-0.6px;line-height:1.2;margin-bottom:12px}
.article-body .standfirst{font-size:15px;color:var(--text-secondary);line-height:1.7;font-style:italic;margin-bottom:20px}
.article-body .byline{display:inline-block;padding:6px 14px;background:var(--state-pre);border:1px solid var(--border-medium);font-size:11px;font-weight:500;color:var(--text-secondary);margin-bottom:32px}

/* ---- prose ---- */
h2{font-size:21px;font-weight:700;letter-spacing:-0.3px;margin:44px 0 16px;padding-bottom:12px;border-bottom:1px solid var(--border-light)}
.article-body h3{font-size:15px;font-weight:700;margin:28px 0 10px}
.article-body p{font-size:14.5px;color:var(--text-secondary);line-height:1.8;margin-bottom:16px}
.article-body p strong, .article-body li strong, .article-body td strong{color:var(--text-primary)}
.article-body em{color:var(--text-primary)}
.article-body ul, .article-body ol{margin:0 0 16px 22px}
.article-body li{font-size:14.5px;color:var(--text-secondary);line-height:1.75;margin-bottom:8px}
.article-body a{color:var(--auth-issuer)}

/* ---- key points box ---- */
.keypoints{border:1px solid var(--state-active-border);background:var(--state-active);padding:20px 24px;margin:0 0 34px}
.article-body .keypoints .kp-label{font-size:9px;font-weight:700;color:var(--auth-issuer);text-transform:uppercase;letter-spacing:1.4px;margin-bottom:12px}
.article-body .keypoints ul{margin:0 0 0 18px}
.article-body .keypoints li{font-size:13.5px;color:var(--text-primary);line-height:1.65;margin-bottom:8px}
.article-body .keypoints li:last-child{margin-bottom:0}

/* ---- domain insight callout ---- */
.insight{border-left:3px solid var(--auth-attester);background:#f0fdfa;padding:16px 20px;margin:24px 0}
.article-body .insight .in-label{font-size:9px;font-weight:700;color:var(--auth-attester);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:7px}
.article-body .insight p{font-size:13.5px;color:var(--text-primary);line-height:1.7;margin:0}

.article-body .pull-quote{margin:26px 0;padding:18px 22px;background:#fafafa;border-left:3px solid var(--text-primary)}
.article-body .pull-quote p{font-size:15.5px;font-weight:600;color:var(--text-primary);line-height:1.65;margin:0}

/* ---- tables ---- */
table.data{width:100%;border-collapse:collapse;margin:22px 0;font-size:12.5px}
.article-body table.data th{text-align:left;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.8px;color:var(--text-muted);padding:9px 10px;border-bottom:2px solid var(--border-medium);background:#fafafa}
.article-body table.data td{padding:10px;border-bottom:1px solid var(--border-light);color:var(--text-secondary);vertical-align:top;line-height:1.6}
.article-body table.data td.num{font-weight:700;color:var(--text-muted);width:28px;text-align:center}

/* ---- figures ---- */
figure{margin:30px 0}
.article-body figcaption{font-size:11px;color:var(--text-muted);line-height:1.6;margin-top:10px;padding-top:8px;border-top:1px solid var(--border-light)}
.article-body .fig-label{font-size:9px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.6px;margin-bottom:10px}

/* chain diagram */
.chain{display:flex;align-items:stretch;flex-wrap:wrap;gap:6px;border:1px solid var(--border-light);padding:18px;background:#fafafa}
.article-body .chain .hop{flex:1 1 110px;min-width:108px;background:#fff;border:1px solid var(--border-medium);padding:10px 8px;text-align:center}
.article-body .chain .hop .h-name{font-size:11px;font-weight:700;color:var(--text-primary);line-height:1.3;margin-bottom:6px}
.article-body .chain .hop .h-cost{font-size:9.5px;color:var(--text-muted);line-height:1.45}
.article-body .chain .arrow{align-self:center;color:var(--text-muted);font-size:14px;flex:0 0 auto}

/* collapse / root-cause figure */
.collapse{border:1px solid var(--border-light);background:#fafafa;padding:20px}
.article-body .collapse .symptoms{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
.article-body .collapse .sym{background:#fff;border:1px solid var(--border-medium);border-left:3px solid var(--state-restricted-border);padding:8px 10px;font-size:10.5px;font-weight:600;color:var(--text-secondary);line-height:1.35}
.article-body .collapse .funnel{text-align:center;font-size:18px;color:var(--text-muted);margin:4px 0 12px}
.article-body .collapse .root{background:var(--state-freeze);color:var(--state-freeze-text);padding:16px 20px;text-align:center}
.article-body .collapse .root .r-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1.4px;opacity:.7;margin-bottom:6px}
.article-body .collapse .root .r-text{font-size:14px;font-weight:600;line-height:1.55}

/* two-column compare */
.compare{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0}
.article-body .compare .col{border:1px solid var(--border-medium);padding:16px 18px}
.article-body .compare .col.good{border-top:3px solid var(--state-approved-border);background:var(--state-approved)}
.article-body .compare .col.bad{border-top:3px solid var(--state-suspended-border);background:var(--state-suspended)}
.article-body .compare .c-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:8px}
.article-body .compare .col.good .c-label{color:var(--auth-admin)}
.article-body .compare .col.bad .c-label{color:var(--state-suspended-border)}
.article-body .compare .c-head{font-size:13.5px;font-weight:700;color:var(--text-primary);line-height:1.45;margin-bottom:10px}
.article-body .compare ul{margin:0 0 0 16px}
.article-body .compare li{font-size:12px;line-height:1.6;margin-bottom:6px}

/* layer stack */
.stack{border:1px solid var(--border-light);background:#fafafa;padding:16px}
.article-body .stack .layer{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--border-medium);padding:12px 14px;margin-bottom:8px}
.article-body .stack .layer:last-child{margin-bottom:0}
.article-body .stack .l-tag{flex:0 0 92px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);padding-top:2px}
.article-body .stack .l-body .l-name{font-size:12.5px;font-weight:700;color:var(--text-primary);margin-bottom:3px}
.article-body .stack .l-body .l-desc{font-size:11px;color:var(--text-secondary);line-height:1.55}
.article-body .stack .layer.star{border-left:3px solid var(--auth-issuer)}

/* state machine figure */
.sm{border:1px solid var(--border-light);background:#fafafa;padding:18px}
.article-body .sm .sm-row{display:grid;gap:8px;margin-bottom:10px}
.article-body .sm .r4{grid-template-columns:repeat(4,1fr)}
.article-body .sm .r3{grid-template-columns:repeat(3,1fr)}
.article-body .sm .r2{grid-template-columns:repeat(2,1fr)}
.article-body .sm .node{border:1px solid var(--border-medium);background:#fff;padding:10px 12px}
.article-body .sm .node .n-id{font-size:9px;font-weight:700;letter-spacing:1px;color:var(--text-muted);margin-bottom:3px}
.article-body .sm .node .n-name{font-size:12px;font-weight:700;color:var(--text-primary);line-height:1.3;margin-bottom:5px}
.article-body .sm .node .n-auth{font-size:9.5px;font-weight:600;line-height:1.4}
.article-body .sm .node .n-auth.on-dark{color:#fca5a5}
.article-body .sm .node.s0{background:var(--state-pre)}
.article-body .sm .node.s1{background:var(--state-approved);border-color:var(--state-approved-border)}
.article-body .sm .node.s2{background:var(--state-active);border-color:var(--state-active-border)}
.article-body .sm .node.s3{background:var(--state-restricted);border-color:var(--state-restricted-border)}
.article-body .sm .node.s4{background:var(--state-suspended);border-color:var(--state-suspended-border)}
.article-body .sm .node.s5{background:var(--state-freeze);border-color:var(--state-freeze);color:var(--state-freeze-text)}
.article-body .sm .node.s5 .n-id, .article-body .sm .node.s5 .n-name{color:var(--state-freeze-text)}
.article-body .sm .node.s6{background:var(--state-custody);border-color:var(--state-custody-border)}
.article-body .sm .node.s7{background:var(--state-terminal);border-color:var(--state-terminal-border)}
.article-body .sm .legend{display:flex;flex-wrap:wrap;gap:6px 16px;padding-top:12px;margin-top:4px;border-top:1px solid var(--border-medium)}
.article-body .sm .legend span{font-size:9.5px;font-weight:600;color:var(--text-secondary)}
.article-body .sm .legend i{display:inline-block;width:9px;height:9px;margin-right:5px;font-style:normal}

/* planes */
.planes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}
.article-body .plane{border:1px solid var(--border-medium);padding:14px 16px;background:#fff}
.article-body .plane.p1{border-top:3px solid var(--plane-compliance)}
.article-body .plane.p2{border-top:3px solid var(--plane-physical)}
.article-body .plane.p3{border-top:3px solid var(--plane-economic)}
.article-body .plane .p-num{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:6px}
.article-body .plane.p1 .p-num{color:var(--plane-compliance)}
.article-body .plane.p2 .p-num{color:var(--plane-physical)}
.article-body .plane.p3 .p-num{color:var(--plane-economic)}
.article-body .plane .p-q{font-size:12.5px;font-weight:700;color:var(--text-primary);line-height:1.45;margin-bottom:8px}
.article-body .plane .p-d{font-size:11px;color:var(--text-secondary);line-height:1.6}

/* series nav */
.series-nav{margin-top:56px;padding-top:24px;border-top:2px solid var(--text-primary)}
.article-body .series-nav .sn-label{font-size:9px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.6px;margin-bottom:14px}
.article-body .series-nav ol{margin:0 0 0 20px}
.article-body .series-nav li{font-size:12.5px;line-height:1.6;margin-bottom:7px}
.article-body .series-nav li.here{color:var(--text-primary);font-weight:700}
.article-body .series-nav li.soon{color:var(--text-muted)}

.article-body .footnote{margin-top:34px;padding-top:14px;border-top:1px solid var(--border-light);font-size:11px;color:var(--text-muted);line-height:1.7}

/* --- Article 2 additions: cast grid, dysfunction chips, day timeline --- */
.cast{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:6px 0 0}
.article-body .cast .person{border:1px solid var(--border-medium);border-top:3px solid var(--auth-issuer);background:#fff;padding:12px 12px 14px}
.article-body .cast .person .who{font-size:12.5px;font-weight:700;color:var(--text-primary);line-height:1.3;margin-bottom:2px}
.article-body .cast .person .where{font-size:9.5px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.8px;margin-bottom:8px}
.article-body .cast .person .asset{font-size:11px;color:var(--text-secondary);line-height:1.55;margin-bottom:8px}
.article-body .cast .person .hits{font-size:9px;font-weight:700;color:var(--auth-issuer);letter-spacing:0.6px}
.article-body .cast .person.c1{border-top-color:var(--auth-issuer)}
.article-body .cast .person.c2{border-top-color:var(--auth-attester)}
.article-body .cast .person.c3{border-top-color:var(--auth-custodian)}
.article-body .cast .person.c4{border-top-color:var(--flow-override)}
.article-body .cast .person.c5{border-top-color:var(--auth-admin)}

.article-body .breaks{margin:18px 0 6px;padding:14px 16px;background:#fafafa;border-left:3px solid var(--border-medium)}
.article-body .breaks .b-label{font-size:9px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:9px}
.article-body .breaks ul{margin:0 0 0 16px}
.article-body .breaks li{font-size:12.5px;color:var(--text-secondary);line-height:1.65;margin-bottom:5px}
.article-body .breaks li:last-child{margin-bottom:0}
.article-body .chip{display:inline-block;font-size:9px;font-weight:700;letter-spacing:0.6px;color:#fff;background:var(--text-secondary);padding:1px 6px;margin-right:6px;vertical-align:1px}

.article-body .timeline{border:1px solid var(--border-light);background:#fafafa;padding:16px 18px}
.article-body .timeline .tl-row{display:grid;grid-template-columns:96px 1fr;gap:12px;padding:7px 0;border-bottom:1px solid var(--border-light)}
.article-body .timeline .tl-row:last-child{border-bottom:none}
.article-body .timeline .tl-t{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.8px;padding-top:2px}
.article-body .timeline .tl-e{font-size:12.5px;color:var(--text-secondary);line-height:1.6}
.article-body .timeline .tl-row.dead .tl-e{color:var(--state-suspended-border);font-weight:600}

/* --- Article 4 additions (calibration 2026-08-30): punch statement + copies-vs-one-record figure --- */
.punch{margin:0 0 26px;padding:20px 24px;background:var(--state-freeze)}
.article-body .punch .p-label{font-size:9px;font-weight:700;color:var(--state-freeze-text);text-transform:uppercase;letter-spacing:1.6px;opacity:.65;margin-bottom:8px}
.article-body .punch p{font-size:16.5px;font-weight:700;color:var(--state-freeze-text);line-height:1.55;letter-spacing:-0.2px;margin:0}

.article-body .recon{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:10px 0 0}
.article-body .recon .side{border:1px solid var(--border-medium);padding:14px;background:#fafafa}
.article-body .recon .side.old{border-top:3px solid var(--state-suspended-border)}
.article-body .recon .side.new{border-top:3px solid var(--state-approved-border)}
.article-body .recon .s-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:3px}
.article-body .recon .side.old .s-label{color:var(--state-suspended-border)}
.article-body .recon .side.new .s-label{color:var(--auth-admin)}
.article-body .recon .s-head{font-size:12px;font-weight:700;color:var(--text-primary);line-height:1.4;margin-bottom:12px}
.article-body .recon .copies, .article-body .recon .writers{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.article-body .recon .copy{border:1.5px dashed var(--border-medium);background:#fff;padding:8px 9px}
.article-body .recon .copy .c-inst{font-size:10px;font-weight:700;color:var(--text-primary);line-height:1.3}
.article-body .recon .copy .c-writes{font-size:9px;font-weight:600;color:var(--auth-admin);margin:2px 0 6px}
.article-body .recon .copy .c-rec{border-top:1px solid var(--border-light);padding-top:5px}
.article-body .recon .copy .c-rec div{font-size:8.5px;color:var(--text-muted);line-height:1.55}
.article-body .recon .copy .c-rec div.own{color:var(--text-secondary);font-weight:700}
.article-body .recon .hub{border:2px solid var(--text-primary);background:var(--state-freeze);padding:10px 12px;text-align:center;margin-bottom:8px}
.article-body .recon .hub .h-name{font-size:11px;font-weight:700;letter-spacing:0.4px;color:var(--state-freeze-text)}
.article-body .recon .hub .h-sub{font-size:8.5px;color:var(--state-freeze-text);opacity:.7;margin-top:3px;line-height:1.5}
.article-body .recon .writer{border:1px solid var(--border-medium);background:#fff;padding:8px 9px}
.article-body .recon .writer .w-inst{font-size:10px;font-weight:700;color:var(--text-primary)}
.article-body .recon .writer .w-does{font-size:9px;color:var(--text-secondary);line-height:1.55;margin-top:3px}
.article-body .recon .writer .w-does b{color:var(--auth-admin);font-weight:700}
.article-body .recon .verdict{margin-top:10px;padding:9px 11px;font-size:10.5px;font-weight:600;line-height:1.55}
.article-body .recon .side.old .verdict{background:var(--state-suspended);color:#991b1b}
.article-body .recon .side.new .verdict{background:var(--state-approved);color:#065f46}

/* --- Article 7 additions: one-machine hub + five profile cards --- */
.uni{border:1px solid var(--border-light);background:#fafafa;padding:18px}
.article-body .uni .u-hub{border:2px solid var(--text-primary);background:var(--state-freeze);padding:12px 14px;text-align:center;margin-bottom:12px}
.article-body .uni .u-hub .uh-name{font-size:12px;font-weight:700;color:var(--state-freeze-text);letter-spacing:0.4px}
.article-body .uni .u-hub .uh-sub{font-size:9px;color:var(--state-freeze-text);opacity:.7;margin-top:4px;line-height:1.55}
.article-body .uni .u-plug{text-align:center;font-size:14px;color:var(--text-muted);margin:2px 0 10px}
.article-body .uni .u-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.article-body .uni .prof{border:1px solid var(--border-medium);background:#fff;padding:9px 10px;border-top:3px solid var(--auth-issuer)}
.article-body .uni .prof .pr-name{font-size:10.5px;font-weight:700;color:var(--text-primary);line-height:1.3;margin-bottom:5px}
.article-body .uni .prof .pr-row{font-size:8.5px;color:var(--text-secondary);line-height:1.55;margin-bottom:3px}
.article-body .uni .prof .pr-row b{color:var(--text-primary)}
.article-body .uni .prof .pr-trig{margin-top:5px;padding-top:5px;border-top:1px dashed var(--border-light);font-size:8.5px;font-weight:600;color:var(--flow-override);line-height:1.5}
.article-body .uni .prof.k1{border-top-color:var(--auth-issuer)}
.article-body .uni .prof.k2{border-top-color:var(--auth-custodian)}
.article-body .uni .prof.k3{border-top-color:var(--flow-override)}
.article-body .uni .prof.k4{border-top-color:var(--plane-economic)}
.article-body .uni .prof.k5{border-top-color:var(--auth-admin)}

/* --- Article 8 additions: three-lane plane figure --- */
.lanes{border:1px solid var(--border-light);background:#fafafa;padding:16px}
.article-body .lanes .lane{display:grid;grid-template-columns:112px 1fr 180px;gap:12px;background:#fff;border:1px solid var(--border-medium);padding:12px 14px;margin-bottom:8px}
.article-body .lanes .lane.l1{border-left:3px solid var(--plane-compliance)}
.article-body .lanes .lane.l2{border-left:3px solid var(--plane-physical)}
.article-body .lanes .lane.l3{border-left:3px solid var(--plane-economic)}
.article-body .lanes .ln-tag{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding-top:2px}
.article-body .lanes .lane.l1 .ln-tag{color:var(--plane-compliance)}
.article-body .lanes .lane.l2 .ln-tag{color:var(--plane-physical)}
.article-body .lanes .lane.l3 .ln-tag{color:var(--plane-economic)}
.article-body .lanes .ln-body .ln-q{font-size:12px;font-weight:700;color:var(--text-primary);line-height:1.45;margin-bottom:4px}
.article-body .lanes .ln-body .ln-w{font-size:10px;color:var(--text-secondary);line-height:1.6}
.article-body .lanes .ln-body .ln-w b{color:var(--text-primary)}
.article-body .lanes .ln-fire{font-size:9.5px;font-weight:600;color:var(--flow-override);line-height:1.55;border-left:1px dashed var(--border-medium);padding-left:10px}
.article-body .lanes .lane.l1 .ln-fire{color:var(--text-muted)}
.article-body .lanes .ln-note{text-align:center;font-size:9.5px;color:var(--text-muted);margin-top:6px;line-height:1.5}

@media (max-width:720px){
  .article-body .container{padding:32px 18px 48px}
  .article-body .recon, .article-body .recon .copies, .article-body .recon .writers{grid-template-columns:1fr}
  .article-body .uni .u-grid{grid-template-columns:1fr}
  .article-body .lanes .lane{grid-template-columns:1fr;gap:6px}
  .article-body .lanes .ln-fire{border-left:none;padding-left:0;border-top:1px dashed var(--border-medium);padding-top:6px}
  .article-body h1.doc-title{font-size:25px}
  .article-body .compare, .article-body .planes, .article-body .collapse .symptoms, .article-body .sm .r4, .article-body .sm .r3, .article-body .sm .r2, .article-body .cast{grid-template-columns:1fr}
  .article-body .compare{display:block}.article-body .compare .col{margin-bottom:12px}
  .article-body .timeline .tl-row{grid-template-columns:1fr;gap:2px}}

/* ---- rethemed to the Decibel site tokens ------------------------------
   Neutral chrome follows the site. The semantic state / authority / flow /
   plane colours are deliberately untouched: they encode meaning. */
.article-body{
  --text-primary:#111114; --text-secondary:#43434C; --text-muted:#84848F;
  --border-light:#E4E1EF; --border-medium:#D3CFE4;
  --violet:#5B45E0; --wash:#F7F6FB;
  max-width:none; margin:0; padding:0; line-height:1.7;
}
.article-body .container{max-width:920px;margin:0 auto;
  padding:clamp(40px,5vw,72px) clamp(24px,5vw,72px) clamp(56px,7vw,96px)}
.article-body a{color:var(--violet)}
.article-body a:hover{text-decoration:underline;text-underline-offset:3px}

/* type scale lifted from print-density to screen-reading density */
.article-body p,.article-body li,.article-body td,.article-body th{font-size:17px;line-height:1.72}
.article-body h1.doc-title{font-size:clamp(31px,3.9vw,50px);letter-spacing:-.035em;
  line-height:1.08;margin-bottom:18px}
.article-body h2{font-size:clamp(23px,2.4vw,30px);letter-spacing:-.025em;margin:56px 0 18px;
  padding-bottom:14px}
.article-body h3{font-size:19px;letter-spacing:-.015em;margin:34px 0 10px}
.article-body .standfirst{font-size:19px;line-height:1.6;font-style:normal;color:var(--text-secondary);
  border-left:2px solid var(--border-light);padding-left:20px;margin-bottom:26px}
.article-body .eyebrow{font-size:12.5px;font-weight:700;letter-spacing:.16em;margin-bottom:22px}
.article-body .byline{border-radius:8px;background:var(--wash);border-color:transparent;
  font-size:12.5px;padding:7px 15px}

/* boxes pick up the site's radius */
.article-body .keypoints,.article-body .insight,.article-body figure,
.article-body .series-nav,.article-body .footnote,.article-body .compare,
.article-body .col,.article-body .pull-quote{border-radius:12px}
.article-body .keypoints{background:#F3F1FC;border-color:#DCD6F6;padding:24px 28px;margin-bottom:38px}
.article-body .keypoints .kp-label{color:var(--violet);font-size:11px;letter-spacing:.14em}
.article-body .keypoints li{font-size:16px}
.article-body .pull-quote{font-size:21px;line-height:1.4;letter-spacing:-.02em;
  color:var(--text-primary);font-weight:700}
.article-body .insight .in-label{color:var(--violet)}
.article-body .fig-label{font-size:11px;letter-spacing:.14em;color:var(--text-muted)}
.article-body .footnote{background:var(--wash);font-size:13.5px;line-height:1.65;
  color:var(--text-muted);padding:22px 26px;margin-top:40px}

/* series nav becomes navigable */
.article-body .series-nav{background:var(--wash);border:0;padding:26px 30px;margin-top:48px}
.article-body .series-nav .sn-label{font-size:11px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--text-muted);margin-bottom:16px}
.article-body .series-nav ol{margin:0 0 0 20px}
.article-body .series-nav li{font-size:15.5px;line-height:1.5;margin-bottom:10px;
  color:var(--text-secondary)}
.article-body .series-nav li::marker{color:var(--violet);font-weight:700}
.article-body .series-nav li.here{color:var(--text-primary);font-weight:700}
.article-body .series-nav li.here em{font-style:normal;color:var(--violet);font-weight:700}
.article-body .series-nav li.soon{color:var(--text-muted)}
.article-body .series-nav li.soon::after{content:" — in preparation";color:var(--text-muted);
  font-style:italic}
.article-body .series-nav a{color:inherit}
.article-body .series-nav a:hover{color:var(--violet);text-decoration:none}

.article-body figure{margin:34px 0}
.article-body figcaption{font-size:13.5px;line-height:1.6;color:var(--text-muted);
  margin-top:14px;max-width:none;display:block}
.article-body table{width:100%}

@media(max-width:640px){
  .article-body p,.article-body li{font-size:16px}
  .article-body .standfirst{font-size:17px}
}
