/* Mastrent – blokken en patronen in de v6-stijl (futuristisch-v6: glaskaarten, pakketten, werkwijze, regio-kaart,
   CTA-band). Kleuren uitsluitend via tokens (tokens.css); werkt in licht en donker. Header/footer/knoppen-basis:
   components.css. De klassen (p-*, kaart, stap-nr …) staan zo in de bestaande pagina's én in de patronen. */

[hidden]{display:none!important}

/* Offerte- en prijsknoppen alleen in de kopbalk en de hero; op de telefoon alleen in de balk onderin (mobiel.css).
   Elders op de pagina geen knoppen naar de rekentool of het offerteformulier, ook niet als ze in de inhoud staan
   (klant 2026-10-30). Tekstlinks in een zin en de rekentool zelf blijven. */
main .wp-block-button:has(> a[href*="offerte-aanvragen"], > a[href*="#rekentool"]):not(:is(.p-hero, .mr-paginakop) *){display:none}
main .wp-block-buttons:not(:has(> .wp-block-button:not(:has(> a[href*="offerte-aanvragen"], > a[href*="#rekentool"])))):not(:is(.p-hero, .mr-paginakop) *){display:none}
main .p-cta-band{display:none}

/* =========================================================================================================
   Gedeeld: glas, typografie, knoppen in content
   ========================================================================================================= */
.kaart,.kort-antwoord,.rekentool,.mr-formulier,.dl,.mastrent-faq details,.bewijs-cijfers__tegel,.bewijs-persoon:not(.bewijs-persoon--profiel),
.p-trust-bar>.wp-block-columns,.exit-dialog,.query-grid .wp-block-post,.wp-block-table,.zijkolom{
  position:relative;background:var(--mr-glass);-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%);
  border-radius:var(--mr-r-l);box-shadow:var(--mr-shadow);border:0;color:var(--mr-text)}
/* 1px gradiëntrand (zoals .mr-glass) */
.kaart::before,.kort-antwoord::before,.rekentool::before,.mr-formulier::before,.dl::before,.bewijs-cijfers__tegel::before,
.bewijs-persoon:not(.bewijs-persoon--profiel)::before,.p-trust-bar>.wp-block-columns::before,.exit-dialog::before,.query-grid .wp-block-post::before,.zijkolom::before{
  content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(145deg, var(--mr-hair-a), var(--mr-hair-b) 40%, var(--mr-hair-b) 62%, var(--mr-hair-c));
  -webkit-mask:linear-gradient(black 0 0) content-box, linear-gradient(black 0 0);-webkit-mask-composite:xor;
  mask:linear-gradient(black 0 0) content-box exclude, linear-gradient(black 0 0)}

/* Oude vlakke banden in bestaande content: de pagina-achtergrond (gradiënt) loopt door, zoals in v6. */
.wp-block-post-content :is(.has-soft-background-color,.has-tint-background-color){background-color:transparent!important}

/* Content-links */
.wp-block-post-content :where(p,li,td,figcaption) a:where(:not(.wp-element-button)){color:var(--mr-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.wp-block-post-content :where(p,li,td) a:where(:not(.wp-element-button)):hover{text-decoration-thickness:2px}

/* Knoppen: primair geel met glans, outline als glazen "ghost"-knop (v6 .btn-ghost) */
.wp-element-button,.wp-block-button__link{position:relative;overflow:hidden;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--mr-font-display);font-weight:600;letter-spacing:-.01em;line-height:1.1;text-decoration:none;box-sizing:border-box;
  transition:transform .35s var(--mr-ease), box-shadow .35s, background .35s, color .35s, border-color .35s}
.wp-block-button:not(.is-style-outline) .wp-block-button__link,button.wp-element-button,a.wp-element-button:not(.wp-block-button__link){
  box-shadow:0 12px 30px -12px var(--mr-geel-schaduw), inset 0 -2px 0 rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.5)}
.wp-block-button:not(.is-style-outline) .wp-block-button__link::after,button.wp-element-button::after,a.wp-element-button:not(.wp-block-button__link)::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.6) 50%,transparent 70%);background-size:250% 100%;background-position:130% 0;transition:background-position .9s var(--mr-ease)}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,button.wp-element-button:hover,a.wp-element-button:not(.wp-block-button__link):hover{
  background:var(--mr-geel);color:var(--mr-on-geel);box-shadow:0 18px 44px -12px var(--mr-geel-schaduw-sterk)}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover::after,button.wp-element-button:hover::after,a.wp-element-button:not(.wp-block-button__link):hover::after{background-position:-40% 0}
.wp-block-button.is-style-outline .wp-block-button__link{color:var(--mr-text);background:var(--mr-glass);border:1px solid var(--mr-border-2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--mr-glass-strong);border-color:color-mix(in oklab, var(--mr-geel) 65%, transparent)}
:is(.wp-element-button,.wp-block-button__link):focus-visible{outline:2px solid var(--mr-focus);outline-offset:3px}
.wp-block-buttons{gap:12px}

/* Vinkjes (v6: gele vinkjes / ruitjes) */
.vinkjes{list-style:none;padding:0;margin:1.5rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;font-size:.9rem;font-weight:600;color:var(--mr-muted)}
.vinkjes li{display:flex;align-items:center;gap:.6rem}
.vinkjes li::before{content:"";flex:none;width:6px;height:6px;border-radius:1.5px;background:var(--mr-geel);transform:rotate(45deg)}
.vinkjes--lijst{flex-direction:column;flex-wrap:nowrap;gap:.75rem;font-size:1rem;font-weight:500;color:var(--mr-muted)}
.vinkjes--lijst li{align-items:flex-start}
.vinkjes--lijst li::before{width:18px;height:18px;margin-top:.2em;border-radius:0;transform:none;background:var(--mr-accent);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M4 12.5l5 5L20 6.5'/></svg>") center/contain no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M4 12.5l5 5L20 6.5'/></svg>") center/contain no-repeat}

/* Eyebrow (v6): kapitaal, ruim gespatieerd, met gele streep */
p.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mr-font-display);font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mr-muted);background:none;padding:0;border-radius:0;margin:0}
p.eyebrow::before{content:"";width:28px;height:1px;flex:none;background:linear-gradient(90deg,var(--mr-geel),var(--mr-border-2))}

/* =========================================================================================================
   Secties (patronen)
   ========================================================================================================= */
:is(.p-hero,.p-tekst,.p-rekentool,.p-trust-bar,.p-doelgroepen,.p-stappen,.p-pakketten,.p-mast-specs,.p-reviews,.p-werkgebied,.p-faq,.p-cta-band,.p-tekst-beeld,.p-kaarten,.p-download){
  position:relative;padding:clamp(3.5rem,8vw,7rem) 1rem;box-sizing:border-box;background-color:transparent}
