/*
 * Mierlo voor Mierlo — Visibility & Contrast layer
 * Scope: public frontend. Loaded after Newsup, Header v1 and theme-mode CSS.
 * Brand palette is centered on Mierlo blue #1966AE and accessible derivatives.
 */

body {
    --mvm-vis-blue: #1966AE;
    --mvm-vis-blue-hover: #155A94;
    --mvm-vis-blue-deep: #0F4F88;
    --mvm-vis-white: #FFFFFF;
    --mvm-vis-ink: #172333;
    --mvm-vis-muted: #52697D;
    --mvm-vis-border: #C9D7E3;
    --mvm-vis-page: #F1F5F8;
    --mvm-vis-soft: #EAF2F9;
    --mvm-vis-dark-surface: #17222D;
    --mvm-vis-dark-raised: #202F3C;
    --mvm-vis-dark-border: #344757;
    --mvm-vis-dark-text: #F3F7FA;
    --mvm-vis-dark-muted: #B7C6D3;
    --mvm-vis-dark-link: #78BAF3;
}

/* -------------------------------------------------------------------------
 * 1. Core light-mode readability
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) .wrapper,
body:not(.mvm-header-dark) #content {
    color: var(--mvm-vis-ink);
}

body:not(.mvm-header-dark) .entry-content,
body:not(.mvm-header-dark) .mg-content,
body:not(.mvm-header-dark) .mg-blog-post-box,
body:not(.mvm-header-dark) .mg-info-author-block,
body:not(.mvm-header-dark) .mg-comments,
body:not(.mvm-header-dark) .mg-sidebar .mg-widget {
    color: var(--mvm-vis-ink) !important;
}

body:not(.mvm-header-dark) .entry-content p,
body:not(.mvm-header-dark) .entry-content li,
body:not(.mvm-header-dark) .mg-content p,
body:not(.mvm-header-dark) .mg-content li {
    color: var(--mvm-vis-ink) !important;
}

body:not(.mvm-header-dark) .entry-content a:not(.btn):not(.more-link),
body:not(.mvm-header-dark) .mg-content a:not(.btn):not(.more-link) {
    color: var(--mvm-vis-blue-hover);
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}

body:not(.mvm-header-dark) .entry-content a:not(.btn):not(.more-link):hover,
body:not(.mvm-header-dark) .entry-content a:not(.btn):not(.more-link):focus,
body:not(.mvm-header-dark) .mg-content a:not(.btn):not(.more-link):hover,
body:not(.mvm-header-dark) .mg-content a:not(.btn):not(.more-link):focus {
    color: var(--mvm-vis-blue-deep);
}

/* -------------------------------------------------------------------------
 * 2. News titles: Mierlo blue on light surfaces, white on photos
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) .mg-sec-top-post .title a,
body:not(.mvm-header-dark) .small-post .title a,
body:not(.mvm-header-dark) .title_small_post .title a,
body:not(.mvm-header-dark) .mg-blog-post-box .title a,
body:not(.mvm-header-dark) .mg-blog-post-box .mg-header h1,
body:not(.mvm-header-dark) .mg-blog-post-box .mg-header h1 a,
body:not(.mvm-header-dark) .mg-no-list-area .mg-blog-post h3 a,
body:not(.mvm-header-dark) .mg-sidebar .mg-widget .mg-blog-post h3 a {
    color: var(--mvm-vis-blue) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue) !important;
    font-weight: 800 !important;
}

body:not(.mvm-header-dark) .mg-sec-top-post .title a:hover,
body:not(.mvm-header-dark) .mg-sec-top-post .title a:focus,
body:not(.mvm-header-dark) .small-post .title a:hover,
body:not(.mvm-header-dark) .mg-blog-post-box .title a:hover,
body:not(.mvm-header-dark) .mg-blog-post-box .title a:focus {
    color: var(--mvm-vis-blue-deep) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-deep) !important;
}

/* Featured/editorial cards can contain very bright photos: add a guaranteed
 * dark reading zone without changing the image itself. */
.mg-blog-post-3.back-img {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.mg-blog-post-3.back-img::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: linear-gradient(to top, rgba(6, 20, 33, .88) 0%, rgba(6, 20, 33, .58) 38%, rgba(6, 20, 33, .16) 76%, rgba(6, 20, 33, .04) 100%);
}

.mg-blog-post-3.back-img .mg-blog-inner {
    position: relative;
    z-index: 1;
}

.mg-blog-post-3.back-img .mg-blog-inner .title,
.mg-blog-post-3.back-img .mg-blog-inner .title a,
.mg-blog-post .bottom .title,
.mg-blog-post .bottom .title a,
.bs-blog-post.three .title,
.bs-blog-post.three .title a,
.mg-post-box .title,
.mg-post-box .title a {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 800 !important;
    line-height: 1.28 !important;
    text-shadow: 0 2px 5px rgba(0, 0, 0, .92) !important;
}

