/* Reading rhythm for T18 article details; keep CMS content and other templates intact. */
.article_section.layout_padding {
  padding: 64px 0;
}

.article_section > article > h1 {
  margin: 0 0 24px;
  font-size: clamp(28px, 2.8vw, 40px);
  line-height: 1.3;
  overflow-wrap: break-word;
}

.article_section .article_brief {
  margin: 0 0 24px;
  font-size: 17px;
  line-height: 1.75;
}

.article_section .article-img {
  margin: 24px 0 32px;
}

.article_section .article_content {
  margin: 32px 0;
  font-size: 16px;
  line-height: 1.8;
  overflow-wrap: break-word;
}

.article_section [data-outline-body] p {
  margin: 0 0 18px;
}

.article_section [data-outline-body] h2,
.article_section [data-outline-body] h3,
.article_section [data-outline-body] h4,
.article_section [data-outline-body] h5,
.article_section [data-outline-body] h6 {
  font-weight: 600;
  line-height: 1.4;
}

.article_section [data-outline-body] h2 {
  margin: 40px 0 16px;
  font-size: 28px;
}

.article_section [data-outline-body] h3 {
  margin: 28px 0 12px;
  font-size: 23px;
}

.article_section [data-outline-body] h4,
.article_section [data-outline-body] h5,
.article_section [data-outline-body] h6 {
  margin: 24px 0 10px;
  font-size: 20px;
}

.article_section [data-outline-body] h2 + h3 {
  margin-top: 20px;
}

.article_section [data-outline-body] ul,
.article_section [data-outline-body] ol {
  margin: 0 0 20px;
  padding-left: 1.5em;
}

.article_section [data-outline-body] li + li {
  margin-top: 8px;
}

.article_section [data-outline-body] li > p:last-child {
  margin-bottom: 0;
}

.article_section [data-outline-body] li > ul,
.article_section [data-outline-body] li > ol {
  margin: 8px 0;
}

.article_section [data-outline-body] blockquote,
.article_section [data-outline-body] figure {
  margin: 28px 0;
}

.article_section [data-outline-body] p:has(> img),
.article_section [data-outline-body] p:has(> a > img),
.article_section [data-outline-body] p:has(> picture) {
  margin: 28px 0 12px;
}

.article_section [data-outline-body] img {
  margin-top: 0;
}

.article_section [data-outline-body] .article-image-caption {
  margin-top: 8px;
  margin-bottom: 28px;
  font-size: 14px;
  line-height: 1.6;
}

.article_section [data-outline-body] > :first-child {
  margin-top: 0;
}

.article_section [data-outline-body] > :last-child {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .article_section.layout_padding {
    padding: 36px 0;
  }

  .article_section > article > h1 {
    margin-bottom: 20px;
  }

  .article_section .article_brief {
    font-size: 16px;
  }

  .article_section .article_content {
    margin: 24px 0;
    line-height: 1.75;
    text-align: left;
  }

  .article_section [data-outline-body] h2 {
    margin-top: 32px;
    margin-bottom: 14px;
    font-size: 24px;
  }

  .article_section [data-outline-body] h3 {
    margin-top: 24px;
    font-size: 21px;
  }

  .article_section [data-outline-body] h4,
  .article_section [data-outline-body] h5,
  .article_section [data-outline-body] h6 {
    font-size: 18px;
  }
}