.p-tekst+.p-tekst{padding-top:0}
:is(.p-doelgroepen,.p-stappen,.p-pakketten,.p-reviews,.p-kaarten,.p-faq,.p-rekentool,.p-werkgebied,.p-mast-specs,.p-tekst-beeld,.p-cta-band) h2,
.p-tekst>h2{font-size:clamp(2rem,4.2vw,3.5rem);line-height:1.02;letter-spacing:-.035em}
:is(.p-doelgroepen,.p-stappen,.p-pakketten,.p-reviews,.p-kaarten,.p-faq,.p-rekentool)>h2{text-align:center;margin:0 auto .75rem}
.p-tekst>h2{font-size:clamp(1.75rem,3.2vw,2.6rem);margin-top:0}
.sectie-intro{text-align:center;max-width:42rem;margin:0 auto clamp(2rem,4vw,3.5rem)!important;color:var(--mr-muted)!important}
.p-tekst h3{margin:2rem 0 .25rem;font-size:clamp(1.2rem,1.8vw,1.4rem);letter-spacing:-.02em}
.p-tekst h2+p{margin-top:.9rem}
.p-tekst :where(p,li){color:var(--mr-muted)}
.p-tekst :where(strong){color:var(--mr-text)}
.p-tekst ul:not(.vinkjes){padding-left:1.1rem}
.p-tekst ul:not(.vinkjes) li::marker{color:var(--mr-accent)}
.p-tekst ol li::marker{color:var(--mr-accent);font-family:var(--mr-font-display);font-weight:600}

/* ---------- Hero (landingspagina's): tekst links, gerenderde mast rechts ---------- */
.p-hero{padding-top:clamp(2rem,5vw,4rem);padding-bottom:clamp(3rem,6vw,5rem);overflow:hidden}
.p-hero .wp-block-columns{gap:clamp(2rem,5vw,4rem)}
.p-hero h1{font-size:clamp(2.3rem,4.4vw,4rem);line-height:.98;letter-spacing:-.035em;margin:1.25rem 0 1.1rem}
.p-hero h1+p{font-size:clamp(1.05rem,1.3vw,1.2rem)!important;color:var(--mr-muted)!important;max-width:36rem}
.p-hero .wp-block-buttons{margin:2rem 0 0}
.p-hero .vinkjes{margin-top:2.25rem}

.mr-hero-beeld{position:relative;margin:0;display:grid;place-items:end center;isolation:isolate;overflow:clip}
.mr-hero-beeld::before{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:4%;height:70%;pointer-events:none;
  background:radial-gradient(closest-side, var(--mr-glow), transparent 75%)}
.mr-hero-beeld::after{content:"";position:absolute;z-index:-1;left:12%;right:12%;bottom:2.2%;height:16px;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side, rgba(0,0,0,.35), transparent)}
.mr-hero-beeld__img{grid-area:1/1;display:block;width:auto;max-width:100%;height:auto;object-fit:cover;object-position:50% 100%;
  aspect-ratio:.62;max-height:min(68vh,600px)}
/* Premium (6 m) is slank: smaller kader zodat kast en mast groot genoeg in beeld zijn (Task 6, geparkeerd). */
.mr-hero-beeld--premium .mr-hero-beeld__img{aspect-ratio:.46;max-height:min(78vh,720px)}
:root:not([data-theme="light"]) .mr-hero-beeld__img--licht{display:none}
:root[data-theme="light"] .mr-hero-beeld__img--donker{display:none}
.hero-foto,.mast-foto,.tekst-foto{margin:0}
.hero-foto img,.mast-foto img,.tekst-foto img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--mr-r-l);display:block}

/* Hero zonder eigen beeld (Tarieven, Werkgebied, Toepassingen): beeld absoluut rechts, tekst links. */
.mr-hero-beeld--los{display:none}
@media (min-width:900px){
  .p-hero:has(>.mr-hero-beeld--los){min-height:min(74vh,680px)}
  .p-hero:has(>.mr-hero-beeld--los)>.wp-block-columns>.wp-block-column{max-width:56%}
  .p-hero>.mr-hero-beeld--los{display:block;position:absolute;right:max(1rem, calc((100% - 1200px) / 2 + 2rem));bottom:clamp(1.5rem,3vw,2.5rem);top:clamp(1rem,2vw,2rem);width:min(30%,380px)}
  .p-hero>.mr-hero-beeld--los .mr-hero-beeld__img{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 100%}
}
@media (max-width:781px){
  .p-hero .hero-kolommen>.wp-block-column:has(.mr-hero-beeld){order:2}
  .p-hero .mr-hero-beeld__img{max-height:420px}
  .p-hero .mr-hero-beeld--premium .mr-hero-beeld__img{max-height:460px}
}

/* ---------- Paginakop (templates: pagina, artikel, archief, 404) ---------- */
.mr-paginakop{position:relative;padding:clamp(1.5rem,4vw,3rem) 0 clamp(1.5rem,3vw,2.5rem);margin-bottom:clamp(1rem,3vw,2rem)}
.mr-paginakop__kolommen.wp-block-columns{gap:clamp(1.5rem,4vw,3rem);margin:0}
.mr-paginakop h1{font-size:clamp(2.1rem,4.6vw,3.8rem);line-height:1;letter-spacing:-.035em;margin:1rem 0 0}
.mr-paginakop .auteur-regel{margin-top:1rem}
.mr-paginakop .mr-hero-beeld__img{max-height:340px;aspect-ratio:.6}
.mr-paginakop .mr-hero-beeld--premium .mr-hero-beeld__img{max-height:380px;aspect-ratio:.46}
.mr-paginakop .wp-block-search{margin-top:1.25rem;max-width:30rem}
@media (max-width:781px){ .mr-paginakop__beeld{display:none} }

/* ---------- Trust-bar: glazen strook ---------- */
.p-trust-bar{padding-top:clamp(1.5rem,3vw,2.5rem);padding-bottom:clamp(1.5rem,3vw,2.5rem)}
.p-trust-bar>.wp-block-columns{gap:0!important;padding:.5rem;border-radius:var(--mr-r-m)}
.p-trust-bar .wp-block-column{display:flex;align-items:center;justify-content:center;padding:1rem 1.25rem;position:relative}
.p-trust-bar .wp-block-column+.wp-block-column::before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:1px;background:var(--mr-border-2)}
.p-trust-bar p{margin:0;font-family:var(--mr-font-display);font-weight:600;font-size:.95rem;letter-spacing:-.005em;color:var(--mr-text);text-align:center}
@media (max-width:781px){
  .p-trust-bar>.wp-block-columns{display:grid;grid-template-columns:1fr 1fr}
  .p-trust-bar .wp-block-column{flex-basis:auto!important}
  .p-trust-bar .wp-block-column:nth-child(3)::before{display:none}
}