/* -------------------------------------------------------------------------
 * 3. Date/comment metadata
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) .mg-sec-top-post .mg-blog-meta,
body:not(.mvm-header-dark) .mg-blog-post-box .mg-blog-meta,
body:not(.mvm-header-dark) .mg-info-author-block .mg-blog-meta {
    color: var(--mvm-vis-muted) !important;
    font-weight: 600 !important;
}

body:not(.mvm-header-dark) .mg-sec-top-post .mg-blog-meta a,
body:not(.mvm-header-dark) .mg-blog-post-box .mg-blog-meta a,
body:not(.mvm-header-dark) .mg-info-author-block .mg-blog-meta a {
    color: var(--mvm-vis-blue-hover) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-hover) !important;
    font-weight: 700 !important;
}

body:not(.mvm-header-dark) .mg-sec-top-post .mg-blog-meta i,
body:not(.mvm-header-dark) .mg-blog-post-box .mg-blog-meta i,
body:not(.mvm-header-dark) .mg-info-author-block .mg-blog-meta i {
    color: var(--mvm-vis-blue) !important;
}

/* Metadata sitting on photos always remains white. */
.mg-blog-post.lg .mg-blog-meta,
.mg-blog-post.lg .mg-blog-meta a,
.mg-blog-post.lg .mg-blog-meta i,
.mg-blog-post.md .mg-blog-meta,
.mg-blog-post.md .mg-blog-meta a,
.mg-blog-post.md .mg-blog-meta i,
.mg-blog-post .bottom .mg-blog-meta,
.mg-blog-post .bottom .mg-blog-meta a,
.mg-blog-post .bottom .mg-blog-meta i,
.bs-blog-post.three .mg-blog-meta,
.bs-blog-post.three .mg-blog-meta a,
.bs-blog-post.three .mg-blog-meta i,
.mg-post-box .mg-blog-meta,
.mg-post-box .mg-blog-meta a,
.mg-post-box .mg-blog-meta i {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* -------------------------------------------------------------------------
 * 4. Blue heading bars and category labels
 * ---------------------------------------------------------------------- */
.mg-latest-news .bn_title .wtitle,
.mg-latest-news .bn_title .wtitle span,
.mg-sec-title .wtitle,
.mg-sidebar .mg-widget .wtitle,
.wp-block-search .wp-block-search__label,
.mg-widget .wp-block-group .wtitle,
.mg-widget .wp-block-group h2,
.widget_tag_cloud > h6,
#tag_cloud-2 > h6,
footer .mg-widget h6 {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

.mg-blog-category a,
.bs-blog-category a,
a.newsup-categories {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
}

/* Preserve category identity but darken two bright defaults enough for white text. */
a.newsup-categories.category-color-2 {
    background: #A85D00 !important;
}
a.newsup-categories.category-color-4 {
    background: #3F7429 !important;
}
.mg-blog-category a[style*="background-color:#dd8808"],
.mg-blog-category a[style*="background-color: #dd8808"] {
    background-color: #A85D00 !important;
}

/* -------------------------------------------------------------------------
 * 5. Tags / tag clouds
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) .mg-tpt-tag-area {
    background: #FFFFFF !important;
}
body:not(.mvm-header-dark) .mg-tpt-txnlst strong {
    color: var(--mvm-vis-ink) !important;
}
body:not(.mvm-header-dark) .mg-tpt-txnlst ul li a,
body:not(.mvm-header-dark) .mg-sidebar .tagcloud a,
body:not(.mvm-header-dark) .wp-block-tag-cloud a {
    background: var(--mvm-vis-soft) !important;
    border-color: #D5E3EE !important;
    color: var(--mvm-vis-blue-hover) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-hover) !important;
    font-weight: 700 !important;
}
body:not(.mvm-header-dark) .mg-tpt-txnlst ul li a:hover,
body:not(.mvm-header-dark) .mg-tpt-txnlst ul li a:focus,
body:not(.mvm-header-dark) .mg-sidebar .tagcloud a:hover,
body:not(.mvm-header-dark) .mg-sidebar .tagcloud a:focus,
body:not(.mvm-header-dark) .wp-block-tag-cloud a:hover,
body:not(.mvm-header-dark) .wp-block-tag-cloud a:focus {
    background: var(--mvm-vis-blue) !important;
    border-color: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* Footer tags: distinct dark-Mierlo chips with guaranteed white labels. */
footer .widget_tag_cloud .tagcloud a,
footer .widget_tag_cloud .tag-cloud-link,
footer .mg-widget .tagcloud a,
footer .mg-widget .tag-cloud-link {
    display: inline-block !important;
    background: #0F4F88 !important;
    background-color: #0F4F88 !important;
    border: 1px solid rgba(255, 255, 255, .45) !important;
    border-radius: 999px !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    opacity: 1 !important;
}
footer .widget_tag_cloud .tagcloud a:hover,
footer .widget_tag_cloud .tagcloud a:focus,
footer .widget_tag_cloud .tag-cloud-link:hover,
footer .widget_tag_cloud .tag-cloud-link:focus,
footer .mg-widget .tagcloud a:hover,
footer .mg-widget .tagcloud a:focus,
footer .mg-widget .tag-cloud-link:hover,
footer .mg-widget .tag-cloud-link:focus {
    background: #155A94 !important;
    background-color: #155A94 !important;
    border-color: #FFFFFF !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* -------------------------------------------------------------------------
 * 6. Forms, contact, inputs, placeholders
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
body:not(.mvm-header-dark) textarea,
body:not(.mvm-header-dark) select,
body:not(.mvm-header-dark) .form-control,
body:not(.mvm-header-dark) .select2-selection {
    background: #FFFFFF !important;
    border-color: #AFC2D2 !important;
    color: var(--mvm-vis-ink) !important;
    -webkit-text-fill-color: var(--mvm-vis-ink) !important;
}

body:not(.mvm-header-dark) input::placeholder,
body:not(.mvm-header-dark) textarea::placeholder {
    color: #627386 !important;
    -webkit-text-fill-color: #627386 !important;
    opacity: 1 !important;
}

body:not(.mvm-header-dark) .wpcf7 label,
body:not(.mvm-header-dark) .wpcf7-quiz-label,
body:not(.mvm-header-dark) .mvm-contact-file-help {
    color: var(--mvm-vis-ink) !important;
}

.wpcf7 input[type="submit"],
.wpem-main input[type="submit"],
.wpem-main button,
.ps-page .ps-btn--action,
.ps-page .ps-btn--primary,
#wpforo-wrap button,
#wpforo-wrap input[type="submit"] {
    background: var(--mvm-vis-blue) !important;
    border-color: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
}

.wpcf7 input[type="submit"]:hover,
.wpcf7 input[type="submit"]:focus,
.wpem-main input[type="submit"]:hover,
.wpem-main button:hover,
.ps-page .ps-btn--action:hover,
.ps-page .ps-btn--primary:hover,
#wpforo-wrap button:hover,
#wpforo-wrap input[type="submit"]:hover {
    background: var(--mvm-vis-blue-deep) !important;
    border-color: var(--mvm-vis-blue-deep) !important;
    color: #FFFFFF !important;
}

/* -------------------------------------------------------------------------
 * 7. PeepSo
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) .ps-page,
body:not(.mvm-header-dark) .ps-post,
body:not(.mvm-header-dark) .ps-widget,
body:not(.mvm-header-dark) .ps-dialog,
body:not(.mvm-header-dark) .ps-modal,
body:not(.mvm-header-dark) .ps-popover,
body:not(.mvm-header-dark) .ps-dropdown__menu,
body:not(.mvm-header-dark) .ps-landing__form {
    color: var(--mvm-vis-ink) !important;
}

body:not(.mvm-header-dark) .ps-page .ps-form__label,
body:not(.mvm-header-dark) .ps-page .ps-form__message,
body:not(.mvm-header-dark) .ps-page .ps-post__body,
body:not(.mvm-header-dark) .ps-page .ps-comment__body {
    color: var(--mvm-vis-ink) !important;
}

body:not(.mvm-header-dark) .ps-page .ps-form__field-desc,
body:not(.mvm-header-dark) .ps-page .lbl-descript,
body:not(.mvm-header-dark) .ps-page .ps-text--muted {
    color: var(--mvm-vis-muted) !important;
}

body:not(.mvm-header-dark) .ps-page a:not(.ps-btn) {
    color: var(--mvm-vis-blue-hover);
}

/* -------------------------------------------------------------------------
 * 8. wpForo
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) #wpforo-wrap,
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-main,
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-content,
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-section,
body:not(.mvm-header-dark) #wpforo-wrap .forum-wrap,
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-forum {
    color: var(--mvm-vis-ink) !important;
}

body:not(.mvm-header-dark) #wpforo-wrap #wpforo-title {
    color: var(--mvm-vis-blue-deep) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-deep) !important;
}
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-forum-title a {
    color: var(--mvm-vis-blue) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue) !important;
    font-weight: 800 !important;
}
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-forum-description,
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-forum-info > div[style*="font-size: 12px"] {
    color: var(--mvm-vis-muted) !important;
}
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-category,
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-cat-panel {
    /* Keep wpForo's configured category/forum colour; only enforce readable text. */
    color: #FFFFFF !important;
}
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-category .cat-title,
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-category .cat-name {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* -------------------------------------------------------------------------
 * 9. WP Event Manager
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) .wpem-main,
body:not(.mvm-header-dark) .wpem-event-layout-wrapper,
body:not(.mvm-header-dark) .wpem-event-listings,
body:not(.mvm-header-dark) .wpem-single-event-page,
body:not(.mvm-header-dark) .single_event_listing {
    color: var(--mvm-vis-ink) !important;
}
body:not(.mvm-header-dark) .wpem-main label,
body:not(.mvm-header-dark) .wpem-main .wpem-form-label,
body:not(.mvm-header-dark) .wpem-event-listings .wpem-event-infomation,
body:not(.mvm-header-dark) .wpem-event-listings .wpem-event-location,
body:not(.mvm-header-dark) .wpem-event-listings .wpem-event-date-time {
    color: var(--mvm-vis-ink) !important;
}
body:not(.mvm-header-dark) .wpem-event-listings .wpem-event-action-url,
body:not(.mvm-header-dark) .wpem-event-listings a {
    color: var(--mvm-vis-blue-hover) !important;
}

