/* BlueMonks klassiek: componenten voor nieuwe pagina's, afgeleid van de huisstijl van bluemonks.nl.
   Tokens komen uit de Elementor-kit van de oude site (post-7): blauw #0D33FF, roze #FFDBE0,
   gebroken wit #FAF7F7, zwart, lettertype Outfit. Scherpe vlakken, geen afgeronde hoeken. */

:root {
  --bm-blue: #0D33FF;
  --bm-blue-deep: #0A28CC;
  --bm-pink: #FFDBE0;
  --bm-off: #FAF7F7;
  --bm-black: #000;
  --bm-white: #fff;
  --bm-line: rgba(13, 51, 255, .55);
  --bm-gutter: 5vw;
  --bm-font: "Outfit", system-ui, sans-serif;
  --bm-nav-h: 81px;
  --bm-display: clamp(40px, 4.5vw, 84px);
  --bm-h2: clamp(28px, 2.4vw, 46px);
  --bm-h3: clamp(21px, 1.6vw, 30px);
  --bm-h4: clamp(17px, 1.2vw, 22px);
  --bm-lead: clamp(17px, 1.25vw, 22px);
  --bm-text: clamp(15px, 1.02vw, 18px);
  --bm-small: clamp(13px, .82vw, 15px);
}

html { scroll-padding-top: calc(var(--bm-nav-h) + 16px); }
/* Het oude thema zet overflow-x: hidden op html en body; dat maakt body een scrollcontainer en breekt sticky.
   clip snijdt hetzelfde af zonder scrollcontainer. */
html, body { overflow-x: clip !important; overflow-y: visible !important; }

/* ---------- Sticky navigatie (altijd zichtbaar, geen hamburger) ----------
   Desktop volgt de oude kopbalk: 81 px roze, logo op de marge, blauw vlak "Afspraak maken" dat met
   zijn rechterrand op de rechterrand van de hero valt, zodat beide blauwe vlakken op elkaar aansluiten.
   Smal: blauwe bovenbalk met logo en afspraakknop, daaronder een roze menurij op één regel. */
.bm-nav { position: sticky; top: 0; z-index: 9999; background: var(--bm-pink); font-family: var(--bm-font); transition: box-shadow .2s ease; }
.bm-nav.is-scrolled { box-shadow: 0 8px 24px rgba(13, 51, 255, .10); }
.bm-nav__bar { display: flex; align-items: stretch; height: var(--bm-nav-h); padding: 0 var(--bm-gutter); }
.bm-nav__logo { display: flex; align-items: center; flex: 0 0 auto; margin-right: clamp(16px, 2.4vw, 44px); }
.bm-nav__logo img { width: 200px; height: 32px; display: block; }
.bm-nav__menu { display: flex; align-items: stretch; margin: 0 auto 0 0; padding: 0; list-style: none; min-width: 0; }
.bm-nav__item { position: relative; display: flex; }
.bm-nav .bm-nav__link, .bm-nav a.bm-nav__link { display: flex; align-items: center; gap: 6px; padding: 0 clamp(8px, .95vw, 16px); color: var(--bm-blue); font-size: clamp(14px, 1.05vw, 16px); font-weight: 500; line-height: 1; text-decoration: none; white-space: nowrap; background: none; border: 0; cursor: pointer; font-family: inherit; position: relative; }
.bm-nav__short { display: none; }
.bm-nav__link::after { content: ""; position: absolute; left: clamp(8px, .95vw, 16px); right: clamp(8px, .95vw, 16px); bottom: 22px; height: 2px; background: var(--bm-blue); transform: scaleX(0); transform-origin: left; transition: transform .2s ease; }
.bm-nav__link:hover::after, .bm-nav__item.is-current > .bm-nav__link::after, .bm-nav__item.is-open > .bm-nav__link::after { transform: scaleX(1); }
.bm-nav__link:focus-visible { outline: 2px solid var(--bm-blue); outline-offset: -6px; }
.bm-nav__chev { width: 10px; height: 10px; flex: 0 0 auto; transition: transform .2s ease; }
.bm-nav__item.is-open .bm-nav__chev { transform: rotate(180deg); }
/* Submenu's: één stijl voor alle panelen (ook de taalkeuze). Roze als de balk, naadloos eronder,
   rijen van 48 px, 24 px binnenmarge, schaduw alleen omlaag. Geen binnenruimte in het paneel zelf:
   de hover van de laatste rij vult zo tot de onderrand. */
.bm-nav__panel { position: absolute; top: 100%; left: 0; min-width: 280px; margin: 0; background: var(--bm-pink); border-top: 0; box-shadow: 0 22px 32px -18px rgba(0, 0, 0, .18); padding: 0; display: none; }
.bm-nav__item.is-open > .bm-nav__panel { display: block; }
.bm-nav .bm-nav__panel a { box-sizing: border-box; display: flex; justify-content: space-between; align-items: center; gap: 24px; height: 48px; padding: 0 24px; color: var(--bm-black); font-size: 15px; font-weight: 400; line-height: 1.25; text-decoration: none; white-space: nowrap; }
.bm-nav__panel a + a { border-top: 1px solid rgba(13, 51, 255, .14); }
.bm-nav .bm-nav__panel a:hover, .bm-nav .bm-nav__panel a:focus-visible { color: var(--bm-blue); background: rgba(13, 51, 255, .06); outline: none; }
.bm-nav .bm-nav__panel a[aria-current] { color: var(--bm-blue); font-weight: 600; background: rgba(13, 51, 255, .08); }
.bm-nav .bm-nav__panel a.bm-nav__overview { font-weight: 600; color: var(--bm-blue); }
/* Uitgelicht (Wisdom): zelfde 48 px-rij als alle andere, naam vet links, korte omschrijving klein rechts */
.bm-nav .bm-nav__panel a.bm-nav__featured { color: var(--bm-blue); }
.bm-nav__featured > span { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; width: 100%; }
.bm-nav__featured strong { font-weight: 600; font-size: 15px; }
.bm-nav__featured small { font-size: 13px; color: var(--bm-black); opacity: .65; font-weight: 400; }
.bm-nav__mobile-only { display: none !important; }
.bm-nav a.bm-nav__cta { display: flex; align-items: center; justify-content: center; min-width: 170px; padding: 0 24px; background: var(--bm-blue); color: var(--bm-white); font-size: 16px; font-weight: 600; text-decoration: none; white-space: nowrap; flex: 0 0 auto; }
.bm-nav a.bm-nav__cta:hover { background: var(--bm-blue-deep); color: var(--bm-white); }
/* Tussenbreedtes: Nieuws verhuist naar het Over ons-menu, zodat de taalkeuze past */
@media (min-width: 1101px) and (max-width: 1360px) {
  .bm-nav__item--wide-only { display: none; }
  .bm-nav__mobile-only { display: flex !important; }
}
@media (min-width: 1101px) and (max-width: 1200px) {
  .bm-nav__logo { margin-right: 14px; }
  .bm-nav__logo img { width: 164px; height: auto; }
  .bm-nav .bm-nav__link, .bm-nav a.bm-nav__link { padding: 0 7px; }
  .bm-nav__link::after { left: 7px; right: 7px; }
  .bm-nav a.bm-nav__cta { min-width: 0; }
}
/* Taalwisselaar NL / EN / LT: compacte keuzeknop met hetzelfde paneel als de menu's */
/* Geen marge maar binnenruimte: zo valt de rechterrand van het paneel precies op de linkerrand van de CTA */
.bm-nav__lang { margin-right: 0; padding-right: clamp(4px, 1vw, 16px); }
.bm-nav__lang .bm-nav__link { font-size: 14px; font-weight: 600; letter-spacing: .04em; }
/* Taalpaneel rechts uitgelijnd: rechterrand = linkerrand CTA */
.bm-nav .bm-nav__lang .bm-nav__panel { left: auto; right: 0; min-width: 200px; }
.bm-nav .bm-nav__lang .bm-nav__panel a b { font-weight: 600; font-size: 13px; color: var(--bm-blue); letter-spacing: .04em; }

@media (max-width: 1100px) {
  :root { --bm-nav-h: 60px; --bm-nav-row: 48px; --bm-nav-total: 108px; }
  .bm-nav { transition: top .25s ease, box-shadow .2s ease; }
  .bm-nav.is-compact { top: calc(-1 * var(--bm-nav-h)); }
  .bm-nav { background: linear-gradient(var(--bm-blue) 0 var(--bm-nav-h), var(--bm-pink) var(--bm-nav-h)); }
  .bm-nav__bar { flex-wrap: wrap; height: auto; padding: 0; }
  .bm-nav__logo { height: var(--bm-nav-h); padding-left: var(--bm-gutter); margin-right: auto; }
  .bm-nav__logo img { width: 168px; height: auto; filter: brightness(0) invert(1); }
  .bm-nav a.bm-nav__cta { order: 2; align-self: center; min-width: 0; height: 38px; margin-right: var(--bm-gutter); padding: 0 14px; background: transparent; border: 1.5px solid var(--bm-white); font-size: 14px; }
  .bm-nav a.bm-nav__cta:hover { background: var(--bm-white); color: var(--bm-blue); }
  .bm-nav__lang { order: 1; align-self: stretch; margin: 0 4px 0 0; padding-right: 0; }
  .bm-nav__lang > .bm-nav__link { color: var(--bm-white); height: var(--bm-nav-h); }
  .bm-nav__lang > .bm-nav__link::after { background: var(--bm-white); }
  .bm-nav__menu { order: 3; flex: 0 0 100%; height: var(--bm-nav-row); margin: 0; padding: 0 calc(var(--bm-gutter) - 8px); justify-content: space-between; }
  .bm-nav .bm-nav__link, .bm-nav a.bm-nav__link { padding: 0 8px; font-size: 15px; gap: 4px; }
  .bm-nav__link::after { left: 8px; right: 8px; bottom: 10px; }
  .bm-nav__item { position: static; }
  .bm-nav__panel { position: fixed; left: 0; right: 0; top: auto; min-width: 0; max-height: 70vh; overflow-y: auto; }
}
@media (max-width: 600px) {
  :root { --bm-nav-h: 56px; --bm-nav-row: 46px; --bm-nav-total: 102px; }
  .bm-nav__logo img { width: 150px; }
  .bm-nav a.bm-nav__cta { height: 36px; font-size: 13.5px; padding: 0 12px; }
  .bm-nav__menu { padding: 0 calc(var(--bm-gutter) - 5px); }
  .bm-nav .bm-nav__link, .bm-nav a.bm-nav__link { padding: 0 5px; font-size: clamp(11px, 3.5vw, 15px); gap: 3px; }
  .bm-nav__link::after { left: 5px; right: 5px; }
  .bm-nav__chev { width: 8px; height: 8px; }
  .bm-nav__full { display: none; }
  .bm-nav__short { display: inline; }
  .bm-nav__item--wide-only { display: none; }
  .bm-nav__mobile-only { display: flex !important; }
}
@media (max-width: 370px) {
  .bm-nav__menu { padding: 0 calc(var(--bm-gutter) - 3px); }
  .bm-nav .bm-nav__link, .bm-nav a.bm-nav__link { padding: 0 3px; letter-spacing: -.01em; }
  .bm-nav__chev { width: 7px; height: 7px; }
  .bm-nav__logo img { width: 128px; }
  .bm-nav a.bm-nav__cta { font-size: 12.5px; padding: 0 9px; }
}
/* De oude hamburger-popup is vervangen door de vaste navigatie. */
.elementor-location-popup[data-elementor-id="1584"] { display: none !important; }

/* ---------- Basis voor nieuwe pagina's (alles onder .bm-page: wint van de Elementor-kitregels) ---------- */
.bm-page { font-family: var(--bm-font); color: var(--bm-black); font-weight: 300; font-size: var(--bm-text); line-height: 1.6; -webkit-font-smoothing: antialiased; }
.bm-page *, .bm-page *::before, .bm-page *::after { box-sizing: border-box; }
.bm-page h1, .bm-page h2, .bm-page h3, .bm-page h4, .bm-page h5 { font-family: var(--bm-font); font-weight: 600; margin: 0; color: inherit; }
.bm-page p { margin: 0 0 1em; }
.bm-page p:last-child { margin-bottom: 0; }
.bm-page a { color: var(--bm-blue); }
.bm-page img { max-width: 100%; height: auto; display: block; }
.bm-page ul { margin: 0 0 1em; padding-left: 1.2em; }
.bm-page strong { font-weight: 600; }
.bm-page .bm-section { padding: clamp(56px, 6.5vw, 120px) var(--bm-gutter); }
.bm-page .bm-section--flush-top { padding-top: 0; }
.bm-page .bm-section--tight { padding-block: clamp(36px, 4vw, 64px); }
.bm-page .bm-pink { background: var(--bm-pink); }
.bm-page .bm-off { background: var(--bm-off); }
.bm-page .bm-blue { background: var(--bm-blue); color: var(--bm-white); }
.bm-page .bm-black { background: var(--bm-black); color: var(--bm-white); }
.bm-page .bm-blue a:not(.bm-btn), .bm-page .bm-black a:not(.bm-btn) { color: var(--bm-white); }
.bm-page .bm-display { font-size: var(--bm-display); font-weight: 600; line-height: 1.1; letter-spacing: -.01em; }
.bm-page .bm-h2 { font-size: var(--bm-h2); line-height: 1.25; }
.bm-page .bm-h3 { font-size: var(--bm-h3); line-height: 1.3; }
.bm-page .bm-h4 { font-size: var(--bm-h4); line-height: 1.35; }
.bm-page .bm-lead { font-size: var(--bm-lead); line-height: 1.5; font-weight: 300; }
.bm-page .bm-small { font-size: var(--bm-small); }
.bm-page .bm-accent { color: var(--bm-blue); }
.bm-page .bm-blue .bm-accent { color: var(--bm-pink); }
.bm-page .bm-muted { opacity: .72; }
.bm-page .bm-title { margin-bottom: clamp(24px, 2.6vw, 44px); }
.bm-page .bm-title .bm-lead { margin-top: 14px; max-width: 46em; }
/* Handtekening van de huisstijl: de korte dikke streep onder een kop. */
.bm-page .bm-rule { display: block; width: clamp(56px, 4.6vw, 88px); height: 4px; background: currentColor; margin: clamp(16px, 1.4vw, 24px) 0; border: 0; }
.bm-page .bm-rule--blue { background: var(--bm-blue); }
.bm-page .bm-rule--long { width: clamp(120px, 10vw, 200px); }

/* ---------- Knoppen: vierkant, blauw, met chevron ---------- */
.bm-page .bm-btn { display: inline-flex; align-items: center; gap: 10px; padding: 12px 20px; background: var(--bm-blue); color: var(--bm-white) !important; font-family: var(--bm-font); font-size: 15px; font-weight: 600; line-height: 1.2; text-decoration: none; border: 1.5px solid var(--bm-blue); transition: background .15s ease, color .15s ease; }
.bm-page .bm-btn::after { content: ""; width: 7px; height: 7px; border-right: 2px solid currentColor; border-top: 2px solid currentColor; transform: rotate(45deg); margin-left: 2px; }
.bm-page .bm-btn:hover { background: var(--bm-blue-deep); border-color: var(--bm-blue-deep); }
.bm-page .bm-btn--white { background: var(--bm-white); color: var(--bm-blue) !important; border-color: var(--bm-white); }
.bm-page .bm-btn--white:hover { background: var(--bm-pink); border-color: var(--bm-pink); }
.bm-page .bm-btn--outline { background: transparent; color: var(--bm-blue) !important; }
.bm-page .bm-btn--outline:hover { background: var(--bm-blue); color: var(--bm-white) !important; }
.bm-page .bm-blue .bm-btn--outline { color: var(--bm-white) !important; border-color: var(--bm-white); }
.bm-page .bm-blue .bm-btn--outline:hover { background: var(--bm-white); color: var(--bm-blue) !important; }
.bm-page .bm-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: clamp(24px, 2.2vw, 36px); }

/* ---------- Paginakop: roze achtergrond met ingezet blauw vlak (zoals de oude binnenpagina's) ---------- */
/* ---------- Paginakop: exact het patroon van bluemonks.nl ----------
   Gemeten op de live site (1440 px): blauw vlak 1296 x 558 (38,75vw hoog) direct onder de kopbalk, tekst op 4,5vw
   van de linkerrand, titel 4,5vw/600 in twee regels (wit, daaronder roze), witte streep 6,5vw x 6px,
   ondertitel 1,6vw/600, monnik 40vw breed rechts, bovenkant 0,6vw boven het vlak. */
.bm-page .bm-hero { background: var(--bm-pink); padding: 0 var(--bm-gutter) var(--bm-gutter); } /* roze onder = roze opzij */
.bm-page .bm-hero__block { position: relative; display: flex; align-items: center; min-height: 44vw; padding: 3vw 0 3vw 4.5vw; background: var(--bm-blue); color: var(--bm-white); }
.bm-page .bm-hero__copy { position: relative; z-index: 1; width: 48%; }
.bm-page .bm-hero__title { font-size: 5.2vw; line-height: 1.2; font-weight: 600; letter-spacing: 0; color: var(--bm-white); margin: 0; }
.bm-page .bm-hero__title span { color: var(--bm-pink); }
.bm-page .bm-hero__rule { display: block; width: 6.5vw; height: 6px; background: var(--bm-white); margin: .9vw 0 2.3vw; }
.bm-page .bm-hero__sub { font-size: 2.1vw; line-height: 1.35; font-weight: 600; color: var(--bm-white); margin: 0; max-width: 28em; }
.bm-page .bm-hero .bm-actions { margin-top: 2.2vw; }
/* Figuur in monk.png loopt van y 172 tot 766 (van 1024): midden op 45,8% van het beeld, dat komt op het midden van het vlak */
.bm-page .bm-hero__monk { position: absolute; right: 0; top: 50%; transform: translateY(-45.8%); width: 40vw; height: 40vw; max-width: none; pointer-events: none; }

@media (max-width: 767px) {
  /* Mobiel: schermvullend blauw van rand tot rand, monnik groot en gecentreerd bovenin, tekst onderin */
  .bm-page .bm-hero { padding: 0; background: var(--bm-white); }
  .bm-page .bm-hero__block { flex-direction: column; align-items: stretch; justify-content: space-between; min-height: calc(100svh - var(--bm-nav-total, 102px)); padding: 0 5vw 11vw; overflow: hidden; }
  .bm-page .bm-hero__monk { position: static; transform: none; order: -1; width: 126vw; height: 126vw; margin: calc(-21vw + 40px) -18vw -26vw; }
  .bm-page .bm-hero__copy { width: auto; margin-top: auto; }
  .bm-page .bm-hero__title { font-size: 10vw; }
  .bm-page .bm-hero__rule { width: 10vw; margin: 2.5vw 0 4.5vw; }
  .bm-page .bm-hero__sub { font-size: 5vw; line-height: 1.3; }
  .bm-page .bm-hero .bm-actions { margin-top: 6vw; }
  .bm-page .bm-hero + .bm-intro { background: var(--bm-white); padding-top: 12vw; }
}