/* ---------- Glaskaarten (doelgroepen, kaarten, werkwijze-basis) ---------- */
.kaart{padding:clamp(1.5rem,3vw,2.25rem);box-sizing:border-box;transition:transform .6s var(--mr-ease-out), box-shadow .6s}
.kaart>*:first-child{margin-top:0}
.kaart h3{margin:0 0 .6rem;font-size:clamp(1.25rem,1.8vw,1.5rem);letter-spacing:-.02em;line-height:1.2}
.kaart p{margin:.5rem 0 0;color:var(--mr-muted)}
.kaart:has(.kaart-link a):hover{transform:translateY(-4px)}
.kaart-link{font-family:var(--mr-font-display);font-weight:600;margin-top:1.25rem!important}
.kaart-link a{color:var(--mr-text);text-decoration:none}
.kaart-link a::after{content:"→";display:inline-block;margin-left:.45rem;color:var(--mr-accent);transition:transform .35s var(--mr-ease)}
.kaart-link a:hover::after{transform:translateX(4px)}
/* hele kaart klikbaar via de link */
/* Zonder :has() blijft de gewone focusrand op de link staan. */
@supports selector(:has(*)){
  .kaart:has(>.kaart-link a)>.kaart-link a::before{content:"";position:absolute;inset:0;border-radius:inherit}
  .kaart>.kaart-link a:focus-visible{outline:none}
  .kaart:has(>.kaart-link a:focus-visible){outline:2px solid var(--mr-focus);outline-offset:3px}
}
.wp-block-columns:has(>.kaart){gap:clamp(1rem,2vw,1.5rem)}
.wp-block-columns:has(>.kaart)>.kaart{align-self:stretch}

/* ---------- Pakketten (v6 .cards) ---------- */
.p-pakketten .wp-block-columns{align-items:stretch}
.p-pakketten .kaart{display:flex;flex-direction:column;padding:clamp(1.75rem,3.5vw,2.6rem)}
.p-pakketten .kaart h3{font-size:clamp(1.6rem,2.6vw,2.1rem);letter-spacing:-.03em;margin:.25rem 0 .75rem}
.p-pakketten .kaart>p:not([class]){font-size:.98rem}
.p-pakketten .kaart .wp-block-buttons{margin-top:auto;padding-top:1.5rem}
.p-pakketten>.wp-block-buttons{margin-top:2.5rem}
.kaart .vinkjes--lijst{margin:1.5rem 0 0;font-size:.95rem}
.kaart--uitgelicht{background:var(--mr-cta-band);color:var(--mr-op-navy)}
.kaart--uitgelicht :where(h2,h3){color:var(--mr-wit)}
.kaart--uitgelicht :where(p,li){color:var(--mr-op-navy-2)!important}
.kaart--uitgelicht .vinkjes--lijst li::before{background:var(--mr-geel)}
.kaart--uitgelicht a:where(:not(.wp-element-button)){color:var(--mr-wit)}
.kaart--uitgelicht .wp-block-button.is-style-outline .wp-block-button__link{color:var(--mr-wit);background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25)}
.kaart--uitgelicht.kaart::before{background:linear-gradient(145deg, rgba(255,255,255,.35), rgba(255,255,255,.04) 45%, var(--mr-hair-c))}
p.label-aanbevolen{display:inline-flex;align-self:flex-start;align-items:center;margin:0 0 .5rem!important;padding:5px 10px;border-radius:999px;background:var(--mr-geel);color:var(--mr-on-geel)!important;
  font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;line-height:1.3}
.prijs-vanaf{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:1.5rem 0 0;padding:1.25rem 0 0;border-top:1px solid var(--mr-border);color:var(--mr-muted);font-weight:600;font-size:.9rem}
.prijs-vanaf__bedrag{font-family:var(--mr-font-display);font-size:clamp(2.4rem,4.2vw,3.4rem);font-weight:600;letter-spacing:-.045em;line-height:1;color:var(--mr-text);font-variant-numeric:tabular-nums}
.kaart--uitgelicht .prijs-vanaf{border-color:rgba(255,255,255,.14);color:var(--mr-op-navy-2)}
.kaart--uitgelicht .prijs-vanaf__bedrag{color:var(--mr-wit)}
.artikel-prijzen{gap:1rem;margin:1.5rem 0}
.artikel-prijzen>.kaart{flex:1 1 15rem}
.artikel-prijzen .prijs-vanaf__bedrag{font-size:2rem}

/* ---------- Werkwijze (v6 .steps): genummerde cirkels met verbindingslijn ---------- */
.p-stappen .wp-block-columns{position:relative;gap:clamp(1rem,2.5vw,2rem)}
.p-stappen .kaart{background:none;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;padding:0 .75rem 0 0}
.p-stappen .kaart::before{display:none}
p.stap-nr{width:56px;height:56px;margin:0 0 1.5rem!important;border-radius:50%;display:grid;place-items:center;position:relative;z-index:1;
  font-family:var(--mr-font-display);font-weight:600;font-size:1.05rem;color:var(--mr-on-geel)!important;background:var(--mr-geel);
  box-shadow:0 0 0 6px var(--mr-geel-zacht), 0 0 22px var(--mr-glow)}
.p-stappen .kaart h3{font-size:1.35rem}
@media (min-width:782px){
  .p-stappen .wp-block-columns::before{content:"";position:absolute;left:28px;right:28px;top:28px;height:1px;
    background:linear-gradient(90deg,var(--mr-geel),color-mix(in oklab, var(--mr-geel) 25%, transparent));box-shadow:0 0 12px var(--mr-glow)}
}
.stappenlijst{counter-reset:stap;list-style:none;padding:0}
.stappenlijst>li{counter-increment:stap;position:relative;padding-left:3.25rem;margin:0 0 1.25rem}
.stappenlijst>li::before{content:counter(stap);position:absolute;left:0;top:-.1rem;width:2.2rem;height:2.2rem;border-radius:50%;display:grid;place-items:center;
  background:var(--mr-geel);color:var(--mr-on-geel);font-family:var(--mr-font-display);font-weight:600;font-size:.9rem}

