/* Blocksy-adapter: uitsluitend structurele integratie met het actieve thema. */

/* Laatste structurele Blocksy-regels uit de oude correctielaag. */
@media (max-width: 600px) {
  body:is(.category, .tag, .search, .single-post) #main > .ct-container {
    row-gap: 24px !important;
  }

  body.home #main > .ct-container {
    row-gap: var(--lwd-home-section-gap) !important;
  }

  body.single-post .ct-related-posts > .ct-module-title {
    font-family: var(--lwd-body-font, Arial, sans-serif) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    letter-spacing: normal !important;
  }

  body.single-post .related-entry-title,
  body.single-post .related-entry-title a {
    font-family: var(--lwd-body-font, Arial, sans-serif) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    letter-spacing: normal !important;
  }

  body.single-post .entry-tags,
  body.single-post .entry-tags-items {
    justify-content: flex-start !important;
    text-align: left !important;
  }

  body.single-post .entry-tags-items a {
    text-align: left !important;
  }

}
/* Eén vast paginaritme, onafhankelijk van oude thema- en blokmarges. */
body #header {
  margin-bottom: 0 !important;
}

body #main > .ct-container {
  padding-top: var(--lwd-home-start-gap) !important;
}

body.home #main > .ct-container,
body.lwd-dossier-page #main > .ct-container {
  row-gap: var(--lwd-home-section-gap) !important;
}

body #sidebar .ct-sidebar {
  margin-top: 0 !important;
}

body #sidebar .ct-sidebar > .ct-widget {
  margin: 0 0 var(--lwd-sidebar-gap) !important;
}

body #sidebar .ct-sidebar > .ct-widget:last-child {
  margin-bottom: 0 !important;
}

body #sidebar .ct-widget > :is(
  .lwd-sidebar-ad-wrap,
  .lwd-sidebar-promo,
  .lwd-home-ad,
  .lwd-banner-combination,
  .lwd-regiolinks-banner
) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

body #sidebar .ct-widget > p:empty {
  display: none !important;
}

/*
 * Eén gezaghebbende zijbalkrail: alle kaarten gebruiken dezelfde binnenbreedte
 * als Net binnen en de Stadsblad-PDF. Tekstkaarten regelen hun inspringing met
 * --lwd-sidebar-card-padding; beeldbanners mogen de volledige kaart vullen.
 */
body #sidebar :is(
  .lwd-sidebar-ad-wrap,
  .lwd-regiolinks-banner,
  .lwd-sidebar-promo,
  .lwd-sidebar-newsletter,
  .lwd-sidebar-subscription:not(.lwd-sidebar-latest-posts),
  .lwd-sidebar-switch-ad,
  .lwd-banner-combination
) {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body #sidebar .lwd-home-ad :is(a, img) {
    width: 100% !important;
    max-width: 100% !important;
}

/* Geneste inhoud vult eenmaal de gemeenschappelijke kaartbreedte. */
body #sidebar .lwd-sidebar-ad-wrap > .lwd-sidebar-pel {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

/*
 * Mobiele zijbalk met drie bewuste rails:
 * 1. kaarten en beeldbanners volgen de volle beeldkoprail;
 * 2. tekst in Net binnen, Stadsblad, nieuwsbrief en Regiolinks volgt met 14px
 *    inspringing de gewone titelrail;
 * 3. echte beeldadvertenties volgen dezelfde advertentierail als in #main.
 */
@media (max-width: 689.98px) {
    body #sidebar .ct-sidebar {
        padding: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
    }

    body #sidebar :is(
      .lwd-sidebar-ad-wrap,
      .lwd-regiolinks-banner,
      .lwd-sidebar-promo,
      .lwd-sidebar-latest,
      .lwd-sidebar-newsletter,
      .lwd-sidebar-subscription,
      .lwd-sidebar-switch-ad,
      .lwd-banner-combination
    ) {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    body #sidebar :is(
      .lwd-sidebar-latest,
      .lwd-sidebar-subscription,
      .lwd-sidebar-newsletter,
      .lwd-regiolinks-banner
    ) {
        --lwd-sidebar-card-padding: 14px;
    }

    body #main figure.lwd-home-ad,
    body #sidebar figure.lwd-home-ad {
        width: calc(100% - 28px) !important;
        max-width: calc(100% - 28px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body #sidebar .lwd-sidebar-ad-wrap > .lwd-sidebar-pel {
        width: 100% !important;
        max-width: none !important;
    }
}

