/* The legacy detail selectors remain the layout contract for managed content.
   This file supplies the structural styles formerly provided by page-builder
   markup, and styles editor-created blocks without relying on per-post IDs. */
body.managed-detail { margin: 0; font-family: Aptos, sans-serif; color: #3a3b40; }
body.managed-detail a { color: inherit; }
body.managed-detail #hero_post > h1 { max-width: 110rem; margin: 0 auto; text-align: center; text-wrap: balance; }
body.managed-detail #content_post .managed-body { width: 100%; min-width: 0; }
body.managed-detail #content_post .legacy-content > div { display: contents; }
body.managed-detail #content_post h2:not(.wp-block-heading),
body.managed-detail #content_post h3:not(.wp-block-heading) { color: #3a3b40; font-weight: 600; padding-bottom: 2.6rem; }
body.managed-detail #content_post h2:not(.wp-block-heading) { font-size: 3.2rem; line-height: 4.2rem; }
body.managed-detail #content_post h3:not(.wp-block-heading) { font-size: 2.4rem; line-height: 3.4rem; }
body.managed-detail #content_post p,
body.managed-detail #content_post li { font-family: Aptos, sans-serif; }
body.managed-detail #content_post ul:not(.managed-tags) { padding: 0 0 3.2rem 2rem; }
body.managed-detail #content_post li { font-size: 1.9rem; line-height: 2.8rem; }
body.managed-detail #content_post img { max-width: 100%; height: auto; border-radius: 2.1rem; }
body.managed-detail #content_post a:not(.article-cta a) { color: #d72c2e; }
body.managed-detail #content_post .article-callout,
body.managed-detail #content_post .article-takeaways,
body.managed-detail #content_post .article-transcript,
body.managed-detail #content_post .article-accordion { padding: 2.4rem; margin: 1rem 0 3rem; border: 1px solid #dcdce8; border-radius: 2.4rem; background: #f4f4f5; }
body.managed-detail #content_post .article-takeaways li { margin: .7rem 0; }
body.managed-detail #content_post .article-accordion summary { cursor: pointer; font-size: 2rem; font-weight: 600; }
body.managed-detail #content_post .article-embed { aspect-ratio: 16/9; margin-bottom: 3rem; border-radius: 2.1rem; background: #f4f4f5; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1.5rem; overflow: hidden; }
body.managed-detail #content_post .article-embed__load { padding: 1.2rem 2rem; border: 0; border-radius: 4rem; background: #d72c2e; color: #fff; font: 600 1.8rem/2.4rem Aptos, sans-serif; cursor: pointer; }
body.managed-detail #content_post .article-embed a { font-size: 1.6rem; }
body.managed-detail #content_post .article-embed iframe { width: 100%; height: 100%; border: 0; }
body.managed-detail #content_post .article-cta a { display: inline-flex; gap: 1rem; align-items: center; padding: 1.2rem 2rem; border-radius: 4rem; background: #d72c2e; color: white; font-size: 1.8rem; text-decoration: none; }
body.managed-detail #content_post .article-author { display: flex; align-items: center; gap: 2rem; margin-top: 3rem; padding-top: 2rem; border-top: 1px solid #dcdce8; }
body.managed-detail #content_post .article-author img { width: 7rem; height: 7rem; border-radius: 50%; object-fit: cover; }
body.managed-detail #content_post .article-author p { padding: 0; }
body.managed-detail #content_post .managed-tags { display: flex; flex-wrap: wrap; gap: .8rem; list-style: none; padding: 0; }
body.managed-detail #content_post .managed-tags li { border-radius: 3rem; background: #f4f4f5; padding: .4rem 1rem; font-size: 1.4rem; }
body.managed-detail #content_post.case_studies-content .content_post-container { align-items: start; grid-template-columns: minmax(0, 1fr); }
body.managed-detail #content_post.case_studies-content .case_studies-info p { padding: 0; margin: 0; }
body.managed-detail #content_post.case_studies-content .case_studies-info .case_studies-logo { display: block; width: auto; max-width: 100%; max-height: 8rem; height: auto; object-fit: contain; border-radius: 0; margin-bottom: .4rem; }
body.managed-detail #content_post.case_studies-content .managed-body { min-width: 0; }
body.managed-detail #content_post.case_studies-content .managed-body:only-child { grid-column: 1 / -1; }
@media (min-width: 1024px) {
  body.managed-detail #content_post.case_studies-content .content_post-container { grid-template-columns: 24rem minmax(0, 1fr); column-gap: 3rem; }
  body.managed-detail #content_post.case_studies-content .case_studies-info { max-width: 24rem; padding: 2.4rem; }
}
@media (min-width: 768px) {
  /* Imported body wrappers must not repeat the outer details/body grid. */
  body.managed-detail #content_post.case_studies-content .managed-body .content_post-container {
    grid-template-columns: minmax(0, 1fr);
  }
}
body.managed-detail #relate_articles .relate_articles-bottom ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; padding: 0; }
body.managed-detail #relate_articles .relate_articles-bottom li { width: 100%; min-width: 0; }
body.managed-detail #relate_articles .relate_articles-top a svg,
body.managed-detail #relate_articles .blog_button svg { width: 1.5rem; height: 1.5rem; flex: none; }
body.managed-detail #relate_articles .relate_articles-top a svg { color: #fff; }
body.managed-detail #relate_articles .blog_button svg { color: #d72c2e; }
body.managed-detail #relate_articles .relate_articles-bottom .blog_img img { display: block; }
body.managed-detail #footer { background: #fff; border-top: 1px solid #dcdce8; padding: 5rem max(2.8rem, calc((100% - 119.6rem) / 2)); color: #3a3b40; }
body.managed-detail #footer .managed-footer { display: flex; justify-content: space-between; gap: 3rem; align-items: center; }
body.managed-detail #footer img { width: 14rem; }
body.managed-detail #footer nav { display: flex; flex-wrap: wrap; gap: 2rem; }
body.managed-detail #footer a { color: #3a3b40; font-size: 1.5rem; }
@media (max-width: 767px) {
  body.managed-detail #hero_post > h1 { text-align: left; }
  body.managed-detail #relate_articles .relate_articles-bottom ul { grid-template-columns: 1fr; }
  body.managed-detail #footer .managed-footer { flex-direction: column; align-items: start; }
}