/* Intro direct onder de kop: kop met blauwe streep op roze, tekst in gebroken wit vlak */
.bm-page .bm-intro { background: var(--bm-pink); padding: clamp(24px, 3vw, 56px) var(--bm-gutter) clamp(56px, 6.5vw, 120px); margin-top: -1px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: clamp(28px, 4.5vw, 88px); align-items: start; }
.bm-page .bm-intro__head { color: var(--bm-blue); }
.bm-page .bm-intro__head h2 { font-size: clamp(30px, 3vw, 52px); line-height: 1.12; letter-spacing: -.015em; text-wrap: balance; }
.bm-page .bm-intro__head .bm-rule { background: var(--bm-blue); margin-bottom: 0; }
.bm-page .bm-intro__body { font-size: var(--bm-lead); line-height: 1.55; padding-top: .3em; }
.bm-page .bm-intro__body p { max-width: 38em; }
/* Twee kolommen: kop links (1/3), tekst rechts (2/3) */
.bm-page .bm-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: clamp(28px, 4.5vw, 88px); align-items: start; }
.bm-page .bm-split--half { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bm-page .bm-split__head { color: var(--bm-blue); }
.bm-page .bm-blue .bm-split__head { color: var(--bm-white); }
/* Tekst + beeld, afwisselend */
.bm-page .bm-media { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 96px); align-items: center; }
.bm-page .bm-media--flip > :first-child { order: 2; }
.bm-page .bm-media__img img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.bm-page .bm-media__img--contain img { aspect-ratio: auto; object-fit: contain; }
.bm-page .bm-media h2, .bm-page .bm-media h3 { color: var(--bm-blue); margin-bottom: 18px; }
.bm-page .bm-blue .bm-media h2, .bm-page .bm-blue .bm-media h3 { color: var(--bm-white); }
/* Rijen zoals 'Services' op de homepage: blauwe titel, tekst, vierkante chevronknop, lijnen */
.bm-page .bm-rows { border-top: 0; }
.bm-page .bm-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: center; padding: clamp(18px, 1.6vw, 28px) 0; border-bottom: 1px solid var(--bm-line); text-decoration: none; color: inherit; }
.bm-page .bm-row:first-child { padding-top: 0; }
.bm-page .bm-row__title { color: var(--bm-blue); font-size: var(--bm-h4); font-weight: 600; line-height: 1.35; }
.bm-page .bm-row__text { font-size: var(--bm-small); max-width: 52em; margin-top: 6px; color: var(--bm-black); }
.bm-page .bm-row__go { width: 32px; height: 28px; border: 1.5px solid var(--bm-blue); display: grid; place-items: center; transition: background .15s ease; }
.bm-page .bm-row__go::before { content: ""; width: 7px; height: 7px; border-right: 2px solid var(--bm-blue); border-top: 2px solid var(--bm-blue); transform: translateX(-1px) rotate(45deg); }
.bm-page a.bm-row:hover .bm-row__go { background: var(--bm-blue); }
.bm-page a.bm-row:hover .bm-row__go::before { border-color: var(--bm-white); }
.bm-page .bm-blue .bm-row { border-color: rgba(255, 255, 255, .45); }
.bm-page .bm-blue .bm-row__title, .bm-page .bm-blue .bm-row__text { color: var(--bm-white); }
.bm-page .bm-blue .bm-row__go { border-color: var(--bm-white); }
.bm-page .bm-blue .bm-row__go::before { border-color: var(--bm-white); }
.bm-page .bm-blue a.bm-row:hover .bm-row__go { background: var(--bm-white); }
.bm-page .bm-blue a.bm-row:hover .bm-row__go::before { border-color: var(--bm-blue); }
/* Rasters en kaarten */
.bm-page .bm-grid { display: grid; gap: clamp(14px, 1.4vw, 24px); grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); }
.bm-page .bm-grid--2 { --cols: 2; }
.bm-page .bm-grid--3 { --cols: 3; }
.bm-page .bm-grid--4 { --cols: 4; }
.bm-page .bm-card { background: var(--bm-off); padding: clamp(24px, 2.2vw, 40px); display: flex; flex-direction: column; gap: 12px; text-decoration: none; color: inherit; position: relative; }
.bm-page .bm-card h3, .bm-page .bm-card h4 { font-size: var(--bm-h4); line-height: 1.35; color: var(--bm-blue); }
.bm-page .bm-card p { font-size: var(--bm-small); }
.bm-page .bm-card--line { background: transparent; padding: clamp(20px, 1.6vw, 28px) 0 0; border-top: 2px solid var(--bm-blue); }
.bm-page .bm-card--line h3, .bm-page .bm-card--line h4 { color: var(--bm-black); }
.bm-page .bm-blue .bm-card--line { border-color: var(--bm-white); }
.bm-page .bm-blue .bm-card--line h3, .bm-page .bm-blue .bm-card--line h4 { color: var(--bm-white); }
.bm-page .bm-card--blue { background: var(--bm-blue); color: var(--bm-white); }
.bm-page .bm-card--blue h3, .bm-page .bm-card--blue h4 { color: var(--bm-white); }
.bm-page .bm-card__more { margin-top: auto; padding-top: 8px; font-size: 14px; font-weight: 600; color: var(--bm-blue); display: inline-flex; align-items: center; gap: 8px; }
.bm-page .bm-card__more::after { content: ""; width: 6px; height: 6px; border-right: 2px solid currentColor; border-top: 2px solid currentColor; transform: rotate(45deg); }
.bm-page .bm-card--blue .bm-card__more { color: var(--bm-white); }
.bm-page a.bm-card { transition: transform .2s ease, box-shadow .2s ease; }
.bm-page a.bm-card:hover { box-shadow: 0 16px 36px rgba(13, 51, 255, .14); }
/* Beeldkaarten: donker beeld, witte kop linksboven (chess/lamp/shield op de homepage) */
.bm-page .bm-imgcard { --imgcard-pad: clamp(24px, 2.4vw, 40px); position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; background: #050b3a; color: var(--bm-white) !important; text-decoration: none; }
.bm-page .bm-imgcard img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.bm-page .bm-imgcard__title { display: block; position: relative; z-index: 1; padding: var(--imgcard-pad); font-size: var(--bm-h3); font-weight: 600; line-height: 1.25; max-width: 12em; }
.bm-page .bm-imgcard__more { position: absolute; left: var(--imgcard-pad); bottom: var(--imgcard-pad); z-index: 1; }
.bm-page a.bm-imgcard:hover img { transform: scale(1.04); }
/* Icoonraster zoals 'Sectoren' en de voordelen op Managed Services */
.bm-page .bm-icons { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: clamp(28px, 2.8vw, 48px) clamp(20px, 2.4vw, 40px); }
.bm-page .bm-icon { display: grid; gap: 10px; align-content: start; }
.bm-page .bm-icon svg, .bm-page .bm-icon img { width: 30px; height: 30px; color: var(--bm-blue); }
.bm-page .bm-icon h3, .bm-page .bm-icon h4 { font-size: var(--bm-h4); line-height: 1.3; }
.bm-page .bm-icon p { font-size: var(--bm-small); }
.bm-page .bm-blue .bm-icon svg { color: var(--bm-white); }
/* Kerncijfers */
.bm-page .bm-stats { display: grid; grid-template-columns: repeat(var(--cols, 4), minmax(0, 1fr)); gap: clamp(20px, 2vw, 32px); }
.bm-page .bm-stat { border-top: 2px solid currentColor; padding-top: 16px; }
.bm-page .bm-stat__num { font-size: var(--bm-display); font-weight: 600; line-height: 1; letter-spacing: -.02em; }
.bm-page .bm-stat__label { margin-top: 12px; font-size: var(--bm-small); font-weight: 400; }
.bm-page .bm-stat { color: var(--bm-blue); }
.bm-page .bm-stat__label { color: var(--bm-black); }
.bm-page .bm-blue .bm-stat, .bm-page .bm-band .bm-stat, .bm-page .bm-blue .bm-stat__label, .bm-page .bm-band .bm-stat__label { color: var(--bm-white); }
/* Stappen 01/02/03 */
.bm-page .bm-steps { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: clamp(20px, 2.4vw, 40px); counter-reset: step; }
.bm-page .bm-step { border-top: 2px solid var(--bm-blue); padding-top: 18px; }
.bm-page .bm-step__num { color: var(--bm-blue); font-size: var(--bm-h3); font-weight: 600; display: block; margin-bottom: 10px; }
.bm-page .bm-step h3, .bm-page .bm-step h4 { font-size: var(--bm-h4); margin-bottom: 8px; }
.bm-page .bm-step p { font-size: var(--bm-small); }
.bm-page .bm-blue .bm-step { border-color: var(--bm-white); }
.bm-page .bm-blue .bm-step__num { color: var(--bm-white); }
/* Citaat */
.bm-page .bm-quote { margin: 0; display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: clamp(28px, 4vw, 72px); align-items: end; }
.bm-page .bm-quote blockquote { margin: 0; color: var(--bm-blue); font-size: var(--bm-h2); font-weight: 500; line-height: 1.3; }
.bm-page .bm-quote blockquote::before { content: "\201C"; display: block; font-size: 1.8em; line-height: .6; margin-bottom: 8px; }
.bm-page .bm-quote figcaption { font-size: var(--bm-small); border-top: 2px solid var(--bm-blue); padding-top: 14px; }
.bm-page .bm-quote figcaption strong { display: block; font-size: var(--bm-h4); color: var(--bm-blue); }
.bm-page .bm-blue .bm-quote blockquote, .bm-page .bm-blue .bm-quote figcaption strong { color: var(--bm-white); }
.bm-page .bm-blue .bm-quote figcaption { border-color: var(--bm-white); }
/* Veelgestelde vragen */
.bm-page .bm-faq { border-top: 1px solid var(--bm-line); }
.bm-page .bm-faq details { border-bottom: 1px solid var(--bm-line); }
.bm-page .bm-faq summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: minmax(0, 1fr) 32px; gap: 20px; align-items: center; padding: clamp(16px, 1.4vw, 24px) 0; color: var(--bm-blue); font-size: var(--bm-h4); font-weight: 600; line-height: 1.35; }
.bm-page .bm-faq summary::-webkit-details-marker { display: none; }
.bm-page .bm-faq summary::after { content: "+"; width: 32px; height: 28px; border: 1.5px solid var(--bm-blue); display: grid; place-items: center; font-weight: 400; font-size: 20px; line-height: 1; }
.bm-page .bm-faq details[open] summary::after { content: "\2212"; background: var(--bm-blue); color: var(--bm-white); }
.bm-page .bm-faq .bm-faq__a { padding: 0 52px clamp(18px, 1.6vw, 26px) 0; max-width: 60em; }
.bm-page .bm-faq__group { color: var(--bm-black); font-size: var(--bm-h3); margin: clamp(32px, 3vw, 56px) 0 14px; }
.bm-page .bm-faq__group:first-child { margin-top: 0; }
/* Blauwe oproep-vlakken (zoals 'Heeft u een uitdaging...') */
.bm-page .bm-band { background: var(--bm-blue); color: var(--bm-white); padding: clamp(48px, 6vw, 110px) clamp(28px, 4.5vw, 80px); display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: clamp(28px, 4vw, 72px); align-items: center; }
.bm-page .bm-band h2 { font-size: var(--bm-h2); line-height: 1.25; }
.bm-page .bm-band__aside { font-size: var(--bm-text); }
.bm-page .bm-band--black { background: var(--bm-black); }
.bm-page .bm-band--solo { grid-template-columns: minmax(0, 1fr); }
/* Klantlogo's op blauw */
.bm-page .bm-logos { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2.6fr); gap: clamp(28px, 4vw, 72px); background: var(--bm-blue); color: var(--bm-white); padding: clamp(40px, 4.5vw, 80px) clamp(28px, 4.5vw, 80px); align-items: start; }
.bm-page .bm-logos h2 { font-size: var(--bm-h3); line-height: 1.3; }
.bm-page .bm-logos__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(clamp(110px, 10vw, 170px), 1fr)); gap: clamp(26px, 2.6vw, 44px) clamp(22px, 2.4vw, 40px); align-items: center; }
.bm-page .bm-logos__grid img { width: 100%; max-height: 52px; object-fit: contain; object-position: left center; }
/* Mensen */
.bm-page .bm-people { display: grid; grid-template-columns: repeat(auto-fill, minmax(clamp(190px, 16vw, 260px), 1fr)); gap: clamp(24px, 2.4vw, 40px) clamp(16px, 1.6vw, 28px); }
.bm-page .bm-person { text-decoration: none; color: inherit; display: grid; gap: 4px; }
.bm-page .bm-person__photo { aspect-ratio: 4 / 5; background: var(--bm-pink); overflow: hidden; margin-bottom: 12px; display: grid; place-items: end center; }
.bm-page .bm-person__photo img { width: 100%; height: 100%; object-fit: cover; object-position: top center; transition: transform .4s ease; }
.bm-page .bm-person__initials { width: 100%; height: 100%; display: grid; place-items: center; color: var(--bm-blue); font-size: var(--bm-display); font-weight: 600; }
.bm-page .bm-person__name { color: var(--bm-blue); font-size: var(--bm-h4); font-weight: 600; }
.bm-page .bm-person__role { font-size: var(--bm-small); }
.bm-page a.bm-person:hover img { transform: scale(1.03); }
/* Tabel (pakketten vergelijken, tarieven) */
.bm-page .bm-table-wrap { overflow-x: auto; }
.bm-page .bm-table { width: 100%; border-collapse: collapse; font-size: var(--bm-small); min-width: 640px; }
.bm-page .bm-table th, .bm-page .bm-table td { text-align: left; padding: 14px 16px; border-bottom: 1px solid rgba(13, 51, 255, .2); vertical-align: top; }
.bm-page .bm-table thead th { background: var(--bm-blue); color: var(--bm-white); font-size: var(--bm-text); font-weight: 600; border-bottom: 0; }
.bm-page .bm-table tbody th { font-weight: 500; color: var(--bm-black); width: 34%; }
.bm-page .bm-table tbody tr:nth-child(even) td, .bm-page .bm-table tbody tr:nth-child(even) th { background: var(--bm-off); }
.bm-page .bm-table .yes { color: var(--bm-blue); font-weight: 600; }
.bm-page .bm-table .no { opacity: .45; }
/* Prijskaarten */
.bm-page .bm-price { background: var(--bm-white); border-top: 4px solid var(--bm-blue); padding: clamp(24px, 2.2vw, 40px); display: flex; flex-direction: column; gap: 12px; }
.bm-page .bm-off .bm-price { background: var(--bm-white); }
.bm-page .bm-price h3 { color: var(--bm-blue); font-size: var(--bm-h3); }
.bm-page .bm-price__amount { font-size: var(--bm-h2); font-weight: 600; line-height: 1.1; }
.bm-page .bm-price__amount small { font-size: var(--bm-small); font-weight: 400; opacity: .7; }
.bm-page .bm-price ul { list-style: none; padding: 0; margin: 8px 0 0; }
.bm-page .bm-price li { padding: 9px 0 9px 26px; border-top: 1px solid rgba(13, 51, 255, .14); position: relative; font-size: var(--bm-small); }
.bm-page .bm-price li::before { content: ""; position: absolute; left: 2px; top: 13px; width: 11px; height: 6px; border-left: 2px solid var(--bm-blue); border-bottom: 2px solid var(--bm-blue); transform: rotate(-45deg); }
.bm-page .bm-price--featured { background: var(--bm-blue) !important; color: var(--bm-white); border-top-color: var(--bm-pink); }
.bm-page .bm-price--featured h3 { color: var(--bm-white); }
.bm-page .bm-price--featured li { border-color: rgba(255, 255, 255, .25); }
.bm-page .bm-price--featured li::before { border-color: var(--bm-white); }
/* Vinkjeslijst */
.bm-page .bm-checks { list-style: none; padding: 0 !important; margin: 0; }
.bm-page .bm-checks li { padding: 8px 0 8px 30px; position: relative; }
.bm-page .bm-checks li::before { content: ""; position: absolute; left: 2px; top: 14px; width: 12px; height: 6px; border-left: 2px solid var(--bm-blue); border-bottom: 2px solid var(--bm-blue); transform: rotate(-45deg); }
.bm-page .bm-blue .bm-checks li::before { border-color: var(--bm-white); }
/* Lopende tekst (juridisch, artikelen) */
.bm-page .bm-prose { max-width: 46em; font-size: var(--bm-text); }
.bm-page .bm-prose h2 { font-size: var(--bm-h3); color: var(--bm-blue); margin: 1.8em 0 .6em; }
.bm-page .bm-prose h3 { font-size: var(--bm-h4); margin: 1.5em 0 .5em; }
.bm-page .bm-prose > :first-child { margin-top: 0; }
.bm-page .bm-prose img { margin: 1.5em 0; }
/* Nieuws */
.bm-page .bm-posts { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: clamp(20px, 2vw, 32px); }
.bm-page .bm-post { text-decoration: none; color: inherit; display: grid; gap: 10px; align-content: start; }
.bm-page .bm-post__img { aspect-ratio: 16 / 10; overflow: hidden; background: var(--bm-blue); }
.bm-page .bm-post__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.bm-page .bm-post__meta { font-size: 13px; font-weight: 500; color: var(--bm-blue); }
.bm-page .bm-post__title { font-size: var(--bm-h4); font-weight: 600; line-height: 1.35; }
.bm-page a.bm-post:hover img { transform: scale(1.03); }
.bm-page a.bm-post:hover .bm-post__title { color: var(--bm-blue); }
/* Contactgegevens */
.bm-page .bm-contact { display: grid; grid-template-columns: repeat(var(--cols, 4), minmax(0, 1fr)); gap: clamp(20px, 2vw, 32px); }
.bm-page .bm-contact h3 { font-size: var(--bm-small); font-weight: 600; margin-bottom: 6px; }
.bm-page .bm-contact p, .bm-page .bm-contact a { font-size: var(--bm-text); }
.bm-page figcaption { font-style: normal; }
/* Kolommen instellen met klassen (geen inline --cols: dat overschrijft de mobiele weergave) */
.bm-page .bm-cols-1 { --cols: 1; } .bm-page .bm-cols-2 { --cols: 2; } .bm-page .bm-cols-3 { --cols: 3; } .bm-page .bm-cols-4 { --cols: 4; }
.bm-page .bm-stack > * + * { margin-top: clamp(40px, 4vw, 72px); }
.bm-page .bm-center { text-align: center; }
.bm-page .bm-center .bm-rule { margin-inline: auto; }
.bm-page .bm-maxw { max-width: 52em; }
@media (max-width: 1024px) {
  .bm-page .bm-grid--4, .bm-page .bm-stats, .bm-page .bm-icons, .bm-page .bm-contact { --cols: 2; }
.bm-page .bm-posts { --cols: 2; }
}
@media (max-width: 767px) {
  .bm-page .bm-intro, .bm-page .bm-split, .bm-page .bm-split--half, .bm-page .bm-media, .bm-page .bm-quote, .bm-page .bm-band, .bm-page .bm-logos { grid-template-columns: minmax(0, 1fr); }
.bm-page .bm-media--flip > :first-child { order: 0; }
.bm-page .bm-intro { background: var(--bm-pink); padding-bottom: 32px; }
.bm-page .bm-grid, .bm-page .bm-grid--2, .bm-page .bm-grid--3, .bm-page .bm-grid--4, .bm-page .bm-steps, .bm-page .bm-posts { --cols: 1; }
.bm-page .bm-stats, .bm-page .bm-icons, .bm-page .bm-contact { --cols: 1; }
.bm-page .bm-imgcard { aspect-ratio: 4 / 3; }
}
@media (prefers-reduced-motion: reduce) {
  .bm-page *, .bm-page .bm-nav * { transition: none !important; }
}

@media (max-width: 1024px) {
  .bm-page .bm-cols-3, .bm-page .bm-cols-4 { --cols: 2; }
}
@media (max-width: 767px) {
  .bm-page .bm-cols-2, .bm-page .bm-cols-3, .bm-page .bm-cols-4 { --cols: 1; }
}

/* Oude footer: op mobiel overlapte de monnik de juridische links (ook op de live site). Hier in de flow gezet. */
@media (max-width: 767px) {
  .elementor-136 .elementor-element.elementor-element-664b08e { position: static !important; margin: 8px 0 0 auto; text-align: end; }
  .elementor-136 .elementor-element.elementor-element-664b08e img { width: 62% !important; max-width: 62% !important; }
}

/* Oude pagina's: de eerste sectie had 81 px (mobiel 126 px) ruimte voor de over de pagina liggende kopbalk.
   De nieuwe balk staat in de flow, dus die ruimte vervalt: het blauwe vlak sluit direct aan op de balk. */