/* ---------- Mast-specs / tekst-beeld ---------- */
.p-hero .wp-block-columns,.p-mast-specs .wp-block-columns,.p-werkgebied .wp-block-columns,.p-tekst-beeld .wp-block-columns{gap:clamp(2rem,5vw,4rem)}
.p-mast-specs .vinkjes--lijst,.p-tekst-beeld .vinkjes--lijst{border-top:1px solid var(--mr-border);gap:0}
.p-mast-specs .vinkjes--lijst li,.p-tekst-beeld .vinkjes--lijst li{padding:1rem 0;border-bottom:1px solid var(--mr-border)}

/* ---------- Werkgebied: provincies als pillen + kaart (v6 .region) ---------- */
.p-werkgebied h2{margin-bottom:1rem}
.p-werkgebied .wp-block-column>p{color:var(--mr-muted)}
.werkgebied-lijst.vinkjes,.p-werkgebied .werkgebied-lijst,.wp-block-post-content .werkgebied-lijst.vinkjes--lijst{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:1.5rem 0}
.wp-block-post-content .werkgebied-lijst li::before{display:none}
.wp-block-post-content .werkgebied-lijst li:not(.werkgebied-lijst__overig) a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 18px;box-sizing:border-box;border-radius:999px;
  border:1px solid var(--mr-border-2);background:var(--mr-glass);font-family:var(--mr-font-display);font-weight:600;font-size:.95rem;color:var(--mr-text);text-decoration:none;
  transition:border-color .3s, transform .3s var(--mr-ease)}
.wp-block-post-content .werkgebied-lijst li:not(.werkgebied-lijst__overig) a::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--mr-kaart-aan);box-shadow:0 0 10px var(--mr-kaart-aan)}
.wp-block-post-content .werkgebied-lijst li:not(.werkgebied-lijst__overig) a:hover{border-color:var(--mr-geel);transform:translateY(-2px)}
.wp-block-post-content .werkgebied-lijst .werkgebied-lijst__overig{flex-basis:100%;margin-top:.25rem;font-size:.9rem;color:var(--mr-muted-2)}
.kaart-nl{margin:0}
.kaart-nl img{width:100%;max-width:420px;height:auto;display:block;margin:0 auto}

/* ---------- Reviews ---------- */
.reviews-query .wp-block-post-template{gap:1.25rem;padding:0;list-style:none}
.review-kaart{height:100%}
.review-kaart p.review-tekst,.review-tekst p{color:var(--mr-text)!important;font-size:1.05rem;font-style:normal;margin-top:0}
.review-kaart .review-tekst::before{content:"“";display:block;font-family:var(--mr-font-display);font-size:3rem;line-height:.6;color:var(--mr-accent);margin-bottom:.5rem}
.review-kaart :is(.review-naam){font-family:var(--mr-font-display);font-weight:600;margin:1rem 0 0!important;font-size:1rem;color:var(--mr-text)}
.review-kaart :is(.review-plaats,.review-sector){margin:0!important;font-size:.85rem}
.p-reviews .wp-block-columns{align-items:stretch!important}
.p-reviews>.review-kaart{margin-top:2rem}

/* ---------- FAQ: glazen rijen met plus/min ---------- */
.mastrent-faq{max-width:48rem;margin-left:auto!important;margin-right:auto!important;display:grid;gap:.75rem}
.mastrent-faq>*{margin:0!important}
.mastrent-faq details{border-radius:var(--mr-r-m);padding:0;box-shadow:none;border:1px solid var(--mr-border)}
.mastrent-faq details[open]{border-color:var(--mr-border-2)}
.mastrent-faq details summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.25rem;min-height:44px;box-sizing:border-box;
  font-family:var(--mr-font-display);font-weight:600;font-size:1.05rem;letter-spacing:-.01em;color:var(--mr-text);border-radius:inherit}
.mastrent-faq details summary::-webkit-details-marker{display:none}
.mastrent-faq details summary::after{content:"";flex:none;width:14px;height:14px;background:
  linear-gradient(var(--mr-accent),var(--mr-accent)) center/14px 2px no-repeat, linear-gradient(var(--mr-accent),var(--mr-accent)) center/2px 14px no-repeat;transition:transform .35s var(--mr-ease)}
.mastrent-faq details[open] summary::after{transform:rotate(45deg)}
.mastrent-faq details summary:focus-visible{outline:2px solid var(--mr-focus);outline-offset:2px}
.mastrent-faq details>:not(summary){margin:0 1.25rem 1.1rem;color:var(--mr-muted)}

/* ---------- Kort antwoord ---------- */
.p-kort-antwoord{padding:clamp(1.5rem,3vw,2.5rem) 1rem 1rem;box-sizing:border-box}
.p-kort-antwoord+.p-tekst,.p-kort-antwoord+.p-tekst-beeld{padding-top:clamp(2rem,4vw,3rem)}
.kort-antwoord{padding:1.4rem 1.6rem 1.4rem 1.85rem!important;border-radius:var(--mr-r-m);overflow:hidden}
.kort-antwoord::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--mr-geel),color-mix(in oklab, var(--mr-geel) 20%, transparent));box-shadow:0 0 14px var(--mr-glow)}
.kort-antwoord h2{margin:0 0 .5rem;font-family:var(--mr-font-display);font-size:.78rem!important;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mr-accent)}
.kort-antwoord p{margin:0;font-size:1.05rem;color:var(--mr-text)}
.wp-block-post-content>.kort-antwoord{margin-bottom:2rem}

/* ---------- CTA-band (v6 .cta-band): navy glaspaneel met gele gloed en strepen ---------- */
.p-cta-band.has-navy-background-color{background-color:transparent!important;color:var(--mr-op-navy)}
.p-cta-band>.wp-block-columns{position:relative;overflow:hidden;max-width:1200px;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box;
  padding:clamp(2rem,6vw,4.5rem) clamp(1.5rem,5vw,4rem);border-radius:var(--mr-r-l);gap:clamp(1.5rem,4vw,2.5rem);
  background:var(--mr-cta-band);box-shadow:var(--mr-shadow);isolation:isolate}
.p-cta-band>.wp-block-columns::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.35;
  background-image:repeating-linear-gradient(135deg, transparent 0 22px, var(--mr-geel-zacht) 22px 23px);
  -webkit-mask:linear-gradient(90deg, transparent 40%, black);mask:linear-gradient(90deg, transparent 40%, black)}