/*
 * Advertenties staan bewust niet in de algemene 100%-zijbalkrail hierboven.
 * Anders wint die brede :is()-selector door zijn hogere CSS-specificiteit van
 * deze schermspecifieke advertentieregel.
 */

/*
 * Desktop: in de hoofdcontent blijft de advertentierail 80%. In de smallere
 * zijbalk sluiten de advertentieranden aan op de tekstinspringing van 22px.
 */
@media (min-width: 1000px) {
    body #main figure.lwd-home-ad {
        width: 80% !important;
        max-width: 80% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body #sidebar figure.lwd-home-ad {
        width: calc(100% - 44px) !important;
        max-width: calc(100% - 44px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/*
 * Static WordPress sidebar blocks used as an emergency fallback. The plugin
 * stylesheet disappears when Liwwadders Extra is disabled, revealing them.
 */
#sidebar .liw-slot-sidebar-hide {
    display: none !important;
}
/* Sitebreed mobiel ritme tussen het einde van de hoofdinhoud en de zijbalk. */
@media (max-width: 689.98px) {
    body #main > .ct-container:has(> #sidebar) { row-gap: 12px !important; }
}

/* Gecentraliseerde Blocksy-selectoren. */
/* Afkomstig uit liwwadders-base.css. */
/*
 * Eén schermlettertype voor alle algemene koppen. Alleen de grote titel van
 * een afzonderlijk artikel krijgt verderop het redactionele Georgia-accent.
 */
body #sidebar :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--lwd-heading-font, Arial, sans-serif) !important;
}

/* Desktop: het logo is ongeveer 10-20% breder dan het volledige hoofdmenu. */
@media (min-width: 1000px) {

  /* Eén rustig desktopkader voor kop, inhoud en voettekst. */
  #header .ct-container,
#main > .ct-container,
#footer .ct-container {
    width: min(calc(100% - 48px), var(--lwd-site-width)) !important;
    max-width: var(--lwd-site-width) !important;
    margin-inline: auto !important;
  }

  #main > .ct-container:has(> #sidebar) {
    grid-template-columns: minmax(0, 1fr) var(--lwd-sidebar-width) !important;
    column-gap: var(--lwd-column-gap) !important;
  }

  .ct-logo-container {
    box-sizing: border-box;
    padding: 6px;
  }

  .ct-header [data-device="desktop"] [data-row="bottom"] .ct-container {
    min-height: 0 !important;
  }

  .ct-header [data-device="desktop"] #menu-lwdmenu > li > a {
    height: auto !important;
    min-height: 0 !important;
    padding-block: 6px !important;
    line-height: 1.2 !important;
  }

  /* Voorpagina: 12px van de onderste menulijn tot de eerste artikelrij. */
  body.home #header {
    margin-bottom: 0;
  }

  body.home #main > .ct-container {
    padding-top: var(--lwd-home-start-gap);
  }}

/* Mobiele instellingen */
@media (max-width: 600px) {
  #header.ct-header {
    margin-bottom: 8px;
  }}
