.news-related h2{margin-top:.8rem;font-size:clamp(2rem,3.2vw,3.25rem);font-weight:850;letter-spacing:-.045em}
.news-related>div>div{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem}
.news-related a{display:flex;align-items:center;min-height:8rem;padding:1.35rem;border-radius:1rem;background:#fff;font-size:.85rem;font-weight:800;transition:transform .3s ease}
.news-related a:hover{transform:translateY(-4px)}
@media(max-width:767px){.news-related>div>div{grid-template-columns:1fr}.news-related a{min-height:5rem}}

/* Responsive article grid: keep both columns inside the viewport at every zoom level. */
.news-article-page{overflow-x:clip}
.news-article-layout{width:100%;max-width:1200px;padding-left:3rem;padding-right:3rem;grid-template-columns:minmax(180px,240px) minmax(0,800px);gap:clamp(2.5rem,5vw,5rem);justify-content:center}
.news-article-aside,.news-article-body{min-width:0;max-width:100%}
.news-article-body{width:100%}
.news-article-aside p,.news-article-aside a,.news-article-body h2,.news-article-body h3,.news-article-body p,.news-article-body li{overflow-wrap:anywhere}
.news-article-body h2{text-wrap:pretty}
@media(max-width:1099px){
  .news-article-layout{grid-template-columns:minmax(0,800px);gap:3rem;justify-content:center;padding:4.5rem clamp(3.25rem,6vw,4.5rem)}
  .news-article-aside{position:relative;top:auto;width:100%;padding:1.5rem;border-radius:1rem;background:var(--mist)}
  .news-article-aside p{max-width:42rem}
  .news-article-body h2{font-size:clamp(2rem,6vw,3.05rem);line-height:1.04}
}
@media(max-width:767px){
  .news-article-layout{gap:2.5rem;padding-top:3.5rem;padding-bottom:3.5rem}
  .news-article-body .article-intro{font-size:1.18rem;line-height:1.58}
  .news-article-body h2{margin-top:3.2rem;font-size:clamp(1.85rem,9vw,2.55rem)}
}
@media(max-width:520px){
  .news-article-layout{padding-left:1.35rem;padding-right:1.35rem}
  .news-article-aside{padding:1.25rem}
}