.p-cta-band>.wp-block-columns::after{content:"";position:absolute;z-index:-1;inset:-40% -10% auto 45%;height:180%;pointer-events:none;background:radial-gradient(closest-side, var(--mr-glow), transparent)}
.p-cta-band :is(h2,p){color:var(--mr-op-navy);margin:0}
.p-cta-band h2{color:var(--mr-wit);font-size:clamp(1.9rem,4vw,3.4rem);margin-bottom:.75rem}
.p-cta-band h2+p{color:var(--mr-op-navy-2)}
.p-cta-band .is-style-outline .wp-block-button__link{color:var(--mr-wit);background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25)}
.p-cta-band .is-style-outline .wp-block-button__link:hover{background:rgba(255,255,255,.14);border-color:var(--mr-geel)}
.p-cta-band .risico-regel{color:var(--mr-op-navy-3);text-align:left;margin-top:1rem}
.p-cta-band .bewijs-persoon{margin:1.25rem 0 0;background:rgba(255,255,255,.06);color:var(--mr-op-navy)}
.p-cta-band .bewijs-persoon :is(p,h2,h3){color:inherit}
.p-cta-band .bewijs-persoon__acties a{color:var(--mr-wit);border-color:rgba(255,255,255,.3)}
.cta-review{margin:1.5rem 0 0!important;padding-left:1rem;border-left:2px solid var(--mr-geel);font-style:italic;color:var(--mr-op-navy-2)!important}
.cta-review cite{display:block;margin-top:.4rem;font-style:normal;font-weight:700;font-size:.9rem}
.p-cta-band blockquote.cta-review{margin-left:0;margin-right:0}
.p-cta-band blockquote.cta-review p{color:inherit;margin:0}

.risico-regel{font-size:.85rem;color:var(--mr-muted-2);margin:1rem 0 0;text-align:center}
.p-risico-regel{padding:1rem}

/* ---------- Snelstart (hero) ---------- */
.snelstart{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:1.5rem 0 0}
.snelstart__vraag{font-weight:600;font-size:.9rem;color:var(--mr-muted);margin-right:.25rem}
.snelstart a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 .9rem;box-sizing:border-box;border:1px solid var(--mr-border-2);border-radius:999px;
  background:var(--mr-glass);color:var(--mr-text);font-family:var(--mr-font-display);font-weight:600;text-decoration:none;transition:border-color .3s, background .3s}
.snelstart a:hover,.snelstart a:focus-visible{border-color:var(--mr-geel);background:var(--mr-glass-strong)}

/* =========================================================================================================
   Formulieren (rekentool, offerte, contact, download): glas, AA-contrast, zichtbare focus
   ========================================================================================================= */
:is(.rekentool,.mf,.dl__form) :is(input:not([type=checkbox]):not([type=radio]),select,textarea),.wp-block-search__input{
  display:block;width:100%;box-sizing:border-box;min-height:48px;margin-top:.35rem;padding:.6rem .85rem;border:1px solid var(--mr-border-input);border-radius:12px;
  font:inherit;color:var(--mr-text);background:var(--mr-surface);transition:border-color .25s, box-shadow .25s}
:is(.rekentool,.mf,.dl__form) select{appearance:none;-webkit-appearance:none;padding-right:2.4rem;
  background-image:linear-gradient(45deg,transparent 50%,var(--mr-muted) 50%),linear-gradient(135deg,var(--mr-muted) 50%,transparent 50%);
  background-position:calc(100% - 20px) 52%, calc(100% - 15px) 52%;background-size:5px 5px;background-repeat:no-repeat}
:is(.rekentool,.mf,.dl__form) :is(input,select,textarea):hover{border-color:var(--mr-muted)}
:is(.rekentool,.mf,.dl__form) :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus,:is(.rekentool,.mf,.dl__form) input[type=checkbox]:focus-visible,.wp-block-search__input:focus{outline:2px solid var(--mr-focus);outline-offset:1px;border-color:var(--mr-focus);box-shadow:0 0 0 5px var(--mr-geel-zacht)}
.mf input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;border-radius:4px}
.mf input[type=date]::-webkit-calendar-picker-indicator:focus-visible{outline:2px solid var(--mr-focus);outline-offset:2px}
/* Chrome: de focus op het kalendericoon zit in de interne shadow-DOM (input zelf niet :focus); :focus-within ziet hem wel */
.mf input[type=date]:focus-within{outline:2px solid var(--mr-focus);outline-offset:1px;border-color:var(--mr-focus);box-shadow:0 0 0 5px var(--mr-geel-zacht)}
:is(.rekentool,.mf,.dl__form) [aria-invalid=true]{border-color:var(--mr-fout)!important}
:is(.rekentool,.mf,.dl__form) input[type=checkbox]{width:1.15rem;height:1.15rem;margin:.15rem 0 0;flex:none;accent-color:var(--mr-geel)}
:root[data-theme="light"] :is(.rekentool,.mf,.dl__form) input[type=checkbox]{accent-color:var(--mr-navy)}
.mf-error{color:var(--mr-fout);font-size:.85rem;font-weight:600;margin:.35rem 0 0}
.mf-summary{border-left:3px solid var(--mr-fout);background:var(--mr-fout-bg);padding:.85rem 1rem;border-radius:12px}
.mf-summary p{margin:0}
.mf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- Rekentool ---------- */
.rekentool{padding:clamp(1.25rem,3.5vw,2.25rem);max-width:680px;box-sizing:border-box}
.prijs-op-maat{padding:clamp(1.25rem,3.5vw,2.25rem);max-width:680px;box-sizing:border-box}
.prijs-op-maat>p{margin:0}
.rekentool fieldset{border:0;margin:0 0 1.5rem;padding:0;min-width:0}
.rekentool legend{display:flex;align-items:center;gap:10px;font-family:var(--mr-font-display);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--mr-muted);margin-bottom:.7rem;padding:0}
.rekentool legend::before{content:"";width:18px;height:1px;background:var(--mr-geel)}
.rk-seg{display:flex;flex-wrap:wrap;gap:.5rem}
.rk-seg label{flex:1 1 4.5rem;position:relative}
.rk-seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer;width:100%;height:100%}
.rk-seg span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:48px;height:100%;box-sizing:border-box;padding:.55rem .6rem;
  border:1px solid var(--mr-border-2);border-radius:14px;background:var(--mr-glass);font-family:var(--mr-font-display);font-weight:600;text-align:center;font-size:.92rem;color:var(--mr-text);
  transition:border-color .25s, background .25s, box-shadow .25s}