/* -------------------------------------------------------------------------
 * 10. Encyclopedie
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) .mvm-hero,
body:not(.mvm-header-dark) .mvm-public-card,
body:not(.mvm-header-dark) .mvm-entry-grid a {
    background: #FFFFFF !important;
    border-color: var(--mvm-vis-border) !important;
    color: var(--mvm-vis-ink) !important;
}
body:not(.mvm-header-dark) .mvm-hero h1,
body:not(.mvm-header-dark) .mvm-public-card h2,
body:not(.mvm-header-dark) .mvm-public-card h3,
body:not(.mvm-header-dark) .mvm-public-card h4 {
    color: var(--mvm-vis-blue-deep) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-deep) !important;
}
body:not(.mvm-header-dark) .mvm-entry-grid a,
body:not(.mvm-header-dark) .mvm-public-card .mvm-read-more,
body:not(.mvm-header-dark) .mvm-public-card .mvm-card-link {
    color: var(--mvm-vis-blue-hover) !important;
}
body:not(.mvm-header-dark) .mvm-public-card p,
body:not(.mvm-header-dark) .mvm-card-meta,
body:not(.mvm-header-dark) .mvm-hero p {
    color: var(--mvm-vis-ink) !important;
}
body:not(.mvm-header-dark) .mvm-hero .mvm-eyebrow,
body:not(.mvm-header-dark) .mvm-card-meta {
    color: var(--mvm-vis-muted) !important;
}
.mvm-public-search button {
    background: var(--mvm-vis-blue) !important;
    border-color: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
}

/* -------------------------------------------------------------------------
 * 11. Tables, notices, pagination and secondary controls
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) table,
body:not(.mvm-header-dark) th,
body:not(.mvm-header-dark) td {
    border-color: var(--mvm-vis-border) !important;
    color: var(--mvm-vis-ink) !important;
}
body:not(.mvm-header-dark) th {
    background: var(--mvm-vis-soft) !important;
    color: var(--mvm-vis-blue-deep) !important;
}
body:not(.mvm-header-dark) .navigation.pagination .page-numbers {
    color: var(--mvm-vis-muted) !important;
    border-color: var(--mvm-vis-border) !important;
}
body:not(.mvm-header-dark) .navigation.pagination .page-numbers.current,
body:not(.mvm-header-dark) .navigation.pagination .page-numbers:hover,
body:not(.mvm-header-dark) .navigation.pagination .page-numbers:focus {
    background: var(--mvm-vis-blue) !important;
    border-color: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* -------------------------------------------------------------------------
 * 12. Footer
 * ---------------------------------------------------------------------- */

/* 'Dit wil je niet missen': white title on the Newsup footer teaser bar. */
.missed-inner .mg-sec-title h4,
.missed-inner .mg-sec-title h4 * {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 800 !important;
}
footer .site-title-footer,
footer .site-title-footer a,
footer .mg-widget,
footer .mg-widget p,
footer .mg-widget li,
footer .mg-widget a,
footer .mg-blog-post h3,
footer .mg-blog-post h3 a,
footer .mg-blog-meta,
footer .mg-blog-meta a,
footer .mg-blog-meta i,
footer .mg-blog-meta span {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}
footer .mg-widget a:hover,
footer .mg-widget a:focus {
    color: #B5DAFA !important;
    -webkit-text-fill-color: #B5DAFA !important;
}
footer .mg-footer-copyright p,
footer .mg-footer-copyright a {
    color: #D2DEEA !important;
    -webkit-text-fill-color: #D2DEEA !important;
}

/* -------------------------------------------------------------------------
 * 13. Dark mode — reinforce component contrast without changing brand blue
 * ---------------------------------------------------------------------- */
body.mvm-header-dark .mg-sec-top-post .title a,
body.mvm-header-dark .small-post .title a,
body.mvm-header-dark .title_small_post .title a,
body.mvm-header-dark .mg-blog-post-box .title a,
body.mvm-header-dark .mg-sidebar .mg-widget .mg-blog-post h3 a {
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
    font-weight: 800 !important;
}

body.mvm-header-dark .mg-sec-top-post .mg-blog-meta,
body.mvm-header-dark .mg-blog-post-box .mg-blog-meta,
body.mvm-header-dark .mg-info-author-block .mg-blog-meta {
    color: var(--mvm-vis-dark-muted) !important;
}
body.mvm-header-dark .mg-sec-top-post .mg-blog-meta a,
body.mvm-header-dark .mg-blog-post-box .mg-blog-meta a,
body.mvm-header-dark .mg-info-author-block .mg-blog-meta a,
body.mvm-header-dark .mg-sec-top-post .mg-blog-meta i,
body.mvm-header-dark .mg-blog-post-box .mg-blog-meta i {
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
}

body.mvm-header-dark .mg-tpt-tag-area,
body.mvm-header-dark .mg-sidebar .mg-widget,
body.mvm-header-dark .tagcloud a,
body.mvm-header-dark .wp-block-tag-cloud a {
    background-color: var(--mvm-vis-dark-surface) !important;
    border-color: var(--mvm-vis-dark-border) !important;
}
body.mvm-header-dark .mg-tpt-txnlst strong {
    color: var(--mvm-vis-dark-text) !important;
}
body.mvm-header-dark .mg-tpt-txnlst ul li a,
body.mvm-header-dark .mg-sidebar .tagcloud a,
body.mvm-header-dark .wp-block-tag-cloud a {
    background: var(--mvm-vis-dark-raised) !important;
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
}
body.mvm-header-dark .mg-tpt-txnlst ul li a:hover,
body.mvm-header-dark .mg-sidebar .tagcloud a:hover,
body.mvm-header-dark .wp-block-tag-cloud a:hover {
    background: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

body.mvm-header-dark .wpcf7 label,
body.mvm-header-dark .wpcf7-quiz-label,
body.mvm-header-dark .mvm-contact-file-help,
body.mvm-header-dark .ps-page .ps-form__label,
body.mvm-header-dark .ps-page .ps-form__message,
body.mvm-header-dark .ps-page .ps-post__body,
body.mvm-header-dark .ps-page .ps-comment__body,
body.mvm-header-dark #wpforo-wrap,
body.mvm-header-dark .wpem-main {
    color: var(--mvm-vis-dark-text) !important;
}
body.mvm-header-dark .ps-page .ps-form__field-desc,
body.mvm-header-dark .ps-page .lbl-descript,
body.mvm-header-dark .ps-page .ps-text--muted,
body.mvm-header-dark #wpforo-wrap .wpforo-forum-description,
body.mvm-header-dark #wpforo-wrap .wpforo-forum-info > div[style*="font-size: 12px"] {
    color: var(--mvm-vis-dark-muted) !important;
}