#header nav {
  font-family: var(--lwd-menu-font);
  font-size: var(--lwd-menu-size);
  font-stretch: condensed;
  font-weight: var(--lwd-menu-weight);
  letter-spacing: var(--lwd-menu-tracking);
}
#header nav a {
  font: inherit !important;
  letter-spacing: inherit;
}
/* Header en logo */
.ct-header [data-row="middle"],
.ct-header [data-row="top"],
.ct-header [data-row="bottom"] { overflow: visible !important; }
.ct-header [data-row="middle"] { background: #fff !important; }
.ct-logo-container {
  width: var(--lwd-logo-width) !important;
  display: block !important;
  text-align: center;
}
.ct-logo-container img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 auto !important;
}
.ct-header .ct-logo { width: 100% !important; }
.ct-header .ct-container {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.ct-header { margin-bottom: 15px; }

/* Zijbalk */
.ct-sidebar {
  padding: 5px;
  border-radius: 12px;
  background: var(--lwd-sidebar-bg);
  font-family: var(--lwd-body-font);
  font-size: var(--lwd-sidebar-size);
  line-height: 1.5;
}
.ct-sidebar :is(.widget-title,.widgettitle,.wp-block-heading) {
  font-family: var(--lwd-heading-font); font-size: var(--lwd-sidebar-title-size); line-height: 1.25;
}

/* Footer */
#footer a,
#footer a:is(:link, :visited, :hover, :focus, :active) { color: #fff !important; text-decoration: none !important; }
#footer a:focus-visible { outline-color: #fff; }

body.single-post .lwd-post-ad + .ct-related-posts {
  margin-top: 20px !important;
  padding-top: 20px !important;
}

/* Keep the related heading close to the optional donation block. */
body.single-post .lwd-post-donation + .ct-related-posts {
  margin-top: 20px !important;
  padding-top: 20px !important;
}

.ct-sidebar figcaption,
.ct-sidebar .wp-caption-text,
.ct-sidebar .wp-element-caption,
.ct-sidebar .lwd-sidebar-ad-caption {
  margin-top: 6px;
  color: #666 !important;
  font-family: var(--lwd-body-font);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
}

/* Afkomstig uit liwwadders-content.css. */
/* Liwwadders Extra: automatisch afgesplitst uit liwwadders-layout.css. */

body:is(.category,.tag,.search) .entry-card .entry-title {
  font-family: var(--lwd-heading-font) !important;
  font-size: var(--lwd-card-title-size) !important;
  font-weight: var(--lwd-heading-weight);
  line-height: var(--lwd-headline-leading);
  letter-spacing: var(--lwd-small-heading-tracking);
  overflow-wrap: anywhere;
}
body:is(.category,.tag,.search) .entry-card .entry-title a {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  letter-spacing: inherit;
  line-height: inherit;
}
body:is(.category,.tag,.search) .entry-card .entry-excerpt {
  font-family: var(--lwd-body-font);
  font-size: var(--lwd-body-size);
  line-height: var(--lwd-body-leading);
}

/* Compactere regels binnen categorieresultaten */
body:is(.category,.tag,.search) .entry-card .entry-title {
  line-height: 1.25;
  font-size: calc(var(--lwd-card-title-size) - 3px) !important;
  margin-bottom: 3px !important;
}

body:is(.category,.tag,.search) .entry-card .entry-excerpt {
  margin-top: 0 !important;
  line-height: 1.6;
  font-size: calc(var(--lwd-body-size) - 2px) !important;
}

body:is(.category,.tag,.search) .entry-card .entry-meta {
  display: none !important;
}

body:is(.category,.tag,.search) .entry-card :is(.meta-date, .meta-date a, time) {
  color: var(--theme-palette-color-6, #5c5c5c) !important;
}
@media (min-width: 1000px) {
  /* Laat het grijze zijbalkvlak gelijk beginnen met de eerste artikelrij. */
  body.home #sidebar .ct-sidebar {
    margin-top: 0;
  }

  body.home #sidebar .ct-sidebar > .ct-widget {
    margin: 0 0 var(--lwd-home-section-gap) !important;
  }

  body.home #sidebar .ct-sidebar > .ct-widget:last-child {
    margin-bottom: 0 !important;
  }}
:is(.category,.tag,.search) .entry-card { align-items: flex-start !important; }
:is(.category,.tag,.search) .entry-card .card-content { align-self: flex-start !important; }
body.single-post :is(.hero-section,.entry-header) :is(.meta-author,.meta-categories,.ct-post-categories) { display: none !important; }

body.single-post .ct-related-posts {
  padding-bottom: 40px;
}

@media (min-width: 601px) {
  body.single-post .ct-share-box + .ct-related-posts {
    margin-top: 30px !important;
    padding-top: 20px !important;
  }}

@media (min-width: 601px) {
  body.single-post :is(.hero-section,.entry-header) .meta-date::before { display: none !important; }}

/* Links categoriepagina */
body:is(.category,.tag,.search) :is(.lwd-category .lwd-post h2, .entry-card .entry-title) a:link,
body:is(.category,.tag,.search) :is(.lwd-category .lwd-post h2, .entry-card .entry-title) a:visited {
  color: var(--lwd-ink) !important;
}
body:is(.category,.tag,.search) :is(.lwd-category .lwd-post h2, .entry-card .entry-title) a:is(:hover, :focus, :active) {
  color: var(--lwd-red) !important;
}

body.single-post .entry-tags-items a:is(:link, :visited) {
  background: transparent !important;
  color: var(--lwd-ink) !important;
}