.rk-seg small{font-family:var(--mr-font-body);font-weight:500;color:var(--mr-muted);font-size:.75rem}
.rk-seg label:hover span{border-color:var(--mr-muted)}
.rk-seg input:checked+span{border-color:var(--mr-accent);background:color-mix(in oklab, var(--mr-accent) 12%, transparent);box-shadow:0 0 0 1px var(--mr-accent), 0 0 18px -4px var(--mr-glow)}
.rk-seg input:focus-visible+span{outline:2px solid var(--mr-focus);outline-offset:3px}
.rk-seg:has(input[name=provincie]) label{flex-basis:7.5rem}
.rk-num{display:inline-flex;align-items:center;gap:.75rem;margin-top:.75rem;font-weight:600}
.rk-num input{width:6rem!important;margin:0!important}
.rk-hint{font-size:.82rem;color:var(--mr-muted);margin:.5rem 0 0}
.rk-klaar{display:flex;align-items:center;gap:.6rem;margin:0 0 .85rem;padding:.7rem 1rem;border-radius:12px;background:color-mix(in oklab, var(--mr-ok) 14%, transparent);color:var(--mr-text);font-weight:700;border:1px solid color-mix(in oklab, var(--mr-ok) 45%, transparent)}
.rk-gate{position:relative;background:var(--mr-glass-strong)!important;border:1px solid color-mix(in oklab, var(--mr-geel) 45%, transparent)!important;border-radius:var(--mr-r-m)!important;padding:1.25rem!important;margin:0 0 1rem!important}
.rk-gate legend{float:left;width:100%;margin:0 0 1rem;padding:0;font-size:1.1rem;text-transform:none;letter-spacing:-.01em;color:var(--mr-text)}
.rk-gate legend::before{display:none}
.rk-gate legend+*{clear:both}
.rk-gate__velden{display:grid;gap:.85rem;grid-template-columns:1fr}
.rk-veld label{display:block;font-weight:600;font-size:.9rem}
.rk-veld input{margin-top:.35rem}
.rk-check{display:flex;gap:.6rem;align-items:flex-start;margin:1rem 0;font-size:.85rem;color:var(--mr-muted)}
.rk-gate .rekentool__cta,.rk-acties .rekentool__cta,.dl__knop{width:100%}
.rekentool__cta{cursor:pointer;border:0;text-align:center;text-decoration:none;box-sizing:border-box}
.rk-micro{margin:.75rem 0 0;font-size:.8rem;color:var(--mr-muted);text-align:center}
.rk-micro a{color:var(--mr-accent)}
.rekentool__uitkomst{background:var(--mr-glass-strong);border:1px solid var(--mr-border-2);border-radius:var(--mr-r-m);padding:1.25rem;margin:.5rem 0 1rem}
.rekentool__uitkomst ul{list-style:none;margin:0;padding:0}
.rekentool__uitkomst li{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0;font-size:.92rem;color:var(--mr-muted)}
.rekentool__uitkomst .rk-totaal{align-items:baseline;border-top:1px solid var(--mr-border-2);margin-top:.6rem;padding-top:.85rem;font-weight:700;color:var(--mr-text)}
.rekentool__uitkomst .rk-totaal span:last-child{white-space:nowrap;font-family:var(--mr-font-display);font-size:clamp(2rem,5vw,2.6rem);font-weight:600;letter-spacing:-.04em;line-height:1;color:var(--mr-accent);font-variant-numeric:tabular-nums}
:root:not([data-theme="light"]) .rekentool__uitkomst .rk-totaal span:last-child{text-shadow:0 0 30px var(--mr-glow)}
.rekentool__uitkomst .rk-totaal span:focus{outline:none}
.rekentool__uitkomst>p{color:var(--mr-text);margin:0}
.rk-perweek{margin:.35rem 0 0;font-size:.85rem;color:var(--mr-muted);text-align:right}
.rk-acties{display:flex;flex-direction:column;gap:.6rem;margin-top:1.1rem}
.rk-btn-uit{display:flex;align-items:center;justify-content:center;min-height:48px;padding:.55rem 1.1rem;box-sizing:border-box;border:1px solid var(--mr-border-2);border-radius:999px;
  background:var(--mr-glass);color:var(--mr-text);font-family:var(--mr-font-display);font-weight:600;text-decoration:none;transition:border-color .3s, background .3s}
.rk-btn-uit:hover{border-color:var(--mr-geel);background:var(--mr-glass-strong)}
@media (min-width:640px){.rk-gate__velden{grid-template-columns:1fr 1fr}.rk-acties{flex-direction:row;flex-wrap:wrap}.rk-acties .rekentool__cta{flex:1 1 100%;width:auto}.rk-btn-uit{flex:1 1 auto}}
.rekentool__disclaimer{font-size:.8rem;color:var(--mr-muted);text-align:center;margin:.5rem 0 0}
.p-rekentool .wp-block-columns{gap:clamp(1.25rem,3vw,2rem);align-items:flex-start}
.p-rekentool .rekentool{max-width:none}
.zijkolom{padding:clamp(1.25rem,3vw,1.75rem);align-self:flex-start}
.zijkolom h2,.zijkolom h3{font-size:1.2rem;letter-spacing:-.02em;margin-bottom:.5rem}
.zijkolom h3:not(:first-child){margin-top:2rem}
.zijkolom :is(p,li){color:var(--mr-muted)}
.zijkolom ol{padding-left:1.2rem;margin:.75rem 0 0}
.zijkolom ol li+li{margin-top:.5rem}
.zijkolom p{margin-top:.35rem}

/* ---------- Offerte / contact ---------- */
.mr-formulier{padding:clamp(1.25rem,3.5vw,2.25rem);box-sizing:border-box}
.mf{display:grid;gap:1.1rem;max-width:none}
.mf-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
.mf label{font-weight:600;font-size:.9rem;display:block;color:var(--mr-text)}
.mf-opt{font-weight:400;color:var(--mr-muted)}
.mf-calc{border:1px solid var(--mr-border-2);border-radius:var(--mr-r-m);padding:1rem 1.1rem 1.25rem;margin:0;min-width:0}
.mf-calc legend{font-family:var(--mr-font-display);font-weight:600;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mr-muted);padding:0 .5rem}
.mf-check label{font-weight:400;display:flex;gap:.6rem;align-items:flex-start;color:var(--mr-muted)}
.mf-alt{font-size:.9rem;color:var(--mr-muted);margin:0}
.mf-alt a{color:var(--mr-accent);font-weight:700}
.mf button{cursor:pointer;justify-self:start}
.mf-stap{display:grid;gap:1.1rem}
.mf--stappen .mf-stap:not(.is-actief){display:none}
.mf-voortgang{display:flex;gap:.5rem;list-style:none;margin:0;padding:0}
.mf-voortgang__stap{flex:1;display:flex;align-items:center;gap:.6rem;padding:.55rem .8rem;border:1px solid var(--mr-border-2);border-radius:999px;background:var(--mr-glass);
  font-family:var(--mr-font-display);font-weight:600;font-size:.9rem;color:var(--mr-muted)}
