/* One readable article design for old and new WordPress posts. */
body.single-post { background: #fff; }
body.single-post .site-content > .ast-container { display: block; width: 100%; max-width: none; padding: 0 !important; }
body.single-post #primary.di-article { width: 100%; max-width: none; float: none; margin: 0; padding: 0; }
body.single-post .di-article-post.ast-article-single { margin: 0; padding: 0; background: transparent; }
.di-article { --di-night: #242a56; --di-blue: #6878d6; --di-copy: #4e5875; --di-line: #dfe3f4; color: var(--di-copy); }
.di-article .di-article-shell { width: min(1140px, calc(100% - 48px)); margin-inline: auto; }
.di-article h1, .di-article h2, .di-article h3, .di-article h4 { font-family: Poppins, Arial, sans-serif; color: var(--di-night); letter-spacing: -.035em; line-height: 1.2; }
.di-article .di-eyebrow { color: var(--di-blue); font-size: 12px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.di-article-hero { padding: 49px 0 68px; background: #f2f4fc; border-bottom: 1px solid var(--di-line); }
.di-article-hero.has-cover { padding-bottom: 135px; }
.di-article-crumbs { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 55px; font-size: 13px; font-weight: 600; color: #75809c; }
.di-article-crumbs a { color: #6675c2; text-decoration: none; }
.di-article-crumbs a:hover { color: var(--di-night); }
.di-article-kicker { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 18px; }
.di-article-kicker span { display: inline-block; padding: 7px 11px; color: var(--di-night); background: #e0e5fb; border-radius: 4px; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.di-article-kicker span + span { color: #6c7899; background: transparent; padding-left: 0; }
.di-article-hero h1 { max-width: 1040px; margin: 0; font-size: clamp(2.35rem, 4.2vw, 4.45rem); font-weight: 750; }
.di-article-meta { display: flex; flex-wrap: wrap; gap: 11px; margin: 24px 0 0; color: #65708e; font-size: 14px; }
.di-article-cover { position: relative; margin-top: -86px !important; }
.di-article-cover img { display: block; width: 100%; max-height: 530px; object-fit: cover; border-radius: 15px; box-shadow: 0 18px 54px rgba(28,35,75,.14); }
.di-article-layout { display: grid; grid-template-columns: minmax(0, 760px) minmax(210px, 275px); justify-content: space-between; gap: 65px; padding-top: 68px; padding-bottom: 95px; }
.di-article-main { min-width: 0; }
.di-article-content { color: #394561; font-size: 17px; line-height: 1.82; overflow-wrap: anywhere; }
.di-article-content > :first-child { margin-top: 0; }
.di-article-content p { margin: 0 0 1.3em; }
.di-article-content h2 { margin: 2em 0 .65em; font-size: clamp(1.7rem, 2.5vw, 2.25rem); }
.di-article-content h3 { margin: 1.7em 0 .55em; font-size: clamp(1.3rem, 2vw, 1.65rem); }
.di-article-content h4 { margin: 1.4em 0 .5em; font-size: 1.18rem; }
.di-article-content a { color: #5264c7; text-decoration: underline; text-underline-offset: 3px; }
.di-article-content a:hover { color: var(--di-night); }
.di-article-content ul, .di-article-content ol { margin: 0 0 1.5em; padding-left: 1.4em; }
.di-article-content li { padding-left: .25em; margin-bottom: .4em; }
.di-article-content li::marker { color: var(--di-blue); }
.di-article-content img { height: auto; border-radius: 10px; }
.di-article-content figure { margin: 2em 0; }
.di-article-content figcaption { margin-top: 10px; color: #78829c; font-size: 13px; text-align: center; }
.di-article-content blockquote, .di-article-content .wp-block-quote { margin: 2em 0; padding: 22px 28px; background: #f2f4fc; border-left: 4px solid var(--di-blue); color: var(--di-night); border-radius: 0 8px 8px 0; }
.di-article-content table { width: 100%; margin: 2em 0; border-collapse: collapse; font-size: 15px; }
.di-article-content th, .di-article-content td { padding: 12px 15px; border: 1px solid var(--di-line); text-align: left; }
.di-article-content th { background: #f2f4fc; color: var(--di-night); }
.di-article-content hr { border: 0; border-top: 1px solid var(--di-line); margin: 2.8em 0; }
.di-article-content .wp-block-button__link { color: #fff; background: var(--di-blue); text-decoration: none; border-radius: 6px; }
.di-article-content .wp-block-button__link:hover { color: #fff; background: #5264c7; }
.di-article-aside { min-width: 0; }
.di-aside-card { position: sticky; top: 28px; padding: 27px; border: 1px solid var(--di-line); border-radius: 13px; background: #f7f8fd; }
.di-aside-card h2 { margin: 15px 0 12px; font-size: 23px; }
.di-aside-card p { margin: 0 0 23px; font-size: 14px; line-height: 1.75; }
.di-aside-card a, .di-aside-back { color: #5264c7; font-size: 14px; font-weight: 700; text-decoration: none; }
.di-aside-card a:hover, .di-aside-back:hover { color: var(--di-night); }
.di-aside-back { display: inline-block; margin-top: 22px; }
.di-article-cta { margin-top: 65px; padding: 38px; border-radius: 14px; background: var(--di-night); color: #e4e9fa; }
.di-article-cta .di-eyebrow { color: #b9c4ff; }
.di-article-cta h2 { margin: 15px 0; color: #fff; font-size: clamp(1.65rem, 2.5vw, 2.15rem); }
.di-article-cta p { margin: 0 0 24px; color: #e4e9fa; line-height: 1.7; }
.di-article-cta .di-button { display: inline-flex; align-items: center; gap: 14px; padding: 12px 21px; border-radius: 6px; color: #fff; background: var(--di-blue); font-size: 14px; font-weight: 700; text-decoration: none; }
.di-article-cta .di-button:hover { background: #5264c7; color: #fff; }
.di-article #comments { margin-top: 48px; }
.di-related { padding: 72px 0 85px; background: #f2f4fc; }
.di-related-head { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 28px; }
.di-related-head h2 { margin: 8px 0 0; font-size: clamp(1.9rem, 3vw, 2.7rem); }
.di-related-head > a { color: #5264c7; font-size: 14px; font-weight: 700; text-decoration: none; }
.di-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.di-related-card { min-width: 0; background: #fff; border: 1px solid var(--di-line); border-radius: 12px; overflow: hidden; }
.di-related-card > a { display: flex; flex-direction: column; height: 100%; text-decoration: none; }
.di-related-card img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: contain; background: #eef0fa; }
.di-related-card span { margin: 19px 21px 0; color: #78829c; font-size: 12px; }
.di-related-card h3 { margin: 8px 21px 16px; font-size: 18px; line-height: 1.35; }
.di-related-card strong { margin: auto 21px 22px; color: #5264c7; font-size: 13px; }
.di-related-card a:hover h3 { color: #5264c7; }
.di-article-cover img { border-radius: 18px; }
.di-article-cta { border-radius: 18px; }
.di-article-cta .di-button { border-radius: 10px; min-height: 48px; }
.di-related-card { border-radius: 17px; box-shadow: 0 10px 28px rgba(25, 33, 79, .05); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.di-related-card:hover { border-color: #bfc8ed; box-shadow: 0 18px 38px rgba(25, 33, 79, .1); transform: translateY(-3px); }
@media (prefers-reduced-motion: reduce) { .di-related-card:hover { transform: none; } }
@media (max-width: 900px) {
    .di-article-layout { grid-template-columns: minmax(0, 1fr); gap: 35px; }
    .di-article-aside { display: none; }
}
@media (max-width: 640px) {
    .di-article .di-article-shell { width: calc(100% - 36px); }
    .di-article-hero { padding: 31px 0 48px; }
    .di-article-hero.has-cover { padding-bottom: 75px; }
    .di-article-crumbs { margin-bottom: 32px; }
    .di-article-hero h1 { font-size: clamp(2rem, 8vw, 2.75rem); }
    .di-article-cover { margin-top: -48px !important; }
    .di-article-cover img { border-radius: 10px; }
    .di-article-layout { padding-top: 44px; padding-bottom: 60px; }
    .di-article-content { font-size: 16px; line-height: 1.78; }
    .di-article-cta { padding: 27px 23px; }
    .di-related { padding: 55px 0 65px; }
    .di-related-grid { grid-template-columns: 1fr; }
    .di-related-head { align-items: start; }
}
