/* CMS content wrapper */
.cms-content,
.cms-html {
    width: 100%;
    font-family: 'Fredoka', sans-serif;
    font-size: initial;
    font-style: normal;
    font-weight: normal;
    line-height: normal;
    letter-spacing: normal;
    text-transform: none;
    text-align: left;
    color: initial;
}

/* Prevent the frontend theme from overriding CKEditor-generated elements.
   All properties use `inherit` so they take from .cms-content or from any
   inline style the editor set — the theme never wins inside here. */
.cms-content p,
.cms-content h1,
.cms-content h2,
.cms-content h3,
.cms-content h4,
.cms-content h5,
.cms-content h6,
.cms-content span,
.cms-content div,
.cms-content blockquote,
.cms-content ul,
.cms-content ol,
.cms-content li,
.cms-html p,
.cms-html h1,
.cms-html h2,
.cms-html h3,
.cms-html h4,
.cms-html h5,
.cms-html h6,
.cms-html span,
.cms-html div,
.cms-html blockquote,
.cms-html ul,
.cms-html ol,
.cms-html li {
    font-family: inherit;
    font-size: inherit;      /* block theme h1=52px, h2=44px … p=16px */
    font-weight: inherit;    /* block theme h1-h6 font-weight:700 */
    color: inherit;          /* block theme h1-h6 color:#022147, p color:#777 */
    line-height: inherit;
    letter-spacing: inherit;
    text-transform: none;
}

/* Restore semantic formatting */
.cms-content strong,
.cms-content b,
.cms-html strong,
.cms-html b {
    font-weight: bold !important;
    color: inherit !important; /* prevent theme's strong { color: #022147 } from overriding CKEditor color */
}

/* theme has: strong span, b span { color: #777 } — neutralise it */
.cms-content strong span,
.cms-content b span,
.cms-html strong span,
.cms-html b span {
    color: inherit !important;
}

.cms-content em,
.cms-content i,
.cms-html em,
.cms-html i {
    font-style: italic !important;
}

.cms-content u,
.cms-html u {
    text-decoration: underline !important;
}

/* Preserve responsive images */
.cms-content img,
.cms-html img {
    max-width: 100%;
    height: auto;
}