/* V30 Final Article Reading Width + Arsha-inspired publication polish
   Scope: article pages only. Keeps current website colours/design; improves reading width and prevents tiny/nested columns. */
body.article-page{background:#f8fafc!important;}
body.article-page .breadcrumb,
body.article-page .article-hero .container,
body.article-page .article-hero-inner{
  width:min(96vw,1680px)!important;
  max-width:min(96vw,1680px)!important;
}
body.article-page .article-hero h1{max-width:1320px!important;}
body.article-page .hero-lead,
body.article-page .article-intro{max-width:1220px!important;}
body.article-page .article-shell{
  width:min(98vw,1680px)!important;
  max-width:min(98vw,1680px)!important;
  margin:0 auto 88px!important;
  padding:0 18px!important;
  display:grid!important;
  grid-template-columns:250px minmax(0,1fr)!important;
  gap:26px!important;
  align-items:start!important;
}
body.article-page .article-toc,
body.article-page .article-map{
  position:sticky!important;
  top:88px!important;
  align-self:start!important;
  background:#fff!important;
  border:1px solid #e1e8f0!important;
  border-radius:22px!important;
  padding:18px!important;
  box-shadow:0 18px 50px rgba(8,33,58,.07)!important;
  max-height:calc(100vh - 118px)!important;
  overflow:auto!important;
}
body.article-page .article-content,
body.article-page .article-content-wide,
body.article-page .guide-quality-content,
body.article-page .article-body,
body.article-page .qm-content{
  max-width:none!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.article-page .article-content,
body.article-page .article-content-wide,
body.article-page .guide-quality-content{
  background:#fff!important;
  border:1px solid #e1e8f0!important;
  border-radius:30px!important;
  padding:clamp(34px,3.5vw,64px)!important;
  box-shadow:0 24px 74px rgba(8,33,58,.08)!important;
  font-size:18px!important;
  line-height:1.82!important;
}
body.article-page .article-content > *,
body.article-page .article-content-wide > *,
body.article-page .article-body > *,
body.article-page .qm-content > *,
body.article-page .guide-quality-content > *{
  max-width:none!important;
}
body.article-page .article-content p,
body.article-page .article-content li,
body.article-page .guide-quality-content p,
body.article-page .guide-quality-content li,
body.article-page .article-body p,
body.article-page .article-body li{
  font-size:18px!important;
  line-height:1.88!important;
  color:#20384f!important;
}
body.article-page .article-content h2,
body.article-page .guide-quality-content h2,
body.article-page .article-body h2{
  font-size:clamp(2rem,3vw,3rem)!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
  margin:60px 0 20px!important;
  color:#102f56!important;
}
body.article-page .article-content h2:first-child,
body.article-page .guide-quality-content h2:first-child{margin-top:0!important;}
body.article-page .article-content h3,
body.article-page .guide-quality-content h3,
body.article-page .article-body h3{
  font-size:clamp(1.35rem,1.8vw,1.85rem)!important;
  color:#12375e!important;
  margin-top:34px!important;
}
body.article-page .article-content pre,
body.article-page .guide-quality-content pre,
body.article-page .article-body pre{
  white-space:pre-wrap!important;
  word-break:break-word!important;
  overflow:auto!important;
  border-radius:22px!important;
  padding:22px!important;
  background:#071527!important;
  color:#eaf3ff!important;
  border:1px solid rgba(255,255,255,.1)!important;
}
body.article-page .article-visual,
body.article-page .artifact-card,
body.article-page .figure-card,
body.article-page .v13-callout,
body.article-page .callout,
body.article-page .key-takeaway,
body.article-page .v14-callout,
body.article-page .editorial-note,
body.article-page .lesson{
  max-width:none!important;
  width:100%!important;
  box-sizing:border-box!important;
}
body.article-page .v13-callout,
body.article-page .callout,
body.article-page .key-takeaway,
body.article-page .v14-callout,
body.article-page .editorial-note,
body.article-page .lesson{
  border-radius:22px!important;
  padding:22px 24px!important;
  margin:30px 0!important;
}
body.article-page .article-links,
body.article-page .v14-related{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  margin-top:38px!important;
}
body.article-page .v14-related{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
body.article-page .article-links a,
body.article-page .v14-related a{
  border-radius:20px!important;
  padding:18px!important;
  background:#f7f9fc!important;
  border:1px solid #e1e8f0!important;
}
body.article-page .v14-article-cta{margin-top:40px!important;border-radius:28px!important;}
@media(max-width:1180px){
  body.article-page .article-shell{
    grid-template-columns:1fr!important;
    width:min(96vw,1060px)!important;
    max-width:min(96vw,1060px)!important;
  }
  body.article-page .article-toc,
  body.article-page .article-map{position:relative!important;top:auto!important;max-height:none!important;}
}
@media(max-width:720px){
  body.article-page .article-shell{padding:0 12px!important;width:100%!important;max-width:100%!important;}
  body.article-page .article-content,
  body.article-page .article-content-wide,
  body.article-page .guide-quality-content{padding:24px 18px!important;border-radius:24px!important;}
  body.article-page .article-content p,
  body.article-page .article-content li,
  body.article-page .guide-quality-content p,
  body.article-page .guide-quality-content li{font-size:16.5px!important;line-height:1.82!important;}
  body.article-page .article-links,
  body.article-page .v14-related{grid-template-columns:1fr!important;}
}

/* V41 article ending cleanup: modern CTA and related-card layout */
body.article-page .v14-article-cta{
  margin:48px 0 28px!important;
  padding:0!important;
  background:#fff!important;
  color:#071527!important;
  border:1px solid #dfe7f0!important;
  border-radius:28px!important;
  box-shadow:0 20px 52px rgba(7,21,39,.08)!important;
  overflow:hidden!important;
}
body.article-page .v14-article-cta h2{
  margin:0!important;
  padding:26px 28px 8px!important;
  color:#071527!important;
  font-size:clamp(1.45rem,2.2vw,2rem)!important;
  line-height:1.12!important;
}
body.article-page .v14-article-cta p{
  margin:0!important;
  padding:0 28px 22px!important;
  color:#52616b!important;
  max-width:880px!important;
}
body.article-page .v14-article-cta a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 0 26px 28px!important;
  min-height:44px!important;
  padding:10px 16px!important;
  border-radius:999px!important;
  border:1px solid #d8e1eb!important;
  background:#071527!important;
  color:#fff!important;
  text-decoration:none!important;
  font-weight:900!important;
}
body.article-page .v14-article-cta a + a{
  margin-left:8px!important;
  background:#fff!important;
  color:#071527!important;
}
body.article-page .related-insights{
  display:block!important;
  margin:42px 0 0!important;
  padding:28px!important;
  background:#f8fafc!important;
  border:1px solid #dfe7f0!important;
  border-radius:28px!important;
  box-shadow:0 16px 42px rgba(7,21,39,.06)!important;
}
body.article-page .related-insights-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}
body.article-page .related-insight-card{
  display:grid!important;
  gap:8px!important;
  background:#fff!important;
  border:1px solid #dfe7f0!important;
  border-radius:20px!important;
  padding:18px!important;
  color:#071527!important;
  text-decoration:none!important;
  box-shadow:0 10px 24px rgba(7,21,39,.05)!important;
}
body.article-page .related-insights-kicker,
body.article-page .related-insight-topic,
body.article-page .article-resource-label{
  color:#8a6a10!important;
  font-weight:950!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
  font-size:.72rem!important;
}
body.article-page .related-insight-description{
  color:#52616b!important;
  font-size:.92rem!important;
  line-height:1.55!important;
}
body.article-page .article-resource-links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  align-items:center!important;
  margin-top:18px!important;
  padding-top:18px!important;
  border-top:1px solid #dfe7f0!important;
}
body.article-page .article-resource-links a{
  border:1px solid #d8e1eb!important;
  border-radius:999px!important;
  padding:9px 13px!important;
  background:#fff!important;
  color:#071527!important;
  text-decoration:none!important;
}
@media(max-width:760px){
  body.article-page .related-insights-grid{grid-template-columns:1fr!important}
  body.article-page .v14-article-cta a{
    display:flex!important;
    margin:0 18px 10px!important;
  }
  body.article-page .v14-article-cta a:last-child{margin-bottom:22px!important}
}