body.mvm-header-dark .mvm-hero,
body.mvm-header-dark .mvm-public-card,
body.mvm-header-dark .mvm-entry-grid a {
    background: var(--mvm-vis-dark-surface) !important;
    border-color: var(--mvm-vis-dark-border) !important;
    color: var(--mvm-vis-dark-text) !important;
}
body.mvm-header-dark .mvm-hero h1,
body.mvm-header-dark .mvm-public-card h2,
body.mvm-header-dark .mvm-public-card h3,
body.mvm-header-dark .mvm-public-card h4,
body.mvm-header-dark .mvm-entry-grid a,
body.mvm-header-dark .mvm-public-card .mvm-read-more,
body.mvm-header-dark .mvm-public-card .mvm-card-link {
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
}
body.mvm-header-dark .mvm-public-card p,
body.mvm-header-dark .mvm-card-meta,
body.mvm-header-dark .mvm-hero p {
    color: var(--mvm-vis-dark-text) !important;
}

/* -------------------------------------------------------------------------
 * 14. Keyboard visibility — content only; Header v1 keeps its own focus style
 * ---------------------------------------------------------------------- */
#content a:focus-visible,
#content button:focus-visible,
#content input:focus-visible,
#content textarea:focus-visible,
#content select:focus-visible,
.ps-page a:focus-visible,
#wpforo-wrap a:focus-visible,
.wpem-main a:focus-visible,
.mvm-hero a:focus-visible,
.mvm-entry-grid a:focus-visible {
    outline: 3px solid var(--mvm-vis-blue) !important;
    outline-offset: 2px !important;
}

/* -------------------------------------------------------------------------
 * 15. Breadcrumbs, single articles and article navigation
 * ---------------------------------------------------------------------- */
body:not(.mvm-header-dark) .mg-breadcrumb-title h1,
body:not(.mvm-header-dark) .mg-blog-post-box.single .mg-header > .title {
    color: var(--mvm-vis-blue-deep) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-deep) !important;
    font-weight: 800 !important;
}
body:not(.mvm-header-dark) .mg-page-breadcrumb > li,
body:not(.mvm-header-dark) .mg-page-breadcrumb > li + li::before {
    color: var(--mvm-vis-muted) !important;
}
body:not(.mvm-header-dark) .mg-page-breadcrumb > li a {
    color: var(--mvm-vis-blue-hover) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-hover) !important;
}
body:not(.mvm-header-dark) .mg-blog-post-box.single .mg-info-author-block,
body:not(.mvm-header-dark) .mg-blog-post-box.single .mg-info-author-block .media-body {
    color: var(--mvm-vis-muted) !important;
}
body:not(.mvm-header-dark) .mg-blog-post-box.single .mg-info-author-block .mg-blog-date,
body:not(.mvm-header-dark) .mg-blog-post-box.single .mg-info-author-block .newsup-tags {
    color: var(--mvm-vis-muted) !important;
    font-weight: 600 !important;
}
body:not(.mvm-header-dark) .mg-blog-post-box.single .mg-info-author-block a,
body:not(.mvm-header-dark) .mg-blog-post-box.single .mg-info-author-block i {
    color: var(--mvm-vis-blue-hover) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-hover) !important;
    font-weight: 700 !important;
}

/* Single article tags: Mierlo-blue chips with guaranteed white labels. */
body:not(.mvm-header-dark) .mg-blog-post-box.single .newsup-tags a[rel="tag"],
body.mvm-header-dark .mg-blog-post-box.single .newsup-tags a[rel="tag"] {
    display: inline-block;
    margin: 2px 2px 2px 0;
    padding: 3px 8px;
    border-radius: 999px;
    background: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
    line-height: 1.25;
    text-decoration: none !important;
}
body:not(.mvm-header-dark) .mg-blog-post-box.single .newsup-tags a[rel="tag"]:hover,
body:not(.mvm-header-dark) .mg-blog-post-box.single .newsup-tags a[rel="tag"]:focus,
body.mvm-header-dark .mg-blog-post-box.single .newsup-tags a[rel="tag"]:hover,
body.mvm-header-dark .mg-blog-post-box.single .newsup-tags a[rel="tag"]:focus {
    background: var(--mvm-vis-blue-deep) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}
body:not(.mvm-header-dark) .mg-blog-post-box article.single h2,
body:not(.mvm-header-dark) .mg-blog-post-box article.single h3,
body:not(.mvm-header-dark) .mg-blog-post-box article.single h4 {
    color: var(--mvm-vis-blue-deep) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-deep) !important;
    font-weight: 800 !important;
}
body:not(.mvm-header-dark) .post-navigation .nav-links a,
body:not(.mvm-header-dark) .nav-next a,
body:not(.mvm-header-dark) .nav-previous a {
    color: var(--mvm-vis-blue-hover) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-hover) !important;
    font-weight: 700 !important;
}
body.mvm-header-dark .mg-blog-post-box.single .mg-info-author-block .mg-blog-date,
body.mvm-header-dark .mg-blog-post-box.single .mg-info-author-block .newsup-tags {
    color: var(--mvm-vis-dark-muted) !important;
}
body.mvm-header-dark .mg-blog-post-box.single .mg-info-author-block a,
body.mvm-header-dark .mg-blog-post-box.single .mg-info-author-block i,
body.mvm-header-dark .mg-blog-post-box article.single h2,
body.mvm-header-dark .mg-blog-post-box article.single h3,
body.mvm-header-dark .mg-blog-post-box article.single h4,
body.mvm-header-dark .post-navigation .nav-links a {
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
}

/* Social/share controls: all glyphs stay visible; e-mail uses Mierlo blue. */
.post-share-icons .link,
.post-share-icons .print-r,
.post-share-icons .link i,
.post-share-icons .print-r i {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}
.post-share-icons .email {
    background: var(--mvm-vis-blue) !important;
}

/* -------------------------------------------------------------------------
 * 16. Notices, comments, quotes and code blocks
 * ---------------------------------------------------------------------- */
