/* Editorial details use the site's existing type, spacing and colour tokens. */
.blog-title { max-width: 1000px; margin-inline: auto; }
.blog-meta { display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem 1.5rem; margin-top: var(--space-xl); color: var(--gray-500); font-size: .875rem; }
.blog-meta > span:first-child { color: var(--primary-light); font-weight: 600; }
.blog-article { padding: var(--space-3xl) 0; }
.blog-article-inner { max-width: 800px; margin-inline: auto; }
.blog-list { padding: var(--space-3xl) 0 var(--space-4xl); }
.blog-content .blog-citation { color: var(--primary-light); text-decoration: underline; text-underline-offset: 3px; font-size: .9em; }
.blog-sources { border-top: 1px solid var(--gray-200); margin-top: var(--space-2xl); padding-top: var(--space-xl); }
.blog-content .blog-sources h2 { font-size: 1.25rem; margin-top: 0; }
.blog-sources a { color: var(--primary-light); overflow-wrap: anywhere; text-decoration: underline; text-underline-offset: 3px; }
.blog-product-cta { background: var(--gray-50); border-radius: 16px; padding: var(--space-xl); margin-top: var(--space-2xl); }
.blog-content .blog-product-cta h2 { margin-top: 0; font-size: 1.5rem; }
.blog-product-cta .btn { max-width: 100%; white-space: normal; text-align: center; }
.blog-byline { margin-top: var(--space-2xl); padding-top: var(--space-xl); border-top: 1px solid var(--gray-200); color: var(--gray-700); font-weight: 600; }
@media (max-width: 767px) {
  .blog-meta { gap: .5rem 1rem; }
  .blog-title { overflow-wrap: break-word; }
  .blog-content h2 { font-size: 1.45rem; }
  .blog-product-cta { padding: var(--space-lg); }
}
