.mg-rich-content {
    color: #263f5d;
    font-size: 15px;
    line-height: 2.05;
    overflow-wrap: anywhere;
}

.mg-rich-content > :first-child {
    margin-top: 0;
}

.mg-rich-content > :last-child {
    margin-bottom: 0;
}

.mg-rich-content p {
    margin: 0 0 1.15em;
}

.mg-rich-content h2,
.mg-rich-content h3,
.mg-rich-content h4,
.mg-rich-content h5,
.mg-rich-content h6 {
    color: #0e3159;
    line-height: 1.55;
    margin: 1.65em 0 .7em;
}

.mg-rich-content h2 { font-size: 1.65em; }
.mg-rich-content h3 { font-size: 1.4em; }
.mg-rich-content h4 { font-size: 1.2em; }

.mg-rich-content ul,
.mg-rich-content ol {
    margin: 1em 0;
    padding-right: 1.7em;
}

.mg-rich-content li {
    margin: .35em 0;
}

.mg-rich-content a {
    color: #176ee8;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.mg-rich-content blockquote {
    margin: 1.4em 0;
    padding: 15px 20px;
    border-right: 4px solid #2f78e6;
    border-radius: 9px 0 0 9px;
    background: #f2f7fe;
    color: #244565;
}

.mg-rich-content img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 1.4em auto;
    border-radius: 12px;
}

.mg-rich-content figure {
    max-width: 100%;
    margin: 1.5em auto;
}

.mg-rich-content video,
.mg-rich-content iframe {
    display: block;
    width: 100%;
    max-width: 960px;
    margin: 1.5em auto;
    border: 0;
    border-radius: 12px;
    background: #101827;
}

.mg-rich-content video {
    height: auto;
}

.mg-rich-content iframe {
    aspect-ratio: 16 / 9;
    min-height: 260px;
}

.mg-rich-content figure img {
    margin-bottom: .5em;
}

.mg-rich-content figcaption {
    color: #6c7f95;
    font-size: .85em;
    text-align: center;
}

.mg-rich-content table {
    display: block;
    width: 100%;
    margin: 1.5em 0;
    border-collapse: collapse;
    overflow-x: auto;
}

.mg-rich-content th,
.mg-rich-content td {
    min-width: 110px;
    padding: 10px 12px;
    border: 1px solid #cfdded;
    text-align: right;
}

.mg-rich-content th {
    background: #eef5fd;
    color: #173b64;
    font-weight: 800;
}

.mg-rich-content pre {
    direction: ltr;
    margin: 1.4em 0;
    padding: 16px;
    border-radius: 10px;
    background: #101827;
    color: #eaf2ff;
    line-height: 1.7;
    text-align: left;
    overflow: auto;
}

.mg-rich-content code {
    direction: ltr;
    padding: .15em .4em;
    border-radius: 5px;
    background: #edf3fa;
    color: #b42955;
}

.mg-rich-content pre code {
    padding: 0;
    background: transparent;
    color: inherit;
}

.mg-rich-content hr {
    margin: 2em 0;
    border: 0;
    border-top: 1px solid #d7e2ef;
}

@media (max-width: 700px) {
    .mg-rich-content {
        font-size: 14px;
    }

    .mg-rich-content h2 {
        font-size: 1.45em;
    }

    .mg-rich-content iframe {
        min-height: 190px;
    }
}
