/* Legacy CMS HTML inside public pages (/info, /pages/*) */

.public-cms-html,
.cms-page-body {
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.55;
  color: #444;
}

.public-cms-html img,
.cms-page-body img {
  max-width: 100%;
  height: auto;
}

.public-cms-html h3,
.public-cms-html h4,
.cms-page-body h3,
.cms-page-body h4 {
  margin-top: 1.25rem;
  margin-bottom: 0.75rem;
  color: #2f3570;
}

.public-cms-html p,
.cms-page-body p {
  margin-bottom: 0.85rem;
}

.public-cms-html ul,
.public-cms-html ol,
.cms-page-body ul,
.cms-page-body ol {
  margin-bottom: 1rem;
  padding-left: 1.25rem;
}

.public-cms-html li,
.cms-page-body li {
  margin-bottom: 0.35rem;
}

.public-cms-html table,
.cms-page-body table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 1rem;
  border-collapse: collapse;
}

.public-cms-html td,
.public-cms-html th,
.cms-page-body td,
.cms-page-body th {
  padding: 0.35rem 0.5rem;
  vertical-align: top;
}

.public-cms-html a,
.cms-page-body a {
  color: #5563ae;
}

.public-cms-html a:hover,
.cms-page-body a:hover {
  color: #3a499c;
}

.info-doc-section-title {
  color: #2f3570;
}

/* FAQ diagram blocks (legacy #info_content .img) */
.public-cms-html.faq .img,
.public-cms-html .faq .img {
  margin-top: 1.25rem;
  clear: both;
}

.public-cms-html.faq .img img,
.public-cms-html .faq .img img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0;
}

.public-cms-html.faq .img p,
.public-cms-html .faq .img p {
  text-align: center;
  margin-top: 0.5rem;
  margin-bottom: 0;
}

.public-cms-html .partners img,
.public-cms-html img[src*="partners/"] {
  display: inline-block;
  max-width: 100%;
  height: auto;
  margin: 0.35rem 0.75rem 0.35rem 0;
}

@media (max-width: 768px) {
  .public-cms-html .partners img,
  .public-cms-html img[src*="partners/"] {
    display: block;
    margin: 0.5rem auto;
  }
}