.mf-voortgang__nr{display:inline-grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--mr-border-2);color:var(--mr-text);font-weight:700;flex:none}
.mf-voortgang__stap.is-actief{border-color:var(--mr-accent);color:var(--mr-text)}
.mf-voortgang__stap.is-actief .mf-voortgang__nr,.mf-voortgang__stap.is-klaar .mf-voortgang__nr{background:var(--mr-geel);color:var(--mr-on-geel);box-shadow:0 0 14px var(--mr-glow)}
.mf-voortgang__stap.is-klaar{color:var(--mr-text)}
.mf-voortgang__stap.is-klaar .mf-voortgang__nr{font-size:0}
.mf-voortgang__stap.is-klaar .mf-voortgang__nr::before{content:"\2713";font-size:1rem}
.mf-nav{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;margin:0}
.mf-vorige{background:none;border:0;padding:.6rem .2rem;font:inherit;font-weight:700;color:var(--mr-accent);text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:44px}
.mf--stappen .mf-nav{justify-content:space-between}
@media(max-width:480px){.mf-voortgang__stap{padding:.45rem .55rem;font-size:.82rem}.mf-nav .wp-element-button{flex:1 1 100%}}
.offerte-tel a{font-family:var(--mr-font-display);font-size:1.5rem;font-weight:600;text-decoration:none;color:var(--mr-text)}

/* ---------- Download-leadmagneet ---------- */
.p-download{padding:clamp(3rem,6vw,5rem) 1rem;box-sizing:border-box}
.dl{display:grid;gap:1.25rem 2.5rem;padding:clamp(1.25rem,4vw,2.5rem);max-width:960px;box-sizing:border-box}
.p-download .dl{margin-left:auto;margin-right:auto}
.wp-block-post-content .dl{margin:2rem 0}
@media (min-width:782px){.dl{grid-template-columns:1fr 1fr;align-items:center}}
.dl__label{margin:0 0 .75rem!important}
.dl__titel{margin:0 0 .6rem;font-size:clamp(1.4rem,3vw,1.9rem);line-height:1.15;letter-spacing:-.025em;color:var(--mr-text)}
.dl__omschrijving{margin:0;color:var(--mr-muted)}
.dl__form,.dl__klaar{background:var(--mr-glass-strong);border:1px solid var(--mr-border-2);border-radius:var(--mr-r-m);padding:1.1rem}
.dl__velden{display:grid;gap:.85rem}
.dl__knop{display:flex;cursor:pointer;border:0;text-align:center;text-decoration:none;box-sizing:border-box}
.dl__knop:disabled{opacity:.7;cursor:wait}
.dl__klaar-kop{margin:0 0 .85rem;font-family:var(--mr-font-display);font-weight:600;color:var(--mr-text)}
.dl__klaar-mail{margin:.6rem 0 0;font-size:.85rem;color:var(--mr-muted);text-align:center}
.dl-leeg{padding:1rem;border:1px dashed var(--mr-border-2);color:var(--mr-muted)}