[data-elementor-type="wp-page"] > .e-con:first-child,
[data-elementor-type="single-post"] > .e-con:first-child { padding-top: 0 !important; }
@media (max-width: 767px) {
  /* Oude hero's met monnik op mobiel: schermvullend blauw van rand tot rand, monnik groot en gecentreerd
     bovenin, tekst onderin, en daarna direct wit (geen roze strook). */
  [data-elementor-type="wp-page"] > .e-con:first-child:has(img[src*="BlueMonks_V1"]) { padding: 0 !important; background: var(--bm-white) !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child:has(img[src*="BlueMonks_V1"]) + .e-con { background-color: var(--bm-white) !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child:has(img[src*="BlueMonks_V1"]) > .e-con { min-height: calc(100svh - var(--bm-nav-total)) !important; overflow: hidden; justify-content: space-between !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child > .e-con > .e-con:has(> .elementor-widget-image img[src*="BlueMonks_V1"]) { margin: calc(-21vw + 40px) 0 -26vw !important; min-height: 0 !important; width: 100% !important; align-items: center !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child > .e-con > .e-con:has(> .elementor-widget-image img[src*="BlueMonks_V1"]) .elementor-widget-image { width: 100% !important; max-width: none !important; margin: 0 !important; overflow: visible !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child > .e-con > .e-con:has(> .elementor-widget-image img[src*="BlueMonks_V1"]) .elementor-widget-image > .elementor-widget-container { margin: 0 !important; padding: 0 !important; width: 100% !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child > .e-con > .e-con:has(> .elementor-widget-image img[src*="BlueMonks_V1"]) img { width: 126vw !important; max-width: none !important; height: auto !important; margin: 0 !important; display: block; position: relative; left: 50%; transform: translateX(-50%) !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child:has(img[src*="BlueMonks_V1"]) > .e-con > .e-con:not(:has(img[src*="BlueMonks_V1"])) { margin-top: auto !important; position: relative; z-index: 1; padding-left: 5vw !important; padding-right: 5vw !important; }
}
}

/* ---------- Rustige typeschaal (feedback Rogier 23-09-2026) ----------
   Minder groot en "in your face", wel binnen de huisstijl (Outfit, gewicht 600 voor koppen, wit/roze op blauw).
   Geldt voor de oude Elementor-pagina's (via de kitvariabelen) en de nieuwe pagina's (via de bm-tokens).
   Oude kit ter vergelijking, desktop/tablet/mobiel: koppen 4,5/7/10vw, lopende tekst 1,1/2,5/4vw. */
.elementor-kit-7 {
  --e-global-typography-accent-font-size: clamp(34px, 3.6vw, 60px) !important;
  --e-global-typography-cf0cf95-font-size: clamp(24px, 2vw, 34px) !important;
  --e-global-typography-5b486c8-font-size: clamp(18px, 1.4vw, 24px) !important;
  --e-global-typography-777e117-font-size: clamp(16px, 1.1vw, 19px) !important;
  --e-global-typography-primary-font-size: clamp(15px, 1vw, 17px) !important;
  --e-global-typography-secondary-font-size: clamp(14px, .92vw, 16px) !important;
  --e-global-typography-text-font-size: clamp(13px, .85vw, 15px) !important;
}
:root {
  --bm-display: clamp(34px, 3.6vw, 60px);
  --bm-h2: clamp(24px, 2vw, 34px);
  --bm-h3: clamp(19px, 1.4vw, 24px);
  --bm-h4: clamp(16px, 1.1vw, 19px);
  --bm-lead: clamp(16px, 1.15vw, 19px);
  --bm-text: clamp(15px, 1vw, 17px);
  --bm-small: clamp(13px, .85vw, 15px);
}
.bm-page .bm-hero__title, .bm-page .home-wisdom__title { font-size: clamp(34px, 3.6vw, 60px); }
.bm-page .bm-hero__sub, .bm-page .home-wisdom__claim { font-size: clamp(16px, 1.3vw, 21px); }
.bm-page .wd-statement__text { font-size: clamp(32px, 3.8vw, 64px); }
.bm-page .wd-h2 { font-size: clamp(26px, 2.6vw, 44px); }
.bm-page .wd-card h3 { font-size: clamp(20px, 1.7vw, 28px); }
.bm-page .wd-steps .bm-step__num { font-size: clamp(26px, 2.4vw, 40px); }
.bm-page .bm-stat__num { font-size: clamp(32px, 3vw, 52px); }
@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-kit-7 { --e-global-typography-accent-font-size: 4.4vw !important; --e-global-typography-cf0cf95-font-size: 2.8vw !important; }
}
@media (max-width: 767px) {
  .elementor-kit-7 {
    --e-global-typography-accent-font-size: 9vw !important;
    --e-global-typography-cf0cf95-font-size: 6.4vw !important;
    --e-global-typography-5b486c8-font-size: 5vw !important;
    --e-global-typography-777e117-font-size: 4.3vw !important;
    --e-global-typography-primary-font-size: 16px !important;
    --e-global-typography-secondary-font-size: 15px !important;
    --e-global-typography-text-font-size: 14px !important;
  }
  .bm-page .bm-hero__title, .bm-page .home-wisdom__title { font-size: 9vw; }
  .bm-page .bm-hero__sub, .bm-page .home-wisdom__claim { font-size: 4.6vw; }
  .bm-page .wd-statement__text { font-size: 9vw; }
}

/* Oude hero's op tabletbreedte: monnik gecentreerd bovenin en volledig zichtbaar, tekst eronder in plaats van
   eroverheen (op de live site overlappen ze op deze breedte). */
@media (min-width: 768px) and (max-width: 1024px) {
  [data-elementor-type="wp-page"] > .e-con:first-child:has(img[src*="BlueMonks_V1"]) { min-height: 0 !important; justify-content: flex-start !important; padding-top: 0 !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child:has(img[src*="BlueMonks_V1"]) > .e-con { min-height: 0 !important; height: auto !important; overflow: hidden; margin-top: 0 !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child > .e-con > .e-con:has(> .elementor-widget-image img[src*="BlueMonks_V1"]) { margin: 0 0 -12vw !important; min-height: 0 !important; height: auto !important; justify-content: flex-start !important; width: 100% !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child > .e-con > .e-con:has(> .elementor-widget-image img[src*="BlueMonks_V1"]) .elementor-widget-image,
  [data-elementor-type="wp-page"] > .e-con:first-child > .e-con > .e-con:has(> .elementor-widget-image img[src*="BlueMonks_V1"]) .elementor-widget-image > .elementor-widget-container { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child > .e-con > .e-con:has(> .elementor-widget-image img[src*="BlueMonks_V1"]) img { width: 52vw !important; max-width: none !important; height: auto !important; margin: -8vw 0 0 !important; display: block; position: relative; left: 50%; transform: translateX(-50%) !important; }
  [data-elementor-type="wp-page"] > .e-con:first-child:has(img[src*="BlueMonks_V1"]) > .e-con > .e-con:not(:has(img[src*="BlueMonks_V1"])) { margin-top: 0 !important; position: relative; z-index: 1; padding: 0 5vw 5vw !important; }
}

/* Sectoren op mobiel: compacte lijst in één kolom, klein icoon links, naam ernaast (feedback Rogier 23-09). */
@media (max-width: 767px) {
  .elementor-element-544ea27 { gap: 0 !important; }
  .elementor-element-544ea27 > .e-con { flex-direction: column !important; flex-wrap: nowrap !important; gap: 0 !important; }
  .elementor-element-544ea27 > .e-con > .e-con { width: 100% !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; gap: 14px !important; padding: 12px 0 !important; border-bottom: 1px solid rgba(13, 51, 255, .14); }
  .elementor-element-544ea27 > .e-con:first-child > .e-con:first-child { border-top: 1px solid rgba(13, 51, 255, .14); }
  .elementor-element-544ea27 > .e-con > .e-con > .e-con { width: auto !important; min-width: 0; flex: 0 1 auto !important; gap: 0 !important; }
  .elementor-element-544ea27 > .e-con > .e-con > .e-con:first-child { flex: 0 0 30px !important; }
  .elementor-element-544ea27 .elementor-icon { font-size: 30px !important; }
  .elementor-element-544ea27 .elementor-icon svg { width: 30px !important; height: 30px !important; }
  .elementor-element-544ea27 .elementor-heading-title { font-size: 16px !important; line-height: 1.3 !important; overflow-wrap: anywhere; }
}

/* Contactpagina: het WordPress-formulier kan op deze statische versie niet verzenden (en reCAPTCHA kent
   het domein niet). Daarom een contactblok met mail, afspraak en telefoon in plaats van het formulier. */
.elementor-element-3a01b6b, .grecaptcha-badge { display: none !important; }
.bm-page .contact-alt { padding: 8px 0 12px; }
.bm-page .contact-alt__lead { font-size: var(--bm-lead); margin: 0; }
.bm-page .contact-alt__phone { margin-top: 16px; font-size: var(--bm-text); }

/* Roze onder de hero precies gelijk aan de zijmarge (geen -1px-overlap met de intro) */
@media (min-width: 768px) { .bm-page .bm-hero + .bm-intro { margin-top: 0; } }

/* Footer (variant 2): blauw, tagline met knop, vier kolommen, juridisch en taal */
.bm-footer { background: var(--bm-blue); color: var(--bm-white); padding: 0 var(--bm-gutter); font-family: Outfit, sans-serif; }
.bm-footer a { color: inherit; text-decoration: none; }
.bm-footer a:hover { color: var(--bm-pink); }
.bm-footer__cta { display: flex; justify-content: space-between; align-items: flex-end; gap: 32px; padding: clamp(56px, 6vw, 104px) 0 clamp(40px, 4vw, 64px); border-bottom: 1px solid rgba(255, 255, 255, .3); }
.bm-footer__tag { margin: 0; font-size: clamp(40px, 4.4vw, 76px); line-height: 1.04; font-weight: 600; letter-spacing: -.015em; }
.bm-footer__tag span { color: var(--bm-pink); }
.bm-footer__btn { display: inline-block; background: var(--bm-white); color: var(--bm-blue) !important; font-weight: 600; font-size: 17px; padding: 16px 28px; white-space: nowrap; }
.bm-footer__btn:hover { background: var(--bm-pink); }
.bm-footer__main { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 3fr); gap: 48px; padding: clamp(48px, 5vw, 80px) 0 clamp(40px, 4vw, 64px); }
.bm-footer__brand img { height: 30px; width: auto; filter: brightness(0) invert(1); display: block; }
.bm-footer__brand p { margin: 22px 0 0; font-size: 16px; line-height: 1.75; color: rgba(255, 255, 255, .85); }
.bm-footer__cols { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; }
.bm-footer__col h4 { margin: 0 0 16px; font-size: 16px; font-weight: 600; color: var(--bm-pink); }
.bm-footer__col ul { list-style: none; margin: 0; padding: 0; }
.bm-footer__col li { margin: 0 0 11px; font-size: 16px; color: rgba(255, 255, 255, .85); }
.bm-footer__bar { display: flex; align-items: center; gap: 32px; padding: 22px 0 32px; border-top: 1px solid rgba(255, 255, 255, .3); font-size: 14px; color: rgba(255, 255, 255, .8); }
.bm-footer__legal { display: flex; gap: 24px; margin-right: auto; }
.bm-footer__lang { display: flex; gap: 12px; }
.bm-footer__lang [aria-current] { color: var(--bm-white); font-weight: 600; }
@media (max-width: 900px) {
  .bm-footer__cta { flex-direction: column; align-items: flex-start; }
  .bm-footer__main { grid-template-columns: minmax(0, 1fr); }
  .bm-footer__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 36px; }
  .bm-footer__bar { flex-wrap: wrap; gap: 16px 24px; }
  .bm-footer__legal { flex-wrap: wrap; margin-right: 0; width: 100%; }
}
.bm-footer .bm-footer__col h4 a { color: var(--bm-pink); }
.bm-footer .bm-footer__col h4 a:hover { color: var(--bm-white); }

/* Hero: grote kop op alle pagina's met de monnik (niet de Wisdom-hero met productbeeld) */
.bm-page .bm-hero:not(.wd-hero) .bm-hero__copy { width: 54%; }
.bm-page .bm-hero:not(.wd-hero) .bm-hero__title { font-size: 6.6vw; line-height: 1.02; letter-spacing: -.02em; }
.bm-page .bm-hero:not(.wd-hero) .bm-hero__rule { margin: 1.6vw 0 2vw; }
.bm-page .bm-hero:not(.wd-hero) .bm-hero__sub { font-size: 1.9vw; font-weight: 500; line-height: 1.35; max-width: 19em; }
@media (max-width: 767px) {
  .bm-page .bm-hero:not(.wd-hero) .bm-hero__copy { width: auto; }
  .bm-page .bm-hero:not(.wd-hero) .bm-hero__title { font-size: 14vw; }
  .bm-page .bm-hero:not(.wd-hero) .bm-hero__sub { font-size: 5.2vw; }
}

/* Blauwe vlakken op middelbreedte: nooit van rand tot rand, zelfde inzet als de hero en de kaarten */
.bm-page section.bm-section.bm-blue { margin-left: var(--bm-gutter); margin-right: var(--bm-gutter); padding-left: clamp(28px, 4.5vw, 80px); padding-right: clamp(28px, 4.5vw, 80px); }
@media (max-width: 767px) { .bm-page section.bm-section.bm-blue { margin-left: 0; margin-right: 0; } }
.bm-page section.bm-section.bm-blue, .bm-page .bm-logowall { margin-bottom: clamp(32px, 3vw, 56px); }
.bm-page .bm-hero__sub { text-wrap: balance; }

/* Eén kopstijl voor alle blokken (keuze Rogier 25-09): zelfde maat en dikte als "Vertrouwd door" */
.bm-page section h2, .bm-page .bm-h2, .bm-page .wd-h2, .bm-page .bm-intro__head h2, .bm-page .bm-band h2, .bm-page .bm-logos h2 {
  font-size: clamp(32px, 3.6vw, 64px); line-height: 1.08; letter-spacing: -.02em; font-weight: 600; text-wrap: balance;
}
.bm-page .bm-band .wd-h2, .bm-page .wd-duo .wd-bluecard .wd-h2 { font-size: clamp(32px, 3.6vw, 64px); }
/* Nooit twee lijnen onder elkaar: een cijfer direct onder de kopstreep krijgt geen eigen bovenlijn */
.bm-page .bm-rule ~ .bm-stat, .bm-page .bm-rule ~ * .bm-stat, .bm-page .bm-rule + .bm-stat { border-top: 0; padding-top: 8px; }
/* Roze vlakken ook op middelbreedte, zoals de blauwe */
.bm-page section.bm-section.bm-pink { margin-left: var(--bm-gutter); margin-right: var(--bm-gutter); padding-left: clamp(28px, 4.5vw, 80px); padding-right: clamp(28px, 4.5vw, 80px); margin-bottom: clamp(32px, 3vw, 56px); }
@media (max-width: 767px) { .bm-page section.bm-section.bm-pink { margin-left: 0; margin-right: 0; } }
/* Genormaliseerde sectiekop (25-09): altijd blauw met streep eronder; wit op blauw */
.bm-page .bm-title .bm-h2 { color: var(--bm-blue); }
.bm-page .bm-blue .bm-title .bm-h2, .bm-page .bm-band .bm-title .bm-h2 { color: var(--bm-white); }
.bm-page .bm-blue .bm-title .bm-rule--blue { background: var(--bm-white); }
.bm-page .bm-title .bm-rule + .bm-rule { display: none; }
/* Vinkjeskaarten: blauwe cirkel met gecentreerd vinkje, zelfde als op Diensten */
.bm-page .bm-checkcard { position: relative; padding-top: 44px; }
.bm-page .bm-checkcard::before { content: ""; position: absolute; left: 0; top: 0; width: 28px; height: 28px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='13' fill='%230D33FF'/%3E%3Cpath d='M8 13.4l3.3 3.2L18 9.9' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='square'/%3E%3C/svg%3E") center / 28px 28px no-repeat; }
.bm-page .bm-checkcard h3 { font-size: var(--bm-h4); color: var(--bm-blue); margin: 0 0 10px; }
.bm-page .bm-checkcard p { font-size: var(--bm-text); margin: 0; }
.bm-page .bm-pink .bm-stat { color: var(--bm-blue); }
.bm-page .bm-pink .bm-stat__label { color: var(--bm-black); }

/* Ruimte boven ingesprongen blauwe en roze vlakken, ook direct na een roze intro */
.bm-page section.bm-section.bm-blue, .bm-page section.bm-section.bm-pink, .bm-page .bm-logowall { margin-top: clamp(32px, 3vw, 56px); }

/* Citaatblok compacter (25-09) */
.bm-page section.bm-section:has(> .bm-quote) { padding-block: clamp(40px, 4vw, 72px); }
/* Vinkkaarten: kleiner vinkje naast de titel (25-09) */
.bm-page .bm-checkcard { padding-top: 0; }
.bm-page .bm-checkcard::before { width: 20px; height: 20px; top: .18em; background-size: 20px 20px; }
.bm-page .bm-checkcard h3 { padding-left: 32px; }
/* Cijfers in blauwe vlakken: geen streep erboven (25-09) */
.bm-page .bm-blue .bm-stat, .bm-page .bm-band .bm-stat { border-top: 0; padding-top: 0; }
.bm-page .bm-row__text { font-size: clamp(16px, 1.15vw, 18px); line-height: 1.55; } .bm-page .bm-row__title { font-size: clamp(18px, 1.35vw, 22px); }
@media (max-width: 767px) { .bm-page .bm-hero__monk { margin: calc(-21vw + 40px + 14vw) -18vw calc(-26vw - 14vw); } } /* monnik op mobiel iets lager, tekst blijft staan (25-09) */
/* Tegels met een wit icoon op blauw (img/tiles): bij hover niet vergroten, het icoon wordt roze (26-09).
   Een roze laag met 'multiply' kleurt wit naar roze en maakt het blauw iets dieper; titel en knop liggen erboven. */
.bm-page a.bm-imgcard:has(img[src*="/tiles/"]):hover img { transform: none; }
.bm-page a.bm-imgcard:has(img[src*="/tiles/"])::after { content: ""; position: absolute; inset: 0; background: var(--bm-pink); mix-blend-mode: multiply; opacity: 0; transition: opacity .2s; pointer-events: none; }
.bm-page a.bm-imgcard:has(img[src*="/tiles/"]):hover::after { opacity: 1; }
/* Illustratietegel naast uitdaging en oplossing (26-09): zelfde tekeningen en tegelstijl als de diensten op de homepage */
.bm-page .bm-illtile { position: relative; overflow: hidden; min-height: clamp(420px, 34vw, 560px); background: var(--bm-pink); }
.bm-page .bm-illtile__ill { position: absolute; right: 0; bottom: 0; width: min(72%, 420px); }
.bm-page .bm-illtile__ill svg { display: block; width: 100%; height: auto; }
@media (max-width: 767px) { .bm-page .bm-illtile { min-height: 0; aspect-ratio: 1 / 1; } .bm-page .bm-illtile__ill { width: 80%; } }
/* Brede illustratie onder een sectie (26-09): roze vlak, paneel loopt rechts en onder tegen de rand */
.bm-page .bm-illwide { position: relative; overflow: hidden; margin-top: clamp(40px, 4vw, 72px); background: var(--bm-pink); padding: clamp(28px, 3vw, 56px) 0 0 clamp(28px, 3vw, 56px); }
.bm-page .bm-illwide svg { display: block; width: 100%; height: auto; margin-bottom: -2px; }
@media (max-width: 767px) { .bm-page .bm-illwide { overflow-x: auto; } .bm-page .bm-illwide svg { width: 900px; max-width: none; } }
/* Losse blokken op een roze vlak, rondom gelijke ruimte (API-plaat onder het blauwe API-blok). */
.bm-page .bm-illwide--tiles { padding: clamp(28px, 3vw, 56px); }

/* Eén ritme voor de hele site (26-09): tussen twee opeenvolgende onderdelen altijd dezelfde ruimte.
   Witte secties krijgen boven en onder een halve eenheid; gekleurde blokken (roze, blauw, lichtgrijs) staan ingesprongen
   met een halve eenheid marge, zodat tekst-tekst, tekst-blok en blok-blok overal even ver uit elkaar staan. */
.bm-page { --bm-space: clamp(64px, 7vw, 128px); --bm-inset: clamp(44px, 5vw, 96px); }
.bm-page .bm-section, .bm-page .bm-section--flush-top, .bm-page .bm-section--tight, .bm-page section.bm-section:has(> .bm-quote) { padding-top: calc(var(--bm-space) / 2); padding-bottom: calc(var(--bm-space) / 2); }
.bm-page section.bm-section.bm-pink, .bm-page section.bm-section.bm-blue, .bm-page section.bm-section.bm-off { margin: calc(var(--bm-space) / 2) var(--bm-gutter); padding: var(--bm-inset) clamp(28px, 4.5vw, 80px); }
@media (max-width: 767px) { .bm-page section.bm-section.bm-pink, .bm-page section.bm-section.bm-blue, .bm-page section.bm-section.bm-off { margin-left: 0; margin-right: 0; padding-left: var(--bm-gutter); padding-right: var(--bm-gutter); } }
/* Het roze vlak rond hero en intro blijft doorlopen: de intro direct onder de hero houdt zijn eigen roze band */
.bm-page .bm-hero + section.bm-section.bm-pink { margin-top: 0; }
/* Menu rechts uitgelijnd, dicht bij de taalkeuze (26-09) */
@media (min-width: 1101px) { .bm-nav__menu { margin: 0 clamp(12px, 1.6vw, 32px) 0 auto; } }
/* Uitdaging + oplossing naast een illustratietegel (26-09): de twee vlakken vullen samen de hoogte van de tegel,
   de tegel heeft roze lucht boven de tekening, en links in de blauwe oplossing zijn wit en onderstreept */
.bm-page .bm-media:has(> .bm-illtile) { align-items: stretch; }
.bm-page .bm-media:has(> .bm-illtile) > .bm-dn-pair { grid-template-rows: 1fr 1fr; height: 100%; }
.bm-page .bm-media:has(> .bm-illtile) > .bm-dn-pair > div { display: flex; flex-direction: column; justify-content: center; }
.bm-page .bm-illtile { display: flex; justify-content: flex-end; align-items: flex-end; min-height: 0; padding-top: clamp(40px, 4vw, 72px); }
.bm-page .bm-illtile__ill { position: static; width: min(78%, 440px); }
.bm-page .bm-dn-pair__a a { color: var(--bm-white); text-decoration: underline; text-underline-offset: 3px; }
/* Pakketkaarten: titels altijd twee regels hoog, zodat prijzen en tekst op één lijn staan (26-09) */
.bm-page .bm-grid--3 > .bm-price h3 { min-height: 2.5em; }
/* Groot blauw blok (26-09): vervangt 'tekst naast blauw vierkant met icoon' */
.bm-page .bm-bigblock__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 96px); align-items: start; }
.bm-page .bm-bigblock .wd-h2 { color: var(--bm-white); margin: 0; font-size: clamp(34px, 3.6vw, 64px); line-height: 1.06; }
.bm-page .bm-bigblock .wd-h2 span { color: var(--bm-pink); }
.bm-page .bm-bigblock .bm-rule { background: var(--bm-white); }
.bm-page .bm-bigblock__body { font-size: var(--bm-lead); line-height: 1.55; color: var(--bm-white); }
.bm-page .bm-bigblock__body p { margin: 0 0 1em; }
.bm-page .bm-bigblock__stat { margin-bottom: clamp(20px, 2vw, 32px); font-weight: 600; }
.bm-page .bm-bigblock__num { font-size: clamp(48px, 5vw, 88px); line-height: 1; color: var(--bm-pink); letter-spacing: -.02em; margin-bottom: 8px; }
.bm-page .bm-bigblock .bm-checks li { color: var(--bm-white); }
@media (max-width: 767px) { .bm-page .bm-bigblock__grid { grid-template-columns: minmax(0, 1fr); } }
/* Menu (26-09): zelfde ruimte voor 'NL' als tussen de andere items; alle items in de maat en dikte van 'NL' */
@media (min-width: 1101px) { .bm-nav__menu { margin-right: 0; } }
.bm-nav .bm-nav__menu .bm-nav__link, .bm-nav .bm-nav__menu a.bm-nav__link { font-size: 14px; font-weight: 600; }
/* Vinkjesblok: lange titels mogen afbreken */
.bm-page .home-aanpak__cards .bm-checkcard h3 { white-space: normal; }
/* Uitdaging + oplossing als één tegel (26-09), zoals de productkaarten op de Wisdom-pagina */
.bm-page .bm-chtile { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 3vw, 56px); background: var(--bm-pink); overflow: hidden; }
.bm-page .bm-chtile__copy { padding: clamp(32px, 3.6vw, 64px) 0 clamp(32px, 3.6vw, 64px) clamp(32px, 3.6vw, 64px); }
.bm-page .bm-chtile h3 { font-size: clamp(24px, 2vw, 34px); line-height: 1.12; font-weight: 600; color: var(--bm-black); margin: 0 0 14px; }
.bm-page .bm-chtile h3.bm-chtile__sol { color: var(--bm-blue); margin-top: clamp(28px, 2.8vw, 44px); }
.bm-page .bm-chtile__copy p { font-size: var(--bm-lead); line-height: 1.55; margin: 0; max-width: 30em; }
.bm-page .bm-chtile__ill { align-self: end; justify-self: end; width: min(100%, 470px); padding-top: clamp(40px, 4vw, 72px); }
.bm-page .bm-chtile__ill svg { display: block; width: 100%; height: auto; }
@media (max-width: 900px) { .bm-page .bm-chtile { grid-template-columns: minmax(0, 1fr); } .bm-page .bm-chtile__copy { padding-right: clamp(32px, 3.6vw, 64px); padding-bottom: 0; } .bm-page .bm-chtile__ill { width: 86%; padding-top: 8px; } }
/* Uitdaging en oplossing als twee tegels naast elkaar (26-09), zoals de productkaarten op de Wisdom-pagina */
.bm-page .bm-chpair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(12px, 1.4vw, 20px); }
.bm-page .bm-chcard { display: flex; flex-direction: column; overflow: hidden; background: var(--bm-off); padding: clamp(32px, 3.4vw, 60px) 0 0 clamp(32px, 3.4vw, 60px); }
.bm-page .bm-chcard--pink { background: var(--bm-pink); }
.bm-page .bm-chcard h3 { font-size: clamp(24px, 2vw, 34px); line-height: 1.12; font-weight: 600; color: var(--bm-black); margin: 0 clamp(32px, 3.4vw, 60px) 14px 0; }
.bm-page .bm-chcard p { font-size: var(--bm-lead); line-height: 1.55; margin: 0 clamp(32px, 3.4vw, 60px) 0 0; max-width: 30em; }
.bm-page .bm-chcard p a { color: var(--bm-blue); }
.bm-page .bm-chcard__ill { margin: auto 0 0 auto; padding-top: clamp(32px, 3.2vw, 56px); width: min(88%, 460px); }
.bm-page .bm-chcard__ill svg { display: block; width: 100%; height: auto; }
@media (max-width: 767px) { .bm-page .bm-chpair { grid-template-columns: minmax(0, 1fr); } }
/* Ritme, versie 2 (26-09): elke sectie heeft boven en onder dezelfde marge en geen verticale padding. Omdat marges van
   opeenvolgende secties samenvallen, is de ruimte tussen twee onderdelen altijd precies één --bm-gap, of het nu tekst,
   een tegelrij of een gekleurd blok is. */
.bm-page { --bm-gap: clamp(16px, 1.6vw, 24px); }  /* = ruimte tussen twee tegels op de Wisdom-pagina (keuze Rogier 26-09) */
.bm-page .bm-section, .bm-page .bm-section--flush-top, .bm-page .bm-section--tight, .bm-page section.bm-section:has(> .bm-quote) { padding-top: 0; padding-bottom: 0; margin-top: var(--bm-gap); margin-bottom: var(--bm-gap); }
.bm-page section.bm-section.bm-pink, .bm-page section.bm-section.bm-blue, .bm-page section.bm-section.bm-off { margin-top: var(--bm-gap); margin-bottom: var(--bm-gap); padding-top: var(--bm-inset); padding-bottom: var(--bm-inset); }
.bm-page .bm-hero + section.bm-pink { margin-top: 0; }
/* Uitdaging/oplossing-tegels (26-09, ronde 2): zelfde maat en typografie als de productkaarten op de Wisdom-pagina */
.bm-page .bm-chcard { padding: clamp(32px, 3vw, 56px) 0 0 clamp(32px, 3vw, 56px); }
.bm-page .bm-chcard h3 { font-size: var(--bm-h3); line-height: 1.2; margin: 0 clamp(32px, 3vw, 56px) 14px 0; }
.bm-page .bm-chcard p { font-size: var(--bm-text); margin-right: clamp(32px, 3vw, 56px); max-width: 34em; }
.bm-page .bm-chcard__ill { height: clamp(260px, 24vw, 420px); overflow: hidden; padding-top: 0; margin-top: auto; width: min(86%, 470px); }
.bm-page .bm-chcard { gap: clamp(28px, 2.6vw, 44px); }
@media (max-width: 767px) { .bm-page .bm-chcard__ill { height: 64vw; width: 88%; } }
.bm-page .bm-chcard { gap: 0; }
.bm-page .bm-chcard p { margin-bottom: clamp(28px, 2.6vw, 44px); }
/* Stappenblok, nieuwe standaard (26-09, optie 05): roze blok, grote blauwe cijfers, titels iets groter */
.bm-page .bm-steps5 .wd-h2 { color: var(--bm-black); }
.bm-page .bm-steps5 .wd-h2 span { color: var(--bm-blue); }
.bm-page .bm-steps5 .bm-lead { color: var(--bm-black); }
.bm-page .bm-steps5__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: clamp(28px, 3vw, 56px); }
.bm-page .bm-steps5__num { display: block; font-size: clamp(56px, 6vw, 104px); font-weight: 600; line-height: .9; letter-spacing: -.04em; color: var(--bm-blue); margin-bottom: clamp(14px, 1.4vw, 22px); }
.bm-page .bm-steps5 h3 { font-size: clamp(22px, 1.8vw, 30px); line-height: 1.2; font-weight: 600; color: var(--bm-black); margin: 0 0 10px; }
.bm-page .bm-steps5 li p { font-size: var(--bm-text); line-height: 1.55; margin: 0; max-width: 26em; color: var(--bm-black); }
.bm-page .bm-steps5 .bm-actions { margin-top: clamp(28px, 3vw, 48px); }
@media (max-width: 1024px) { .bm-page .bm-steps5__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) { .bm-page .bm-steps5__list { grid-template-columns: minmax(0, 1fr); } .bm-page .bm-steps5__num { font-size: 56px; } }
/* Eén ritme, afdwingend (26-09): elk onderdeel direct in de pagina heeft boven en onder precies --bm-gap.
   Witte secties hebben geen eigen verticale padding; gekleurde secties houden hun binnenruimte. Eerdere losse regels vervallen. */
main.bm-page > section { margin-top: var(--bm-gap) !important; margin-bottom: var(--bm-gap) !important; }
main.bm-page > section:not(.bm-pink):not(.bm-blue):not(.bm-off):not(.bm-hero):not(.bm-intro) { padding-top: 0 !important; padding-bottom: 0 !important; }
main.bm-page > section.bm-hero { margin-top: 0 !important; margin-bottom: 0 !important; }
main.bm-page > .bm-hero + section.bm-intro { margin-top: -1px !important; }
@media (min-width: 768px) { main.bm-page > section.bm-intro { padding: clamp(40px, 4.4vw, 80px) var(--bm-gutter) clamp(56px, 6.5vw, 120px) !important; } }
/* Ritme, definitief (26-09): gekleurd blok tegen gekleurd blok = --bm-gap (tegelafstand Wisdom); zodra een witte sectie
   meedoet de ruimere --bm-gap-wide. Marges van opeenvolgende secties vallen samen, dus de grootste wint. */
.bm-page { --bm-gap-wide: clamp(56px, 6vw, 104px); }
main.bm-page > section:not(.bm-pink):not(.bm-blue):not(.bm-off):not(.bm-hero):not(.bm-intro) { margin-top: var(--bm-gap-wide) !important; margin-bottom: var(--bm-gap-wide) !important; }
main.bm-page > section.bm-intro { margin-bottom: var(--bm-gap-wide) !important; }
/* Secties die zelf één gekleurd blok zijn, tellen als blok (korte tegelafstand) */
main.bm-page > section:is(:has(> .home-wisdom__block), :has(> .home-trust__tile), :has(> .bm-chpair), :has(> .wd-duo), :has(> .bm-chtile)):not(.bm-pink):not(.bm-blue):not(.bm-off):not(.bm-hero):not(.bm-intro) { margin-top: var(--bm-gap) !important; margin-bottom: var(--bm-gap) !important; }
/* (29-09) de :not()-rij geeft deze regel genoeg gewicht om de witte-sectieregel hierboven te verslaan; alleen merkbaar op Wisdom, waar --bm-gap de tegelafstand is */
/* Titels mogen niet breder worden dan hun kolom; bm.js verkleint zo nodig */
.bm-page .bm-hero__title { max-width: 100%; overflow-wrap: normal; }
.bm-page .bm-hero__copy { min-width: 0; }
/* Ritme, keuze 26-09 (avond): overal de ruime witruimte tussen blokken; alleen de Wisdom-pagina houdt de tegelafstand */
.bm-page { --bm-gap-tile: clamp(16px, 1.6vw, 24px); --bm-gap: var(--bm-gap-wide); }
/* Intro onder de hero weer hoger in het roze vlak (zoals voorheen) */
@media (min-width: 768px) { main.bm-page > section.bm-intro { padding-top: clamp(24px, 3vw, 56px) !important; } }
/* Wisdom-pagina: blok tegen blok = tegelafstand, witte tekstsecties houden de ruime marge (26-09) */
main.bm-page:has(> .wd-hero) { --bm-gap: var(--bm-gap-tile); }
/* Een gekleurd blok direct onder de hero staat los (alleen de intro sluit aan) */
main.bm-page > .bm-hero + section.bm-pink:not(.bm-intro) { margin-top: var(--bm-gap-wide) !important; }
/* Vinkjesrij onder stappen: geen lijnen (26-09) */
.bm-page .bm-tx-inline, .bm-page .bm-tx-inline li { border: 0 !important; box-shadow: none !important; }
.bm-page .bm-tx-inline li::after { display: none !important; }
/* Artikelen (nieuws en kennisbank) volgen hetzelfde ritme als secties: ruime marge onder, ook op mobiel (27-09) */
main.bm-page > article.bm-section { margin-top: var(--bm-gap-wide) !important; margin-bottom: var(--bm-gap-wide) !important; padding-top: 0 !important; padding-bottom: 0 !important; }
/* Mobiel: monnik boven de titel, geplaatst door bm.js (27-09) */
@media (max-width: 767px) { .bm-page .bm-hero__block.is-fitted { position: relative; } .bm-page .bm-hero__block.is-fitted .bm-hero__copy { position: relative; z-index: 1; } }
/* Teamfoto's en initialen op lichtgrijs i.p.v. roze (28-09), zelfde grijs als 'Vertrouwd door' */
.bm-page .bm-person__photo { background: var(--bm-off); }
/* Alleen Wisdom-pagina (29-09): de productkaarten eindigen in een kaart, dus daaronder de tegelafstand tot de blauwe kaarten */
main.bm-page:has(> .wd-hero) > section:has(> .wd-pcards):not(.bm-pink):not(.bm-blue):not(.bm-off):not(.bm-hero):not(.bm-intro) { margin-bottom: var(--bm-gap-tile) !important; }
/* Nieuwsbrief in de footer (30-09): zelfde stijl als de footerknop, wit op blauw */
.bm-footer .bm-news { margin-top: 28px; max-width: 360px; }
.bm-footer .bm-news__label { display: block; font-size: 16px; font-weight: 600; color: #fff; margin-bottom: 10px; }
.bm-footer .bm-news__row { display: flex; }
.bm-footer .bm-news input { flex: 1; min-width: 0; font: inherit; font-size: 15px; padding: 12px 14px; border: 1.5px solid #fff; border-right: 0; background: transparent; color: #fff; border-radius: 0; }
.bm-footer .bm-news input::placeholder { color: rgba(255, 255, 255, .7); }
.bm-footer .bm-news input:focus { outline: none; background: rgba(255, 255, 255, .08); }
.bm-footer .bm-news button { font: inherit; font-size: 15px; font-weight: 600; padding: 12px 20px; border: 1.5px solid #fff; background: #fff; color: var(--bm-blue); cursor: pointer; border-radius: 0; }
.bm-footer .bm-news button:hover { background: var(--bm-pink); border-color: var(--bm-pink); }
.bm-footer .bm-news button:disabled { opacity: .6; cursor: default; }
.bm-footer .bm-news__msg { margin: 10px 0 0; min-height: 1.4em; font-size: 14px; color: var(--bm-pink); }
.bm-footer .bm-news__msg.is-ok { color: #fff; }

/* consent.css */
/* Cookiebanner (bm.js): volle blauwe balk onderaan met witte tekst; weigeren en accepteren even groot en even makkelijk. */
.bm-consent { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1000; background: var(--bm-blue); color: #fff; box-shadow: 0 -10px 32px rgba(0, 8, 60, .28); font-family: var(--bm-font); -webkit-font-smoothing: antialiased; }
.bm-consent__inner { max-width: 1440px; margin: 0 auto; display: flex; align-items: center; gap: 32px; padding: 24px clamp(20px, 5vw, 72px); }
.bm-consent__text { margin: 0; font-size: 16px; font-weight: 300; line-height: 1.6; color: #fff; }
.bm-consent__text a { color: #fff; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.bm-consent__btns { display: flex; gap: 12px; flex: none; }
.bm-consent__btn { font-family: var(--bm-font); font-size: 15px; font-weight: 600; line-height: 1.2; min-width: 140px; padding: 12px 20px; border: 1.5px solid #fff; background: #fff; color: var(--bm-blue); cursor: pointer; border-radius: 0; }
.bm-consent__btn--line { background: transparent; color: #fff; }
.bm-consent__btn:hover { background: var(--bm-pink); border-color: var(--bm-pink); color: var(--bm-blue); }
.bm-consent__btn:focus-visible { outline: 3px solid var(--bm-pink); outline-offset: 2px; }
@media (max-width: 760px) {
  .bm-consent__inner { flex-direction: column; align-items: stretch; gap: 16px; padding: 20px; }
  .bm-consent__text { font-size: 15px; }
  .bm-consent__btns { width: 100%; }
  .bm-consent__btn { flex: 1; min-width: 0; }
}
@media print { .bm-consent { display: none; } }

/* diensten.css */
/* Groep diensten: /diensten/ (+ consultancy, professionals, servicedesk, hersteltrajecten) en /sectoren/.
   Alleen aanvullingen op bm.css; alle selectors onder .bm-page. */

/* Kernpunten in één rij, vinkje ervoor (onder de intro) */
.bm-page .bm-dn-ticks { list-style: none; margin: 0; padding: 0 !important; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px 40px; }
.bm-page .bm-dn-ticks li { position: relative; white-space: nowrap; padding-left: 40px; color: var(--bm-blue); font-size: var(--bm-h4); font-weight: 600; line-height: 1.3; }
.bm-page .bm-dn-ticks li::before { content: ""; position: absolute; left: 0; top: 50%; width: 26px; height: 26px; margin-top: -13px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='13' fill='%230D33FF'/%3E%3Cpath d='M8 13.4l3.3 3.2L18 9.9' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='square'/%3E%3C/svg%3E") center / 26px 26px no-repeat; }
@media (max-width: 1180px) { .bm-page .bm-dn-ticks { display: grid; grid-template-columns: repeat(2, max-content); justify-content: start; gap: 18px 40px; } }
@media (max-width: 560px) { .bm-page .bm-dn-ticks { grid-template-columns: max-content; } }

/* Dienst: beeldkaart met korte omschrijving eronder */
.bm-page .bm-dn-svc { display: grid; gap: 16px; align-content: start; }
.bm-page .bm-dn-svc > p { font-size: var(--bm-text); max-width: 26em; }

/* Uitdaging en oplossing naast elkaar */
.bm-page .bm-dn-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; }
.bm-page .bm-dn-pair > div { padding: clamp(28px, 3vw, 56px); display: grid; gap: 14px; align-content: start; }
.bm-page .bm-dn-pair h3 { font-size: var(--bm-h3); line-height: 1.3; }
.bm-page .bm-dn-pair__q { background: var(--bm-off); }
.bm-page .bm-dn-pair__q h3 { color: var(--bm-blue); }
.bm-page .bm-dn-pair__a { background: var(--bm-blue); color: var(--bm-white); }
.bm-page .bm-dn-pair .bm-dn-pair__a h3 { color: var(--bm-white); }
.bm-page .bm-dn-pair h3 { margin-bottom: 0; }

/* Productscherm op roze vlak (geen bijsnijding) */
.bm-page .bm-dn-screen { background: var(--bm-pink); padding: clamp(20px, 3vw, 56px); display: grid; place-items: center; }
.bm-page .bm-dn-screen img { width: 100%; max-width: 620px; height: auto; }
.bm-page .bm-dn-screen--wide { background: var(--bm-off); }
.bm-page .bm-dn-screen--wide img { max-width: 920px; }

/* Sectortegels: groot lijnicoon van de oude homepage met naam */
.bm-page .bm-dn-sectors { display: grid; grid-template-columns: repeat(var(--cols, 4), minmax(0, 1fr)); gap: clamp(12px, 1.2vw, 20px); }
.bm-page .bm-dn-sector { background: var(--bm-off); padding: clamp(22px, 2vw, 36px); display: grid; grid-template-rows: auto 1fr; gap: clamp(18px, 1.6vw, 28px); align-content: start; text-decoration: none; color: var(--bm-blue); min-height: clamp(170px, 13vw, 230px); position: relative; transition: background .15s ease, color .15s ease; }
.bm-page .bm-dn-sector svg { width: clamp(48px, 3.8vw, 64px); height: clamp(48px, 3.8vw, 64px); color: var(--bm-blue); }
.bm-page .bm-dn-sector h3 { font-size: var(--bm-h4); line-height: 1.3; align-self: end; overflow-wrap: break-word; }
.bm-page .bm-pink .bm-dn-sector, .bm-page .bm-off .bm-dn-sector { background: var(--bm-white); }
.bm-page a.bm-dn-sector::after { content: ""; position: absolute; right: clamp(22px, 2vw, 36px); top: clamp(22px, 2vw, 36px); width: 7px; height: 7px; border-right: 2px solid currentColor; border-top: 2px solid currentColor; transform: rotate(45deg); opacity: .5; }
.bm-page a.bm-dn-sector:hover { background: var(--bm-blue); color: var(--bm-white); }
.bm-page a.bm-dn-sector:hover svg { color: var(--bm-white); }
.bm-page a.bm-dn-sector:hover::after { opacity: 1; }

/* Genummerde aanpakpunten (hersteltrajecten): nummer links, tekst rechts */
.bm-page .bm-dn-list { counter-reset: dn; border-top: 1px solid var(--bm-line); }
.bm-page .bm-dn-list > div { counter-increment: dn; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: clamp(16px, 3vw, 56px); padding: clamp(20px, 2vw, 32px) 0; border-bottom: 1px solid var(--bm-line); }
.bm-page .bm-dn-list h3 { color: var(--bm-blue); font-size: var(--bm-h4); line-height: 1.35; display: flex; gap: 16px; }
.bm-page .bm-dn-list h3::before { content: counter(dn, decimal-leading-zero); font-weight: 600; min-width: 2ch; }
.bm-page .bm-dn-list p { max-width: 44em; }

@media (max-width: 1024px) {
  .bm-page .bm-dn-sectors { --cols: 3; }
}
@media (max-width: 767px) {
  .bm-page .bm-dn-pair { grid-template-columns: minmax(0, 1fr); }
  .bm-page .bm-dn-sectors { --cols: 2; }
  .bm-page .bm-dn-sector { min-height: 150px; padding: 18px 16px; }
  .bm-page .bm-dn-sector h3 { font-size: 14.5px; }
  .bm-page .bm-dn-sector svg { width: 44px; height: 44px; }
  .bm-page .bm-dn-list > div { grid-template-columns: minmax(0, 1fr); gap: 8px; }
}

/* Sectoren op mobiel: compacte lijst in één kolom (zelfde opbouw als op de homepage) */
@media (max-width: 767px) {
  .bm-page .bm-dn-sectors { --cols: 1; gap: 0; border-top: 1px solid rgba(13, 51, 255, .14); }
  .bm-page .bm-dn-sector { display: flex; align-items: center; gap: 14px; min-height: 0; padding: 12px 28px 12px 0; background: transparent; border-bottom: 1px solid rgba(13, 51, 255, .14); }
  .bm-page .bm-pink .bm-dn-sector, .bm-page .bm-off .bm-dn-sector { background: transparent; }
  .bm-page .bm-dn-sector svg { width: 30px; height: 30px; flex: 0 0 30px; }
  .bm-page .bm-dn-sector h3 { font-size: 16px; align-self: center; }
  .bm-page a.bm-dn-sector::after { right: 6px; top: 50%; margin-top: -4px; }
}

/* home.css */
/* Homepage-toevoegingen: Wisdom-blok en Marits nieuwe secties, ingevoegd in de bestaande homepage. */

.bm-page .home-wisdom__block { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); min-height: clamp(420px, 36vw, 620px); background: var(--bm-blue); color: var(--bm-white); text-decoration: none; overflow: hidden; }
.bm-page .home-wisdom__copy { padding: clamp(40px, 4.5vw, 80px); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; position: relative; z-index: 1; }
.bm-page .home-wisdom__logo { width: 18vw; max-width: 300px; height: auto; margin-bottom: 2vw; }
.bm-page .home-wisdom__title { font-size: 4.5vw; line-height: 1.2; font-weight: 600; margin: 0; }
.bm-page .home-wisdom__title span { color: var(--bm-pink); }
.bm-page .home-wisdom__claim { font-size: 1.6vw; line-height: 1.4; font-weight: 600; margin: 1.2vw 0 0; max-width: 26em; }
.bm-page .home-wisdom .bm-rule { width: 6.5vw; height: 6px; background: var(--bm-white); }
.bm-page .home-wisdom .bm-btn--outline { color: var(--bm-white) !important; border-color: var(--bm-white); }
.bm-page .home-wisdom__stage { position: relative; overflow: visible; }

.bm-page .home-case { padding: clamp(32px, 4vw, 72px); }

@media (max-width: 767px) {
  .bm-page .home-wisdom { padding-left: 0; padding-right: 0; }
  .bm-page .home-wisdom__title { font-size: 10vw; }
  .bm-page .home-wisdom__claim { font-size: 5vw; }
  .bm-page .home-wisdom__logo { width: 46vw; }
  .bm-page .home-wisdom .bm-rule { width: 10vw; }
  .bm-page .home-wisdom__block { grid-template-columns: minmax(0, 1fr); }
  .bm-page .home-wisdom__stage { min-height: 128vw; margin-top: 4vw; }
}

/* Rustiger: het Wisdom-blok op de homepage is een uitnodiging, geen tweede hero */
@media (min-width: 768px) {
  .bm-page .home-wisdom__title { font-size: clamp(30px, 3vw, 50px); }
  .bm-page .home-wisdom__claim { font-size: clamp(15px, 1.1vw, 19px); font-weight: 500; }
}

/* Nieuwsberichten uit het CMS */
.bm-page .bm-posts--all { --cols: 3; }
.bm-page .bm-article { max-width: 46em; margin: 0 auto; }
.bm-page .bm-article__meta { font-size: 14px; color: var(--bm-blue); margin: 0 0 16px; }
.bm-page .bm-article__meta a { color: inherit; text-decoration: none; font-weight: 600; }
.bm-page .bm-article__title { font-size: var(--bm-h2); line-height: 1.15; font-weight: 600; margin: 0 0 20px; }
.bm-page .bm-article__lead { margin: 0 0 28px; }
.bm-page .bm-article__img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; margin: 0 0 32px; }
.bm-page .bm-article__body { margin-bottom: 32px; }

/* Nieuwsartikelen: leesbare tekstmaat. Oude artikelen (WordPress-spiegel) en nieuwe (sjabloon) gelijk. */
body.single-news .elementor-widget-text-editor,
body.single-news .elementor-widget-text-editor p,
body.single-news .elementor-widget-text-editor li,
.bm-page .bm-article__body, .bm-page .bm-article__body p, .bm-page .bm-article__body li { font-size: clamp(17px, 1.3vw, 20px); line-height: 1.7; }
body.single-news .elementor-widget-text-editor p { margin: 0 0 1.2em; }
body.single-news .elementor-widget-text-editor p > strong:first-child,
.bm-page .bm-article__body p > strong:first-child { font-size: 1.2em; line-height: 1.4; font-weight: 600; }
.bm-page .bm-article__lead { font-size: var(--bm-lead); line-height: 1.55; }

/* Logomuur: klantlogo's in wit op blauw, rustig raster zonder kaders */
.bm-page .bm-logowall { background: var(--bm-blue); color: var(--bm-white); margin: 0 var(--bm-gutter); padding: clamp(56px, 6vw, 104px) clamp(28px, 4.5vw, 80px); }
.bm-page .bm-logowall .wd-h2 { color: var(--bm-white); margin: 0 0 clamp(40px, 4vw, 64px); }
.bm-page .bm-logowall .wd-h2 span { color: var(--bm-pink); }
.bm-page .bm-logowall__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: clamp(32px, 3.4vw, 56px) clamp(24px, 3vw, 48px); align-items: center; }
.bm-page .bm-logowall__grid li { display: flex; align-items: center; justify-content: center; height: 56px; }
.bm-page .bm-logowall__grid img { max-width: 100%; max-height: 44px; object-fit: contain; }
.bm-page .bm-logowall__grid img[src$=".png"] { max-height: 40px; }
.bm-page .bm-logowall--big .bm-logowall__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(48px, 5vw, 88px) clamp(32px, 4vw, 72px); }
.bm-page .bm-logowall--big .bm-logowall__grid li { height: 96px; }
.bm-page .bm-logowall--big .bm-logowall__grid img { max-height: 72px; max-width: 78%; }
@media (max-width: 1100px) { .bm-page .bm-logowall__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 767px) { .bm-page .bm-logowall { margin: 0; } .bm-page .bm-logowall__grid, .bm-page .bm-logowall--big .bm-logowall__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .bm-page .bm-logowall--big .bm-logowall__grid li { height: 64px; } }
.bm-page .bm-logowall--big .bm-logowall__grid img[src$=".png"] { max-height: 92px; }
.bm-page .bm-logowall__grid img[src$=".png"] { max-height: 52px; }

/* Logomuur: overal 4 x 4, grote logo's, optisch gelijk (keuze 25-09) */
.bm-page .bm-logowall .bm-logowall__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(48px, 5vw, 88px) clamp(32px, 4vw, 72px); }
.bm-page .bm-logowall .bm-logowall__grid li { height: 96px; }
.bm-page .bm-logowall .bm-logowall__grid img { max-height: 64px; max-width: 72%; }
.bm-page .bm-logowall .bm-logowall__grid img[src$=".png"] { max-height: 92px; }
@media (max-width: 767px) { .bm-page .bm-logowall .bm-logowall__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 24px; } .bm-page .bm-logowall .bm-logowall__grid li { height: 64px; } .bm-page .bm-logowall .bm-logowall__grid img { max-height: 44px; } }
/* Logomuur compacter (25-09): minder witruimte, vierkante logo's groter */
.bm-page .bm-logowall .bm-logowall__grid { gap: clamp(28px, 2.6vw, 44px) clamp(24px, 3vw, 48px); }
.bm-page .bm-logowall .bm-logowall__grid li { height: 80px; }
.bm-page .bm-logowall .bm-logowall__grid img[src*="mkbfonds"], .bm-page .bm-logowall .bm-logowall__grid img[src*="eight"] { max-height: 84px; max-width: 60%; }
.bm-page .bm-logowall .bm-logowall__grid img[src*="mkbfonds"] { transform: scale(1.35); }
.bm-page .bm-logowall .bm-logowall__grid img[src*="eight"] { transform: scale(1.2); }

/* Contactpagina */
.bm-page .ct-ways { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(16px, 2vw, 32px); }
.bm-page .ct-way { display: flex; flex-direction: column; gap: 10px; padding: clamp(28px, 3vw, 48px); background: var(--bm-pink); color: var(--bm-black); text-decoration: none; border-top: 6px solid var(--bm-blue); transition: background .2s; }
.bm-page .ct-way:hover { background: var(--bm-blue); color: var(--bm-white); }
.bm-page .ct-way__label { font-weight: 600; font-size: var(--bm-h4); color: inherit; }
.bm-page .ct-way__value { font-weight: 600; font-size: clamp(22px, 1.9vw, 32px); color: var(--bm-blue); letter-spacing: -.01em; }
.bm-page .ct-way:hover .ct-way__value { color: var(--bm-pink); }
.bm-page .ct-way__text { font-size: var(--bm-text); }
.bm-page .ct-offices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(24px, 3vw, 56px); margin-top: clamp(32px, 3vw, 56px); }
.bm-page .ct-office img { width: 100%; height: auto; display: block; margin-bottom: 20px; }
.bm-page .ct-office h3 { font-size: var(--bm-h4); color: var(--bm-blue); margin: 0 0 8px; }
.bm-page .ct-office p { margin: 0 0 10px; font-size: var(--bm-text); line-height: 1.6; }
.bm-page .ct-office a { color: var(--bm-blue); font-weight: 600; font-size: 15px; }
.bm-page .ct-company { margin-top: clamp(40px, 4vw, 64px); padding-top: 20px; border-top: 1px solid var(--bm-line); font-size: 15px; color: #555; }
.bm-page .ct-company strong { color: var(--bm-black); margin-right: 12px; }
@media (max-width: 900px) { .bm-page .ct-ways, .bm-page .ct-offices { grid-template-columns: minmax(0, 1fr); } }
/* Logomuur in 3 rijen (6, 6, 4 gecentreerd), kleinere logo's (25-09) */
.bm-page .bm-logowall .bm-logowall__grid { display: flex; flex-wrap: wrap; justify-content: center; gap: clamp(28px, 2.6vw, 44px) 0; }
.bm-page .bm-logowall .bm-logowall__grid li { flex: 0 0 calc(100% / 6); height: 64px; padding: 0 clamp(10px, 1.2vw, 20px); }
.bm-page .bm-logowall .bm-logowall__grid img { max-height: 44px; max-width: 100%; }
.bm-page .bm-logowall .bm-logowall__grid img[src$=".png"] { max-height: 64px; }
.bm-page .bm-logowall .bm-logowall__grid img[src*="mkbfonds"], .bm-page .bm-logowall .bm-logowall__grid img[src*="eight"] { max-height: 64px; transform: scale(1.15); }
@media (max-width: 900px) { .bm-page .bm-logowall .bm-logowall__grid li { flex-basis: 33.333%; } }
@media (max-width: 560px) { .bm-page .bm-logowall .bm-logowall__grid li { flex-basis: 50%; height: 56px; } }
/* Logomuur: altijd evenveel per rij. 16 logo's = 4 x 4, compact en kleiner (25-09) */
.bm-page .bm-logowall .bm-logowall__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(20px, 2vw, 32px) clamp(24px, 3vw, 48px); max-width: 1040px; }
.bm-page .bm-logowall .bm-logowall__grid li { height: 64px; padding: 0; }
@media (max-width: 560px) { .bm-page .bm-logowall .bm-logowall__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Logomuur: 2 rijen van 8 (keuze 25-09) */
.bm-page .bm-logowall .bm-logowall__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); max-width: none; gap: clamp(24px, 2.4vw, 40px) clamp(16px, 2vw, 32px); }
.bm-page .bm-logowall .bm-logowall__grid li { height: 56px; }
.bm-page .bm-logowall .bm-logowall__grid img { max-height: 36px; }
.bm-page .bm-logowall .bm-logowall__grid img[src$=".png"] { max-height: 52px; }
@media (max-width: 1100px) { .bm-page .bm-logowall .bm-logowall__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 560px) { .bm-page .bm-logowall .bm-logowall__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Vertrouwd door: kop links (zoals Sectoren), logo's in een blauw blok rechts (25-09) */
.bm-page .bm-logopanel { background: var(--bm-blue); padding: clamp(36px, 4vw, 72px) clamp(28px, 3.6vw, 64px); }
.bm-page .bm-logopanel .bm-logowall__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(28px, 3vw, 48px) clamp(20px, 2.4vw, 40px); align-items: center; }
.bm-page .bm-logopanel .bm-logowall__grid li { display: flex; align-items: center; justify-content: center; height: 72px; }
.bm-page .bm-logopanel .bm-logowall__grid img { max-width: 100%; max-height: 48px; object-fit: contain; }
.bm-page .bm-logopanel .bm-logowall__grid img[src$=".png"] { max-height: 64px; }
.bm-page .bm-logopanel .bm-logowall__grid img[src*="mkbfonds"], .bm-page .bm-logopanel .bm-logowall__grid img[src*="eight"] { max-height: 68px; transform: scale(1.15); }
@media (max-width: 767px) { .bm-page .bm-logopanel .bm-logowall__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 20px; } .bm-page .bm-logopanel .bm-logowall__grid li { height: 56px; } .bm-page .bm-logopanel .bm-logowall__grid img { max-height: 40px; } }
.bm-page .bm-logosplit .bm-split__head p { font-size: var(--bm-lead); line-height: 1.55; margin: 0; }
/* Kennisbank (evergreen uitlegartikelen) */
.bm-page .kb-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 clamp(24px, 3vw, 56px); border-top: 1px solid var(--bm-line); }
.bm-page .kb-item { display: flex; flex-direction: column; gap: 6px; padding: 24px 0; border-bottom: 1px solid var(--bm-line); text-decoration: none; color: var(--bm-black); }
.bm-page .kb-item__title { font-size: var(--bm-h4); font-weight: 600; color: var(--bm-blue); }
.bm-page .kb-item:hover .kb-item__title { text-decoration: underline; }
.bm-page .kb-item__text { font-size: var(--bm-text); line-height: 1.55; }
.bm-page .kb-article { max-width: 880px; }
.bm-page .kb-short { background: var(--bm-pink); padding: clamp(24px, 2.6vw, 40px); margin: 0 0 clamp(32px, 3vw, 48px); }
.bm-page .kb-short__label, .bm-page .kb-sources__label { font-weight: 600; color: var(--bm-blue); margin: 0 0 10px; }
.bm-page .kb-short ul { margin: 0; padding-left: 1.2em; font-size: var(--bm-text); line-height: 1.6; }
.bm-page .kb-h2 { font-size: var(--bm-h3); color: var(--bm-blue); margin: clamp(40px, 4vw, 64px) 0 16px; }
.bm-page .kb-cta { background: var(--bm-blue); color: var(--bm-white); padding: clamp(28px, 3vw, 48px); margin: clamp(40px, 4vw, 64px) 0; }
.bm-page .kb-cta__title { font-size: var(--bm-h3); font-weight: 600; margin: 0 0 8px; }
.bm-page .kb-sources { margin: 0 0 32px; font-size: 15px; }
.bm-page .kb-sources ul { margin: 0; padding-left: 1.2em; }
.bm-page .kb-sources a { color: var(--bm-blue); }
@media (max-width: 767px) { .bm-page .kb-list { grid-template-columns: minmax(0, 1fr); } }
.bm-page .bm-prose strong { font-size: inherit; }
/* Homepage: alle grote blokken even hoog als het Wisdom-blok, zelfde opbouw (kop links, inhoud rechts) (25-09) */
.bm-page { --bm-block-h: clamp(540px, 39vw, 660px); }
.bm-page .home-wisdom__block { min-height: var(--bm-block-h); }
.bm-page .home-logos__block { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: center; min-height: var(--bm-block-h); background: var(--bm-blue); color: var(--bm-white); }
.bm-page .home-logos__copy { padding: clamp(40px, 4.5vw, 80px); }
.bm-page .home-logos__copy .wd-h2 { color: var(--bm-white); margin: 0; }
.bm-page .home-logos__copy .wd-h2 span { color: var(--bm-pink); }
.bm-page .home-logos .bm-rule { background: var(--bm-white); }
.bm-page .home-logos .bm-logowall__grid { list-style: none; margin: 0; padding: clamp(32px, 3.6vw, 64px) clamp(32px, 4.5vw, 80px) clamp(32px, 3.6vw, 64px) 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(24px, 2.6vw, 44px) clamp(20px, 2.4vw, 40px); align-items: center; }
.bm-page .home-logos .bm-logowall__grid li { display: flex; align-items: center; justify-content: center; height: clamp(48px, 4.4vw, 72px); }
.bm-page .home-logos .bm-logowall__grid img { max-width: 100%; max-height: clamp(30px, 2.8vw, 46px); object-fit: contain; }
.bm-page .home-logos .bm-logowall__grid img[src$=".png"] { max-height: clamp(40px, 3.8vw, 62px); }
.bm-page .home-logos .bm-logowall__grid img[src*="mkbfonds"], .bm-page .home-logos .bm-logowall__grid img[src*="eight"] { max-height: clamp(44px, 4.2vw, 68px); transform: scale(1.1); }
.bm-page section.bm-section.home-aanpak { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: center; gap: clamp(32px, 4vw, 72px); min-height: var(--bm-block-h); padding-top: clamp(40px, 4.5vw, 80px); padding-bottom: clamp(40px, 4.5vw, 80px); box-sizing: border-box; }
.bm-page .home-aanpak .wd-h2 { margin: 0; }
.bm-page .home-aanpak__stats { --cols: 2; margin-top: clamp(24px, 2.6vw, 44px); gap: clamp(16px, 1.6vw, 28px) clamp(20px, 2vw, 32px); }
.bm-page .home-aanpak__stats .bm-stat__num { font-size: clamp(30px, 2.8vw, 46px); }
.bm-page .home-aanpak__stats .bm-stat__label { margin-top: 8px; }
.bm-page .home-aanpak__cards { gap: clamp(24px, 2.6vw, 44px) clamp(24px, 3vw, 48px); }
.bm-page .home-case { min-height: var(--bm-block-h); box-sizing: border-box; align-items: center; }
@media (max-width: 1024px) {
  .bm-page .home-logos__block, .bm-page section.bm-section.home-aanpak { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .bm-page .home-logos .bm-logowall__grid { padding: 0 clamp(28px, 4.5vw, 80px) clamp(40px, 4.5vw, 80px); }
  .bm-page .home-case, .bm-page .home-wisdom__block { min-height: 0; }
}
@media (max-width: 767px) {
  .bm-page .home-logos { padding-left: 0; padding-right: 0; }
  .bm-page .home-logos .bm-logowall__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bm-page .home-aanpak__cards { --cols: 1; }
}
/* Vertrouwd door: tekst linksboven, logo's eronder in 2 rijen van 8 (25-09) */
.bm-page .home-logos__block { grid-template-columns: minmax(0, 1fr); align-items: start; align-content: space-between; }
.bm-page .home-logos__copy { padding-bottom: 0; }
.bm-page .home-logos .bm-logowall__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); padding: clamp(32px, 3.6vw, 64px) clamp(40px, 4.5vw, 80px) clamp(40px, 4.5vw, 80px); gap: clamp(28px, 3vw, 52px) clamp(20px, 2.4vw, 40px); }
@media (max-width: 1024px) { .bm-page .home-logos .bm-logowall__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 767px) { .bm-page .home-logos .bm-logowall__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Uw compliance: hele blokhoogte benutten, kop en tekst boven, cijfer en knop onder (25-09) */
.bm-page .home-case { align-items: stretch; padding: clamp(40px, 4.5vw, 80px); }
.bm-page .home-case > div { display: flex; flex-direction: column; }
.bm-page .home-case .bm-split__head .bm-stat { margin-top: auto !important; }
.bm-page .home-case .bm-stat__num { font-size: clamp(48px, 5vw, 88px); }
.bm-page .home-case .bm-stat__label { font-size: var(--bm-text); }
.bm-page .home-case .bm-lead { font-size: clamp(18px, 1.5vw, 26px); line-height: 1.5; }
.bm-page .home-case .bm-checks li { font-size: clamp(17px, 1.3vw, 22px); }
.bm-page .home-case .bm-actions { margin-top: auto; padding-top: 24px; }
@media (max-width: 1024px) { .bm-page .home-case .bm-split__head .bm-stat { margin-top: 28px !important; } .bm-page .home-case .bm-actions { margin-top: 24px; } }
/* Vertrouwd door: alles wit; titel linksboven in hetzelfde raster als de logo's (25-09) */
.bm-page .home-logos__block { grid-template-columns: repeat(6, minmax(0, 1fr)); grid-auto-rows: 1fr; align-items: center; align-content: stretch; gap: clamp(20px, 2.4vw, 40px) clamp(20px, 2.4vw, 40px); padding: clamp(40px, 4.5vw, 80px); box-sizing: border-box; }
.bm-page .home-logos__copy { grid-column: 1 / span 2; grid-row: 1; padding: 0; align-self: start; }
.bm-page .home-logos__copy .wd-h2 { font-size: clamp(28px, 2.6vw, 44px); }
.bm-page .home-logos__copy .wd-h2 span { color: var(--bm-white); }
.bm-page .home-logos .bm-logowall__grid { display: contents; }
.bm-page .home-logos .bm-logowall__grid li { height: 100%; min-height: 56px; }
@media (max-width: 1024px) { .bm-page .home-logos__block { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: auto; } .bm-page .home-logos__copy { grid-column: 1 / -1; margin-bottom: 16px; } }
@media (max-width: 767px) { .bm-page .home-logos__block { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Kennisbank-overzicht: lijst zoals de partnerpagina, met een Streamline-icoon per artikel (25-09) */
.bm-page .kb-article-row__img { color: var(--bm-white); text-decoration: none; }
.bm-page .kb-article-row__img svg { width: clamp(72px, 7vw, 120px); height: auto; display: block; }
.bm-page .kb-article-row h3 a { color: inherit; text-decoration: none; }
.bm-page .kb-article-row h3 a:hover { text-decoration: underline; }
.bm-page .kb-article-row .bm-lead { margin-top: 0; }
.bm-page .kb-article-row .bm-checks { margin: 20px 0 0; }
/* Aanpak en cijfers als twee blokken, grotere tekst (25-09) */
.bm-page .home-aanpak__cards .bm-checkcard h3 { font-size: clamp(20px, 1.7vw, 28px); padding-left: 38px; }
.bm-page .home-aanpak__cards .bm-checkcard::before { width: 26px; height: 26px; background-size: 26px 26px; top: .12em; }
.bm-page .home-aanpak__cards .bm-checkcard p { font-size: clamp(17px, 1.35vw, 22px); line-height: 1.55; }
.bm-page .home-aanpak__cards { gap: clamp(32px, 3.4vw, 60px) clamp(28px, 3.4vw, 60px); }
.bm-page section.bm-section.home-cijfers { display: flex; flex-direction: column; justify-content: space-between; min-height: var(--bm-block-h); padding-top: clamp(40px, 4.5vw, 80px); padding-bottom: clamp(40px, 4.5vw, 80px); box-sizing: border-box; }
.bm-page .home-cijfers .wd-h2 { margin: 0; }
.bm-page .home-cijfers__stats { --cols: 4; margin-top: clamp(40px, 4vw, 72px); }
.bm-page .home-cijfers .bm-stat { border-top: 0; padding-top: 0; }
.bm-page .home-cijfers .bm-stat__num { font-size: clamp(48px, 5.6vw, 104px); }
.bm-page .home-cijfers .bm-stat__label { font-size: clamp(16px, 1.3vw, 21px); margin-top: 14px; }
@media (max-width: 1024px) { .bm-page section.bm-section.home-cijfers { min-height: 0; } .bm-page .home-cijfers__stats { --cols: 2; } }
.bm-page .home-cijfers .bm-stat__num { font-size: clamp(40px, 4.4vw, 80px); white-space: nowrap; }
.bm-page .home-cijfers__stats { gap: clamp(24px, 3vw, 56px); }
.bm-page section.bm-section.home-aanpak { grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); }
/* Aanpak: titel linksboven, kaarten over de volle hoogte, korte titels op 1 regel; Cijfers: grote titel (25-09) */
.bm-page section.bm-section.home-aanpak { align-items: stretch; }
.bm-page .home-aanpak__head { align-self: start; }
.bm-page .home-aanpak__cards { align-content: space-between; height: 100%; }
.bm-page .home-aanpak__cards .bm-checkcard h3 { white-space: nowrap; }
.bm-page .home-cijfers .wd-h2 { font-size: clamp(44px, 5vw, 92px); line-height: 1.02; }
.bm-page .home-cijfers .bm-stat__num { font-size: clamp(40px, 4vw, 72px); }
.bm-page .home-cijfers .bm-stat__label { white-space: nowrap; }
@media (max-width: 1024px) { .bm-page .home-aanpak__cards { height: auto; } .bm-page .home-cijfers .bm-stat__label { white-space: normal; } }
.bm-page .home-aanpak .wd-h2, .bm-page .home-cijfers .wd-h2 { font-size: clamp(40px, 4.2vw, 76px); line-height: 1.04; }
.bm-page .home-case .wd-h2 { font-size: clamp(40px, 4.2vw, 76px); line-height: 1.04; white-space: nowrap; } .bm-page .home-case .bm-split__head { color: inherit; }
@media (max-width: 767px) { .bm-page .home-case .wd-h2 { white-space: normal; } }
.bm-page .home-case { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(32px, 4vw, 72px); } .bm-page .home-case .bm-rule { background: var(--bm-blue); }
/* Tablet en mobiel: aanpak en Uw compliance onder elkaar (25-09) */
@media (max-width: 1024px) {
  .bm-page section.bm-section.home-aanpak, .bm-page .home-case { grid-template-columns: minmax(0, 1fr); }
  .bm-page .home-case .wd-h2 { white-space: normal; }
  .bm-page .home-aanpak__cards .bm-checkcard h3 { white-space: normal; }
}
@media (max-width: 767px) { .bm-page .home-aanpak__cards { --cols: 1; } }
@media (max-width: 767px) { .bm-page .home-case .wd-h2, .bm-page .home-aanpak .wd-h2, .bm-page .home-cijfers .wd-h2 { font-size: 34px; } }
.bm-page .bm-article__title { font-size: clamp(34px, 3.6vw, 60px); line-height: 1.08; color: var(--bm-blue); margin: 12px 0 28px; }
/* Dienstenkaarten: huisstijl met Streamline-icoon i.p.v. neonfoto's (25-09) */
.bm-page .bm-iconcard { position: relative; display: flex; flex-direction: column; min-height: clamp(360px, 28vw, 460px); padding: clamp(24px, 2.2vw, 36px); background: var(--bm-blue); color: var(--bm-white); text-decoration: none; overflow: hidden; transition: background .2s; }
.bm-page .bm-iconcard:hover { background: var(--bm-blue-deep); }
.bm-page .bm-iconcard__kicker { color: var(--bm-pink); font-weight: 600; font-size: 15px; }
.bm-page .bm-iconcard__title { font-size: clamp(24px, 2vw, 32px); font-weight: 600; line-height: 1.15; margin-top: 10px; }
.bm-page .bm-iconcard__text { font-size: var(--bm-text); line-height: 1.5; margin-top: 12px; opacity: .92; max-width: 18em; }
.bm-page .bm-iconcard__icon { color: var(--bm-white); margin-top: auto; align-self: flex-end; }
.bm-page .bm-iconcard__icon svg { width: clamp(88px, 7.5vw, 124px); height: auto; display: block; }
.bm-page .bm-iconcard__more { position: absolute; left: clamp(24px, 2.2vw, 36px); bottom: clamp(24px, 2.2vw, 36px); }
.bm-page .bm-iconcard__text { font-size: clamp(16px, 1.2vw, 19px); } .bm-page .bm-iconcard__kicker { color: var(--bm-pink); font-size: 16px; }
/* Dienstenkaarten: tekst blijft wit bij hover, alleen de achtergrond verdiept (25-09) */
.bm-page a.bm-iconcard, .bm-page a.bm-iconcard:hover, .bm-page a.bm-iconcard:focus { color: var(--bm-white); }
.bm-page a.bm-iconcard:hover .bm-iconcard__title, .bm-page a.bm-iconcard:hover .bm-iconcard__text, .bm-page a.bm-iconcard:hover .bm-iconcard__icon { color: var(--bm-white); }
.bm-page a.bm-iconcard:hover .bm-iconcard__kicker { color: var(--bm-pink); }
.bm-page a.bm-iconcard:hover .bm-iconcard__more { background: var(--bm-pink); color: var(--bm-blue); }
/* Aanpak: punten dichter bij elkaar, bovenaan uitgelijnd met de titel (25-09) */
.bm-page .home-aanpak__cards { align-content: start; height: auto; gap: clamp(36px, 3.4vw, 56px) clamp(32px, 3.4vw, 60px); }
/* Dienstenkaarten op mobiel: 2 x 2, compact (25-09) */
@media (max-width: 767px) {
  .bm-page section:has(.bm-iconcard) .bm-grid { --cols: 2; gap: 12px; }
  .bm-page .bm-iconcard { min-height: 230px; padding: 18px; }
  .bm-page .bm-iconcard__kicker { font-size: 13px; }
  .bm-page .bm-iconcard__title { font-size: 20px; margin-top: 6px; }
  .bm-page .bm-iconcard__text, .bm-page .bm-iconcard__more { display: none; }
  .bm-page .bm-iconcard__icon svg { width: 64px; }
}
/* Diensttegels met illustratie (service-tiles, 26-09): vier naast elkaar in Wisdom-tegelstijl. De illustratie houdt haar
   eigen maat en loopt rechtsonder uit de tegel, zodat elke tegel een leesbaar detail toont. */
.bm-page .bm-tiles__head { display: grid; grid-template-columns: 1.2fr 1fr; gap: 40px; align-items: end; margin-bottom: clamp(28px, 3vw, 48px); }
.bm-page .bm-tiles__head .wd-h2 { margin: 0; }
.bm-page .bm-tiles__lead { font-size: var(--bm-lead); line-height: 1.5; margin: 0; max-width: 30em; text-wrap: pretty; }
.bm-page .bm-tiles { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(12px, 1.4vw, 20px); }
.bm-page a.bm-tile, .bm-page a.bm-tile:hover, .bm-page a.bm-tile:focus { position: relative; display: flex; flex-direction: column; overflow: hidden; height: clamp(540px, 42vw, 650px); padding: clamp(24px, 2.2vw, 36px); background: var(--bm-off); color: var(--bm-black); text-decoration: none; }
.bm-page a.bm-tile:nth-child(2), .bm-page a.bm-tile:nth-child(3) { background: var(--bm-pink); }
.bm-page .bm-tile__copy { display: block; }
.bm-page .bm-tile__title { font-size: clamp(20px, 1.45vw, 27px); line-height: 1.14; font-weight: 600; margin: 0; color: var(--bm-black); }
.bm-page .bm-tile__title span { display: block; color: var(--bm-blue); }
.bm-page .bm-tile__text { font-size: var(--bm-small); line-height: 1.5; margin: 14px 0 0; min-height: 4.5em; color: var(--bm-black); text-wrap: pretty; }
.bm-page .bm-tile__go { margin-top: 22px; width: 44px; height: 44px; display: grid; place-items: center; background: var(--bm-blue); color: var(--bm-white); transition: background .2s; }
.bm-page .bm-tile__go svg { width: 20px; }
.bm-page .bm-tile__ill { display: block; flex: none; width: calc(100% - 4% + clamp(24px, 2.2vw, 36px)); margin: auto 0 calc(-1 * clamp(24px, 2.2vw, 36px) - 6px) 4%; padding-top: 24px; }
.bm-page .bm-tile__ill svg { display: block; width: 100%; height: auto; }
.bm-page a.bm-tile:hover .bm-tile__go { background: var(--bm-blue-deep); }
.bm-page .bm-tiles__dots { display: none; }
@media (max-width: 767px) {
  .bm-page .bm-tiles__head { grid-template-columns: 1fr; gap: 14px; }
  .bm-page .bm-tiles { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; margin: 0 calc(-1 * var(--bm-gutter)); padding: 0 var(--bm-gutter); scrollbar-width: none; }
  .bm-page .bm-tiles::-webkit-scrollbar { display: none; }
  .bm-page a.bm-tile, .bm-page a.bm-tile:hover { flex: 0 0 84vw; scroll-snap-align: center; height: 520px; padding: 22px; }
  .bm-page .bm-tile__title { font-size: 24px; }
  .bm-page .bm-tile__text { font-size: 15px; }
  .bm-page .bm-tile__ill { width: calc(96% + 22px); margin-bottom: -58px; }
  .bm-page .bm-tiles__dots { display: flex; gap: 8px; margin-top: 18px; }
  .bm-page .bm-tiles__dots i { width: 22px; height: 4px; background: #DCE2FF; transition: background .2s; }
  .bm-page .bm-tiles__dots i.on { background: var(--bm-blue); }
}
/* Aanpak: blok zo hoog als de inhoud, marge onder gelijk aan boven (26-09) */
.bm-page section.bm-section.home-aanpak { min-height: 0; }
.bm-page .bm-tile__title .bm-nw { display: inline; white-space: nowrap; color: inherit; }
/* Vertrouwd door (26-09): zelfde opbouw als de diensten, kop boven, logo's in een blauw blok op een raster van 4 x 4 */
.bm-page .home-trust__block { background: var(--bm-blue); padding: clamp(24px, 3vw, 52px); }
.bm-page .home-trust__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: rgba(255, 255, 255, .22); }
.bm-page .home-trust__grid li { display: flex; align-items: center; justify-content: center; height: clamp(104px, 9vw, 150px); padding: 0 clamp(16px, 2vw, 36px); background: var(--bm-blue); }
.bm-page .home-trust__grid img { max-width: 100%; max-height: clamp(32px, 3vw, 48px); object-fit: contain; }
.bm-page .home-trust__grid img[src*=".png"] { max-height: clamp(76px, 6.6vw, 108px); }
@media (max-width: 767px) {
  .bm-page .home-trust__block { margin: 0 calc(-1 * var(--bm-gutter)); padding: 12px var(--bm-gutter); }
  .bm-page .home-trust__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bm-page .home-trust__grid li { height: 88px; padding: 0 14px; }
  .bm-page .home-trust__grid img { max-height: 30px; }
  .bm-page .home-trust__grid img[src*=".png"] { max-height: 66px; }
}
/* Vertrouwd door: geen zichtbare rasterlijnen (26-09) */
.bm-page .home-trust__grid { gap: 0; background: none; }
/* In cijfers (26-09): meer kracht, minder wit. Kop links, vier grote cijfers rechts in 2 x 2, blok zo hoog als de inhoud */
.bm-page section.bm-section.home-cijfers { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(32px, 4vw, 72px); align-items: start; min-height: 0; padding-top: clamp(48px, 5vw, 96px); padding-bottom: clamp(48px, 5vw, 96px); }
.bm-page .home-cijfers__stats { --cols: 2; margin-top: 0; gap: clamp(28px, 3vw, 52px) clamp(28px, 3vw, 56px); }
.bm-page .home-cijfers .bm-stat { border-top: 3px solid var(--bm-blue); padding-top: clamp(14px, 1.4vw, 22px); }
.bm-page .home-cijfers .bm-stat__num { font-size: clamp(56px, 6.4vw, 120px); line-height: 1; letter-spacing: -.02em; }
.bm-page .home-cijfers .bm-stat__label { font-size: clamp(16px, 1.3vw, 22px); margin-top: 12px; white-space: normal; }
@media (max-width: 1024px) { .bm-page section.bm-section.home-cijfers { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 767px) { .bm-page .home-cijfers .bm-stat__num { font-size: 44px; } .bm-page .home-cijfers .bm-stat__label { font-size: 15px; } }
/* Wisdom-blok (26-09): titel bovenaan en groter, Wisdom-logo linksonder in de kaart */
.bm-page .home-wisdom__copy { justify-content: flex-start; }
.bm-page .home-wisdom__title { font-size: clamp(40px, 4.4vw, 80px); line-height: 1.04; letter-spacing: -.01em; }
.bm-page .home-wisdom__claim { margin-top: clamp(16px, 1.6vw, 28px); }
.bm-page .home-wisdom__logo { order: 9; margin: auto 0 0; padding-top: clamp(28px, 3vw, 52px); width: clamp(150px, 13vw, 230px); box-sizing: content-box; }
@media (max-width: 767px) { .bm-page .home-wisdom__title { font-size: 40px; } .bm-page .home-wisdom__logo { width: 150px; } }
/* In cijfers (26-09, ronde 2): geen lijnen boven de cijfers, cijfers iets kleiner zodat 50.000+ en 50+ niet raken, kop groter */
.bm-page section.bm-section.home-cijfers { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: center; }
.bm-page .home-cijfers .wd-h2 { font-size: clamp(48px, 5.6vw, 104px); line-height: 1.02; }
.bm-page .home-cijfers .bm-stat { border-top: 0; padding-top: 0; }
.bm-page .home-cijfers .bm-stat__num { font-size: clamp(44px, 4.6vw, 88px); }
.bm-page .home-cijfers__stats { gap: clamp(32px, 3.4vw, 60px) clamp(40px, 4.4vw, 80px); }
@media (max-width: 767px) { .bm-page .home-cijfers .wd-h2 { font-size: 44px; } .bm-page .home-cijfers .bm-stat__num { font-size: 40px; } }
/* Kop boven diensten en klanten: blauwe streep eronder, net als 'Uw compliance. Onze uitvoering.' (26-09) */
.bm-page .bm-tiles__head .bm-rule { display: block; margin-top: clamp(18px, 1.8vw, 28px); }
.bm-page .bm-tiles__head { align-items: end; }
/* Kennisbank: icoon blijft wit bij hover; alleen het vlak verdiept (26-09) */
.bm-page a.kb-article-row__img:hover, .bm-page a.kb-article-row__img:focus { color: var(--bm-white); background: var(--bm-blue-deep); }
.bm-page a.kb-article-row__img:hover svg [fill="#0D33FF"] { fill: var(--bm-blue-deep); }
/* Cijfers zonder kop: vier naast elkaar; nieuwslijst met categorie en datum boven de titel (26-09) */
.bm-page section.bm-section.home-cijfers--solo { grid-template-columns: minmax(0, 1fr); }
.bm-page .home-cijfers--solo .home-cijfers__stats { --cols: 4; }
@media (max-width: 1024px) { .bm-page .home-cijfers--solo .home-cijfers__stats { --cols: 2; } }
.bm-page .home-cijfers__head .bm-actions { margin-top: clamp(20px, 2vw, 32px); }
.bm-page .bm-row__meta { margin: 0 0 6px; font-size: var(--bm-small); color: var(--bm-blue); }
.bm-page .bm-split__lead { font-size: var(--bm-text); line-height: 1.55; margin-top: 18px; max-width: 24em; }
/* Inleiding naast de kop: onderste regel rust op de hoogte van de laatste kopregel, boven de blauwe streep (26-09) */
.bm-page .bm-tiles__lead { margin-bottom: calc(clamp(18px, 1.8vw, 28px) + 4px + .35em); max-width: none; }
/* Vertrouwd door (26-09, ronde 3): zoals 'Sectoren': blauwe kop links, logoblok rechts */
.bm-page .home-trust__split { align-items: start; }
.bm-page .home-trust__split .home-trust__block { padding: clamp(20px, 2.4vw, 40px); }
.bm-page .home-trust__split .home-trust__grid li { height: clamp(88px, 7.4vw, 124px); padding: 0 clamp(12px, 1.4vw, 24px); }
.bm-page .home-trust__split .home-trust__grid img { max-height: clamp(26px, 2.4vw, 40px); }
.bm-page .home-trust__split .home-trust__grid img[src*=".png"] { max-height: clamp(60px, 5.4vw, 88px); }
/* Cijferblokken: tweede kopregel is een ondertitel, geen tweede grote kop (standaard, 26-09) */
.bm-page .home-cijfers .wd-h2 span { display: block; font-size: .42em; line-height: 1.25; letter-spacing: 0; margin-top: .45em; }
/* Diensttegels: vier naast elkaar op desktop, twee per rij op tablet, veegbaar op mobiel (26-09, terug naar 4) */
@media (min-width: 1101px) { .bm-page .bm-tiles { grid-template-columns: repeat(4, 1fr); } .bm-page a.bm-tile:nth-child(2), .bm-page a.bm-tile:nth-child(3) { background: var(--bm-off); } .bm-page a.bm-tile:nth-child(even) { background: var(--bm-pink); } }
/* Diensttegels, vierkante variant (Diensten-pagina, 26-09): drie vierkanten naast elkaar, tekst onder de tegel */
.bm-page .bm-tiles--square { grid-template-columns: repeat(3, 1fr); }
@media (min-width: 1101px) { .bm-page .bm-tiles--square.bm-tiles--4 { grid-template-columns: repeat(4, 1fr); } }
.bm-page .bm-tiles--square a.bm-tile, .bm-page .bm-tiles--square a.bm-tile:hover { height: auto; aspect-ratio: 1 / 1; }
.bm-page .bm-tiles--square .bm-tilewrap:nth-child(odd) a.bm-tile { background: var(--bm-off); }
.bm-page .bm-tiles--square .bm-tilewrap:nth-child(even) a.bm-tile { background: var(--bm-pink); }
.bm-page .bm-tiles--square .bm-tile__ill { position: absolute; right: 0; bottom: 0; width: 60%; margin: 0; padding: 0; }
.bm-page .bm-tiles--square .bm-tile__copy { max-width: 52%; }
.bm-page .bm-tile__below { font-size: var(--bm-text); line-height: 1.5; margin: 16px 0 0; }
@media (max-width: 1100px) { .bm-page .bm-tiles--square .bm-tile__copy { max-width: none; } .bm-page .bm-tiles--square .bm-tile__ill { width: 58%; } }
@media (max-width: 767px) { .bm-page .bm-tiles--square .bm-tilewrap { flex: 0 0 84vw; scroll-snap-align: center; } .bm-page .bm-tiles--square a.bm-tile { flex: none; } }
/* In cijfers: kop linksboven in het blok (26-09) */
.bm-page section.bm-section.home-cijfers { align-items: start; }
/* Inleiding naast de kop (26-09, ronde 3): rechts uitgelijnd, onderste regel staat op de hoogte van de blauwe streep */
.bm-page .bm-tiles__head { align-items: end; }
.bm-page .bm-tiles__lead { text-align: right; justify-self: end; margin-bottom: -.32em; }
@media (max-width: 767px) { .bm-page .bm-tiles__lead { text-align: left; justify-self: start; margin-bottom: 0; } }
.bm-page .bm-tiles__head .bm-rule { margin-bottom: 0; }
/* Vertrouwd door, definitief (26-09, speeltuin D5): lichtgrijze tegel, grote kop met ondertitel, blauw paneel met witte logo's (4 x 4, ING eerst) */
.bm-page .home-trust__tile { display: flex; flex-direction: column; overflow: hidden; background: var(--bm-off); padding: clamp(40px, 4.4vw, 80px) 0 0 clamp(32px, 4.4vw, 80px); }
.bm-page .home-trust__h { margin: 0 clamp(32px, 4.4vw, 80px) clamp(32px, 3.4vw, 60px) 0; font-size: clamp(44px, 5.4vw, 96px); line-height: 1; letter-spacing: -.02em; font-weight: 600; color: var(--bm-black); }
.bm-page .home-trust__h span { display: block; font-size: .42em; line-height: 1.3; letter-spacing: 0; margin-top: .35em; color: var(--bm-blue); }
.bm-page .home-trust__panel { align-self: flex-end; width: 78%; background: var(--bm-blue); padding: clamp(32px, 3.8vw, 64px) clamp(24px, 3.4vw, 56px); }
.bm-page .home-trust__tile .home-trust__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(28px, 3vw, 48px) clamp(20px, 2.4vw, 36px); background: none; }
.bm-page .home-trust__tile .home-trust__grid li { display: flex; align-items: center; justify-content: center; height: clamp(40px, 3.6vw, 56px); padding: 0; background: none; }
.bm-page .home-trust__tile .home-trust__grid img { max-width: 100%; max-height: clamp(30px, 2.8vw, 46px); object-fit: contain; filter: brightness(0) invert(1); }
.bm-page .home-trust__tile .home-trust__grid img[src*=".png"] { max-height: clamp(40px, 3.6vw, 56px); }
@media (max-width: 767px) {
  .bm-page .home-trust__panel { width: 100%; }
  .bm-page .home-trust__tile { padding-right: 0; }
  .bm-page .home-trust__tile .home-trust__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.bm-page .home-trust__tile .home-trust__grid img[src*="eight"] { max-height: clamp(52px, 4.6vw, 72px); }
/* Vinkjesblokken ('Onze aanpak' en alle 'Wat het u oplevert'-blokken): tweede kopregel als ondertitel, zelfde verhouding als 'In cijfers' (standaard, 26-09) */
.bm-page .home-aanpak .wd-h2 { font-size: clamp(40px, 4.4vw, 80px); line-height: 1.02; }
.bm-page .home-aanpak .wd-h2 span { display: block; font-size: .42em; line-height: 1.25; letter-spacing: 0; margin-top: .45em; }
@media (max-width: 767px) { .bm-page .home-aanpak .wd-h2 { font-size: 44px; } }
.bm-page .home-aanpak__cards .bm-checkcard h3 { white-space: normal; }
/* In cijfers op mobiel (26-09): kop boven, cijfers 2 x 2 en passend */
@media (max-width: 767px) {
  .bm-page section.bm-section.home-cijfers { grid-template-columns: minmax(0, 1fr) !important; gap: 28px; }
  .bm-page .home-cijfers__stats { --cols: 2; gap: 28px 16px; }
  .bm-page .home-cijfers .bm-stat__num { font-size: clamp(30px, 9vw, 40px); white-space: nowrap; }
  .bm-page .home-cijfers .bm-stat__label { font-size: 15px; white-space: normal; }
}
/* Artikelen: vet mag, maar nooit groter dan de lopende tekst (26-09) */
.bm-page .bm-article__body strong, .bm-page .bm-article__body b, .bm-page .kb-article strong { font-size: inherit !important; line-height: inherit; font-weight: 600; }
/* Vertrouwd door op mobiel: blauw logopaneel van rand tot rand binnen de grijze tegel (27-09); desktop ongewijzigd */
@media (max-width: 767px) {
  .bm-page .home-trust__tile { padding-left: 0; padding-right: 0; }
  .bm-page .home-trust__h { margin-left: clamp(24px, 6vw, 32px); margin-right: clamp(24px, 6vw, 32px); }
  .bm-page .home-trust__panel { width: 100%; align-self: stretch; }
}
/* Kennisbank-overzicht (01-10): zoekbalk, onderwerpfilters en een compacte lijst i.p.v. grote kaarten */
.bm-page .kb-tools { display: grid; gap: 18px; margin-bottom: clamp(24px, 2.4vw, 40px); }
.bm-page .kb-search { display: flex; align-items: center; gap: 14px; max-width: 760px; padding: 0 20px; background: var(--bm-pink); color: var(--bm-blue); }
.bm-page .kb-search input { flex: 1; min-width: 0; height: 64px; border: 0; background: transparent; font: inherit; font-size: clamp(17px, 1.3vw, 20px); color: var(--bm-black); outline: none; }
.bm-page .kb-search input::placeholder { color: #8A8FA3; }
.bm-page .kb-search:focus-within { box-shadow: inset 0 0 0 2px var(--bm-blue); }
.bm-page .kb-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.bm-page .kb-chip { font: inherit; font-size: 15px; font-weight: 600; padding: 10px 16px; border: 0; border-radius: 0; background: #DCE2FF; color: var(--bm-blue); cursor: pointer; }
.bm-page .kb-chip span { font-weight: 500; opacity: .7; margin-left: 4px; }
.bm-page .kb-chip:hover { background: var(--bm-pink); }
.bm-page .kb-chip.is-on { background: var(--bm-blue); color: #fff; }
.bm-page .kb-list { border-top: 1px solid var(--bm-line); }
.bm-page .kb-row { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: clamp(16px, 2vw, 32px); align-items: center; padding: clamp(16px, 1.4vw, 22px) 0; border-bottom: 1px solid var(--bm-line); text-decoration: none; color: inherit; }
.bm-page .kb-row[hidden] { display: none; }
.bm-page .kb-row__icon { width: 64px; height: 64px; display: flex; align-items: center; justify-content: center; background: var(--bm-blue); }
.bm-page .kb-row__icon svg { width: 34px; height: 34px; display: block; }
.bm-page .kb-row__text { display: grid; gap: 4px; min-width: 0; }
.bm-page .kb-row__meta { font-size: 13px; font-weight: 500; color: #8A8FA3; }
.bm-page .kb-row__title { font-size: clamp(19px, 1.5vw, 24px); font-weight: 600; color: var(--bm-blue); line-height: 1.25; }
.bm-page .kb-row__desc { font-size: 15px; line-height: 1.5; color: var(--bm-black); display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.bm-page a.kb-row:hover .kb-row__title { text-decoration: underline; text-underline-offset: 4px; }
.bm-page a.kb-row:hover .bm-row__go { background: var(--bm-blue); }
.bm-page a.kb-row:hover .bm-row__go::before { border-color: var(--bm-white); }
.bm-page .kb-none { padding: 32px 0; font-size: 17px; color: #8A8FA3; }
@media (max-width: 767px) {
  .bm-page .kb-row { grid-template-columns: 48px minmax(0, 1fr); }
  .bm-page .kb-row__icon { width: 48px; height: 48px; }
  .bm-page .kb-row__icon svg { width: 26px; height: 26px; }
  .bm-page .kb-row .bm-row__go { display: none; }
  .bm-page .kb-row__desc { -webkit-line-clamp: 2; }
}
/* Kennisbank (01-10, ronde 2): één kolom, zoekbalk over de volle breedte, witte iconen op blauw, mobiel alleen titel */
.bm-page .kb-index .kb-list { display: block; }
.bm-page .kb-search { max-width: none; }
.bm-page .kb-row__icon { color: #fff; }
@media (max-width: 767px) {
  .bm-page .kb-row { grid-template-columns: 40px minmax(0, 1fr); gap: 14px; padding: 14px 0; }
  .bm-page .kb-row__icon { width: 40px; height: 40px; }
  .bm-page .kb-row__icon svg { width: 22px; height: 22px; }
  .bm-page .kb-row__meta, .bm-page .kb-row__desc { display: none; }
  .bm-page .kb-row__title { font-size: 17px; }
  .bm-page .kb-search input { height: 54px; font-size: 16px; }
}
/* Zoekveld zonder eigen rand of afgeronde hoeken van de browser/het oude thema (alleen de blauwe focusrand van de balk) */
.bm-page .kb-search input, .bm-page .kb-search input:focus, .bm-page .kb-search input:hover { -webkit-appearance: none; appearance: none; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; outline: none !important; background: transparent !important; padding: 0 !important; margin: 0; }
.bm-page .kb-search input::-webkit-search-decoration, .bm-page .kb-search input::-webkit-search-cancel-button { -webkit-appearance: none; }

/* kyc.css */
/* Groep kyc: Full/Self Managed Service, pakketten vergelijken, tarieven, FAQ, plan een gesprek. */

/* Alleen voor schermlezers */
.bm-page .kyc-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* Uitdaging / oplossing naast elkaar: tekst op leesmaat */
.bm-page .kyc-duo .bm-card { padding: clamp(28px, 3vw, 56px); gap: 16px; }
.bm-page .kyc-duo .bm-card h3 { font-size: var(--bm-h3); }
.bm-page .kyc-duo .bm-card p { font-size: var(--bm-text); }
.bm-page .kyc-duo .bm-card--blue a { color: var(--bm-white); }

/* Voordelen onder 'Is dit voor uw organisatie?' */
.bm-page .kyc-benefits { margin-top: clamp(28px, 3vw, 48px); }
.bm-page .kyc-benefits .bm-icon { border-top: 2px solid var(--bm-blue); padding-top: 18px; }
.bm-page .kyc-benefits .bm-icon h3 { color: var(--bm-blue); }

/* Vergelijking Full vs Self: labelkolom + twee pakketkolommen met gelijke rijen */
.bm-page .kyc-vs { display: grid; grid-template-columns: minmax(0, .8fr) repeat(2, minmax(0, 1fr)); grid-template-rows: auto repeat(4, auto) auto; column-gap: clamp(14px, 1.4vw, 24px); }
.bm-page .kyc-vs__labels, .bm-page .kyc-vs__col { display: grid; grid-row: 1 / span 6; grid-template-rows: subgrid; }
.bm-page .kyc-vs__labels > div { padding: clamp(18px, 1.6vw, 26px) 0; border-bottom: 1px solid var(--bm-line); color: var(--bm-blue); font-size: var(--bm-h4); font-weight: 600; line-height: 1.35; }
.bm-page .kyc-vs__labels > .kyc-vs__head { border-bottom: 0; padding: 0; }
.bm-page .kyc-vs__col { background: var(--bm-off); border-top: 4px solid var(--bm-blue); padding: 0 clamp(22px, 2.2vw, 40px); }
.bm-page .kyc-vs__col dl { display: contents; margin: 0; }
.bm-page .kyc-vs__col dt { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.bm-page .kyc-vs__col dd { margin: 0; padding: clamp(18px, 1.6vw, 26px) 0; border-bottom: 1px solid rgba(13, 51, 255, .2); font-size: var(--bm-lead); line-height: 1.4; }
.bm-page .kyc-vs__head { font-size: var(--bm-h3); line-height: 1.25; color: var(--bm-blue); padding: clamp(24px, 2.2vw, 40px) 0 clamp(18px, 1.6vw, 26px); border-bottom: 2px solid var(--bm-blue); }
.bm-page .kyc-vs__foot { padding: clamp(22px, 2vw, 32px) 0 clamp(24px, 2.2vw, 40px); }
.bm-page .kyc-vs__col--blue { background: var(--bm-blue); color: var(--bm-white); border-top-color: var(--bm-pink); }
.bm-page .kyc-vs__col--blue .kyc-vs__head { color: var(--bm-white); border-bottom-color: var(--bm-white); }
.bm-page .kyc-vs__col--blue dd { border-bottom-color: rgba(255, 255, 255, .3); }
.bm-page .kyc-next { margin-top: clamp(40px, 4vw, 64px); }
.bm-page .kyc-next .bm-row { border-top: 1px solid var(--bm-line); padding-top: clamp(18px, 1.6vw, 28px); }

/* Tarieventabel */
.bm-page .kyc-ptable { min-width: 0; table-layout: fixed; border: 0; margin: 0; }
.bm-page .kyc-ptable th, .bm-page .kyc-ptable td { border: 0; border-bottom: 1px solid rgba(13, 51, 255, .2); background: var(--bm-white); }
.bm-page .kyc-ptable td { border-left: 1px solid rgba(13, 51, 255, .12); }
.bm-page .kyc-ptable tbody tr:nth-child(even) > * { background: var(--bm-off); }
.bm-page .kyc-ptable thead th { vertical-align: bottom; line-height: 1.3; }
.bm-page .kyc-ptable thead th:first-child { background: transparent; }
.bm-page .kyc-ptable thead th + th { border-left: 1px solid rgba(255, 255, 255, .3); }
.bm-page .kyc-ptable tbody th { width: 25%; font-size: var(--bm-text); }
.bm-page .kyc-ptable td { font-size: var(--bm-text); line-height: 1.45; }
.bm-page .kyc-ptable .kyc-ptable__price td { color: var(--bm-blue); font-size: var(--bm-h4); font-weight: 600; line-height: 1.3; }
.bm-page .kyc-ptable .kyc-ptable__price th { font-weight: 600; }
.bm-page .kyc-mark { display: inline-flex; align-items: center; gap: 8px; }
.bm-page .kyc-mark::before { content: ""; width: 18px; height: 18px; flex: 0 0 auto; background: currentColor; -webkit-mask: var(--kyc-icon) center / contain no-repeat; mask: var(--kyc-icon) center / contain no-repeat; }
.bm-page .kyc-mark--yes { color: var(--bm-blue); font-weight: 600; --kyc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='m3 9.5 4 4 8-9' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E"); }
.bm-page .kyc-mark--no { color: rgba(0, 0, 0, .5); --kyc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='m4 4 10 10M14 4 4 14' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3C/svg%3E"); }

/* Pakketkaarten: knop onderaan uitlijnen */
.bm-page .bm-price p { font-size: var(--bm-small); }
.bm-page .kyc-price__foot { margin-top: auto; padding-top: 16px; }

/* ServiceDesk add-on */
.bm-page .kyc-addon { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 3vw, 56px); align-items: start; }
.bm-page .kyc-addon .bm-price--featured a { color: var(--bm-white); }
.bm-page .kyc-note { margin-top: 8px; opacity: .85; }

/* FAQ: onderwerpenlijst links, vragen rechts */
.bm-page .kyc-faqnav { position: sticky; top: calc(var(--bm-nav-h) + 24px); }
.bm-page .kyc-faqnav h2 { color: var(--bm-blue); }
.bm-page .kyc-faqnav ul { list-style: none; padding: 0; margin: 0; }
.bm-page .kyc-faqnav li { border-bottom: 1px solid var(--bm-line); }
.bm-page .kyc-faqnav a { display: block; padding: 12px 0; font-weight: 500; text-decoration: none; }
.bm-page .kyc-faqnav a:hover { text-decoration: underline; }
.bm-page .kyc-faqlayout .bm-faq { border-top: 0; }
.bm-page .kyc-faqlayout .bm-faq__group { color: var(--bm-black); }
.bm-page .kyc-faqlayout .bm-faq__group + details { border-top: 1px solid var(--bm-line); }

/* Plan een gesprek */
.bm-page .kyc-plan { align-items: start; }
.bm-page .kyc-contact { margin: clamp(28px, 3vw, 44px) 0 0; display: grid; gap: 0; }
.bm-page .kyc-contact > div { padding: 14px 0; border-top: 1px solid var(--bm-line); display: grid; grid-template-columns: minmax(0, 9em) minmax(0, 1fr); gap: 12px; }
.bm-page .kyc-contact dt { font-weight: 600; color: var(--bm-blue); }
.bm-page .kyc-contact dd { margin: 0; }
.bm-page .kyc-contact a { text-decoration: none; }
.bm-page .kyc-planner { background: var(--bm-off); border-top: 4px solid var(--bm-blue); padding: clamp(12px, 1.4vw, 24px); min-height: 680px; }
.bm-page .kyc-planner .meetings-iframe-container iframe { display: block; width: 100%; }

@media (max-width: 1024px) {
  .bm-page .kyc-addon { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767px) {
  /* Vergelijking: pakketten onder elkaar, labels per regel */
  .bm-page .kyc-vs { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; row-gap: 20px; }
  .bm-page .kyc-vs__labels { display: none; }
  .bm-page .kyc-vs__col { display: block; grid-row: auto; }
  .bm-page .kyc-vs__col dl { display: block; }
  .bm-page .kyc-vs__col dt { position: static; width: auto; height: auto; clip: auto; overflow: visible; white-space: normal; padding-top: 16px; font-size: var(--bm-small); font-weight: 600; color: var(--bm-blue); }
  .bm-page .kyc-vs__col--blue dt { color: var(--bm-pink); }
  .bm-page .kyc-vs__col dd { padding: 2px 0 16px; }
  /* Tarieventabel: per onderdeel de drie pakketten onder elkaar */
  .bm-page .kyc-ptable-wrap { overflow: visible; }
  .bm-page .kyc-ptable, .bm-page .kyc-ptable tbody, .bm-page .kyc-ptable tr, .bm-page .kyc-ptable th, .bm-page .kyc-ptable td { display: block; width: 100% !important; }
  .bm-page .kyc-ptable thead { display: none; }
  .bm-page .kyc-ptable tbody tr { border-top: 2px solid var(--bm-blue); padding: 4px 0 12px; }
  .bm-page .kyc-ptable tbody tr > *, .bm-page .kyc-ptable tbody tr:nth-child(even) > * { background: transparent; border-left: 0; }
  .bm-page .kyc-ptable tbody th { color: var(--bm-blue); font-size: var(--bm-h4); font-weight: 600; padding: 12px 0 6px; border: 0; }
  .bm-page .kyc-ptable td { padding: 8px 0; border-bottom: 1px solid rgba(13, 51, 255, .14); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: 12px; font-size: var(--bm-small); }
  .bm-page .kyc-ptable td:last-child { border-bottom: 0; }
  .bm-page .kyc-ptable td::before { content: attr(data-label); font-weight: 500; color: var(--bm-black); font-size: var(--bm-small); }
  .bm-page .kyc-ptable .kyc-ptable__price td { font-size: var(--bm-text); }
  .bm-page .kyc-ptable td .kyc-mark { align-self: start; }
  .bm-page .kyc-faqnav { position: static; }
  .bm-page .kyc-planner { padding: 0; border-top: 0; background: transparent; margin-inline: calc(-1 * var(--bm-gutter) + 4px); }
  .bm-page .kyc-contact > div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .bm-page .kyc-benefits { row-gap: 20px; }
}

/* Blauw oproepvlak met tekstlinks en een tweede (outline) knop */
.bm-page .kyc-band a:not(.bm-btn) { color: var(--bm-white); text-decoration: underline; text-underline-offset: 3px; }
.bm-page .kyc-band .bm-btn--outline { color: var(--bm-white) !important; border-color: var(--bm-white); }
.bm-page .kyc-band .bm-btn--outline:hover { background: var(--bm-white); color: var(--bm-blue) !important; }
/* Pakketkaarten: geen streep erboven (25-09) */
.bm-page .kyc-vs__col, .bm-page .kyc-vs__col[class*="--"] { border-top: 0 !important; }
/* Vergelijkingstabel op mobiel (26-09): elke rij krijgt binnenruimte, tekst raakt de rand van het grijze vlak niet meer */
@media (max-width: 767px) {
  .bm-page .kyc-ptable tbody tr { padding: 4px 16px 12px; }
  .bm-page .kyc-ptable td { gap: 16px; }
}
@media (max-width: 767px) {
  .bm-page .kyc-ptable tbody tr:nth-child(even) { background: var(--bm-off); }
  .bm-page .kyc-ptable tbody tr > *, .bm-page .kyc-ptable tbody tr:nth-child(even) > * { background: transparent !important; }
}
/* Tarieven: de prijsregel als rustig citaat, cursief en kleiner (feedback Robert 28-09) */
.bm-page .kyc-oneliner { font-size: clamp(22px, 1.9vw, 32px); font-weight: 500; line-height: 1.3; color: var(--bm-black); margin: 0; max-width: 30em; }
/* Eigen afsprakenplanner (01-10): de stijl van de infographics. Roze vlak, witte blokken zonder rand,
   kleine grijze kop met tegel rechts, lichtblauwe tegels voor keuzes, blauw als gekozen. Scherpe hoeken. */
.bm-page .kyc-planner { background: transparent; border-top: 0; padding: 0; min-height: 0; }
.bm-page .bm-book { background: var(--bm-pink); padding: clamp(20px, 2.4vw, 40px); font-family: var(--bm-font); }
.bm-page .bm-book.is-fallback { min-height: 680px; }
.bm-page .bm-book.is-fallback iframe { display: block; width: 100%; }
.bm-page .bm-book__cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(14px, 1.4vw, 22px); align-items: start; }
.bm-page .bm-book__card { background: #fff; padding: clamp(18px, 1.8vw, 26px); }
.bm-page .bm-book__card.is-empty .bm-book__title { color: #8A8FA3; }
.bm-page .bm-book__cardhead { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 26px; }
.bm-page .bm-book__label { font-size: 13px; font-weight: 500; color: #8A8FA3; }
.bm-page .bm-book__pill { font-size: 13px; font-weight: 600; color: var(--bm-blue); background: #DCE2FF; padding: 4px 10px; line-height: 1.3; }
.bm-page .bm-book__title { margin: 8px 0 16px; font-size: 18px; font-weight: 600; color: #111; text-transform: none; }
.bm-page .bm-book__title::first-letter { text-transform: uppercase; }
.bm-page .bm-book__titlerow { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.bm-page .bm-book__navs { display: flex; gap: 6px; }
.bm-page .bm-book__nav { width: 34px; height: 34px; font: inherit; font-size: 20px; line-height: 1; border: 0; background: #DCE2FF; color: var(--bm-blue); cursor: pointer; }
.bm-page .bm-book__nav:hover:not(:disabled) { background: var(--bm-blue); color: #fff; }
.bm-page .bm-book__nav:disabled { background: #F2F3F7; color: #C4C7D2; cursor: default; }
.bm-page .bm-book__grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 5px; border-top: 1.5px solid #E4E6EF; padding-top: 12px; }
.bm-page .bm-book__wd { font-size: 12px; font-weight: 500; color: #8A8FA3; text-align: center; text-transform: capitalize; padding-bottom: 4px; }
.bm-page .bm-book__day { height: 38px; font: inherit; font-size: 14px; font-weight: 500; border: 0; background: transparent; color: #C4C7D2; cursor: default; padding: 0; }
.bm-page .bm-book__day.is-open { background: #DCE2FF; color: var(--bm-blue); font-weight: 600; cursor: pointer; }
.bm-page .bm-book__day.is-open:hover { background: var(--bm-pink); }
.bm-page .bm-book__day.is-sel, .bm-page .bm-book__day.is-sel:hover { background: var(--bm-blue); color: #fff; }
.bm-page .bm-book__times { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; border-top: 1.5px solid #E4E6EF; padding-top: 12px; max-height: 330px; overflow-y: auto; }
.bm-page .bm-book__time { height: 38px; font: inherit; font-size: 14px; font-weight: 600; border: 0; background: #DCE2FF; color: var(--bm-blue); cursor: pointer; }
.bm-page .bm-book__time:hover { background: var(--bm-blue); color: #fff; }
.bm-page .bm-book__form { display: grid; gap: 12px; border-top: 1.5px solid #E4E6EF; padding-top: 14px; }
.bm-page .bm-book__field { display: grid; gap: 5px; font-size: 13px; font-weight: 500; color: #8A8FA3; }
.bm-page .bm-book__field input { font: inherit; font-size: 15px; font-weight: 500; color: #111; padding: 10px 12px; border: 1.5px solid #E4E6EF; border-radius: 0; background: #fff; }
.bm-page .bm-book__field input:focus { outline: none; border-color: var(--bm-blue); }
.bm-page .bm-book__actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.bm-page .bm-book__submit { font: inherit; font-size: 15px; font-weight: 600; padding: 12px 18px; border: 0; background: var(--bm-blue); color: #fff; cursor: pointer; }
.bm-page .bm-book__submit:disabled { opacity: .6; cursor: default; }
.bm-page .bm-book__back { font: inherit; font-size: 15px; font-weight: 600; padding: 12px 18px; border: 0; background: #DCE2FF; color: var(--bm-blue); cursor: pointer; }
.bm-page .bm-book__msg { margin: 4px 0 0; font-size: 14px; color: #111; min-height: 1em; }
.bm-page .bm-book__status { margin: 12px 0 0; font-size: 14px; color: #8A8FA3; }
.bm-page .bm-book > .bm-book__status { margin: 0; padding: 18px; background: #fff; }
.bm-page .bm-book__done .bm-book__title { color: var(--bm-blue); }
.bm-page .bm-book__whenrow { display: flex; align-items: center; gap: 12px; border-top: 1.5px solid #E4E6EF; padding-top: 14px; }
.bm-page .bm-book__check { width: 24px; height: 24px; flex: none; background: var(--bm-blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='2.6'/%3E%3C/svg%3E") center / 100% no-repeat; }
.bm-page .bm-book__when { font-size: 15px; font-weight: 600; color: #111; }
@media (max-width: 900px) { .bm-page .bm-book__cols { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 767px) { .bm-page .bm-book { padding: 14px; } }
.bm-page .bm-book button, .bm-page .bm-book input { border-radius: 0; }
.bm-page .bm-book__when { display: inline-block; }
.bm-page .bm-book__when::first-letter { text-transform: uppercase; }
/* Kalender en tijdkiezer precies even groot (01-10): de kalender bepaalt de hoogte, de tijdenlijst scrollt daarbinnen */
.bm-page .bm-book__cols { align-items: stretch; }
.bm-page .bm-book__card { display: flex; flex-direction: column; min-height: 0; }
.bm-page .bm-book__times { flex: 1 1 0; min-height: 0; max-height: none; align-content: start; }
@media (max-width: 900px) { .bm-page .bm-book__times { flex: none; max-height: 330px; } }
/* 01-10: roze blok minstens zo hoog als de kolom links; maandknoppen groter met de pijl precies in het midden */
@media (min-width: 768px) {
  .bm-page .kyc-plan { align-items: stretch; }
  .bm-page .kyc-planner { display: flex; }
  .bm-page .bm-book { flex: 1; display: flex; flex-direction: column; }
  .bm-page .bm-book__cols { flex: 1; }
}
.bm-page .bm-book__nav { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 0; }
.bm-page .bm-book__nav svg { display: block; }
@media (min-width: 768px) {
  .bm-page .bm-book__grid { flex: 1; grid-template-rows: auto; grid-auto-rows: minmax(38px, 1fr); }
  .bm-page .bm-book__day { height: auto; min-height: 38px; }
}
.bm-page .bm-book.is-fallback { background: #fff; }
.bm-page .bm-book__status--note { margin: 0 0 8px; padding: 14px 18px; background: #DCE2FF; color: var(--bm-blue); font-weight: 600; }
.bm-page .bm-book__card { position: relative; }
/* Bevestigen en Andere tijd altijd naast elkaar (01-10) */
.bm-page .bm-book__actions { flex-wrap: nowrap; }
.bm-page .bm-book__submit { flex: 1 1 auto; white-space: nowrap; padding: 12px 14px; }
.bm-page .bm-book__back { flex: 0 0 auto; white-space: nowrap; padding: 12px 14px; }
/* Smalle laptops: blokken onder elkaar, zodat alles ruim past */
@media (max-width: 1240px) { .bm-page .bm-book__cols { grid-template-columns: minmax(0, 1fr); } .bm-page .bm-book__times { flex: none; max-height: 330px; } }
/* Knoppen onderaan het blok: onderkant gelijk met de laatste week van de kalender (01-10) */
@media (min-width: 1241px) {
  .bm-page .bm-book__form { flex: 1; display: flex; flex-direction: column; gap: 12px; }
  .bm-page .bm-book__form .bm-book__actions { margin-top: auto; }
  .bm-page .bm-book__form .bm-book__msg:empty { display: none; }
}
.bm-page .bm-book__form .bm-book__actions { flex-shrink: 0; }
.bm-page .bm-book__form .bm-book__field { flex-shrink: 1; min-height: 0; }
.bm-page .bm-book__actions button { box-sizing: border-box; }
.bm-page .bm-book__form .bm-book__actions { align-items: center; }
.bm-page .bm-book__actions button { height: auto; }

/* mensen.css */
/* Groep mensen: Over ons (team), persoonspagina's, Werken bij, vacature, algemene voorwaarden. */

/* ---------- Teamraster ---------- */
.bm-page .mensen-people .bm-person__photo { margin-bottom: 14px; }
.bm-page .mensen-people .bm-person__initials { font-size: clamp(44px, 3.6vw, 64px); letter-spacing: .02em; }
.bm-page .mensen-people .bm-person__name { transition: color .15s ease; }
.bm-page .mensen-people a.bm-person:hover .bm-person__name { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 2px; }
.bm-page .mensen-people a.bm-person:focus-visible { outline: 2px solid var(--bm-blue); outline-offset: 4px; }
/* Tegel 'Kom jij ons team versterken?' */
.bm-page .mensen-join .bm-person__photo { background: var(--bm-blue); place-items: end start; padding: clamp(20px, 1.8vw, 30px); position: relative; }
.bm-page .mensen-join__text { color: var(--bm-white); font-size: var(--bm-h3); font-weight: 600; line-height: 1.2; max-width: 9em; }
.bm-page .mensen-join .bm-person__photo::after { content: ""; position: absolute; top: clamp(20px, 1.8vw, 30px); right: clamp(20px, 1.8vw, 30px); width: 14px; height: 14px; border-right: 2px solid var(--bm-white); border-top: 2px solid var(--bm-white); transform: rotate(45deg); transition: transform .2s ease; }
.bm-page a.mensen-join:hover .bm-person__photo { background: var(--bm-blue-deep); }
.bm-page a.mensen-join:hover .bm-person__photo::after { transform: translateX(4px) rotate(45deg); }

/* Tijdlijn: jaartal groot */
.bm-page .mensen-timeline .bm-step__num { font-size: var(--bm-h2); line-height: 1; margin-bottom: 14px; }

/* ---------- Persoonspagina ---------- */
.bm-page .mensen-profile { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.9fr); gap: clamp(32px, 5vw, 96px); align-items: start; }
.bm-page .mensen-profile__photo { position: sticky; top: calc(var(--bm-nav-h) + 24px); }
.bm-page .mensen-profile__photo .bm-person__photo { margin: 0; }
.bm-page .mensen-profile__photo .bm-person__initials { font-size: clamp(64px, 7vw, 128px); }
.bm-page .mensen-profile__name { color: var(--bm-blue); font-size: clamp(36px, 3.8vw, 68px); line-height: 1.1; letter-spacing: -.01em; overflow-wrap: anywhere; }
.bm-page .mensen-profile__role { font-size: var(--bm-lead); font-weight: 400; margin: 14px 0 0; }
.bm-page .mensen-profile__text { max-width: 44em; }
.bm-page .mensen-profile__label { font-size: var(--bm-h4); margin: clamp(28px, 2.6vw, 44px) 0 14px; }
.bm-page .mensen-tags { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.bm-page .mensen-tags li { border: 1.5px solid var(--bm-blue); color: var(--bm-blue); padding: 8px 14px; font-size: var(--bm-small); font-weight: 500; line-height: 1.2; }
.bm-page .mensen-back::after { order: -1; transform: rotate(-135deg); margin: 0 2px 0 0; }

/* ---------- Werken bij ---------- */
.bm-page .mensen-gptw { display: grid; place-items: center; background: var(--bm-pink); aspect-ratio: 1; }
.bm-page .mensen-gptw img { width: clamp(120px, 12vw, 200px); height: auto; }
.bm-page .mensen-apply-note { margin-top: 20px; }
.bm-page .mensen-band-contact { margin-top: 18px; }

/* Vacature: feitenblok links, tekst rechts */
.bm-page .mensen-job__aside { position: sticky; top: calc(var(--bm-nav-h) + 24px); }
.bm-page .mensen-facts { margin: 0; border-top: 2px solid var(--bm-blue); }
.bm-page .mensen-facts > div { display: grid; grid-template-columns: minmax(0, 7em) minmax(0, 1fr); gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--bm-line); }
.bm-page .mensen-facts dt { color: var(--bm-blue); font-weight: 600; font-size: var(--bm-small); }
.bm-page .mensen-facts dd { margin: 0; font-size: var(--bm-small); }
.bm-page .bm-prose .bm-checks { margin-bottom: 1em; }
.bm-page .bm-prose h2:first-child { margin-top: 0; }

/* ---------- Algemene voorwaarden: inhoudsopgave ---------- */
.bm-page .mensen-hero--short { min-height: clamp(320px, 28vw, 480px); }
.bm-page .mensen-toc { position: sticky; top: calc(var(--bm-nav-h) + 24px); max-height: calc(100vh - var(--bm-nav-h) - 48px); overflow-y: auto; border-top: 2px solid var(--bm-blue); padding-top: 16px; }
.bm-page .mensen-toc__title { font-size: var(--bm-h4); color: var(--bm-blue); margin-bottom: 10px; }
.bm-page .mensen-toc ol { list-style: none; padding: 0; margin: 0; }
.bm-page .mensen-toc li { border-bottom: 1px solid rgba(13, 51, 255, .15); }
.bm-page .mensen-toc a { display: block; padding: 8px 0; font-size: var(--bm-small); color: var(--bm-black); text-decoration: none; line-height: 1.35; }
.bm-page .mensen-toc a:hover { color: var(--bm-blue); }
.bm-page .mensen-terms .bm-prose h2 { scroll-margin-top: calc(var(--bm-nav-h) + 24px); }

@media (max-width: 767px) {
  .bm-page .mensen-profile { grid-template-columns: minmax(0, 1fr); }
  .bm-page .mensen-profile__photo { position: static; max-width: 280px; }
  .bm-page .mensen-people { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bm-page .mensen-people .bm-person__initials { font-size: 40px; }
  .bm-page .mensen-join__text { font-size: 18px; }
  .bm-page .mensen-job__aside, .bm-page .mensen-toc { position: static; max-height: none; }
  .bm-page .mensen-gptw { aspect-ratio: auto; padding: 40px 0; }
}

/* Meer collega's onder een persoonspagina: vaste rij van vier */
.bm-page .mensen-people--row { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 767px) { .bm-page .mensen-people--row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Privacyregel onder het teamoverzicht */
.bm-page .mensen-note { margin: clamp(28px, 3vw, 44px) 0 0; max-width: 52em; opacity: .75; }
/* Team (25-09): 7 per rij, alles iets kleiner */
.bm-page .mensen-people { grid-template-columns: repeat(7, minmax(0, 1fr)); gap: clamp(24px, 2vw, 32px) clamp(12px, 1.2vw, 20px); }
.bm-page .mensen-people .bm-person__name { font-size: clamp(15px, 1.1vw, 18px); }
.bm-page .mensen-people .bm-person__role { font-size: 13px; line-height: 1.35; }
.bm-page .mensen-people .bm-person__initials { font-size: clamp(28px, 2.2vw, 40px); }
@media (max-width: 1200px) { .bm-page .mensen-people { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 767px) { .bm-page .mensen-people { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Tijdlijn als compacte Gantt (25-09) */
.bm-page .tl-gantt { --col: minmax(180px, 1fr) minmax(0, 3fr); max-width: 1100px; }
.bm-page .tl-gantt__axis, .bm-page .tl-gantt__row { display: grid; grid-template-columns: var(--col); gap: 24px; align-items: center; }
.bm-page .tl-gantt__years { display: grid; grid-template-columns: repeat(var(--span), minmax(0, 1fr)); font-size: 13px; font-weight: 600; color: var(--bm-blue); padding-bottom: 8px; border-bottom: 1px solid var(--bm-line); }
.bm-page .tl-gantt__row { padding: 6px 0; border-bottom: 1px solid var(--bm-line); }
.bm-page .tl-gantt__label { font-size: 15px; font-weight: 600; line-height: 1.3; }
.bm-page .tl-gantt__label span { color: var(--bm-blue); margin-right: 10px; }
.bm-page .tl-gantt__track { position: relative; height: 24px; background: repeating-linear-gradient(90deg, var(--bm-line) 0 1px, transparent 1px calc(100% / var(--span))); }
.bm-page .tl-gantt__bar { position: absolute; top: 4px; bottom: 4px; background: var(--bm-pink); border-left: 3px solid var(--bm-blue); }
.bm-page .tl-gantt__bar--now { background: var(--bm-blue); }
.bm-page .tl-notes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin-top: 28px; max-width: 1100px; }
.bm-page .tl-note { font-size: 14px; line-height: 1.55; color: #333; }
.bm-page .tl-note strong { display: block; color: var(--bm-blue); font-size: 14px; margin-bottom: 4px; }
.bm-page .tl-note p { margin: 0 0 6px; }
@media (max-width: 767px) { .bm-page .tl-gantt { --col: minmax(120px, 1fr) minmax(0, 2fr); } .bm-page .tl-notes { grid-template-columns: minmax(0, 1fr); } }
/* Tijdlijn: jaartal + titel altijd op 1 regel (25-09) */
@media (min-width: 768px) { .bm-page .tl-gantt { --col: 330px minmax(0, 1fr); } .bm-page .tl-gantt__label { white-space: nowrap; } }
/* Tijdlijn op mobiel (26-09): label boven de balk, jaartallen over de volle breedte */
@media (max-width: 767px) {
  .bm-page .tl-gantt { --col: minmax(0, 1fr); }
  .bm-page .tl-gantt__axis > span:first-child { display: none; }
  .bm-page .tl-gantt__axis, .bm-page .tl-gantt__row { gap: 6px; }
  .bm-page .tl-gantt__row { padding: 12px 0; }
  .bm-page .tl-gantt__years { font-size: 11px; }
}

/* tech.css */
/* Groep tech: Tech Solutions, Partners, Resultaten en ervaringen. Alle selectors onder .bm-page. */

/* Wisdom als paradepaardje: groot blauw vlak met reuzekop en productscherm dat naar rechts doorloopt */
.bm-page .bm-tx-feature { background: var(--bm-blue); color: var(--bm-white); display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(32px, 4vw, 72px); align-items: center; padding: clamp(48px, 5.5vw, 104px) 0 clamp(48px, 5.5vw, 104px) clamp(28px, 4.5vw, 80px); overflow: hidden; position: relative;  }
.bm-page .bm-tx-feature__title { font-size: clamp(64px, 8.4vw, 160px); font-weight: 600; line-height: .95; letter-spacing: -.035em; }
.bm-page .bm-tx-feature__lead { font-size: var(--bm-h3); font-weight: 500; line-height: 1.3; max-width: 16em; }
.bm-page .bm-tx-feature__claim { font-size: var(--bm-lead); font-weight: 300; margin-top: 18px; opacity: .9; }
.bm-page .bm-tx-feature__visual { margin-right: calc(-1 * clamp(40px, 5vw, 96px)); }
.bm-page .bm-tx-feature__visual img { width: 100%; height: auto; border-radius: 6px; box-shadow: 0 1px 2px rgba(0, 8, 70, .18), 0 12px 32px rgba(0, 8, 70, .22), 0 40px 80px rgba(0, 8, 70, .18); }
.bm-page a.bm-tx-feature { text-decoration: none; }

/* Productscherm met lichte lijst en onderschrift */
.bm-page .bm-tx-shot { margin: 0; }
.bm-page .bm-tx-shot img { width: 100%; background: var(--bm-white); border: 1px solid rgba(13, 51, 255, .14); box-shadow: 0 24px 60px rgba(13, 51, 255, .12); }
.bm-page .bm-tx-shot figcaption { margin-top: 14px; font-size: var(--bm-small); opacity: .7; }
.bm-page .bm-tx-shot--wide { max-width: 1080px; margin-inline: auto; }

/* Vinkjes naast elkaar (kernpunten, voordelen) */
.bm-page .bm-checks.bm-tx-inline { display: grid; grid-template-columns: repeat(var(--cols, 4), minmax(0, 1fr)); gap: 4px clamp(20px, 2.4vw, 40px); }
.bm-page .bm-checks.bm-tx-inline li { font-weight: 500; border-top: 1px solid var(--bm-line); padding-top: 16px; padding-bottom: 0; }
.bm-page .bm-checks.bm-tx-inline li::before { top: 22px; }
.bm-page .bm-blue .bm-checks.bm-tx-inline li { border-color: rgba(255, 255, 255, .45); }

/* Uitdaging / oplossing */
.bm-page .bm-tx-duo .bm-card h3 { font-size: var(--bm-h3); }
.bm-page .bm-tx-duo .bm-card p { font-size: var(--bm-text); }

/* Staand merkbeeld naast tekst */
.bm-page .bm-tx-portrait img { aspect-ratio: 4 / 5; }

/* Partners: naam en omschrijving links, tekst en knop rechts, gescheiden door lijnen */
.bm-page .bm-tx-partners { border-top: 2px solid var(--bm-blue); }
.bm-page .bm-tx-partner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: clamp(20px, 4.5vw, 88px); padding: clamp(32px, 3.4vw, 60px) 0; border-bottom: 1px solid var(--bm-line); }
.bm-page .bm-tx-partner__logo { background: var(--bm-blue); aspect-ratio: 16 / 9; display: grid; place-items: center; padding: clamp(24px, 3vw, 48px); margin-bottom: clamp(18px, 1.6vw, 26px); }
.bm-page .bm-tx-partner__logo img { width: auto; max-width: 78%; max-height: 64px; object-fit: contain; }
.bm-page .bm-tx-partner h3 { color: var(--bm-blue); font-size: var(--bm-h2); line-height: 1.15; }
.bm-page .bm-tx-partner__what { margin-top: 12px; font-size: var(--bm-small); font-weight: 500; }
.bm-page .bm-tx-partner .bm-actions { margin-top: 20px; }

/* Resultaten: citaat met score ernaast */
.bm-page .bm-tx-score { border-top: 2px solid var(--bm-blue); padding-top: 16px; color: var(--bm-blue); }
.bm-page .bm-tx-score__num { font-size: var(--bm-display); font-weight: 600; line-height: 1; letter-spacing: -.02em; }
.bm-page .bm-tx-score__label { margin-top: 10px; font-size: var(--bm-small); color: var(--bm-black); }
.bm-page .bm-logos__grid img[src$=".png"] { max-height: 44px; }

@media (max-width: 767px) {
  .bm-page .bm-tx-feature { grid-template-columns: minmax(0, 1fr); padding-right: clamp(28px, 4.5vw, 80px); }
  .bm-page .bm-tx-feature__visual { margin-right: calc(-1 * clamp(28px, 4.5vw, 80px)); }
  .bm-page .bm-tx-partner { grid-template-columns: minmax(0, 1fr); }
  .bm-page .bm-tx-partner__logo { aspect-ratio: 2 / 1; }
}

/* Vinkjes in een blauw oproepvlak */
.bm-page .bm-band .bm-checks li::before { border-color: var(--bm-white); }
.bm-page .bm-band .bm-checks li { font-weight: 500; }

/* Wisdom-woordmerk in het uitgelichte blok */
.bm-page .bm-tx-wordmark { display: block; width: 22vw; max-width: 340px; height: auto; }
@media (max-width: 767px) { .bm-page .bm-tx-wordmark { width: 52vw; } }

/* wisdom.css */
/* Wisdom-pagina: ontwerp van Rogier (14-09-2026) in de klassieke BlueMonks-huisstijl.
   Grote letters, echte productschermen met fictieve Acme B.V.-gegevens, scherpe vlakken. */


/* Hero volgt het vaste patroon (bm-hero); de schermcollage staat op de plek van de monnik. */
.bm-page .wd-hero__logo { display: block; width: 18vw; max-width: 300px; height: auto; margin-bottom: 2vw; }
.bm-page .wd-hero .bm-btn--outline { color: var(--bm-white) !important; border-color: var(--bm-white); }
.bm-page .wd-hero .bm-btn--outline:hover { background: var(--bm-white); color: var(--bm-blue) !important; }
@media (max-width: 767px) {
  .bm-page .wd-hero__logo { width: 46vw; margin-bottom: 5vw; }
}

/* Statement in grote letters */
.bm-page .wd-statement { padding-block: clamp(64px, 8vw, 150px); }
.bm-page .wd-statement__text { font-size: clamp(40px, 6vw, 112px); line-height: 1.05; letter-spacing: -.025em; font-weight: 600; color: var(--bm-blue); margin: 0; }
.bm-page .wd-statement__text span { color: var(--bm-black); }

.bm-page .wd-intro { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 96px); align-items: end; margin-bottom: clamp(28px, 3vw, 48px); }
.bm-page .wd-h2 { font-size: clamp(34px, 3.6vw, 68px); line-height: 1.08; letter-spacing: -.02em; font-weight: 600; }
.bm-page .wd-h2 span { color: var(--bm-blue); }
.bm-page .bm-blue .wd-h2 span, .bm-page .bm-band .wd-h2 span { color: var(--bm-pink); }

/* Productkaarten (Ramp-opbouw uit het ontwerp), in merkvlakken zonder afronding */
.bm-page .wd-cards { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: clamp(14px, 1.4vw, 24px); }
.bm-page .wd-card { grid-column: span 3; background: var(--bm-off); display: flex; flex-direction: column; min-width: 0; overflow: hidden; }
.bm-page .wd-card--pink { background: var(--bm-pink); }
.bm-page .wd-card--wide { grid-column: span 4; }
.bm-page .wd-card--third { grid-column: span 2; }
.bm-page .wd-card__copy { padding: clamp(28px, 2.6vw, 44px) clamp(26px, 2.6vw, 44px) clamp(22px, 2vw, 32px); min-height: 230px; }
.bm-page .wd-card h3 { font-size: clamp(26px, 2.2vw, 40px); line-height: 1.12; letter-spacing: -.015em; color: var(--bm-black); margin-bottom: 16px; }
.bm-page .wd-card__copy p { font-size: var(--bm-text); max-width: 28em; }
.bm-page .wd-window { height: 310px; margin: 0 0 0 clamp(24px, 2.4vw, 40px); position: relative; overflow: hidden; background: var(--bm-white); border-top: 3px solid var(--bm-blue); -webkit-mask-image: linear-gradient(to right, #000 86%, transparent), linear-gradient(to bottom, #000 82%, transparent); -webkit-mask-composite: source-in; mask-image: linear-gradient(to right, #000 86%, transparent), linear-gradient(to bottom, #000 82%, transparent); mask-composite: intersect; }
.bm-page .wd-window img { width: 900px; max-width: none; }
.bm-page .wd-window--tall { height: 470px; }
.bm-page .wd-window--progress { height: 360px; }
.bm-page .wd-window--progress img { width: 640px; }
.bm-page .wd-screening { margin: 0 clamp(18px, 1.8vw, 26px) 24px; height: 440px; border: 1px solid rgba(13, 51, 255, .25); background: var(--bm-white); }
.bm-page .wd-screening__crop { height: 100%; overflow: hidden; -webkit-mask-image: linear-gradient(to bottom, #000 88%, transparent); mask-image: linear-gradient(to bottom, #000 88%, transparent); }
.bm-page .wd-screening img { width: 100%; height: auto; }

.bm-page .bm-blue.wd-flow .bm-lead { color: rgba(255, 255, 255, .9); }
.bm-page .wd-steps { list-style: none; padding: 0; margin: 0; }
.bm-page .wd-steps .bm-step__num { font-size: clamp(34px, 3.4vw, 64px); line-height: 1; margin-bottom: 18px; }
.bm-page .wd-steps h3 { font-size: var(--bm-h3); }
.bm-page .wd-steps p { font-size: var(--bm-text); max-width: 24em; }

.bm-page .wd-audience .bm-checks li { font-size: var(--bm-lead); font-weight: 400; }

/* Risicoreeks en monitoringrun: illustratieve animaties, kleuren naar het merk */
.bm-page .wisdom-risk-story { height: 310px; flex: none; padding: 8px 32px 28px; display: flex; flex-direction: column; justify-content: center; color: #202734; }
.bm-page .wisdom-risk-factors { display: grid; gap: 9px; }
.bm-page .wisdom-risk-factors > div { display: grid; grid-template-columns: 32px 1fr auto; align-items: center; gap: 10px; padding: 11px 14px; background: var(--bm-white); font-size: 14px; }
.bm-page .wisdom-risk-factors strong { font-weight: 500; }
.bm-page .wisdom-factor-icon { width: 30px; height: 30px; background: var(--bm-off); color: var(--bm-blue); display: grid; place-items: center; }
.bm-page .wisdom-risk-connector { height: 24px; width: 2px; background: var(--bm-blue); margin-left: 29px; flex: none; }
.bm-page .wisdom-risk-conclusion { display: flex; gap: 13px; align-items: center; padding: 16px; background: var(--bm-blue); color: var(--bm-white); }
.bm-page .wisdom-conclusion-check { width: 32px; height: 32px; flex: none; background: var(--bm-white); color: var(--bm-blue); display: grid; place-items: center; }
.bm-page .wisdom-risk-conclusion strong { display: block; font-size: 16px; font-weight: 600; line-height: 1.3; }
.bm-page .wisdom-risk-conclusion div > span { display: block; font-size: 13px; line-height: 1.5; opacity: .85; margin-top: 4px; }
.bm-page .wisdom-factor-icon svg, .bm-page .wisdom-conclusion-check svg { display: block; width: 18px; height: 18px; flex: none; }
.bm-page .wisdom-risk-state { position: relative; display: grid; place-items: center end; min-width: 110px; min-height: 25px; }
.bm-page .wisdom-native-loader, .bm-page .wisdom-native-result { grid-area: 1 / 1; }
.bm-page .wisdom-native-loader { display: none; color: #9ca3af; width: 20px; height: 20px; }
.bm-page .wisdom-native-result { display: inline-flex; align-items: center; justify-content: center; background: #E9FDF3; color: #0A543D; border: 1px solid #B5DCCE; font-size: 11px; font-weight: 500; padding: 3px 7px; border-radius: 6px; line-height: 1.25; white-space: nowrap; }
.bm-page .wisdom-motion-ready .wisdom-risk-stage, .bm-page .wisdom-motion-ready .wisdom-risk-conclusion, .bm-page .wisdom-motion-ready .wisdom-risk-connector { opacity: 0; }
.bm-page .wisdom-motion-ready .wisdom-native-result { opacity: 0; }
.bm-page .wisdom-motion-ready .wisdom-native-loader { display: block; }
.bm-page .wisdom-motion-running .wisdom-risk-stage { animation: wisdom-stage-in .35s ease-out var(--stage-delay) both; }
.bm-page .wisdom-motion-running .wisdom-native-loader { animation: wisdom-loader-out .15s linear calc(var(--stage-delay) + 1.4s) both; }
.bm-page .wisdom-motion-running .wisdom-native-loader svg { animation: wisdom-loader-spin 1s linear infinite; }
.bm-page .wisdom-motion-running .wisdom-native-result { animation: wisdom-stage-in .25s ease-out calc(var(--stage-delay) + 1.55s) both; }
.bm-page .wisdom-motion-running .wisdom-risk-connector { animation: wisdom-stage-in .25s ease-out 6s both; }
.bm-page .wisdom-motion-running .wisdom-risk-conclusion { animation: wisdom-stage-in .45s ease-out 6.25s both; }
@keyframes wisdom-stage-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }
@keyframes wisdom-loader-out { from { opacity: 1; } to { opacity: 0; visibility: hidden; } }
@keyframes wisdom-loader-spin { to { transform: rotate(360deg); } }

@media (max-width: 1024px) {
  .bm-page .wd-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bm-page .wd-card, .bm-page .wd-card--wide, .bm-page .wd-card--third { grid-column: auto; }
}
@media (max-width: 767px) {
  .bm-page .wd-intro { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .bm-page .wd-cards { grid-template-columns: minmax(0, 1fr); }
  .bm-page .wd-card__copy { min-height: 0; }
  .bm-page .wd-window, .bm-page .wd-window--tall { height: 270px; margin-left: 20px; }
  .bm-page .wd-window img { width: 760px; }
  .bm-page .wd-window--progress { height: 300px; }
  .bm-page .wd-window--progress img { width: 560px; }
  .bm-page .wd-screening { height: auto; margin: 0 14px 20px; }
  .bm-page .wisdom-risk-story { height: 280px; padding: 0 20px 20px; }
  .bm-page .wisdom-risk-factors > div { padding: 8px 10px; gap: 8px; grid-template-columns: 28px 1fr auto; font-size: 13px; }
  .bm-page .wisdom-risk-state { min-width: 94px; }
}
@media (prefers-reduced-motion: reduce) {
  .bm-page .wisdom-risk-story * { animation: none !important; }
  .bm-page .wisdom-motion-ready .wisdom-risk-stage, .bm-page .wisdom-motion-ready .wisdom-native-result, .bm-page .wisdom-motion-ready .wisdom-risk-connector, .bm-page .wisdom-motion-ready .wisdom-risk-conclusion { opacity: 1; transform: none; }
  .bm-page .wisdom-motion-ready .wisdom-native-loader { display: none; }
}

/* Productbeeld (Wisdom-hero en homepage): één groot, scherp dashboard dat buiten het blauwe vlak doorloopt,
   met twee zwevende detailkaarten ervoor. Transparant op het blauw, geen gradiënt of waas. */
.bm-page .wd-product { position: relative; width: 100%; height: 100%; }
.bm-page .wd-product img { position: absolute; display: block; max-width: none; height: auto; }
.bm-page .wd-product__screen { left: 8%; top: 13%; width: 122%; height: 62% !important; object-fit: cover; object-position: left top; border-radius: 6px; box-shadow: 0 0 0 .5px rgba(255, 255, 255, .45), 0 2px 4px rgba(0, 8, 60, .12), 0 16px 32px rgba(0, 8, 60, .16), 0 48px 96px -24px rgba(0, 8, 60, .38); }
.bm-page .wd-product__card { border-radius: 6px; box-shadow: 0 0 0 .5px rgba(0, 0, 0, .10), 0 1px 2px rgba(0, 8, 60, .10), 0 10px 24px rgba(0, 8, 60, .16), 0 32px 64px -16px rgba(0, 8, 60, .34); }
.bm-page .wd-product__card--screening { left: -6%; top: 34%; width: 42%; z-index: 2; }
.bm-page .wd-product__card--progress { left: 24%; top: 66%; width: 80%; z-index: 3; }

.bm-page .wd-hero .bm-hero__block { overflow: hidden; min-height: 44vw; }
.bm-page .wd-hero .wd-product { position: absolute; top: 0; right: 0; bottom: 0; left: 50%; width: auto; height: auto; }

@media (max-width: 767px) {
  /* Mobiel: tekst eerst, daarna de volledige compositie op leesbare schaal. Het dashboard is uitvergroot
     op het linkerbovendeel (begroeting, taken, dossiers); de kaarten liggen groot en overlappend erover. */
  .bm-page .wd-hero .bm-hero__block { min-height: 0; justify-content: flex-start; padding-top: 10vw; padding-bottom: 0; }
  .bm-page .wd-hero .bm-hero__copy { margin-top: 0; }
  .bm-page .wd-hero .wd-product { position: relative; order: 0; left: auto; height: 128vw; margin: 11vw -5vw 0; overflow: hidden; }
  .bm-page .wd-product__screen { left: 16%; top: 0; width: 250%; height: 96% !important; border-radius: 6px 0 0 6px; }
  .bm-page .wd-product__card--screening { left: 4%; top: 20%; width: 76%; }
  .bm-page .wd-product__card--progress { left: 12%; top: 63%; width: 132%; border-radius: 6px 0 0 6px; }
}
}

/* Monitoringrun: vier fictieve relaties worden nagelopen, de laatste levert een nieuw signaal op */
.bm-page .wd-monitor { flex: 1 0 auto; padding: 18px 32px 32px; display: flex; flex-direction: column; justify-content: center; gap: 9px; color: #202734; }
.bm-page .wd-monitor__head { display: flex; align-items: center; gap: 10px; font-size: 13px; color: #5b6475; margin-bottom: 4px; }
.bm-page .wd-monitor__head strong { color: #202734; font-weight: 600; font-size: 14px; }
.bm-page .wd-monitor__head span:last-child { margin-left: auto; }
.bm-page .wd-monitor__pulse { width: 8px; height: 8px; border-radius: 50%; background: #16a34a; box-shadow: 0 0 0 0 rgba(22, 163, 74, .5); animation: wd-pulse 2s ease-out infinite; }
.bm-page .wd-monitor__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.bm-page .wd-monitor__row { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 10px; padding: 8px 14px; background: var(--bm-white); font-size: 14px; }
.bm-page .wd-monitor__who strong { font-weight: 500; display: block; line-height: 1.3; }
.bm-page .wd-monitor__who small { font-size: 12px; color: #6b7280; }
.bm-page .wd-monitor__row .wisdom-native-result { background: #f3f4f6; color: #4b5563; border-color: #e5e7eb; }
.bm-page .wd-monitor__row .wisdom-native-result.wd-monitor__hit { background: #fff7e6; color: #92400e; border-color: #f5d49a; }
.bm-page .wd-monitor__alert { display: flex; gap: 13px; align-items: center; padding: 14px 16px; background: var(--bm-blue); color: var(--bm-white); }
.bm-page .wd-monitor__alert strong { display: block; font-size: 15px; font-weight: 600; line-height: 1.3; }
.bm-page .wd-monitor__alert div > span { display: block; font-size: 13px; line-height: 1.45; opacity: .85; margin-top: 3px; }
.bm-page .wisdom-motion-ready .wd-monitor__row, .bm-page .wisdom-motion-ready .wd-monitor__alert { opacity: 0; }
.bm-page .wisdom-motion-running .wd-monitor__row { animation: wisdom-stage-in .35s ease-out var(--stage-delay) both; }
.bm-page .wisdom-motion-running .wd-monitor__row .wisdom-native-loader { animation: wisdom-loader-out .15s linear calc(var(--stage-delay) + 1s) both; }
.bm-page .wisdom-motion-running .wd-monitor__row .wisdom-native-result { animation: wisdom-stage-in .25s ease-out calc(var(--stage-delay) + 1.1s) both; }
.bm-page .wisdom-motion-running .wd-monitor__alert { animation: wisdom-stage-in .45s ease-out 5.2s both; }
@keyframes wd-pulse { 70% { box-shadow: 0 0 0 7px rgba(22, 163, 74, 0); } 100% { box-shadow: 0 0 0 0 rgba(22, 163, 74, 0); } }
@media (max-width: 767px) { .bm-page .wd-monitor { height: auto; padding: 0 20px 20px; } }
@media (prefers-reduced-motion: reduce) {
  .bm-page .wd-monitor__pulse { animation: none; }
  .bm-page .wisdom-motion-ready .wd-monitor__row, .bm-page .wisdom-motion-ready .wd-monitor__alert { opacity: 1; }
}

/* Productkaarten (24-09-2026): overal dezelfde presentatie, volle Wisdom-schermen, geen animatie */
.bm-page .wd-pcards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 1.6vw, 24px); margin-top: clamp(32px, 3vw, 56px); }
.bm-page .wd-pcard { background: var(--bm-off); display: flex; flex-direction: column; overflow: hidden; padding: clamp(32px, 3vw, 56px) 0 0 clamp(32px, 3vw, 56px); }
.bm-page .wd-pcard--pink { background: var(--bm-pink); }
.bm-page .wd-pcard--wide { grid-column: 1 / -1; }
.bm-page .wd-pcard__copy { padding-right: clamp(32px, 3vw, 56px); max-width: 34em; }
.bm-page .wd-pcard__copy h3 { font-size: var(--bm-h3); line-height: 1.2; font-weight: 600; margin: 0 0 14px; }
.bm-page .wd-pcard__copy p { margin: 0; font-size: var(--bm-text); }
.bm-page .wd-pcard__shot { margin-top: auto; padding-top: clamp(28px, 2.6vw, 44px); }
.bm-page .wd-pcard__shot img { display: block; width: clamp(760px, 78vw, 1180px); max-width: none; height: auto; aspect-ratio: 16 / 10; object-fit: cover; object-position: left top; border-radius: 6px 0 0 0; background: #fff;
  box-shadow: 0 1px 2px rgba(0, 8, 70, .10), 0 12px 32px rgba(0, 8, 70, .12); }
.bm-page .wd-pcard__shot { overflow: hidden; height: clamp(260px, 24vw, 420px); margin-left: -24px; padding-left: 24px; }
.bm-page .wd-pcard--wide .wd-pcard__shot { height: clamp(300px, 30vw, 480px); }
.bm-page .wd-pcard--wide .wd-pcard__shot img { width: max(clamp(760px, 78vw, 1180px), calc(100% + 80px)); }
@media (max-width: 767px) {
  .bm-page .wd-pcards { grid-template-columns: minmax(0, 1fr); }
  .bm-page .wd-pcard__shot { height: 64vw; }
  .bm-page .wd-pcard__shot img { width: 190vw; }
}

/* Wisdom in tabbladen (hero Wisdom-pagina en homepageblok): één scherm tegelijk, bezoeker kiest zelf */
.bm-page .wd-tabs { display: flex; flex-direction: column; justify-content: center; gap: 18px; }
.bm-page .wd-tabs img { position: static; }
.bm-page .wd-tabs__bar { display: flex; flex-wrap: wrap; border-bottom: 1px solid rgba(255, 255, 255, .35); margin-right: var(--bm-gutter); }
.bm-page .wd-tabs__bar button { font: inherit; font-size: 15px; font-weight: 500; color: rgba(255, 255, 255, .72); background: none; border: 0; padding: 10px 16px 12px; margin-bottom: -1px; border-bottom: 3px solid transparent; cursor: pointer; }
.bm-page .wd-tabs__bar button:hover { color: var(--bm-white); }
.bm-page .wd-tabs__bar button[aria-selected="true"] { color: var(--bm-white); border-bottom-color: var(--bm-white); }
.bm-page .wd-tabs__bar button:focus-visible { outline: 2px solid var(--bm-white); outline-offset: -4px; }
.bm-page .wd-tabs__panes img { display: none; width: 118%; max-width: none; height: auto; border-radius: 6px 0 0 6px;
  box-shadow: 0 1px 2px rgba(0, 8, 60, .12), 0 16px 32px rgba(0, 8, 60, .16), 0 48px 96px -24px rgba(0, 8, 60, .38); }
.bm-page .wd-tabs__panes img.is-on { display: block; }
.bm-page .wd-hero .wd-tabs { padding: clamp(32px, 4vw, 72px) 0; }
.bm-page .home-wisdom__stage .wd-tabs { height: 100%; padding: clamp(32px, 3.5vw, 64px) 0; }
@media (max-width: 767px) {
  .bm-page .wd-hero .wd-product.wd-tabs { height: auto; margin: 10vw 0 0 0; overflow: visible; padding: 0 0 10vw; }
  .bm-page .home-wisdom__stage { min-height: 0; }
  .bm-page .home-wisdom__stage .wd-tabs { padding: 0 0 8vw 5vw; }
  .bm-page .wd-tabs__bar { margin-right: 5vw; }
  .bm-page .wd-tabs__bar button { padding: 10px 10px 12px; font-size: 14px; }
  .bm-page .wd-tabs__panes { overflow: hidden; margin-right: -5vw; }
  .bm-page .home-wisdom__stage .wd-tabs__panes { margin-right: 0; }
  .bm-page .wd-tabs__panes img { width: 190vw; }
}
/* Risico-animatie als productkaart */
.bm-page .wd-pcard__visual { margin-top: auto; padding: clamp(28px, 2.6vw, 44px) clamp(32px, 3vw, 56px) clamp(32px, 3vw, 56px) 0; max-width: 720px; }
.bm-page .wd-pcard__visual .wisdom-risk-story { margin: 0; max-width: none; padding: 0; height: auto; }
@media (min-width: 900px) {
  .bm-page .wd-pcard--wide:has(.wd-pcard__visual) { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: clamp(32px, 4vw, 72px); align-items: start; padding-bottom: clamp(32px, 3vw, 56px); }
  .bm-page .wd-pcard--wide .wd-pcard__visual { margin-top: 0; padding-top: 0; padding-bottom: 0; max-width: none; }
}

/* Scherm loopt door tot de onderkant van het blauwe vlak (meer zoom, onder afgesneden) */
@media (min-width: 768px) {
  .bm-page .wd-hero .wd-product.wd-tabs, .bm-page .home-wisdom__stage .wd-tabs { justify-content: flex-start; padding: clamp(40px, 4vw, 72px) 0 0; }
  .bm-page .home-wisdom__stage { align-self: stretch; }
  .bm-page .home-wisdom__stage .wd-tabs { position: absolute; inset: 0; height: auto; }
  .bm-page .wd-tabs__panes { flex: 1 1 auto; min-height: 0; overflow: hidden; }
  .bm-page .wd-tabs__panes img { width: 150%; border-radius: 6px 0 0 0; }
}
@media (max-width: 767px) {
  .bm-page .wd-hero .wd-product.wd-tabs, .bm-page .home-wisdom__stage .wd-tabs { padding-bottom: 0; }
  .bm-page .wd-tabs__panes { height: 104vw; }
  .bm-page .wd-tabs__panes img { border-radius: 6px 0 0 0; }
}

/* Blauwe kaarten (bm-band) op de Wisdom-pagina: koppen even groot als de andere secties, links zichtbaar */
.bm-page .bm-band .wd-h2 { font-size: clamp(32px, 3.2vw, 60px); line-height: 1.08; }
.bm-page .bm-band a:not(.bm-btn) { color: var(--bm-white); text-decoration: underline; text-underline-offset: 3px; }

/* Twee blauwe kaarten naast elkaar (Gehost in Europa, Voor wie): even hoog, ruim, knop onderaan */
.bm-page .wd-duo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 2vw, 32px); }
.bm-page .wd-duo .wd-bluecard { grid-template-columns: minmax(0, 1fr); align-content: start; align-items: start; gap: clamp(24px, 2.4vw, 40px); padding: clamp(48px, 5.5vw, 104px) clamp(28px, 4vw, 72px); }
.bm-page .wd-duo .wd-bluecard .bm-lead { margin-bottom: 0; }
.bm-page .wd-duo .bm-band__aside { display: flex; flex-direction: column; gap: clamp(24px, 2.4vw, 40px); }
.bm-page .wd-duo .bm-checks { margin: 0; }
@media (max-width: 900px) {
  .bm-page .wd-duo { grid-template-columns: minmax(0, 1fr); }
  .bm-page .wd-duo .wd-bluecard { min-height: 0; }
}
.bm-page .wd-duo .wd-bluecard { display: flex; flex-direction: column; }
.bm-page .wd-duo .wd-bluecard .wd-h2 { font-size: clamp(28px, 2.5vw, 46px); }
.bm-page .wd-duo .bm-band__aside { flex: 1; }
.bm-page .wd-duo .bm-actions { margin-top: auto; }
.bm-page .bm-band .bm-btn--outline { color: var(--bm-white) !important; border-color: var(--bm-white); background: transparent; }
.bm-page .bm-band .bm-btn--outline:hover { background: var(--bm-white); color: var(--bm-blue) !important; }
.bm-page .wd-duo .bm-lead { text-wrap: pretty; }
/* Vinkjes in beide kaarten op dezelfde hoogte: inleiding reserveert drie regels (alleen naast elkaar) */
@media (min-width: 901px) { .bm-page .wd-duo .bm-lead { min-height: calc(3 * 1.6em); } }

/* Tabbladen als voortgangsbalk */
.bm-page .wd-tabs__bar button { position: relative; }
.bm-page .wd-tabs__bar button[aria-selected="true"] { border-bottom-color: transparent; }
.bm-page .wd-tabs__progress { position: absolute; left: 0; bottom: -3px; height: 3px; width: 0; background: var(--bm-white); }
.bm-page .wd-tabs__bar button.is-running .wd-tabs__progress { animation: wd-fill 6s linear forwards; }
.bm-page .wd-tabs.is-paused .wd-tabs__progress, .bm-page .wd-tabs.is-offscreen .wd-tabs__progress { animation-play-state: paused !important; }
@keyframes wd-fill { from { width: 0; } to { width: 100%; } }
@media (prefers-reduced-motion: reduce) { .bm-page .wd-tabs__bar button[aria-selected="true"] .wd-tabs__progress { width: 100%; } }
/* Tabbladen (25-09): geen scheidingslijn, één doorlopende balk onder alle tabs */
.bm-page .wd-tabs__bar { border-bottom: 0; gap: 0; }
.bm-page .wd-tabs__bar button { padding-left: 0; padding-right: 0; margin-right: 32px; }
.bm-page .wd-tabs__progress { right: -32px; width: auto; }
.bm-page .wd-tabs__bar button:last-child .wd-tabs__progress { right: 0; }
.bm-page .wd-tabs__progress { transform-origin: left; transform: scaleX(0); left: 0; }
.bm-page .wd-tabs__bar button.is-done .wd-tabs__progress { transform: scaleX(1); }
.bm-page .wd-tabs__bar button.is-running .wd-tabs__progress { animation: wd-grow 6s linear forwards; }
@keyframes wd-grow { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@media (prefers-reduced-motion: reduce) { .bm-page .wd-tabs__bar button[aria-selected="true"] .wd-tabs__progress { transform: scaleX(1); } }
/* Stappen: klein echt Wisdom-scherm boven elke stap */
.bm-page .wd-step__shot { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: left top; border-radius: 6px; border: 1px solid rgba(13, 51, 255, .12); margin: 0 0 24px; background: var(--bm-white); box-shadow: 0 1px 0 rgba(13, 51, 255, .15); }
/* EU- en KYC-kaarten (25-09): lichtgrijs i.p.v. blauw, onder de productkaarten */
.bm-page .wd-duo .bm-band { background: var(--bm-off); color: var(--bm-black); }
.bm-page .wd-duo .bm-band .wd-h2 { color: var(--bm-black); }
.bm-page .wd-duo .bm-band .wd-h2 span { color: var(--bm-blue); }
.bm-page .wd-duo .bm-band .bm-rule { background: var(--bm-blue); }
.bm-page .wd-duo .bm-band .bm-lead, .bm-page .wd-duo .bm-band li { color: var(--bm-black); }
.bm-page .wd-duo .bm-band a:not(.bm-btn) { color: var(--bm-blue); }
.bm-page .wd-duo .bm-band .bm-checks li::before { border-color: var(--bm-blue); }
/* EU- en KYC-kaarten sluiten direct aan op de productkaarten: zelfde tussenruimte, 1 grijs 1 roze (25-09) */
.bm-page section.bm-section:has(.wd-pcards) { padding-bottom: 0; }
.bm-page section#europa { padding-top: clamp(16px, 1.6vw, 24px); }
.bm-page .wd-duo { gap: clamp(16px, 1.6vw, 24px); }
.bm-page .wd-duo .bm-band:nth-child(2) { background: var(--bm-pink); }
/* Europa-kaarten: zelfde smalle marge naar het roze werkwijzeblok als erboven (25-09) */
.bm-page #europa { padding-bottom: 0; }
.bm-page #europa + section.bm-section.bm-pink { margin-top: clamp(16px, 2vw, 32px); }
/* Werkwijze "Duidelijk, van start tot rapport." in blauw met witte tekst (25-09) */
.bm-page #europa + section.bm-section.bm-blue { margin-top: clamp(16px, 2vw, 32px); }
.bm-page section.bm-section.bm-blue.wd-flow { margin-left: var(--bm-gutter); margin-right: var(--bm-gutter); padding-left: clamp(28px, 4.5vw, 80px); padding-right: clamp(28px, 4.5vw, 80px); color: var(--bm-white); }
.bm-page .bm-blue.wd-flow .wd-h2 { color: var(--bm-white); }
.bm-page .bm-blue.wd-flow .wd-h2 span { color: var(--bm-pink); }
.bm-page .bm-blue.wd-flow .bm-step { border-top-color: rgba(255, 255, 255, .7); }
.bm-page .bm-blue.wd-flow .bm-step__num, .bm-page .bm-blue.wd-flow .bm-step h3 { color: var(--bm-white); }
.bm-page .bm-blue.wd-flow .bm-step p { color: rgba(255, 255, 255, .92); }
@media (max-width: 767px) { .bm-page section.bm-section.bm-blue.wd-flow { margin-left: 0; margin-right: 0; } }
.bm-page .wd-fine { font-size: 13px; line-height: 1.5; color: #555; margin: 16px 0 0; }
/* Wisdom-hero (26-09): titel bovenaan, Wisdom-logo linksonder in het blauwe vlak (zelfde als het homepageblok) */
@media (min-width: 768px) {
  .bm-page .wd-hero .bm-hero__block { align-items: stretch; padding-top: clamp(40px, 4.5vw, 80px); padding-bottom: clamp(40px, 4.5vw, 80px); }
  .bm-page .wd-hero .bm-hero__copy { display: flex; flex-direction: column; align-items: flex-start; }
  .bm-page .wd-hero__logo { order: 9; margin: auto 0 0; padding-top: clamp(28px, 3vw, 52px); width: clamp(150px, 13vw, 230px); box-sizing: content-box; }
}
@media (max-width: 767px) {
  .bm-page .wd-hero .bm-hero__copy { display: flex; flex-direction: column; align-items: flex-start; }
  .bm-page .wd-hero__logo { order: 9; width: 150px; margin: 8vw 0 0; }
}
/* Stappenblokken overal (26-09): geen lijnen boven de cijfers; knoppen op blauw */
.bm-page .wd-flow .bm-step, .bm-page .bm-blue.wd-flow .bm-step { border-top: 0; padding-top: 0; }
.bm-page .bm-flow .bm-actions { margin-top: clamp(28px, 3vw, 48px); }
.bm-page .bm-flow .bm-btn--outline { color: var(--bm-white) !important; border-color: var(--bm-white); background: transparent; }
.bm-page .bm-flow .bm-btn--outline:hover { background: var(--bm-white); color: var(--bm-blue) !important; }
/* Wisdom-hero: zelfde h1 als de andere pagina's (26-09) */
.bm-page .wd-hero .bm-hero__title { font-size: 5.8vw; line-height: 1.02; letter-spacing: -.02em; }
@media (max-width: 767px) { .bm-page .wd-hero .bm-hero__title { font-size: 14vw; } }
/* Wisdom-hero: productbeeld iets verder naar rechts, meer lucht naast de titel (26-09) */
@media (min-width: 768px) { .bm-page .wd-hero .wd-product { left: 55%; } }
/* Europese hosting + eigen omgeving: beide blauw met witte tekst (26-09) */
.bm-page .wd-duo .bm-band, .bm-page .wd-duo .bm-band:nth-child(2) { background: var(--bm-blue); color: var(--bm-white); }
.bm-page .wd-duo .bm-band .wd-h2, .bm-page .wd-duo .bm-band p, .bm-page .wd-duo .bm-band li, .bm-page .wd-duo .bm-band .bm-lead { color: var(--bm-white); }
.bm-page .wd-duo .bm-band .wd-h2 span { color: var(--bm-pink); }
.bm-page .wd-duo .bm-band .bm-rule { background: var(--bm-white); }
.bm-page .wd-duo .bm-band .bm-checks li::before { border-color: var(--bm-white); }
.bm-page .wd-duo .bm-band a:not(.bm-btn) { color: var(--bm-white); }
.bm-page .wd-duo .bm-band .wd-fine { color: rgba(255, 255, 255, .8); }
/* Wisdom-hero gelijk aan alle andere hero's (27-09): zelfde titelmaat, streep, ondertitel, plaatsing (verticaal
   gecentreerd) en knoppen. Het Wisdom-logo staat los linksonder in het blauwe vlak; het productbeeld schuift iets op. */
@media (min-width: 768px) {
  .bm-page .wd-hero .bm-hero__block { align-items: center; padding: 3vw 0 3vw 4.5vw; }
  .bm-page .wd-hero .bm-hero__copy { display: block; width: 54%; }
  .bm-page .wd-hero .bm-hero__title { font-size: 6.6vw; line-height: 1.02; letter-spacing: -.02em; }
  .bm-page .wd-hero .bm-hero__rule { margin: 1.6vw 0 2vw; }
  .bm-page .wd-hero .bm-hero__sub { font-size: 1.9vw; font-weight: 500; line-height: 1.35; max-width: 19em; }
  .bm-page .wd-hero__logo { position: absolute; left: 4.5vw; bottom: 3vw; margin: 0; padding: 0; width: clamp(150px, 13vw, 230px); }
  .bm-page .wd-hero .wd-product { left: 58%; }
}
@media (min-width: 768px) { .bm-page .wd-hero .bm-hero__copy { position: static; } .bm-page .wd-hero .bm-hero__copy > :not(.wd-hero__logo) { position: relative; z-index: 1; } }