body.single-post .entry-tags {
  margin-top: 16px !important;
}

body.single-post .entry-tags-items a:is(:hover, :focus, :active) {
  background: transparent !important;
  color: var(--lwd-red) !important;
}

/* Text headlines on the homepage. Cover-image headlines remain white below. */
body.single-post .ct-related-posts .related-entry-title a:link,
body.single-post .ct-related-posts .related-entry-title a:visited {
    color: var(--lwd-link-blue) !important;
}

body.single-post .entry-tags-items a:is(:link, :visited, :hover, :focus, :active) {
    color: var(--lwd-link-blue) !important;
}

body.single-post .ct-related-posts .ct-module-title {
    color: #000;
    font-family: var(--lwd-body-font, Arial, sans-serif) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: normal !important;
}

body.single-post .ct-related-posts :is(.related-entry-title, .related-entry-title a) {
    font-family: var(--lwd-body-font, Arial, sans-serif) !important;
    font-size: 15px !important;
    letter-spacing: normal !important;
}

/* Keep the related-article list compact on every screen size. */
body.single-post .ct-related-posts-items {
    gap: 8px !important;
    row-gap: 8px !important;
}

/* De kop 'Meer berichten' gebruikt hetzelfde ritme als de artikelen eronder. */
body.single-post .ct-related-posts > .ct-module-title {
    margin: 0 0 8px !important;
    padding: 0 !important;
}

body.single-post .ct-related-posts > .ct-module-title + .ct-related-posts-items {
    margin-top: 0 !important;
}

body:is(.category, .tag, .search, .date, .author, .post-type-archive) #main .entry-card {
    padding: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body:is(.category, .tag, .search, .date, .author, .post-type-archive) #main .entry-card .card-content {
    padding: 0 !important;
}

body.single-post .meta-date {
    display: block !important;
}

body.single-post .meta-date > :is(.lwd-meta-primary,.lwd-meta-credits) {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: .15em 0;
    margin: 0 !important;
    padding: 0 !important;
}

body.single-post .meta-date > .lwd-meta-credits {
    margin-top: .28em !important;
}

body.single-post .meta-date > :is(.lwd-meta-primary,.lwd-meta-credits) {
    width: 100%;
}

body.single-post .meta-date :is(.lwd-meta-date-group,.lwd-meta-category-group) {
    display: inline-flex;
    align-items: center;
    min-width: 0;
}

body.single-post .meta-date .lwd-meta-separator {
    display: inline-block;
    margin-inline: .42em !important;
}

body.single-post .meta-date :is(.lwd-post-attribution,.lwd-post-photo-attribution,.lwd-post-categories) {
    display: inline;
    margin: 0 !important;
    padding: 0 !important;
}

body.single-post .meta-date :is(.lwd-post-attribution, .lwd-post-photo-attribution) > .liw-attribution-value {
    margin-inline-start: 0;
}

body.single-post .ct-share-box[data-location="bottom"] {
    margin-top: 12px !important;
    margin-bottom: 24px !important;
}

@media (max-width: 600px) {
    body:is(.category,.tag,.search) .entry-card .entry-excerpt {
        font-size: 15px !important;
    }}

/* Algemene resultaatkoppen en kaarttypografie. */
@media (max-width: 689.98px) {
  body:is(.category,.tag,.search) .entry-card .entry-title {
    font-size: calc(var(--lwd-card-title-size) - 1px) !important;
    line-height: 1.35;
  }}

/* Afkomstig uit liwwadders-dossiers.css. */
/* Liwwadders Extra: automatisch afgesplitst uit liwwadders-layout.css. */
/* A dossier shortcode lives inside an ordinary page and never widens its container. */
body.lwd-dossier-page :is(.hero-section, .entry-header) > h1:is(.page-title, .entry-title) {
  display: none !important;
}

/* Afkomstig uit liwwadders-forum.css. */
/* Liwwadders forum: deliberately plain and theme-independent. */
body.liw-forum-page #main .ct-container > article {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
}

/* Afkomstig uit liwwadders-regiolinks.css. */
/* Liwwadders Extra: automatisch afgesplitst uit liwwadders-layout.css. */
body.liw-regiolinks-page .ct-sidebar .lwd-regiolinks-banner {
    display: none !important;
}