.alert-success,
.text-success,
.progress-bar-success {
    background-color: #187A45 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}
.alert-info,
.text-info,
.progress-bar-info {
    background-color: var(--mvm-vis-blue-hover) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}
.alert-danger,
.text-danger,
.progress-bar-danger {
    background-color: #B42318 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}
.alert-warning,
.text-warning,
.progress-bar-warning {
    background-color: #8A5A00 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

body:not(.mvm-header-dark) blockquote {
    background: var(--mvm-vis-soft) !important;
    border-color: var(--mvm-vis-blue) !important;
    color: var(--mvm-vis-ink) !important;
}
body:not(.mvm-header-dark) pre,
body:not(.mvm-header-dark) code {
    background: #E8EEF4;
    color: #24384A;
}
body.mvm-header-dark pre,
body.mvm-header-dark code {
    background: #0D151D;
    color: var(--mvm-vis-dark-text);
}

body:not(.mvm-header-dark) .mg-comments h4,
body:not(.mvm-header-dark) .mg-comments .comment-author,
body:not(.mvm-header-dark) .mg-comments .media-body > p,
body:not(.mvm-header-dark) .mg-comments .media-body > .small {
    color: var(--mvm-vis-ink) !important;
}
body:not(.mvm-header-dark) .mg-comments a,
body:not(.mvm-header-dark) .comment-metadata a {
    color: var(--mvm-vis-blue-hover) !important;
}
body.mvm-header-dark .mg-comments h4,
body.mvm-header-dark .mg-comments .comment-author,
body.mvm-header-dark .mg-comments .media-body > p,
body.mvm-header-dark .mg-comments .media-body > .small {
    color: var(--mvm-vis-dark-text) !important;
}
body.mvm-header-dark .mg-comments a,
body.mvm-header-dark .comment-metadata a {
    color: var(--mvm-vis-dark-link) !important;
}

/* Redactie's keuze: polished, readable and consistent with the Mierlo palette. */
.mg-featured-slider {
    border-radius: 16px;
    overflow: hidden;
}

.mg-featured-slider .mg-sec-title {
    margin-bottom: 14px;
}

.mg-featured-slider .mg-sec-title .wtitle,
.mg-featured-slider .mg-sec-title .wtitle * {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 800 !important;
    letter-spacing: .01em;
}

.mg-featured-slider .editorchoice .mg-blog-post-3.back-img {
    min-height: clamp(290px, 32vw, 420px);
    border-radius: 14px;
    background-position: center !important;
    background-size: cover !important;
}

.mg-featured-slider .editorchoice .mg-blog-inner {
    padding: clamp(18px, 3vw, 30px) !important;
}

.mg-featured-slider .editorchoice .mg-blog-inner .title,
.mg-featured-slider .editorchoice .mg-blog-inner .title a {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-size: clamp(21px, 2.1vw, 31px) !important;
    font-weight: 800 !important;
    line-height: 1.22 !important;
    text-shadow: 0 2px 6px rgba(0, 0, 0, .95) !important;
}

.mg-featured-slider .editorchoice .mg-blog-category a {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 800 !important;
    border: 1px solid rgba(255, 255, 255, .34);
}

.mg-featured-slider .swiper-button-prev,
.mg-featured-slider .swiper-button-next {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: rgba(25, 102, 174, .96) !important;
    border: 2px solid #FFFFFF !important;
    color: #FFFFFF !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .28);
}

.mg-featured-slider .swiper-button-prev::after,
.mg-featured-slider .swiper-button-next::after {
    color: #FFFFFF !important;
    font-size: 18px !important;
    font-weight: 900;
}

.mg-featured-slider .swiper-button-prev:hover,
.mg-featured-slider .swiper-button-next:hover,
.mg-featured-slider .swiper-button-prev:focus-visible,
.mg-featured-slider .swiper-button-next:focus-visible {
    background: var(--mvm-vis-blue-deep) !important;
    outline: 3px solid #FFFFFF !important;
    outline-offset: 2px;
}

/* Lees verder: button text must always remain white. */
a.more-link,
a.more-link:visited,
a.more-link:hover,
a.more-link:focus {
    background: var(--mvm-vis-blue) !important;
    border-color: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 800 !important;
}

a.more-link:hover,
a.more-link:focus {
    background: var(--mvm-vis-blue-deep) !important;
    border-color: var(--mvm-vis-blue-deep) !important;
}

/* Final category contrast pass: white labels + accessible category shades. */
.mg-blog-category a,
.mg-blog-category a:visited,
.mg-blog-category a:hover,
.mg-blog-category a:focus,
.bs-blog-category a,
a.newsup-categories {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
}
.mg-blog-category a[style*="#dd8808"] { background-color: #A85D00 !important; }
.mg-blog-category a[style*="#5faf36"] { background-color: #3F7429 !important; }
.mg-blog-category a[style*="#058e6c"] { background-color: #047A5D !important; }
.mg-blog-category a[style*="#29877f"] { background-color: #24756F !important; }

/* -------------------------------------------------------------------------
 * 18. MvM unified design system — final cross-site consistency layer
 * ---------------------------------------------------------------------- */

/* Normal content surfaces use one shared visual language. */
body:not(.mvm-header-dark) .mg-card-box,
body:not(.mvm-header-dark) .mg-blog-post-box,
body:not(.mvm-header-dark) .mg-sidebar .mg-widget,
body:not(.mvm-header-dark) .wpem-event-layout-wrapper,
body:not(.mvm-header-dark) #wpforo-wrap .forum-wrap,
body:not(.mvm-header-dark) .ps-page .ps-post,
body:not(.mvm-header-dark) .ps-page .ps-widget,
body:not(.mvm-header-dark) .mvm-public-card {
    background: #FFFFFF !important;
    border-color: var(--mvm-vis-border) !important;
}

body.mvm-header-dark .mg-card-box,
body.mvm-header-dark .mg-blog-post-box,
body.mvm-header-dark .mg-sidebar .mg-widget,
body.mvm-header-dark .wpem-event-layout-wrapper,
body.mvm-header-dark #wpforo-wrap .forum-wrap,
body.mvm-header-dark .ps-page .ps-post,
body.mvm-header-dark .ps-page .ps-widget,
body.mvm-header-dark .mvm-public-card {
    background: var(--mvm-vis-dark-surface) !important;
    border-color: var(--mvm-vis-dark-border) !important;
    color: var(--mvm-vis-dark-text) !important;
}

/* Headings: strong Mierlo-blue hierarchy in light mode; bright in dark mode. */
body:not(.mvm-header-dark) .mg-card-box h1,
body:not(.mvm-header-dark) .mg-card-box h2,
body:not(.mvm-header-dark) .mg-card-box h3,
body:not(.mvm-header-dark) .mg-card-box h4,
body:not(.mvm-header-dark) .wpem-heading-text,
body:not(.mvm-header-dark) #wpforo-title,
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-forum-title a,
body:not(.mvm-header-dark) .ps-page .ps-page__title,
body:not(.mvm-header-dark) .ps-page .ps-page__body-title,
body:not(.mvm-header-dark) .ps-page .ps-focus__name,
body:not(.mvm-header-dark) .mvm-section-head h2,
body:not(.mvm-header-dark) .mvm-public-card h3 {
    color: var(--mvm-vis-blue-deep) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-deep) !important;
}

body.mvm-header-dark .mg-card-box h1,
body.mvm-header-dark .mg-card-box h2,
body.mvm-header-dark .mg-card-box h3,
body.mvm-header-dark .mg-card-box h4,
body.mvm-header-dark .wpem-heading-text,
body.mvm-header-dark #wpforo-title,
body.mvm-header-dark #wpforo-wrap .wpforo-forum-title a,
body.mvm-header-dark .ps-page .ps-page__title,
body.mvm-header-dark .ps-page .ps-page__body-title,
body.mvm-header-dark .ps-page .ps-focus__name,
body.mvm-header-dark .mvm-section-head h2,
body.mvm-header-dark .mvm-public-card h3 {
    color: var(--mvm-vis-dark-text) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-text) !important;
}

/* News title links remain unmistakable, without affecting titles placed over photos. */
body:not(.mvm-header-dark) .mg-sec-top-post .title a,
body:not(.mvm-header-dark) .small-post .title a,
body:not(.mvm-header-dark) .title_small_post .title a,
body:not(.mvm-header-dark) .mg-blog-post-box:not(.single) .title a {
    color: var(--mvm-vis-blue) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue) !important;
    font-weight: 800 !important;
}
body.mvm-header-dark .mg-sec-top-post .title a,
body.mvm-header-dark .small-post .title a,
body.mvm-header-dark .title_small_post .title a,
body.mvm-header-dark .mg-blog-post-box:not(.single) .title a {
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
    font-weight: 800 !important;
}

/* Metadata: date, comments, author, forum counts and secondary labels. */
body:not(.mvm-header-dark) .mg-blog-meta,
body:not(.mvm-header-dark) .mg-blog-date,
body:not(.mvm-header-dark) .mg-info-author-block,
body:not(.mvm-header-dark) .mg-info-author-block .media-body,
body:not(.mvm-header-dark) .mg-info-author-block .newsup-tags,
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-forum-description,
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-forum-info > div,
body:not(.mvm-header-dark) .wpem-event-date-time,
body:not(.mvm-header-dark) .wpem-event-location,
body:not(.mvm-header-dark) .ps-page .ps-post__meta,
body:not(.mvm-header-dark) .ps-page .ps-comment__meta,
body:not(.mvm-header-dark) .ps-page .ps-text--muted,
body:not(.mvm-header-dark) .mvm-card-meta,
body:not(.mvm-header-dark) .mvm-section-head > span {
    color: var(--mvm-vis-muted) !important;
}

body.mvm-header-dark .mg-blog-meta,
body.mvm-header-dark .mg-blog-date,
body.mvm-header-dark .mg-info-author-block,
body.mvm-header-dark .mg-info-author-block .media-body,
body.mvm-header-dark .mg-info-author-block .newsup-tags,
body.mvm-header-dark #wpforo-wrap .wpforo-forum-description,
body.mvm-header-dark #wpforo-wrap .wpforo-forum-info > div,
body.mvm-header-dark .wpem-event-date-time,
body.mvm-header-dark .wpem-event-location,
body.mvm-header-dark .ps-page .ps-post__meta,
body.mvm-header-dark .ps-page .ps-comment__meta,
body.mvm-header-dark .ps-page .ps-text--muted,
body.mvm-header-dark .mvm-card-meta,
body.mvm-header-dark .mvm-section-head > span {
    color: var(--mvm-vis-dark-muted) !important;
}

/* Metadata links/icons keep a visible brand cue. */
body:not(.mvm-header-dark) .mg-blog-meta a,
body:not(.mvm-header-dark) .mg-blog-meta i,
body:not(.mvm-header-dark) .mg-info-author-block a,
body:not(.mvm-header-dark) .mg-info-author-block i,
body:not(.mvm-header-dark) #wpforo-wrap .wpf-breadcrumb a,
body:not(.mvm-header-dark) .ps-page .ps-post__meta a,
body:not(.mvm-header-dark) .ps-page .ps-comment__meta a {
    color: var(--mvm-vis-blue-hover) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-hover) !important;
}
body.mvm-header-dark .mg-blog-meta a,
body.mvm-header-dark .mg-blog-meta i,
body.mvm-header-dark .mg-info-author-block a,
body.mvm-header-dark .mg-info-author-block i,
body.mvm-header-dark #wpforo-wrap .wpf-breadcrumb a,
body.mvm-header-dark .ps-page .ps-post__meta a,
body.mvm-header-dark .ps-page .ps-comment__meta a {
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
}

/* Photo-overlay titles and metadata must remain white in both modes. */
.mg-blog-post-3.back-img .mg-blog-inner .title,
.mg-blog-post-3.back-img .mg-blog-inner .title a,
.mg-blog-post-3.back-img .mg-blog-meta,
.mg-blog-post-3.back-img .mg-blog-meta a,
.mg-blog-post-3.back-img .mg-blog-meta i,
.mg-blog-post-3.back-img .mg-blog-meta span,
.mg-blog-post-3.back-img .mg-blog-date,
.mg-blog-post-3.back-img .comments-link,
.mg-blog-post-3.back-img .edit-link,
.mg-blog-post-3.back-img .edit-link a,
.mg-blog-post-3.back-img .post-edit-link,
.mg-blog-post.lg .mg-blog-meta,
.mg-blog-post.lg .mg-blog-meta a,
.mg-blog-post.lg .mg-blog-meta i,
.mg-blog-post.md .mg-blog-meta,
.mg-blog-post.md .mg-blog-meta a,
.mg-blog-post.md .mg-blog-meta i,
.mg-blog-post .bottom .title,
.mg-blog-post .bottom .title a,
.mg-blog-post .bottom .mg-blog-meta,
.mg-blog-post .bottom .mg-blog-meta a,
.mg-blog-post .bottom .mg-blog-meta i,
.bs-blog-post.three .title,
.bs-blog-post.three .title a,
.bs-blog-post.three .mg-blog-meta,
.bs-blog-post.three .mg-blog-meta a,
.bs-blog-post.three .mg-blog-meta i,
.mg-post-box .title,
.mg-post-box .title a,
.mg-post-box .mg-blog-meta,
.mg-post-box .mg-blog-meta a,
.mg-post-box .mg-blog-meta i {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* Category identity: retain each category hue, only darken shades that fail with white text. */
.mg-blog-category a,
.bs-blog-category a,
a.newsup-categories,
.mg-blog-category a:visited,
.bs-blog-category a:visited,
a.newsup-categories:visited {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 800 !important;
    text-shadow: 0 1px 1px rgba(0,0,0,.18);
}
/* 112 & Veiligheid */
.mg-blog-category a[href*="/category/veiligheid/"],
.bs-blog-category a[href*="/category/veiligheid/"],
a.newsup-categories[href*="/category/veiligheid/"],
.mg-blog-category a[style*="#CE2746" i] { background-color: #CE2746 !important; }
/* Algemeen */
.mg-blog-category a[href*="/category/algemeen/"],
.bs-blog-category a[href*="/category/algemeen/"],
a.newsup-categories[href*="/category/algemeen/"],
.mg-blog-category a[style*="#058e6c" i] { background-color: #047A5D !important; }
/* Archief */
.mg-blog-category a[href*="/category/archief/"],
.bs-blog-category a[href*="/category/archief/"],
a.newsup-categories[href*="/category/archief/"],
.mg-blog-category a[style*="#6d6d6d" i] { background-color: #6D6D6D !important; }
/* Cultuur */
.mg-blog-category a[href*="/category/cultuur/"],
.bs-blog-category a[href*="/category/cultuur/"],
a.newsup-categories[href*="/category/cultuur/"],
.mg-blog-category a[style*="#29877f" i] { background-color: #24756F !important; }
/* Evenementen / Agenda */
.mg-blog-category a[href*="/category/agenda/"],
.bs-blog-category a[href*="/category/agenda/"],
a.newsup-categories[href*="/category/agenda/"],
.mg-blog-category a[style*="#dd8808" i] { background-color: #A85D00 !important; }
/* Politiek */
.mg-blog-category a[href*="/category/politiek/"],
.bs-blog-category a[href*="/category/politiek/"],
a.newsup-categories[href*="/category/politiek/"],
.mg-blog-category a[style*="#8224e3" i] { background-color: #8224E3 !important; }
/* Sport */
.mg-blog-category a[href*="/category/sport/"],
.bs-blog-category a[href*="/category/sport/"],
a.newsup-categories[href*="/category/sport/"],
.mg-blog-category a[style*="#5faf36" i] { background-color: #3F7429 !important; }
/* Verenigingen */
.mg-blog-category a[href*="/category/verenigingen/"],
.bs-blog-category a[href*="/category/verenigingen/"],
a.newsup-categories[href*="/category/verenigingen/"],
.mg-blog-category a[style*="#8e0000" i] { background-color: #8E0000 !important; }

/* Tags have one deliberate identity across articles, sidebars and footer. */
.mg-blog-post-box.single .newsup-tags a[rel="tag"],
.mg-sidebar .tagcloud a,
.wp-block-tag-cloud a,
footer .tagcloud a {
    display: inline-block;
    background: var(--mvm-vis-blue) !important;
    border: 1px solid var(--mvm-vis-blue) !important;
    border-radius: 999px;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}
.mg-blog-post-box.single .newsup-tags a[rel="tag"]:hover,
.mg-blog-post-box.single .newsup-tags a[rel="tag"]:focus,
.mg-sidebar .tagcloud a:hover,
.mg-sidebar .tagcloud a:focus,
.wp-block-tag-cloud a:hover,
.wp-block-tag-cloud a:focus,
footer .tagcloud a:hover,
footer .tagcloud a:focus {
    background: var(--mvm-vis-blue-deep) !important;
    border-color: var(--mvm-vis-blue-deep) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* wpForo: keep configured forum colour accents; standardise only surfaces/text. */
#wpforo-wrap .wpforo-category,
#wpforo-wrap .wpforo-cat-panel {
    border-radius: 10px !important;
}
#wpforo-wrap .wpforo-category .cat-title,
#wpforo-wrap .wpforo-category .cat-name {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 800 !important;
}
body:not(.mvm-header-dark) #wpforo-wrap .wpforo-forum {
    background: #FFFFFF !important;
    color: var(--mvm-vis-ink) !important;
}
body.mvm-header-dark #wpforo-wrap .wpforo-forum {
    background: var(--mvm-vis-dark-surface) !important;
    color: var(--mvm-vis-dark-text) !important;
}
#wpforo-wrap .wpforo-forum-title a {
    font-weight: 800 !important;
}
#wpforo-wrap .wpforo-forum-icon,
#wpforo-wrap .wpforo-forum-icon * {
    /* Forum icon colours are intentionally not overridden: wpForo keeps its own forum colour. */
}

/* PeepSo: align cards, titles, meta and actions with MvM without flattening PeepSo states. */
body:not(.mvm-header-dark) .ps-page .ps-landing__form,
body:not(.mvm-header-dark) .ps-page .ps-postbox,
body:not(.mvm-header-dark) .ps-page .ps-post,
body:not(.mvm-header-dark) .ps-page .ps-comment,
body:not(.mvm-header-dark) .ps-page .ps-dialog,
body:not(.mvm-header-dark) .ps-page .ps-popover,
body:not(.mvm-header-dark) .ps-page .ps-dropdown__menu {
    background: #FFFFFF !important;
    border-color: var(--mvm-vis-border) !important;
    color: var(--mvm-vis-ink) !important;
}
body.mvm-header-dark .ps-page .ps-landing__form,
body.mvm-header-dark .ps-page .ps-postbox,
body.mvm-header-dark .ps-page .ps-post,
body.mvm-header-dark .ps-page .ps-comment,
body.mvm-header-dark .ps-page .ps-dialog,
body.mvm-header-dark .ps-page .ps-popover,
body.mvm-header-dark .ps-page .ps-dropdown__menu {
    background: var(--mvm-vis-dark-surface) !important;
    border-color: var(--mvm-vis-dark-border) !important;
    color: var(--mvm-vis-dark-text) !important;
}
.ps-page .ps-btn--action,
.ps-page .ps-btn--primary,
.ps-page .ps-btn-primary,
.ps-page .ps-button-action {
    background: var(--mvm-vis-blue) !important;
    border-color: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
}
.ps-page .ps-btn--action:hover,
.ps-page .ps-btn--primary:hover,
.ps-page .ps-btn-primary:hover,
.ps-page .ps-button-action:hover {
    background: var(--mvm-vis-blue-deep) !important;
    border-color: var(--mvm-vis-blue-deep) !important;
    color: #FFFFFF !important;
}

/* Agenda / WP Event Manager: same card language, clear event titles and meta. */
.wpem-event-layout-wrapper {
    border: 1px solid var(--mvm-vis-border) !important;
    border-radius: 14px !important;
    overflow: hidden;
}
body.mvm-header-dark .wpem-event-layout-wrapper {
    border-color: var(--mvm-vis-dark-border) !important;
}
body:not(.mvm-header-dark) .wpem-event-title .wpem-heading-text,
body:not(.mvm-header-dark) .wpem-event-listing-header-title .wpem-heading-text {
    color: var(--mvm-vis-blue-deep) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-deep) !important;
    font-weight: 800 !important;
}
body.mvm-header-dark .wpem-event-title .wpem-heading-text,
body.mvm-header-dark .wpem-event-listing-header-title .wpem-heading-text {
    color: var(--mvm-vis-dark-text) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-text) !important;
    font-weight: 800 !important;
}
.wpem-event-date .wpem-from-date,
.wpem-event-date .wpem-to-date {
    color: var(--mvm-vis-blue-deep) !important;
}
body.mvm-header-dark .wpem-event-date .wpem-from-date,
body.mvm-header-dark .wpem-event-date .wpem-to-date {
    color: var(--mvm-vis-dark-link) !important;
}

/* Encyclopedie: same surface, title and metadata hierarchy as the rest of MvM. */
.mvm-hero,
.mvm-entry-grid a,
.mvm-public-card,
.mvm-az-letter,
.mvm-timeline-item,
.mvm-theme-card,
.mvm-dossier-card {
    border-radius: 14px !important;
}
body:not(.mvm-header-dark) .mvm-entry-grid a,
body:not(.mvm-header-dark) .mvm-az-letter,
body:not(.mvm-header-dark) .mvm-theme-card,
body:not(.mvm-header-dark) .mvm-dossier-card {
    background: #FFFFFF !important;
    border-color: var(--mvm-vis-border) !important;
    color: var(--mvm-vis-ink) !important;
}
body.mvm-header-dark .mvm-entry-grid a,
body.mvm-header-dark .mvm-az-letter,
body.mvm-header-dark .mvm-theme-card,
body.mvm-header-dark .mvm-dossier-card {
    background: var(--mvm-vis-dark-surface) !important;
    border-color: var(--mvm-vis-dark-border) !important;
    color: var(--mvm-vis-dark-text) !important;
}
body:not(.mvm-header-dark) .mvm-az-topic a,
body:not(.mvm-header-dark) .mvm-read-more {
    color: var(--mvm-vis-blue-hover) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-hover) !important;
}
body.mvm-header-dark .mvm-az-topic a,
body.mvm-header-dark .mvm-read-more {
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
}

/* Generic primary buttons across the public site: white label on Mierlo blue. */
#content .btn-theme,
#content a.btn-theme,
#content button.btn-theme,
#content input[type="submit"],
.wpcf7 input[type="submit"],
.mvm-public-search button,
.wpem-main input[type="submit"],
#wpforo-wrap input[type="submit"],
#wpforo-wrap button[type="submit"] {
    background: var(--mvm-vis-blue) !important;
    border-color: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
}
#content .btn-theme:hover,
#content .btn-theme:focus,
#content input[type="submit"]:hover,
#content input[type="submit"]:focus,
.wpcf7 input[type="submit"]:hover,
.wpcf7 input[type="submit"]:focus,
.mvm-public-search button:hover,
.mvm-public-search button:focus,
.wpem-main input[type="submit"]:hover,
.wpem-main input[type="submit"]:focus,
#wpforo-wrap input[type="submit"]:hover,
#wpforo-wrap input[type="submit"]:focus,
#wpforo-wrap button[type="submit"]:hover,
#wpforo-wrap button[type="submit"]:focus {
    background: var(--mvm-vis-blue-deep) !important;
    border-color: var(--mvm-vis-blue-deep) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* Extra consistency for tags/chips. */
.mg-blog-post-box.single .newsup-tags a[rel="tag"],
.mg-sidebar .tagcloud a,
.wp-block-tag-cloud a,
footer .tagcloud a {
    padding: 5px 10px !important;
    margin: 2px 3px 2px 0 !important;
    line-height: 1.2 !important;
}

/* Section bars stay recognisably MvM blue with white headings. */
.mg-sec-title .wtitle,
.mg-latest-news .bn_title,
.mg-latest-news .bn_title .wtitle,
.mg-featured-slider .mg-sec-title .wtitle {
    background: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* wpForo footer/secondary information follows the same light/dark card system. */
body:not(.mvm-header-dark) #wpforo-wrap #wpforo-footer,
body:not(.mvm-header-dark) #wpforo-wrap #wpforo-stat-body,
body:not(.mvm-header-dark) #wpforo-wrap .wpf-footer-box {
    background: #FFFFFF !important;
    border-color: var(--mvm-vis-border) !important;
    color: var(--mvm-vis-ink) !important;
}
body.mvm-header-dark #wpforo-wrap #wpforo-footer,
body.mvm-header-dark #wpforo-wrap #wpforo-stat-body,
body.mvm-header-dark #wpforo-wrap .wpf-footer-box {
    background: var(--mvm-vis-dark-surface) !important;
    border-color: var(--mvm-vis-dark-border) !important;
    color: var(--mvm-vis-dark-text) !important;
}
#wpforo-wrap #wpforo-stat-header {
    background: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
}
#wpforo-wrap #wpforo-stat-header *,
#wpforo-wrap #wpforo-stat-header a {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}
body:not(.mvm-header-dark) #wpforo-wrap .wpf-stat-label,
body:not(.mvm-header-dark) #wpforo-wrap .wpf-newest-member {
    color: var(--mvm-vis-muted) !important;
}
body.mvm-header-dark #wpforo-wrap .wpf-stat-label,
body.mvm-header-dark #wpforo-wrap .wpf-newest-member {
    color: var(--mvm-vis-dark-muted) !important;
}

