/* Stage 2.1: readable text and diagrams at all viewport widths. */
html body p,html body li,html body td,html body th,html body dt,html body dd,html body figcaption,html body label{font-size:16px!important;line-height:1.7!important}
html body p span,html body p strong,html body p b,html body p a,html body p em{font-size:inherit}
.ns-diagram21,.ns-check-figure,.ns-case21,.ns-sources21{padding:24px;background:#fafaf7;border:1px solid #ddd;margin:24px 0;max-width:100%;color:#17211b;text-align:left}
.ns-diagram21 h3,.ns-check-figure h3{font-size:19px;line-height:1.6;margin:0 0 12px}
.ns-diagram21 ol,.ns-check-figure ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px 32px;padding-left:24px;margin:0}
.ns-diagram21 li{padding:8px;overflow-wrap:anywhere}
figure:has(>.ns-diagram21){display:block!important;width:auto!important;max-width:100%!important}
.ns-author21{display:flex;align-items:center;gap:20px;margin:24px 0;padding:20px;border:1px solid #ddd;max-width:100%;background:#fff;color:#17211b}
.ns-author21 img{width:96px;height:96px;object-fit:cover;flex:0 0 96px}
.ns-author21 h2{font-size:20px;line-height:1.5;margin:0 0 8px}
.ns-author21 p{margin:0}
.ns-audience21{margin:16px 0;max-width:65ch}
.ns-sources21 a,.ns-case21 a,.ns-author21 a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.ns-diagram21,.ns-check-figure,.ns-case21,.ns-sources21{padding:18px}.ns-author21{align-items:flex-start;gap:14px;padding:16px}.ns-author21 img{width:72px;height:72px;flex-basis:72px}.ns-author21 h2{font-size:18px}}

html body table.ns-comparison21{min-width:0;width:100%;table-layout:fixed}html body table.ns-comparison21 th:first-child{width:24%}html body table.ns-comparison21 td,html body table.ns-comparison21 th{white-space:normal;overflow-wrap:anywhere;padding:12px}html body table.ns-comparison21 caption{font-size:16px;line-height:1.7;padding:12px;text-align:left}

/* Native list markers stay readable instead of inheriting small icon counters. */
html body .ns-diagram21 ol,html body .ns-check-figure ol{list-style:decimal!important}
html body .ns-diagram21 li,html body .ns-check-figure li{display:list-item!important;position:static!important;padding:4px 0;margin:0 0 12px}
html body .ns-diagram21 li::before,html body .ns-check-figure li::before{content:none!important}
html body .ns-diagram21 li::marker,html body .ns-check-figure li::marker{font-size:16px;color:#455d00}

/* Founder portrait and biography occupy the original two columns. */
@media(min-width:900px){.founder-wrap>.ns-author21{display:block;align-self:start}.founder-wrap>.ns-author21 img{width:140px;height:140px;margin:0 0 20px}}
