.article-nav { display: flex; align-items: center; gap: 1.5rem; font-size: .875rem; }
.article-nav > a:first-child { padding-block: .8rem; }
.article-container { width: min(760px, calc(100% - 3rem)); margin-inline: auto; padding: 2rem 0 4rem; }
.article-breadcrumbs { display: flex; gap: .7rem; font-size: .8125rem; color: var(--muted); margin-bottom: 2rem; }
.article-breadcrumbs a { padding-block: .4rem; }
.article-meta, .article-eyebrow { color: var(--muted); font-size: .8125rem; margin-bottom: 1.2rem; }
.article-heading h1, .blog-index h1 { font-size: clamp(2rem, 4.3vw, 3.25rem); line-height: 1.22; letter-spacing: -.045em; overflow-wrap: break-word; }
.article-lead { font-size: 1.125rem; color: #c3cbda; line-height: 1.8; margin-top: 1.5rem; max-width: 46rem; }
.article-contents { margin: 2.5rem 0 3.5rem; padding: 1.2rem 1.5rem; border-left: 2px solid var(--gold); background: var(--surface); border-radius: 0 12px 12px 0; }
.article-contents ul { list-style: none; padding: 0; margin: 0; }
.article-contents a { display: block; padding-block: .4rem; font-size: .9375rem; }
.article-body { font-size: 1.0625rem; line-height: 1.9; }
.article-body section + section { margin-top: 3.25rem; }
.article-body h2, .article-cta h2, .article-related > h2 { font-size: clamp(1.4rem, 3vw, 1.8rem); line-height: 1.4; letter-spacing: -.025em; }
.article-body p { margin-top: 1.25rem; }
.article-body a, .article-editorial a { color: var(--gold); text-decoration: underline; text-underline-offset: 4px; }
.article-body ol { padding-left: 1.4rem; margin-block: 1.25rem; }
.article-body li + li { margin-top: .85rem; }
.article-wheel { width: min(100%, 480px); margin: 1.75rem auto 0; }
.article-table { max-width: 100%; overflow-x: auto; margin-block: 1.75rem; border: 1px solid var(--line); border-radius: 12px; }
.article-table table { width: 100%; border-collapse: collapse; text-align: left; font-size: .875rem; line-height: 1.6; }
.article-table caption { padding: 1rem; text-align: left; color: var(--muted); font-size: .8125rem; }
.article-table th, .article-table td { padding: .8rem 1rem; vertical-align: top; border-top: 1px solid var(--line); min-width: 7rem; }
.article-table th { font-weight: 500; }
.article-table thead { background: var(--surface); color: var(--gold); }
.article-cta { background: var(--surface); border: 1px solid var(--line); border-radius: 18px; padding: 1.75rem; margin-top: 3.5rem; }
.article-cta p { margin: 1rem 0 1.5rem; color: var(--muted); }
.article-cta .button { white-space: normal; }
.article-editorial { margin-top: 1.5rem; font-size: .8125rem; color: var(--muted); }
.article-editorial p + a { display: inline-block; padding-block: 1rem .5rem; }
.article-related { margin-top: 3rem; }
.article-list { list-style: none; padding: 0; margin: 1.5rem 0 0; }
.article-list li { border-top: 1px solid var(--line); }
.article-list a { display: block; padding-block: 1.5rem; }
.article-list h2, .article-list h3 { font-size: 1.2rem; line-height: 1.5; color: var(--text); }
.article-list p { margin-top: .6rem; color: var(--muted); font-size: .9375rem; line-height: 1.7; max-width: 48rem; }
.article-list a:hover h2, .article-list a:hover h3, .article-contents a:hover { color: var(--gold); }
.blog-index { padding-block: 3rem 6rem; max-width: 900px; }
.featured-articles { padding-block: 3rem; border-top: 1px solid var(--line); }
.articles-section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1.5rem; }
.articles-section-heading h2 { font-size: clamp(1.5rem, 3vw, 2.25rem); line-height: 1.35; letter-spacing: -.03em; }
.articles-section-heading > a { color: var(--gold); white-space: nowrap; padding-block: .75rem; }
@media (max-width: 560px) {
  .articles-page .header-inner { gap: 1rem; min-height: 84px; }
  .articles-page .brand { font-size: 1.35rem; gap: .5rem; }
  .article-nav { gap: .75rem; font-size: .75rem; }
  .article-nav .header-cta { padding-inline: .8rem; font-size: .6875rem; }
  .article-container { width: calc(100% - 2.5rem); padding-top: 1rem; }
  .article-lead { font-size: 1rem; }
  .article-body { font-size: 1rem; line-height: 1.85; }
  .article-contents { padding-inline: 1rem; margin-block: 2rem 2.75rem; }
  .article-cta { padding: 1.25rem; }
  .article-table th, .article-table td { padding: .7rem .75rem; }
  .articles-section-heading { display: block; }
}
