.fed-article { min-width: 0; }
.fed-article .article-hero-image { margin: 0 0 2.5rem; }
.fed-article .article-hero-image img { display: block; width: 100%; height: auto; border: 1px solid var(--line); }
.fed-article section { scroll-margin-top: 105px; }
.fed-article section + section { border-top: 1px solid var(--line); margin-top: 2.5rem; }
.fed-article h2 { line-height: 1.16; overflow-wrap: anywhere; }
.fed-article h3 { line-height: 1.22; margin: 1.8rem 0 .55rem; }
.fed-article p { line-height: 1.75; margin: 0 0 1.15rem; overflow-wrap: break-word; }
.fed-article section h2 + p { margin-top: 0; }
.fed-article .conclusion { border-top: 0; margin-top: 3rem; }
.fed-article .conclusion h2 { margin-top: 0; }
.fed-article .conclusion p { color: #d2dfeb; }
.fed-article .article-sources { padding-left: 1.2rem; overflow-wrap: anywhere; }
.fed-article .article-sources li { margin: .55rem 0; }
.fed-article .article-sources a { color: var(--teal); text-decoration: underline; text-underline-offset: .16em; }
.fed-article .article-signoff { font-weight: 700; color: var(--navy); }
.fed-article > p:last-child { padding-top: 2rem; }
.fed-article + .toc { min-width: 0; }
.toc { max-height: calc(100vh - 125px); overflow-y: auto; }
@media (max-width: 960px) { .toc { display: none; } }
@media (max-width: 640px) { .fed-article .article-hero-image { margin-bottom: 1.7rem; } .fed-article h2 { font-size: 1.75rem; } .fed-article h3 { font-size: 1.25rem; } .fed-article .conclusion { padding: 22px; } .fed-article section { scroll-margin-top: 75px; } }