/* Secondary PeepSo actions stay distinct from primary MvM-blue actions. */
body:not(.mvm-header-dark) .ps-page .ps-btn:not(.ps-btn--action):not(.ps-btn--primary):not(.ps-btn-primary):not(.ps-button-action) {
    background: #FFFFFF !important;
    border-color: var(--mvm-vis-border) !important;
    color: var(--mvm-vis-blue-hover) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-hover) !important;
}
body.mvm-header-dark .ps-page .ps-btn:not(.ps-btn--action):not(.ps-btn--primary):not(.ps-btn-primary):not(.ps-button-action) {
    background: var(--mvm-vis-dark-raised) !important;
    border-color: var(--mvm-vis-dark-border) !important;
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
}

/* Event attendance/status controls are readable without competing with primary actions. */
body:not(.mvm-header-dark) .wpem-event-register-label .ps-dropdown__toggle {
    background: var(--mvm-vis-soft) !important;
    border-color: #D5E3EE !important;
    color: var(--mvm-vis-blue-deep) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-deep) !important;
}
body.mvm-header-dark .wpem-event-register-label .ps-dropdown__toggle {
    background: var(--mvm-vis-dark-raised) !important;
    border-color: var(--mvm-vis-dark-border) !important;
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
}

/* Encyclopedie entry buttons use the same MvM interaction language. */
body:not(.mvm-header-dark) .mvm-entry-grid a,
body:not(.mvm-header-dark) .mvm-az-nav a {
    border-color: var(--mvm-vis-blue) !important;
    color: var(--mvm-vis-blue-deep) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-deep) !important;
    font-weight: 700 !important;
}
body:not(.mvm-header-dark) .mvm-entry-grid a:hover,
body:not(.mvm-header-dark) .mvm-entry-grid a:focus,
body:not(.mvm-header-dark) .mvm-az-nav a:hover,
body:not(.mvm-header-dark) .mvm-az-nav a:focus {
    background: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}
