/* Global mobile safety layer for legacy articles and embedded media. */
*, *::before, *::after { box-sizing: border-box; }
html { max-width: 100%; overflow-x: hidden; }
body { max-width: 100%; min-width: 0; overflow-x: hidden; }
main, article, section, header, footer, .container, .narrow, .content,
.article-container, .article-body, .article-layout, .article-aside { min-width: 0; max-width: 100%; }
img, video, iframe, embed, object { max-width: 100%; height: auto; }
video { display: block; }
.table-wrap { display: block; width: 100%; max-width: 100%; overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; }
table { max-width: 100%; }
/* Tables without a wrapper remain readable without widening the document. */
main > table, article > table, .content > table { display: block; width: 100%; max-width: 100%; overflow-x: auto; }
pre, code { max-width: 100%; white-space: pre-wrap; overflow-wrap: anywhere; }
p, li, h1, h2, h3, h4, a, td, th, summary { overflow-wrap: anywhere; }
input, select, textarea, button { max-width: 100%; }
@media (max-width: 600px) {
  .container, .narrow, .article-container { width: calc(100% - 28px); margin-inline: auto; }
  .article-body, .content { width: 100%; }
  .article-layout { display: block; }
  .section-head { max-width: 100%; }
  .section-head > a, .actions > a { max-width: 100%; }
  .video-card { width: 100%; }
}
