/* Markdown articles must not depend on Elementor's widget styling. */
body.focus-markdown-article .with-side-wrap > .main { min-width: 0; }
body.focus-markdown-article .blog-content {
  box-sizing: border-box;
  padding: clamp(16px, 3vw, 32px);
  font-size: 16px;
  line-height: 1.9;
  overflow-wrap: anywhere;
}
body.focus-markdown-article .blog-content *,
body.focus-markdown-article .blog-content *::before,
body.focus-markdown-article .blog-content *::after { box-sizing: border-box; }
body.focus-markdown-article .blog-content img,
body.focus-markdown-article .blog-content video {
  max-width: 100%; height: auto;
}
body.focus-markdown-article .blog-content figure { max-width: 100%; margin: 1.5em 0; }
body.focus-markdown-article .blog-content p { margin: 0 0 1.4em; }
body.focus-markdown-article .blog-content h2 {
  font-size: clamp(21px, 2.2vw, 26px); line-height: 1.5;
  margin: 2em 0 1em; padding: .65em .8em;
  border-left: 4px solid #aa9b7f; background: #f5f3ef;
}
body.focus-markdown-article .blog-content h3 {
  font-size: 20px; line-height: 1.6; margin: 1.8em 0 .8em;
  padding-bottom: .4em; border-bottom: 1px solid #ded8cc;
}
body.focus-markdown-article .blog-content :is(h4,h5,h6) { line-height: 1.6; margin: 1.5em 0 .7em; }
body.focus-markdown-article .blog-content :is(h2,h3,h4,h5,h6) { scroll-margin-top: 120px; }
body.focus-markdown-article .blog-content > :first-child { margin-top: 0; }
body.focus-markdown-article .blog-content :is(ul,ol):not(.toc_list) { padding-left: 1.5em; margin: 1em 0; }
body.focus-markdown-article .blog-content li { margin: .45em 0; }
body.focus-markdown-article .blog-content li > :is(ul,ol) { margin: .4em 0 1em; }
body.focus-markdown-article .blog-content blockquote { margin: 1.5em 0; padding: 1em; border-left: 4px solid #aa9b7f; background: #f5f3ef; }
body.focus-markdown-article .blog-content pre { max-width: 100%; overflow-x: auto; padding: 1em; background: #f5f3ef; }
body.focus-markdown-article .blog-content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
body.focus-markdown-article .blog-content :is(th,td) { border: 1px solid #ded8cc; padding: .6em; }
body.focus-markdown-article .blog-content iframe { max-width: 100%; }
body.focus-markdown-article .blog-content #toc_container { max-width: 100%; width: 100%; }