/* ---------- Exit-dialoog ---------- */
.exit-dialog{max-width:440px;width:calc(100% - 2rem);padding:clamp(1.5rem,4vw,2.25rem);box-sizing:border-box;background:var(--mr-glass-strong)}
.exit-dialog::backdrop{background:var(--mr-backdrop);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.exit-dialog h2{margin:0 0 .6rem;font-size:1.6rem;line-height:1.1;letter-spacing:-.025em;color:var(--mr-text)}
.exit-dialog p{margin:0 0 1.5rem;color:var(--mr-muted)}
.exit-dialog__acties{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}
.exit-dialog__sluit{min-height:44px;padding:0 .5rem;border:0;background:none;color:var(--mr-muted);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.exit-dialog__sluit:hover{color:var(--mr-text)}

/* =========================================================================================================
   Bewijsblokken (renderen niets als ze leeg zijn)
   ========================================================================================================= */
.bewijs-reviewscore{font-family:var(--mr-font-display);font-weight:600;color:var(--mr-text);margin:1rem 0 0;text-align:center}
.bewijs-reviewscore a{color:inherit;text-decoration:none}
.bewijs-reviewscore a:hover{text-decoration:underline}
.bewijs-reviewscore .ster{color:var(--mr-geel);text-shadow:0 0 12px var(--mr-glow)}
.bewijs-logos{margin:2rem 0}
.bewijs-logos h2{font-size:.78rem;font-family:var(--mr-font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--mr-muted);margin:0 0 1.25rem;text-align:center}
.bewijs-logos__grid,.bewijs-keurmerken__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1.25rem 2rem;align-items:center;justify-items:center;list-style:none;margin:0;padding:0}
.bewijs-logos__grid img{max-height:56px;width:auto;max-width:100%;object-fit:contain;filter:grayscale(1);opacity:.7;transition:filter .2s,opacity .2s}
:root:not([data-theme="light"]) .bewijs-logos__grid img{filter:grayscale(1) invert(1) brightness(1.6)}
.bewijs-logos__grid li:hover img,.bewijs-logos__grid li:focus-within img{filter:none;opacity:1}
.bewijs-cijfers{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin:2rem 0}
.bewijs-cijfers__tegel{padding:1.4rem 1.25rem;text-align:center}
.bewijs-cijfers__waarde{display:block;font-family:var(--mr-font-display);font-size:2.6rem;font-weight:600;letter-spacing:-.04em;line-height:1;color:var(--mr-accent)}
.bewijs-cijfers__label{display:block;margin-top:.5rem;color:var(--mr-muted)}
.bewijs-keurmerken{margin:2rem 0}
.bewijs-keurmerken__grid li{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center;font-weight:700;font-size:.9rem}
.bewijs-keurmerken__grid img{max-height:72px;width:auto;object-fit:contain}
.bewijs-keurmerken__grid a{color:inherit;text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:.5rem}
.bewijs-persoon{display:flex;gap:1.25rem;align-items:center;padding:1.25rem;margin:1.5rem 0}
.bewijs-persoon__foto img{width:88px;height:88px;border-radius:50%;object-fit:cover;display:block;box-shadow:0 0 0 2px var(--mr-border-2)}
.bewijs-persoon__tekst>*{margin:0 0 .5rem}
.bewijs-persoon__kop{font-family:var(--mr-font-display);font-weight:600;color:var(--mr-text)}
.bewijs-persoon__functie{color:var(--mr-muted)}
.bewijs-persoon__quote{font-style:italic;color:var(--mr-muted)}
.bewijs-persoon__acties{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem!important}
.bewijs-persoon__acties a{display:inline-flex;align-items:center;min-height:44px;padding:0 1.1rem;border:1px solid var(--mr-border-2);border-radius:999px;font-family:var(--mr-font-display);font-weight:600;text-decoration:none;color:var(--mr-text);background:var(--mr-glass)}
.bewijs-persoon__acties a:hover{border-color:var(--mr-geel)}
.bewijs-persoon--profiel{flex-direction:column;text-align:center;padding:0}
.bewijs-persoon--profiel .bewijs-persoon__foto img{width:200px;height:200px}
.bewijs-persoon--profiel h2{margin:0}
@media (max-width:480px){.bewijs-persoon:not(.bewijs-persoon--profiel){flex-direction:column;text-align:center}.bewijs-persoon__acties{justify-content:center}}

/* =========================================================================================================
   Overig: kruimelpad, tabellen, kennisbank-overzicht, auteur, bronnen
   ========================================================================================================= */
.kruimelpad ol{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem;padding:0;margin:0;font-size:.82rem;font-weight:600;color:var(--mr-muted-2)}
.kruimelpad li+li::before{content:"/";margin-right:.4rem;color:var(--mr-border-2)}
.kruimelpad a{color:var(--mr-muted);text-decoration:none}
.kruimelpad a:hover{color:var(--mr-text);text-decoration:underline;text-underline-offset:3px}
.kruimelpad [aria-current]{color:var(--mr-muted-2)}

.wp-block-table{margin:1.75rem 0;overflow-x:auto;padding:0;border-radius:var(--mr-r-m)}
.wp-block-table::before{display:none}
.wp-block-table table{width:100%;border-collapse:collapse;font-size:.93rem;min-width:520px}
.wp-block-table th,.wp-block-table td{border:0;border-bottom:1px solid var(--mr-border);padding:.75rem .9rem;text-align:left;vertical-align:top;color:var(--mr-muted)}
.wp-block-table thead th{background:var(--mr-cta-band);color:var(--mr-op-navy);font-family:var(--mr-font-display);font-weight:600;border-bottom:0}
.wp-block-table tbody th,.wp-block-table tbody td:first-child{font-weight:700;color:var(--mr-text)}
.wp-block-table tbody tr:last-child :is(td,th){border-bottom:0}
.wp-block-table figcaption{font-size:.85rem;color:var(--mr-muted);margin:.5rem .9rem .75rem}

.query-grid .wp-block-post-template{gap:1.25rem}
.query-grid .wp-block-post{padding:1.25rem;display:flex;flex-direction:column;gap:.5rem;transition:transform .6s var(--mr-ease-out)}
.query-grid .wp-block-post:hover{transform:translateY(-4px)}
.query-grid .wp-block-post-title{margin:0;font-size:1.2rem;letter-spacing:-.02em;line-height:1.2}
.query-grid .wp-block-post-title a{color:var(--mr-text);text-decoration:none}
.query-grid .wp-block-post-title a::before{content:"";position:absolute;inset:0;border-radius:inherit}
@supports selector(:has(*)){
  .query-grid .wp-block-post-title a:focus-visible{outline:none}
  .query-grid .wp-block-post:has(.wp-block-post-title a:focus-visible){outline:2px solid var(--mr-focus);outline-offset:3px}
}
/* Een beeldvak zonder beeld (dezelfde mastrender komt niet twee keer op één pagina) valt weg. */
.wp-block-column:has(> .mr-hero-leeg:only-child){display:none}
.query-grid .wp-block-post-excerpt{color:var(--mr-muted);font-size:.93rem}
.query-grid .wp-block-post-featured-image img{border-radius:var(--mr-r-m)}
.wp-block-query-pagination{margin-top:2rem;gap:.5rem}
.wp-block-query-pagination :is(a,span){min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--mr-border-2);padding:0 .9rem;text-decoration:none;color:var(--mr-text);box-sizing:border-box}
.wp-block-query-pagination .current{background:var(--mr-geel);color:var(--mr-on-geel);border-color:var(--mr-geel)}

.auteur-regel,.laatst-bijgewerkt{font-size:.88rem;color:var(--mr-muted)}
.auteur-regel a{color:var(--mr-accent)}
.bronnen{font-size:.9rem;color:var(--mr-muted)}
.bronnen a{overflow-wrap:anywhere}
h2.bronnen-kop{font-size:1.25rem}
p.artikel-cta{margin:2rem 0;font-family:var(--mr-font-display);font-weight:600;font-size:1.25rem}
p.artikel-cta a{text-decoration:none;color:var(--mr-accent)}
p.artikel-cta a:hover{text-decoration:underline}
.wp-block-post-content>.alignfull{margin-top:0!important;margin-bottom:0!important}
.wp-block-search__button{border-radius:999px;margin-left:.5rem}

@media (prefers-reduced-motion: reduce){
  .kaart,.query-grid .wp-block-post,.wp-element-button,.wp-block-button__link,.mastrent-faq details summary::after,.kaart-link a::after{transition:none!important}
  .kaart:hover,.query-grid .wp-block-post:hover{transform:none}
  .wp-element-button::after,.wp-block-button__link::after{display:none}
}

/* Cookiemelding (inc/meting.php, assets/js/meting.js): alleen met Google Analytics ingesteld. Accepteren en Weigeren zien er gelijk uit. */
.mr-cookies{position:fixed;z-index:60;left:16px;bottom:16px;width:min(420px,calc(100% - 32px));box-sizing:border-box;padding:1.1rem 1.25rem 1.2rem;border-radius:18px;background:var(--mr-balk);border:1px solid var(--mr-border-2);box-shadow:var(--mr-shadow);color:var(--mr-text)}
.mr-cookies[hidden]{display:none}
.mr-cookies__kop{margin:0 0 .35rem;font-family:var(--mr-font-display);font-weight:700;font-size:1.05rem}
.mr-cookies__tekst{margin:0 0 1rem;font-size:1rem;line-height:1.5;color:var(--mr-muted)}
.mr-cookies__tekst a{color:var(--mr-text)}
.mr-cookies__acties{display:flex;gap:10px}
.mr-cookies__knop{flex:1 1 0;justify-content:center;cursor:pointer;font:inherit;font-weight:600}
.footer-cookieknop{padding:0;border:0;background:none;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:24px}
@media (max-width:781px){.mr-cookies{left:8px;right:8px;width:auto;bottom:calc(84px + env(safe-area-inset-bottom))}}
