/* Limit the font override to banner body copy, including theme-styled links. */
.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-message p,
.cmplz-cookiebanner .cmplz-message span,
.cmplz-cookiebanner .cmplz-message a,
.cmplz-cookiebanner .cmplz-categories .cmplz-description,
.cmplz-cookiebanner .cmplz-categories .cmplz-description p,
.cmplz-cookiebanner .cmplz-categories .cmplz-description span,
.cmplz-cookiebanner .cmplz-categories .cmplz-description a {
  font-size: 14px !important;
  line-height: 1.5 !important;
}

/* The theme only spaces direct paragraphs/headings; the shortcode outputs a div. */
#main > #cmplz-document {
  box-sizing: border-box;
  width: auto;
  max-width: 900px;
  margin: 32px 24px;
  overflow-wrap: anywhere;
}
@media (min-width: 768px) {
  #main > #cmplz-document {
    width: calc(100% - 96px);
    margin: 48px auto;
  }
}

/* Unify Complianz document copy with the theme; never affect the banner. */
#main #cmplz-document {
  font-family: ABCWhyte, Arial, sans-serif;
  font-size: 18px;
  line-height: 1.6;
  color: #0a2e39;
}
#main #cmplz-document :where(p, li, td, th, dt, dd, label, summary) {
  font-family: inherit;
  font-size: 1em;
  line-height: inherit;
}
#main #cmplz-document :where(a, span, em, strong, b, i) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
#main #cmplz-document p { margin: 0 0 1em; padding: 0; }
#main #cmplz-document a:not(.cmplz-btn) {
  padding: 0;
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}
#main #cmplz-document :where(strong, b) { font-weight: 700; }
#main #cmplz-document h2 {
  margin: 1.5em 0 .6em;
  padding: 0;
  font: 400 30px/1.25 VictorSerif, Georgia, serif;
  color: #0a2e39;
}
#main #cmplz-document h3 {
  margin: 1.3em 0 .6em;
  padding: 0;
  font: 400 24px/1.3 VictorSerif, Georgia, serif;
  color: #0a2e39;
}
@media (max-width: 767px) {
  #main #cmplz-document { font-size: 16px; }
  #main #cmplz-document h2 { font-size: 26px; }
  #main #cmplz-document h3 { font-size: 22px; }
}
