/* Only CMS-authored article bodies. Navigation, cards and comments are outside this scope. */
.cms-content{--cms-link:#0066cc;--cms-link-hover:#004999}
html:is(.dark,.tw-dark) .cms-content{--cms-link:#69adff;--cms-link-hover:#9ac8ff}
.cms-content a[href]:not([data-article-item-quality]),
.cms-content a[href]:not([data-article-item-quality]) :is(span,font,strong,em,b,i){color:var(--cms-link)!important}
.cms-content a[href]:not([data-article-item-quality]):is(:hover,:focus-visible),
.cms-content a[href]:not([data-article-item-quality]):is(:hover,:focus-visible) :is(span,font,strong,em,b,i){color:var(--cms-link-hover)!important}
.cms-content a[href]:is(:hover,:focus-visible){text-decoration:underline;text-underline-offset:3px}

/* Legacy heading scale with bold blue-line h3/h4, shared by all CMS bodies.
   The repeated scope keeps later page styles from changing the article type scale. */
.cms-content{--cms-heading:inherit}
html:is(.dark,.tw-dark) .cms-content{--cms-heading:#fff}
.cms-content.cms-content :is(h1,h2,h3,h4){
    color:var(--cms-heading);font-size:.95rem;font-weight:400;line-height:1.2;
    margin:0;padding:0;border:0;
}
.cms-content.cms-content :is(h3,h4){
    position:relative;font-weight:700;line-height:30px;
    margin:12px 0 15px;padding-left:15px;
}
.cms-content.cms-content h3{font-size:20px}
.cms-content.cms-content h4{font-size:18px}
.cms-content.cms-content :is(h3,h4)::before{
    content:"";position:absolute;inset:0 auto 0 0;width:5px;
    background:#3498db;border-radius:2.5px;
}
.cms-content.cms-content h3.title{
    font-size:20px;font-weight:700;line-height:30px;
    margin:4rem 0 15px;padding-bottom:20px;border-bottom:1px solid #e5e5e5;
}
.cms-content.cms-content h3.title:first-child{margin-top:0}
.cms-content.cms-content h4{border:0!important}
.cms-content.cms-content h4.title{line-height:30px}
.cms-content.cms-content h3.title+h4.title{margin-top:2rem}
.cms-content.cms-content h4.title2{
    width:100%;font-size:18px;padding:0.3em 0.5em 0.3em 15px;
    background:linear-gradient(90deg,rgba(185,177,177,.4),transparent 80%);
    border-radius:5px;clear:both;
}
.cms-content.cms-content h4.title3{width:100%;display:flex;align-items:center;justify-content:center}
.cms-content.cms-content h4.title3 div{height:1px;flex-grow:1;background:#000}
.cms-content.cms-content h4.title3 span{margin:0 16px;font-size:inherit}
.cms-content.cms-content h4.title4{font-size:18px;font-weight:700}
.cms-content.cms-content h4.title4 div{display:inline;background:linear-gradient(to top,#f69393 26%,transparent 26%)}
@media(max-width:768px){
    .cms-content.cms-content h3.title:first-child{margin-top:1rem}
}