body.mvm-header-dark .mvm-entry-grid a,
body.mvm-header-dark .mvm-az-nav a {
    border-color: var(--mvm-vis-dark-link) !important;
    color: var(--mvm-vis-dark-link) !important;
    -webkit-text-fill-color: var(--mvm-vis-dark-link) !important;
}
body.mvm-header-dark .mvm-entry-grid a:hover,
body.mvm-header-dark .mvm-entry-grid a:focus,
body.mvm-header-dark .mvm-az-nav a:hover,
body.mvm-header-dark .mvm-az-nav a:focus {
    background: var(--mvm-vis-blue) !important;
    border-color: var(--mvm-vis-blue) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* Footer tag cloud: white pills with visible Mierlo-blue labels. */
footer #tag_cloud-2 .tagcloud a,
footer .widget_tag_cloud .tagcloud a,
footer .mg-widget.widget_tag_cloud .tagcloud a {
    background: #FFFFFF !important;
    border: 1px solid #FFFFFF !important;
    color: var(--mvm-vis-blue-deep) !important;
    -webkit-text-fill-color: var(--mvm-vis-blue-deep) !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}
footer #tag_cloud-2 .tagcloud a:hover,
footer #tag_cloud-2 .tagcloud a:focus,
footer .widget_tag_cloud .tagcloud a:hover,
footer .widget_tag_cloud .tagcloud a:focus,
footer .mg-widget.widget_tag_cloud .tagcloud a:hover,
footer .mg-widget.widget_tag_cloud .tagcloud a:focus {
    background: var(--mvm-vis-blue-deep) !important;
    border-color: #FFFFFF !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* Footer/"Dit wil je niet missen" section title: always white on the blue ribbon. */
.missed-inner .mg-sec-title .wtitle,
.missed-inner .mg-sec-title .wtitle * {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

@media (max-width: 767px) {
    .mg-sec-top-post .title a,
    .mg-blog-post-3.back-img .mg-blog-inner .title a,
    .mg-blog-post .bottom .title a {
        line-height: 1.32 !important;
    }

    .mg-sec-top-post .mg-blog-meta,
    .mg-blog-post-box .mg-blog-meta,
    .mg-blog-post-box.single .mg-info-author-block,
    #wpforo-wrap .wpforo-forum-info > div,
    .wpem-event-date-time,
    .wpem-event-location {
        line-height: 1.45 !important;
    }
}
