@media (max-width:767px){[data-neura-hide~="mobile"]{display:none!important}}@media (min-width:768px) and (max-width:1023px){[data-neura-hide~="tablet"]{display:none!important}}@media (min-width:1024px){[data-neura-hide~="desktop"]{display:none!important}}

.nb{
  --nb-accent:var(--gb-ember,var(--gb-flame,var(--brand-accent,#F39019)));
  --nb-bg:var(--gb-charcoal,var(--brand-bg-base,#0A0908));
  --nb-surface:var(--gb-coal,var(--gb-black,var(--brand-bg-surface,#141210)));
  --nb-text:var(--gb-cream,var(--brand-text-primary,#EEE7DB));
  --nb-text-soft:var(--gb-bone,var(--gb-cream,var(--brand-text-primary,#EEE7DB)));
  --nb-muted:var(--gb-fog,var(--brand-text-muted,#8A8178));
  --nb-line:var(--gb-ash,var(--gb-line,#2A2622));
  --nb-font-display:var(--font-display,var(--brand-font-heading,inherit));
  --nb-font-body:var(--font-body,var(--brand-font-body,inherit));
  --nb-font-mono:var(--font-mono,ui-monospace,monospace);
  padding:clamp(64px,10vw,120px) 0;
  color:var(--nb-text);
  font-family:var(--nb-font-body);
  border-top:1px solid var(--nb-line);
}
.nb *,.nb *::before,.nb *::after{box-sizing:border-box}
.nb img{max-width:100%;display:block}
.nb-container{max-width:var(--container,1440px);margin:0 auto;padding:0 var(--pad-x,clamp(18px,4vw,56px))}
.nb-title{font-family:var(--nb-font-display);font-size:clamp(28px,3.4vw,44px);font-weight:700;letter-spacing:-0.02em;line-height:1.08;margin:0 0 36px}
.nb-cta{display:inline-flex;align-items:center;justify-content:center;padding:13px 26px;border-radius:4px;background:var(--nb-accent);color:var(--nb-bg);font-weight:600;font-size:14px;text-decoration:none;transition:filter .2s,border-color .2s,color .2s}
.nb-cta:hover{filter:brightness(1.08)}
.nb-cta--ghost{background:transparent;color:var(--nb-text);border:1px solid color-mix(in srgb,var(--nb-text) 30%,transparent)}
.nb-cta--ghost:hover{filter:none;border-color:var(--nb-text)}
.nb-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Neuramerce-secties onder de eerste schermhoogte: layout en paint pas als ze in beeld
   komen. Op neuramerce.com ging een volledige relayout mobiel van ~28 naar ~13 ms en
   Lighthouse mat 1,7 s style/layout (24-09-2026). Alleen blokken zonder fixed/sticky
   positionering en zonder JS die bij load maten leest; per blok gemeten dat geen kind
   buiten de sectie steekt, want content-visibility knipt de paint op de sectierand. */
.nb--nm-own-brands,.nb--nm-module-grid,.nb--nm-plans,.nb--nm-home-faq,.nb--nm-facts,.nb--nm-launch-road,.nb--nm-brands-list,.nb--nm-jaartabs,.nb--nm-rules,.nb--nm-spreadsheet,.nb--nm-story,.nb--nm-team{content-visibility:auto;contain-intrinsic-size:auto 800px}
/* Rijk-tekst (renderRichText) in blok-containers: neutraliseer UA-marges op <p>/lijsten uit de
   WYSIWYG-editor — behoud alinea-ritme, geen dubbele witruimte onder de laatste alinea. */
.nb-acc__a>p,.nb-tl__desc>p,.nb-tl__intro>p,.nb-fcard__desc>p,.nb-fcard__intro>p,.nb-guide__desc>p,.nb-guide__intro>p,.nb-hero__sub>p,.nb-rev__quote>p{margin:0 0 .6em}
.nb-acc__a>:last-child,.nb-tl__desc>:last-child,.nb-tl__intro>:last-child,.nb-fcard__desc>:last-child,.nb-fcard__intro>:last-child,.nb-guide__desc>:last-child,.nb-guide__intro>:last-child,.nb-hero__sub>:last-child,.nb-rev__quote>:last-child{margin-bottom:0}
.nb-acc__a ul,.nb-acc__a ol,.nb-tl__desc ul,.nb-tl__desc ol,.nb-fcard__desc ul,.nb-fcard__desc ol,.nb-guide__desc ul,.nb-guide__desc ol,.nb-hero__sub ul,.nb-hero__sub ol,.nb-rev__quote ul,.nb-rev__quote ol{margin:.3em 0 .6em;padding-left:1.4em}


.nb--carousel .nb-gbc__cell--theme{display:flex}
.nb--carousel .nb-gbc__cell--theme>*{flex:1 1 auto;min-width:0}
.nb--carousel .nb-container{container-type:inline-size}
.nb--carousel .nb-gbc{
  --nbc-coal:var(--nb-surface,#1C1A17);
  --nbc-ash:var(--nb-line,#2A2622);
  --nbc-smoke:var(--brand-border,#3A342E);
  --nbc-stone:var(--brand-border-strong,#5A524A);
  --nbc-fog:var(--nb-muted,#8A8178);
  --nbc-bone:var(--nb-text-soft,#C9C1B6);
  --nbc-paper:var(--nb-text,#EEE7DB);
  --nbc-ember:var(--nb-accent,#F39019);
  --nbc-ember-hot:var(--brand-primary-hover,#FF7D33);
  --nbc-ember-deep:color-mix(in srgb,var(--nbc-ember) 72%,#000);
  --nbc-ember-glow:rgba(var(--brand-primary-rgb, 243,144,25),.18);
  --nbc-radius:12px;
  --nbc-ratio:4/5;
  --nbc-cell:30.5%;
  --nbc-gap:18px;
  --nbc-ease:var(--brand-easing-default,cubic-bezier(.16,1,.3,1));
  --nbc-ease-out:cubic-bezier(.22,1,.36,1);
  position:relative;container-type:inline-size;color:var(--nbc-paper);outline:none;
}
.nb--carousel .nb-gbc:focus-visible{box-shadow:0 0 0 2px var(--nbc-ember)}
.nb--carousel .nb-gbc *{box-sizing:border-box}
@container (max-width:980px){.nb--carousel .nb-gbc{--nbc-cell:44%}}
@container (max-width:560px){.nb--carousel .nb-gbc{--nbc-cell:80%;--nbc-gap:14px}}

.nb--carousel .nb-gbc__view{overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-padding-left:2px;cursor:grab;touch-action:pan-x pan-y}
.nb--carousel .nb-gbc__view::-webkit-scrollbar{display:none}
.nb--carousel .nb-gbc.is-drag .nb-gbc__view{cursor:grabbing;scroll-snap-type:none}
.nb--carousel .nb-gbc.is-drag-moved .nb-gbc__cell{pointer-events:none}
.nb--carousel .nb-gbc.is-rewind .nb-gbc__view{scroll-snap-type:none}
.nb--carousel .nb-gbc__track{display:flex;gap:var(--nbc-gap);padding:6px 2px 8px}
.nb--carousel .nb-gbc__cell{flex:0 0 var(--nbc-cell);scroll-snap-align:start}

.nb--carousel .nb-gbc__card{position:relative;display:block;width:100%;aspect-ratio:var(--nbc-ratio);border-radius:var(--nbc-radius);overflow:hidden;background:var(--nbc-coal);border:1px solid var(--nbc-ash);text-decoration:none;color:inherit;transition:border-color .35s var(--nbc-ease),transform .55s var(--nbc-ease),box-shadow .45s var(--nbc-ease)}
.nb--carousel .nb-gbc__media{position:absolute;inset:0;overflow:hidden}
.nb--carousel .nb-gbc__img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s var(--nbc-ease-out),filter .5s ease}
.nb--carousel .nb-gbc__media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,7,6,.92) 4%,rgba(8,7,6,.45) 38%,transparent 64%)}
.nb--carousel .nb-gbc__card:hover .nb-gbc__img{transform:scale(1.06)}
.nb--carousel .nb-gbc__card:hover{border-color:var(--nbc-smoke)}

.nb--carousel .nb-gbc__badge{position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:rgba(10,9,8,.66);backdrop-filter:blur(8px);border:1px solid var(--nbc-ash);border-radius:6px;font-family:var(--nb-font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--nbc-ember)}

.nb--carousel .nb-gbc__body{position:absolute;inset:auto 0 0 0;z-index:2;padding:20px}
.nb--carousel .nb-gbc__kicker{font-family:var(--nb-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--nbc-fog);margin-bottom:9px;display:flex;align-items:center;gap:8px}
.nb--carousel .nb-gbc__star{color:var(--nbc-ember);display:inline-flex}
.nb--carousel .nb-gbc__title{font-family:var(--nb-font-display);font-weight:500;font-size:clamp(20px,3cqw,27px);color:var(--nbc-paper);line-height:1.08;margin:0;letter-spacing:-.02em}
.nb--carousel .nb-gbc__foot{margin-top:14px;display:flex;align-items:flex-end;justify-content:space-between;gap:14px}
.nb--carousel .nb-gbc__meta{font-family:var(--nb-font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--nbc-bone)}
.nb--carousel .nb-gbc__price{font-family:var(--nb-font-display);font-weight:600;font-size:22px;color:var(--nbc-ember);white-space:nowrap}
.nb--carousel .nb-gbc__price s{display:block;font-family:var(--nb-font-mono);font-size:10px;color:var(--nbc-fog);letter-spacing:.06em;text-align:right}
.nb--carousel .nb-gbc__read{display:inline-flex;align-items:center}
.nb--carousel .nb-gbc__arrow{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--nbc-smoke);color:var(--nbc-paper);transition:border-color .3s,background .3s,color .3s}
.nb--carousel .nb-gbc__arrow svg{width:14px;height:14px;transition:transform .3s var(--nbc-ease)}
.nb--carousel .nb-gbc__card:hover .nb-gbc__read svg{transform:translateX(3px)}
.nb--carousel .nb-gbc__card:hover .nb-gbc__arrow{border-color:var(--nbc-ember);background:var(--nbc-ember);color:var(--nb-bg,#0A0908)}

.nb--carousel .nb-gbc__btn{width:46px;height:46px;border-radius:50%;border:1px solid var(--nbc-smoke);background:var(--nbc-coal);color:var(--nbc-paper);cursor:pointer;flex:none;display:grid;place-items:center;transition:border-color .25s,color .25s,transform .25s,opacity .25s}
.nb--carousel .nb-gbc__btn svg{width:18px;height:18px}
.nb--carousel .nb-gbc__btn:hover{border-color:var(--nbc-ember);color:var(--nbc-ember);transform:translateY(-2px)}
.nb--carousel .nb-gbc__btn.is-edge{opacity:.5}
.nb--carousel .nb-gbc__btn.is-edge:hover{opacity:1}
.nb--carousel .nb-gbc__railfoot{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-top:22px}
.nb--carousel .nb-gbc__railrow{display:flex;align-items:center;gap:18px}
.nb--carousel .nb-gbc__railnav{display:flex;gap:10px;flex:none}
.nb--carousel .nb-gbc__bar{position:relative;flex:1;height:4px;border-radius:99px;background:var(--nbc-ash);cursor:grab;touch-action:none;transition:height .22s var(--nbc-ease),box-shadow .22s var(--nbc-ease)}
.nb--carousel .nb-gbc__bar::before{content:'';position:absolute;inset:-12px 0}
.nb--carousel .nb-gbc__bar:hover,.nb--carousel .nb-gbc__bar.is-hot{height:9px;box-shadow:0 0 0 1px var(--nbc-ash),0 6px 20px -6px var(--nbc-ember)}
.nb--carousel .nb-gbc__bar.is-hot{cursor:grabbing}
.nb--carousel .nb-gbc__barfill{position:absolute;inset:0 auto 0 0;width:30%;border-radius:99px;background:linear-gradient(90deg,var(--nbc-ember-deep),var(--nbc-ember),var(--nbc-ember-hot));transition:width .35s var(--nbc-ease),left .35s var(--nbc-ease);pointer-events:none}
.nb--carousel .nb-gbc__barfill::after{content:'';position:absolute;top:50%;right:0;width:14px;height:14px;border-radius:50%;background:var(--nbc-ember-hot);border:2px solid var(--nbc-coal);box-shadow:0 2px 8px -1px var(--nbc-ember);transform:translate(50%,-50%) scale(0);opacity:0;transition:transform .22s var(--nbc-ease),opacity .22s var(--nbc-ease)}
.nb--carousel .nb-gbc__bar:hover .nb-gbc__barfill::after,.nb--carousel .nb-gbc__bar.is-hot .nb-gbc__barfill::after{transform:translate(50%,-50%) scale(1);opacity:1}
.nb--carousel .nb-gbc__count{align-self:center;text-align:center;font-family:var(--nb-font-mono);font-size:12px;color:var(--nbc-fog);letter-spacing:.06em}
.nb--carousel .nb-gbc__count b{color:var(--nbc-paper)}

.nb--carousel .nb-gbc--spotlight .nb-gbc__track{padding:30px 2px 34px}
.nb--carousel .nb-gbc--spotlight .nb-gbc__cell{scroll-snap-align:center}
.nb--carousel .nb-gbc--spotlight .nb-gbc__card{opacity:.42;transform:scale(.9);filter:saturate(.7);transition:opacity .55s var(--nbc-ease),transform .55s var(--nbc-ease),filter .55s var(--nbc-ease),box-shadow .55s var(--nbc-ease),border-color .35s}
.nb--carousel .nb-gbc--spotlight .nb-gbc__cell.is-focus .nb-gbc__card{opacity:1;transform:scale(1.04);filter:none;border-color:var(--nbc-ember-glow);box-shadow:0 0 0 1px var(--nbc-ember-glow),0 34px 70px -34px #000,0 0 60px -18px var(--nbc-ember-glow)}
.nb--carousel .nb-gbc__spotnav{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:8px}
.nb--carousel .nb-gbc__spotmeta{font-family:var(--nb-font-mono);font-size:11px;color:var(--nbc-fog);min-width:120px}
.nb--carousel .nb-gbc__spotmeta b{color:var(--nbc-paper)}
.nb--carousel .nb-gbc__spotnav .nb-gbc__spotmeta:first-child{text-align:right}
.nb--carousel .nb-gbc__dots{display:flex;align-items:center;gap:9px}
.nb--carousel .nb-gbc__dot-nav{width:8px;height:8px;padding:0;border:0;border-radius:99px;background:var(--nbc-smoke);cursor:pointer;transition:background .3s,width .3s}
.nb--carousel .nb-gbc__dot-nav.is-on{background:var(--nbc-ember);width:26px}
@container (max-width:560px){.nb--carousel .nb-gbc--spotlight .nb-gbc__track{padding:24px 2px 28px}.nb--carousel .nb-gbc__spotmeta{display:none}}

.nb--carousel .nb-gbc--filmstrip .nb-gbc__img{width:118%;max-width:none;transform:translateX(var(--nbc-px,0));transition:transform .15s linear,filter .5s ease}
.nb--carousel .nb-gbc--filmstrip .nb-gbc__view:active .nb-gbc__img{transition:none}
.nb--carousel .nb-gbc__frame{position:absolute;top:14px;right:14px;z-index:2;font-family:var(--nb-font-mono);font-size:10px;letter-spacing:.1em;color:var(--nbc-bone);background:rgba(10,9,8,.55);backdrop-filter:blur(8px);border:1px solid var(--nbc-ash);border-radius:6px;padding:5px 9px}
.nb--carousel .nb-gbc__filmfoot{display:flex;align-items:center;gap:20px;margin-top:24px}
.nb--carousel .nb-gbc__filmhint{font-family:var(--nb-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--nbc-stone);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.nb--carousel .nb-gbc__filmhint svg{width:15px;height:15px;color:var(--nbc-fog)}
.nb--carousel .nb-gbc__scrub{position:relative;flex:1;height:34px;display:flex;align-items:center;cursor:pointer;touch-action:none}
.nb--carousel .nb-gbc__scrubtrack{position:absolute;left:0;right:0;height:2px;background:var(--nbc-ash);border-radius:99px}
.nb--carousel .nb-gbc__scrubticks{position:absolute;left:0;right:0;height:34px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.nb--carousel .nb-gbc__tick{width:1px;height:7px;background:var(--nbc-smoke)}
.nb--carousel .nb-gbc__scrubfill{position:absolute;left:0;height:2px;width:20%;border-radius:99px;background:linear-gradient(90deg,var(--nbc-ember-deep),var(--nbc-ember-hot))}
.nb--carousel .nb-gbc__thumb{position:absolute;left:0;transform:translateX(-50%);width:30px;height:30px;border-radius:50%;background:var(--nbc-paper);border:3px solid var(--nbc-ember);cursor:grab;display:grid;place-items:center;box-shadow:0 6px 18px -6px #000,0 0 0 6px rgba(var(--brand-primary-rgb, 243,144,25),.10);transition:box-shadow .2s}
.nb--carousel .nb-gbc__thumb::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--nbc-ember)}
.nb--carousel .nb-gbc__thumb:active{cursor:grabbing;box-shadow:0 6px 18px -6px #000,0 0 0 9px rgba(var(--brand-primary-rgb, 243,144,25),.16)}
.nb--carousel .nb-gbc__frames{font-family:var(--nb-font-mono);font-size:12px;color:var(--nbc-fog);white-space:nowrap}
.nb--carousel .nb-gbc__frames b{color:var(--nbc-ember)}
@container (max-width:560px){.nb--carousel .nb-gbc__filmhint span{display:none}}

/* USP-kaart: geen beeld, eigen hoogte; icoon tekent zich (stroke-dash) zodra het blok in beeld komt. */
.nb--carousel .nb-gbc--usp .nb-gbc__card{aspect-ratio:auto;min-height:100%;padding:26px 22px 24px;display:flex;flex-direction:column;gap:10px;cursor:default}
.nb--carousel .nb-gbc--usp .nb-gbc__cell{display:flex}
.nb--carousel .nb-gbc--usp .nb-gbc__card:hover{border-color:var(--nbc-ember);transform:translateY(-4px)}
.nb--carousel .nb-gbc__uspicon{width:56px;height:56px;color:var(--nbc-ember);flex:none;margin-bottom:6px}
.nb--carousel .nb-gbc__uspicon path{stroke-dasharray:100;stroke-dashoffset:100}
.nb--carousel .nb-gbc.is-in .nb-gbc__cell.is-drawn .nb-gbc__uspicon path{animation:nbcDraw 1.1s var(--nbc-ease) forwards;animation-delay:calc(.2s + var(--nbc-vd,0) * .09s)}
@keyframes nbcDraw{to{stroke-dashoffset:0}}
.nb--carousel .nb-gbc__title--usp{font-size:clamp(18px,2.4cqw,22px);font-weight:600}
.nb--carousel .nb-gbc__usptext{margin:0;font-family:var(--nb-font-body);font-size:14.5px;line-height:1.5;color:var(--nbc-bone)}
.nb--carousel .nb-gbc__usptext>p{margin:0 0 .6em}.nb--carousel .nb-gbc__usptext>:last-child{margin-bottom:0}.nb--carousel .nb-gbc__usptext ul,.nb--carousel .nb-gbc__usptext ol{margin:.3em 0 .6em;padding-left:1.4em}
.nb--carousel .nb-gbc__uspstat{margin-top:auto;padding-top:8px;font-family:var(--nb-font-mono);font-size:12px;letter-spacing:.06em;color:var(--nbc-ember);font-variant-numeric:tabular-nums}
.nb--carousel .nb-gbc--usp.nb-gbc--spotlight .nb-gbc__card{opacity:.55;transform:scale(.94)}
.nb--carousel .nb-gbc--usp.nb-gbc--spotlight .nb-gbc__cell.is-focus .nb-gbc__card{opacity:1;transform:scale(1)}

.nb--carousel .nb-gbc__stage{opacity:0;transform:translateY(30px);transition:opacity .7s var(--nbc-ease),transform .7s var(--nbc-ease)}
.nb--carousel .nb-gbc.is-in .nb-gbc__stage{opacity:1;transform:none}
.nb--carousel .nb-gbc.is-in .nb-gbc__cell{animation:nbcCellRise .6s var(--nbc-ease) backwards;animation-delay:calc(.12s + var(--nbc-rd,0) * .07s)}
@keyframes nbcCellRise{from{opacity:0;transform:translateY(26px) scale(.985)}to{opacity:1;transform:none}}

@media (prefers-reduced-motion:reduce){
  .nb--carousel .nb-gbc *{scroll-behavior:auto !important}
  .nb--carousel .nb-gbc__stage{opacity:1 !important;transform:none !important}
  .nb--carousel .nb-gbc.is-in .nb-gbc__cell{animation:none !important}
  .nb--carousel .nb-gbc__uspicon path{animation:none !important;stroke-dashoffset:0}
  .nb--carousel .nb-gbc__img,.nb--carousel .nb-gbc--spotlight .nb-gbc__card{transition:none !important}
}


.nb--logo-marquee .nb-lm{
  --nblm-surface:var(--nb-surface,#1C1A17);
  --nblm-line:var(--nb-line,#2A2622);
  --nblm-muted:var(--nb-muted,#8A8178);
  --nblm-text:var(--nb-text,#EEE7DB);
  --nblm-accent:var(--nb-accent,#F39019);
  --nblm-on-accent:var(--brand-text-on-primary,#0A0908);
  --nblm-radius:var(--brand-radius,10px);
  --nblm-ease:var(--brand-easing-default,cubic-bezier(.16,1,.3,1));
  display:flex;flex-direction:column;gap:14px;
  -webkit-mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);
  mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);
}
.nb--logo-marquee .nb-lm__row{overflow:hidden;padding:6px 0}
.nb--logo-marquee .nb-lm__track{display:flex;gap:14px;width:max-content;animation:nbLmScroll var(--nb-lm-dur,30s) linear infinite}
.nb--logo-marquee .nb-lm__dup{display:contents}
.nb--logo-marquee .nb-lm__row--rev .nb-lm__track{animation-direction:reverse}
.nb--logo-marquee .nb-lm--pause .nb-lm__row:hover .nb-lm__track,
.nb--logo-marquee .nb-lm__row:focus-within .nb-lm__track{animation-play-state:paused}
/* Precies de eerste set plus één gap: dan valt de kopie exact op de startpositie. */
@keyframes nbLmScroll{to{transform:translateX(calc(-50% - 7px))}}
/* mono: filter i.p.v. mask-image, want een CSS-mask op een logo van een andere origin (R2) faalt zonder CORS. */
.nb--logo-marquee .nb-lm--mono .nb-lm__img{filter:brightness(0);opacity:.75;transition:opacity .3s}
.dark .nb--logo-marquee .nb-lm--mono .nb-lm__img{filter:brightness(0) invert(1)}
.nb--logo-marquee .nb-lm--mono .nb-lm__logo:hover .nb-lm__img,.nb--logo-marquee .nb-lm--mono .nb-lm__logo:focus-visible .nb-lm__img{opacity:1}

.nb--logo-marquee .nb-lm__logo{position:relative;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:64px;min-width:120px;padding:0 24px;border:1px solid var(--nblm-line);border-radius:var(--nblm-radius);background:var(--nblm-surface);color:var(--nblm-muted);text-decoration:none;outline:none;transition:color .3s,border-color .3s,transform .35s var(--nblm-ease)}
.nb--logo-marquee .nb-lm__logo:hover,.nb--logo-marquee .nb-lm__logo:focus-visible{color:var(--nblm-accent);border-color:var(--nblm-accent);transform:translateY(-3px)}
.nb--logo-marquee .nb-lm__logo:focus-visible{box-shadow:0 0 0 2px var(--nblm-accent)}
.nb--logo-marquee .nb-lm__name{font-family:var(--nb-font-display);font-weight:600;font-size:15px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.nb--logo-marquee .nb-lm__img{display:block;height:32px;width:auto;max-width:160px;object-fit:contain}
.nb--logo-marquee .nb-lm--muted .nb-lm__img{filter:grayscale(1);opacity:.7;transition:filter .3s,opacity .3s}
.nb--logo-marquee .nb-lm--muted .nb-lm__logo:hover .nb-lm__img,.nb--logo-marquee .nb-lm--muted .nb-lm__logo:focus-visible .nb-lm__img{filter:none;opacity:1}
.nb--logo-marquee .nb-lm--color .nb-lm__logo{color:var(--nblm-text)}

.nb--logo-marquee .nb-lm__tip{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%,4px);white-space:nowrap;background:var(--nblm-accent);color:var(--nblm-on-accent);font-family:var(--nb-font-body);font-size:12px;font-weight:500;letter-spacing:0;text-transform:none;padding:6px 10px;border-radius:calc(var(--nblm-radius) - 2px);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s var(--nblm-ease);z-index:2}
.nb--logo-marquee .nb-lm__logo:hover .nb-lm__tip,.nb--logo-marquee .nb-lm__logo:focus-visible .nb-lm__tip{opacity:1;transform:translate(-50%,0)}

@media (prefers-reduced-motion:reduce){
  .nb--logo-marquee .nb-lm{-webkit-mask:none;mask:none}
  .nb--logo-marquee .nb-lm__track{animation:none;width:auto;flex-wrap:wrap;justify-content:center}
  .nb--logo-marquee .nb-lm__dup{display:none}
}


.nb--nm-page-hero,.nb--nm-final-cta,.nb--nm-inline-cta{
  --nm-fg:var(--foreground,oklch(0.2795 0.0368 260.0310));
  --nm-muted:var(--muted-foreground,oklch(0.5510 0.0234 264.3637));
  --nm-border:var(--border,oklch(0.8687 0.0043 56.3660));
  --nm-card:var(--card,oklch(0.9699 0.0013 106.4238));
  --nm-primary:var(--primary,oklch(0.635 0.168 277));
  --nm-primary-fg:var(--primary-foreground,oklch(1 0 0));
  --nm-secondary:var(--secondary,oklch(0.8687 0.0043 56.3660));
  --nm-secondary-fg:var(--secondary-foreground,oklch(0.4461 0.0263 256.8018));
  --nm-glow:var(--glow,color-mix(in oklch,var(--nm-primary) 18%,transparent));
  --nm-radius-md:var(--radius-md,0.75rem);
  --nm-radius-lg:var(--radius-lg,1.25rem);
  --nm-font-display:var(--font-display,var(--brand-font-heading,inherit));
  --nm-font-mono:var(--font-mono,ui-monospace,monospace);
  padding:0;border-top:0;color:var(--nm-fg);
}
.nb--nm-page-hero>.nb-container,.nb--nm-final-cta>.nb-container,.nb--nm-inline-cta>.nb-container{max-width:none;padding:0}
.nb--nm-page-hero :where(*,*::before,*::after),.nb--nm-final-cta :where(*,*::before,*::after),.nb--nm-inline-cta :where(*,*::before,*::after){box-sizing:border-box}
.nb--nm-page-hero :where(a),.nb--nm-final-cta :where(a),.nb--nm-inline-cta :where(a){color:inherit;text-decoration:none}

/* buttons (site.css .btn) */
.nb--nm-final-cta .btn,.nb--nm-inline-cta .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border-radius:var(--nm-radius-md);font-size:14px;font-weight:600;line-height:1;white-space:nowrap;border:0;cursor:pointer;transition:transform .15s,box-shadow .2s,background .15s,color .15s,border-color .15s}
.nb--nm-final-cta .btn-lg{height:52px;padding:0 26px;font-size:15px}
.nb--nm-final-cta .btn-primary,.nb--nm-inline-cta .btn-primary{background:var(--nm-primary);color:var(--nm-primary-fg)}
.nb--nm-final-cta .btn-primary:hover,.nb--nm-inline-cta .btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 24px -8px var(--nm-glow)}
.nb--nm-final-cta .btn-secondary{background:var(--nm-secondary);color:var(--nm-secondary-fg)}
.nb--nm-final-cta .btn-secondary:hover{transform:translateY(-1px)}

/* eyebrow */
.nb--nm-page-hero .eyebrow,.nb--nm-final-cta .eyebrow{display:inline-flex;align-items:center;font-family:var(--nm-font-mono);font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:color-mix(in srgb,var(--nm-primary) 65%,#fff)}
.nb--nm-final-cta .eyebrow--muted{color:var(--nm-muted)}

/* page-hero */
.nb--nm-page-hero{position:relative;padding:clamp(88px,10vw,120px) 0 clamp(48px,7vw,88px);overflow:hidden;border-bottom:1px solid var(--nm-border)}
.nb--nm-page-hero::before{content:"";position:absolute;top:-30%;left:50%;transform:translateX(-50%);width:90%;max-width:1000px;height:700px;background:radial-gradient(ellipse at center,color-mix(in oklch,var(--nm-primary) 16%,transparent) 0%,transparent 60%);pointer-events:none;z-index:0}
.nb--nm-page-hero .page-hero__inner{position:relative;z-index:1;max-width:800px;margin:0 auto;padding:0 clamp(20px,4vw,32px)}
.nb--nm-page-hero .page-hero__inner--center{text-align:center}
.nb--nm-page-hero:has(.page-hero__inner--nodivider){border-bottom:0}
.nb--nm-page-hero h1{margin:22px 0;font-family:var(--nm-font-display);font-size:clamp(40px,6.2vw,72px);font-weight:800;line-height:1.04;letter-spacing:-0.035em;color:var(--nm-fg);text-wrap:balance}
.nb--nm-page-hero h1 .gt{background:linear-gradient(180deg,var(--nm-fg) 0%,color-mix(in srgb,var(--nm-fg) 55%,transparent) 70%,color-mix(in srgb,var(--nm-fg) 18%,transparent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone}
@media (forced-colors:active),print{.nb--nm-page-hero h1 .gt{background:none;color:inherit}}
.nb--nm-page-hero .page-hero__sub{font-size:clamp(18px,1.4vw,22px);color:var(--nm-muted);max-width:56ch;line-height:1.5;text-wrap:balance}
.nb--nm-page-hero .page-hero__inner--center .page-hero__sub{margin-left:auto;margin-right:auto}

/* final-cta */
.nb--nm-final-cta{position:relative;padding:clamp(80px,12vw,144px) 0;background:var(--nm-card);border-top:1px solid var(--nm-border);border-bottom:1px solid var(--nm-border);overflow:hidden}
.nb--nm-final-cta::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse at 50% 0%,color-mix(in oklch,var(--nm-primary) 18%,transparent),transparent 60%),radial-gradient(ellipse at 50% 120%,color-mix(in oklch,var(--nm-primary) 8%,transparent),transparent 70%)}
.nb--nm-final-cta .final__inner{position:relative;z-index:1;text-align:center;max-width:760px;margin:0 auto;padding:0 clamp(20px,4vw,32px)}
.nb--nm-final-cta h2{margin:16px 0 20px;font-family:var(--nm-font-display);font-size:clamp(40px,6vw,64px);font-weight:800;letter-spacing:-0.035em;line-height:1.05;color:var(--nm-fg)}
.nb--nm-final-cta h2 em{color:var(--nm-primary);font-style:normal}
.nb--nm-final-cta p,.nb--nm-final-cta .final__sub{color:var(--nm-muted);font-size:clamp(17px,1.4vw,20px);margin-bottom:32px;line-height:1.5}
.nb--nm-final-cta .final__sub>p{margin:0 0 .6em}
.nb--nm-final-cta .final__sub>:last-child{margin-bottom:0}
.nb--nm-final-cta .final__ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:20px}
.nb--nm-final-cta .final__phone{font-family:var(--nm-font-mono);font-size:13px;color:var(--nm-muted);margin:0}
.nb--nm-final-cta .final__phone a{color:var(--nm-fg);text-decoration:underline;text-decoration-color:color-mix(in oklch,var(--nm-primary) 60%,transparent);text-underline-offset:4px}

/* inline-cta */
.nb--nm-inline-cta{padding:clamp(40px,6vw,72px) 0}
.nb--nm-inline-cta .nm-inline__box{max-width:1000px;margin:0 auto;padding:clamp(24px,4vw,40px);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:var(--nm-card);border:1px solid var(--nm-border);border-radius:var(--nm-radius-lg)}
.nb--nm-inline-cta h2{margin:0 0 6px;line-height:1.2;font-family:var(--nm-font-display);font-size:clamp(20px,2vw,26px);font-weight:700;letter-spacing:-0.02em;color:var(--nm-fg)}
.nb--nm-inline-cta p,.nb--nm-inline-cta .nm-inline__sub{margin:0;color:var(--nm-muted);font-size:15px;line-height:1.5}
.nb--nm-inline-cta .nm-inline__sub>p+p{margin-top:.6em}
.nm-rt>p{margin:0 0 .6em}.nm-rt>:last-child{margin-bottom:0}.nm-rt :where(ul,ol){margin:.3em 0 .6em;padding-left:1.4em}.nm-rt :where(ul){list-style:disc}.nm-rt :where(ol){list-style:decimal}.nm-rt a{text-decoration:underline;text-underline-offset:2px}


/* ===== gedeelde tokens + resets + UI (alle nm-home-* blokken) ===== */
[data-nmh]{
  --nmh-bg:var(--background,oklch(0.9876 0.0085 67.7269));
  --nmh-fg:var(--foreground,oklch(0.2795 0.0368 260.0310));
  --nmh-muted:var(--muted-foreground,oklch(0.5510 0.0234 264.3637));
  --nmh-card:var(--card,oklch(0.9699 0.0013 106.4238));
  --nmh-popover:var(--popover,oklch(0.9699 0.0013 106.4238));
  --nmh-border:var(--border,oklch(0.8687 0.0043 56.3660));
  --nmh-primary:var(--primary,oklch(0.635 0.168 277));
  /* Accent-tekst op donker: de merk-primary zelf haalt als kleine tekst de AA-drempel
     niet (gemeten 2,2 op de donkere achtergrond, nodig is 4,5). Deze afgeleide houdt
     de merk-tint maar wordt licht genoeg; alleen voor TEKST, niet voor vlakken. */
  --nmh-primary-text:color-mix(in srgb,var(--nmh-primary) 65%,#fff);
  --nmh-primary-fg:var(--primary-foreground,oklch(1 0 0));
  --nmh-secondary:var(--secondary,oklch(0.8687 0.0043 56.3660));
  --nmh-secondary-fg:var(--secondary-foreground,oklch(0.4461 0.0263 256.8018));
  --nmh-destructive:var(--destructive,oklch(0.6368 0.2078 25.3313));
  --nmh-glow:var(--glow,color-mix(in oklch,var(--nmh-primary) 18%,transparent));
  --nmh-radius:var(--radius,1.25rem);
  --nmh-radius-sm:var(--radius-sm,0.5rem);
  --nmh-radius-md:var(--radius-md,0.75rem);
  --nmh-radius-lg:var(--radius-lg,1.25rem);
  --nmh-radius-xl:var(--radius-xl,1.5rem);
  --nmh-font-display:var(--brand-font-display,var(--font-display,var(--font-sans,inherit)));
  --nmh-font-mono:var(--font-mono,ui-monospace,monospace);
  --nmh-tracking-widest:var(--tracking-widest,0.1em);
  --nmh-shadow-xs:var(--shadow-xs,2px 2px 10px 4px hsl(240 4% 60% / 0.09));
  --nmh-shadow-sm:var(--shadow-sm,2px 2px 10px 4px hsl(240 4% 60% / 0.18));
  --nmh-shadow-md:var(--shadow-md,2px 2px 10px 4px hsl(240 4% 60% / 0.18),2px 2px 4px 3px hsl(240 4% 60% / 0.18));
  --nmh-shadow-xl:var(--shadow-xl,2px 2px 10px 4px hsl(240 4% 60% / 0.18),2px 8px 10px 3px hsl(240 4% 60% / 0.18));
  color:var(--nmh-fg);
  font-family:var(--font-sans,inherit);
}
[data-nmh]>.nb-container{max-width:none;padding:0}
[data-nmh] :where(*,*::before,*::after){box-sizing:border-box}
[data-nmh] :where(p,h1,h2,h3,ul){margin:0}
[data-nmh] :where(img){display:block;max-width:100%}
[data-nmh] :where(a){color:inherit;text-decoration:none}
[data-nmh] svg{display:block}
[data-nmh] .nmh-container{max-width:1240px;margin:0 auto;padding:0 clamp(20px,4vw,32px);position:relative;z-index:2}
/* De nm-bundle halveert de mobiele zijmarge naar 10px via body.nm-root .nmh-container
   (0,2,1) — dat mocht, omdat het app-frame op de homepage er al 14px afsnoepte. Loopt dat
   frame tot de schermrand, dan blijft er 10px over en staat de tekst te dicht op de rand.
   Alleen op de hero-pagina terug naar de eigen clamp; (0,3,1) wint van die bundelregel,
   en de :has-scope laat andere pagina-s ongemoeid.
   Geen backticks in dit commentaar: deze CSS staat in een template literal. */
@media (max-width:640px){body:has(.nb--nm-home-hero) [data-nmh] .nmh-container{padding-left:clamp(20px,4vw,32px);padding-right:clamp(20px,4vw,32px)}}
[data-nmh] h1{font-family:var(--nmh-font-display);font-size:clamp(40px,6.2vw,72px);font-weight:var(--brand-font-display-weight,800);line-height:1.04;letter-spacing:-0.035em;text-wrap:balance;color:var(--nmh-fg)}
[data-nmh] h2{font-family:var(--nmh-font-display);font-size:clamp(30px,4vw,50px);font-weight:var(--brand-font-display-weight,700);line-height:1.08;letter-spacing:-0.025em;text-wrap:balance;color:var(--nmh-fg)}
[data-nmh] h3{font-size:24px;font-weight:700;line-height:1.2;letter-spacing:-0.02em;color:var(--nmh-fg)}
[data-nmh] .lead{font-size:clamp(17px,1.4vw,20px);color:var(--nmh-muted);line-height:1.55;max-width:60ch;text-wrap:pretty}
[data-nmh] .gradient-text{background:linear-gradient(180deg,var(--nmh-fg) 0%,color-mix(in srgb,var(--nmh-fg) 55%,transparent) 70%,color-mix(in srgb,var(--nmh-fg) 18%,transparent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone}
@media (forced-colors:active),print{[data-nmh] .gradient-text{background:none;color:inherit}}
[data-nmh] .section__head{margin-bottom:clamp(40px,6vw,72px);max-width:780px}
[data-nmh] .section__head>*+*{margin-top:18px}
[data-nmh] .section__head--center{margin-inline:auto;text-align:center}
[data-nmh] .eyebrow{display:inline-flex;align-items:center;font-family:var(--nmh-font-mono);font-size:11px;font-weight:600;letter-spacing:var(--nmh-tracking-widest);text-transform:uppercase;color:var(--nmh-primary-text)}
[data-nmh] .eyebrow--muted{color:var(--nmh-muted)}
[data-nmh] .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border-radius:var(--nmh-radius-md);font-size:14px;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;border:0;font-family:inherit;transition:transform .15s ease,box-shadow .2s ease,background .15s ease,color .15s ease,border-color .15s ease}
[data-nmh] .btn-lg{height:52px;padding:0 26px;font-size:15px}
[data-nmh] .btn-sm{height:36px;padding:0 14px;font-size:13px}
[data-nmh] .btn-primary{background:var(--nmh-primary);color:var(--nmh-primary-fg);box-shadow:var(--nmh-shadow-sm)}
[data-nmh] .btn-primary:hover{transform:translateY(-1px);box-shadow:var(--nmh-shadow-md)}
[data-nmh] .btn-secondary{background:var(--nmh-secondary);color:var(--nmh-secondary-fg);box-shadow:var(--nmh-shadow-xs)}
[data-nmh] .btn-secondary:hover{transform:translateY(-1px)}
[data-nmh] .btn-ghost{background:transparent;color:var(--nmh-muted);border:1px solid var(--nmh-border)}
[data-nmh] .btn-ghost:hover{color:var(--nmh-fg);background:color-mix(in oklch,var(--nmh-fg) 6%,transparent);border-color:color-mix(in oklch,var(--nmh-fg) 16%,transparent)}

/* ===== §1 nm-home-hero ===== */
.nb--nm-home-hero{position:relative;padding:clamp(88px,10vw,120px) 0 clamp(48px,7vw,88px);overflow:hidden}
.nb--nm-home-hero .hero__bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.nb--nm-home-hero .hero__bg canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.55}
.nb--nm-home-hero .hero__bg::before{content:"";position:absolute;top:-20%;left:50%;transform:translateX(-50%);width:90%;max-width:1000px;height:800px;background:radial-gradient(ellipse at center,color-mix(in oklch,var(--nmh-primary) 10%,transparent) 0%,transparent 60%)}
.nb--nm-home-hero .hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 70%,var(--nmh-bg) 100%)}
.nb--nm-home-hero .hero__inner{position:relative;z-index:2;text-align:center;max-width:980px;margin:0 auto}
.nb--nm-home-hero .hero__badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:color-mix(in oklch,var(--nmh-primary) 12%,transparent);border:1px solid color-mix(in oklch,var(--nmh-primary) 30%,transparent);font-family:var(--nmh-font-mono);font-size:11px;font-weight:600;color:var(--nmh-primary);letter-spacing:var(--nmh-tracking-widest);text-transform:uppercase;margin-bottom:28px}
.nb--nm-home-hero .hero__badge .dot{width:6px;height:6px;border-radius:999px;background:var(--nmh-primary);box-shadow:0 0 0 3px color-mix(in oklch,var(--nmh-primary) 25%,transparent);animation:nmh-hero-pulse 2.4s ease-in-out infinite}
@keyframes nmh-hero-pulse{0%,100%{box-shadow:0 0 0 3px color-mix(in oklch,var(--nmh-primary) 25%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in oklch,var(--nmh-primary) 10%,transparent)}}
.nb--nm-home-hero .hero__inner h1{margin:0 0 24px}
.nb--nm-home-hero .hero__sub{font-size:clamp(18px,1.5vw,22px);color:var(--nmh-muted);max-width:680px;margin:0 auto 40px;line-height:1.5;text-wrap:balance}
.nb--nm-home-hero .hero__ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:32px}
.nb--nm-home-hero .hero__trust{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;font-family:var(--nmh-font-mono);font-size:12px;color:var(--nmh-muted)}
.nb--nm-home-hero .hero__trust b{font-weight:600;color:var(--nmh-fg)}
.nb--nm-home-hero .hero__trust .sep{opacity:.5}
/* Eén kant van de 768px-grens: tegenhanger van een nm-demoplayer die zichzelf
   onder die grens verbergt — samen dragen ze het hero-beeld op élk scherm. */
@media(min-width:768px){.nb--nm-home-hero .hero__dash--mobile{display:none}}
@media(max-width:767px){.nb--nm-home-hero .hero__dash--desktop{display:none}}
.nb--nm-home-hero .hero__dash{position:relative;z-index:2;margin:clamp(56px,8vw,96px) auto 0;max-width:1100px;background:var(--nmh-card);border:1px solid var(--nmh-border);border-radius:var(--nmh-radius-xl);padding:18px;box-shadow:var(--nmh-shadow-xl);overflow:hidden}
.nb--nm-home-hero .dash__bar{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--nmh-border)}
.nb--nm-home-hero .dash__dots{display:flex;gap:6px}
.nb--nm-home-hero .dash__dots i{width:9px;height:9px;border-radius:50%;background:color-mix(in oklch,var(--nmh-fg) 18%,transparent);display:inline-block}
.nb--nm-home-hero .dash__title{font-family:var(--nmh-font-mono);font-size:11px;color:var(--nmh-muted);letter-spacing:0.04em}
.nb--nm-home-hero .dash__live{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-family:var(--nmh-font-mono);font-size:10px;color:var(--nmh-primary);padding:4px 10px;border-radius:999px;background:color-mix(in oklch,var(--nmh-primary) 12%,transparent);border:1px solid color-mix(in oklch,var(--nmh-primary) 30%,transparent);letter-spacing:var(--nmh-tracking-widest);font-weight:600}
.nb--nm-home-hero .dash__live i{width:5px;height:5px;border-radius:999px;background:var(--nmh-primary);animation:nmh-hero-pulse 2.4s ease-in-out infinite}
.nb--nm-home-hero .dash__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:16px 0 14px}
.nb--nm-home-hero .kpi{background:color-mix(in oklch,var(--nmh-fg) 3%,transparent);border:1px solid var(--nmh-border);border-radius:var(--nmh-radius-md);padding:14px 16px;position:relative;overflow:hidden}
.nb--nm-home-hero .kpi__label{font-family:var(--nmh-font-mono);font-size:10.5px;letter-spacing:var(--nmh-tracking-widest);text-transform:uppercase;color:var(--nmh-muted);font-weight:600}
.nb--nm-home-hero .kpi__value{font-family:var(--nmh-font-mono);font-size:clamp(22px,2.2vw,28px);font-weight:600;letter-spacing:-0.02em;margin-top:6px;color:var(--nmh-fg);font-variant-numeric:tabular-nums}
.nb--nm-home-hero .kpi__delta{font-size:11.5px;color:var(--nmh-primary-text);font-weight:600;margin-top:4px;font-family:var(--nmh-font-mono)}
.nb--nm-home-hero .kpi__delta.down{color:color-mix(in oklch,var(--nmh-destructive) 80%,var(--nmh-fg) 20%)}
.nb--nm-home-hero .kpi--active{border-color:color-mix(in oklch,var(--nmh-primary) 38%,transparent);background:color-mix(in oklch,var(--nmh-primary) 10%,transparent);animation:nmh-kpi-breathe 3.4s ease-in-out infinite}
@keyframes nmh-kpi-breathe{0%,100%{box-shadow:0 0 0 1px color-mix(in oklch,var(--nmh-primary) 10%,transparent),0 0 18px -8px color-mix(in oklch,var(--nmh-primary) 50%,transparent)}50%{box-shadow:0 0 0 1px color-mix(in oklch,var(--nmh-primary) 20%,transparent),0 0 32px -4px color-mix(in oklch,var(--nmh-primary) 70%,transparent)}}
.nb--nm-home-hero .dash__chart{background:color-mix(in oklch,var(--nmh-fg) 3%,transparent);border:1px solid var(--nmh-border);border-radius:var(--nmh-radius-md);padding:16px;position:relative}
.nb--nm-home-hero .dash__chart-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.nb--nm-home-hero .dash__chart-title{font-size:13px;font-weight:600;color:var(--nmh-fg)}
.nb--nm-home-hero .dash__legend{margin-left:auto;display:flex;gap:14px;font-family:var(--nmh-font-mono);font-size:10.5px;color:var(--nmh-muted)}
.nb--nm-home-hero .dash__legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px;vertical-align:middle}
.nb--nm-home-hero .dash__legend i.l1{background:var(--nmh-primary)}
.nb--nm-home-hero .dash__legend i.l2{background:color-mix(in oklch,var(--nmh-fg) 30%,transparent)}
.nb--nm-home-hero .dash__chart svg{width:100%;height:110px;overflow:visible}
.nb--nm-home-hero .dash__chart svg .line1{stroke:var(--nmh-primary);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px color-mix(in oklch,var(--nmh-primary) 60%,transparent))}
.nb--nm-home-hero .dash__chart svg .line2{stroke:color-mix(in oklch,var(--nmh-fg) 24%,transparent);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:3 4}
.nb--nm-home-hero .dash__chart svg .area1{fill:url(#nm-area-grad)}
.nb--nm-home-hero .dash__chart svg .end-pulse{fill:var(--nmh-primary);animation:nmh-end-pulse 2.2s ease-in-out infinite}
@keyframes nmh-end-pulse{0%,100%{r:4;opacity:1}50%{r:8;opacity:.5}}
.nb--nm-home-hero .dash__sjef{position:absolute;right:18px;bottom:38px;max-width:320px;background:var(--nmh-popover);border:1px solid color-mix(in oklch,var(--nmh-primary) 30%,transparent);border-radius:var(--nmh-radius-md);padding:12px 14px;display:flex;align-items:flex-start;gap:10px;box-shadow:var(--nmh-shadow-md);font-size:12.5px}
.nb--nm-home-hero .dash__sjef .av{width:28px;height:28px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--nmh-primary),color-mix(in oklch,var(--nmh-primary) 70%,black));display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--nmh-primary-fg);font-size:12px}
.nb--nm-home-hero .dash__sjef .msg{flex:1;min-width:0;color:var(--nmh-fg)}
.nb--nm-home-hero .dash__sjef .msg b{font-weight:600}
.nb--nm-home-hero .dash__sjef .msg span{display:block;color:var(--nmh-muted);margin-top:2px;font-size:12px;line-height:1.4}
.nb--nm-home-hero .dash__sjef .badge{font-family:var(--nmh-font-mono);font-size:10px;font-weight:600;letter-spacing:var(--nmh-tracking-widest);color:var(--nmh-primary);padding:3px 6px;border-radius:var(--nmh-radius-sm);background:color-mix(in oklch,var(--nmh-primary) 12%,transparent)}
@media(max-width:880px){.nb--nm-home-hero .hero__dash{padding:14px}.nb--nm-home-hero .dash__grid{grid-template-columns:repeat(2,1fr)}.nb--nm-home-hero .dash__sjef{position:static;max-width:none;margin-top:14px}}
@media(prefers-reduced-motion:reduce){.nb--nm-home-hero .hero__badge .dot,.nb--nm-home-hero .dash__live i,.nb--nm-home-hero .kpi--active,.nb--nm-home-hero .dash__chart svg .end-pulse{animation:none}}

/* ===== §2 nm-own-brands ===== */
.nb--nm-own-brands{padding:clamp(56px,8vw,96px) 0}
.nb--nm-own-brands .section__head{max-width:540px;margin-bottom:clamp(36px,5vw,56px)}
.nb--nm-own-brands .brands{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--nmh-border);border-radius:var(--nmh-radius-lg);background:var(--nmh-card);overflow:hidden}
.nb--nm-own-brands .brand{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:44px 24px;gap:12px;min-height:168px;transition:background .2s}
.nb--nm-own-brands .brand:hover{background:color-mix(in oklch,var(--nmh-fg) 4%,transparent)}
.nb--nm-own-brands .brand+.brand{border-left:1px solid var(--nmh-border)}
.nb--nm-own-brands .brand__mark{font-family:var(--nmh-font-display);font-weight:var(--brand-font-display-weight,800);font-size:26px;letter-spacing:-0.025em;color:var(--nmh-fg)}
.nb--nm-own-brands .brand__mark .v{color:var(--nmh-primary)}
/* Monochroom via filter i.p.v. mask-image: een CSS-mask op een logo van een andere origin (R2) faalt zonder CORS. */
.nb--nm-own-brands .brand__logo img{display:block;height:44px;width:auto;max-width:200px;object-fit:contain;filter:brightness(0);opacity:.88;transition:opacity .2s}
.dark .nb--nm-own-brands .brand__logo img{filter:brightness(0) invert(1)}
.nb--nm-own-brands .brand:hover .brand__logo img{opacity:1}
.nb--nm-own-brands .brand__tag{font-family:var(--nmh-font-mono);font-size:11px;font-weight:600;color:var(--nmh-muted);letter-spacing:var(--nmh-tracking-widest);text-transform:uppercase}
.nb--nm-own-brands .brands-cap{text-align:center;margin-top:36px}
.nb--nm-own-brands .brands-cap h2{font-size:clamp(24px,2.8vw,34px);font-weight:700;letter-spacing:-0.02em;margin-bottom:8px}
.nb--nm-own-brands .brands-cap p{color:var(--nmh-muted);max-width:56ch;margin:0 auto;font-size:15.5px}
@media(max-width:720px){.nb--nm-own-brands .brands{grid-template-columns:1fr}.nb--nm-own-brands .brand+.brand{border-left:0;border-top:1px solid var(--nmh-border)}}

/* ===== §2b nm-bignum (bewust donkere statband → expliciete lichte tekst) ===== */
.nb--nm-bignum{position:relative;overflow:hidden;border-top:1px solid var(--nmh-border);border-bottom:1px solid var(--nmh-border);background:oklch(0.1250 0.0020 67);padding:clamp(88px,12vw,160px) 0}
.nb--nm-bignum::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(color-mix(in oklch,white 4%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in oklch,white 4%,transparent) 1px,transparent 1px);background-size:88px 88px;-webkit-mask-image:radial-gradient(ellipse at 50% 50%,black 25%,transparent 78%);mask-image:radial-gradient(ellipse at 50% 50%,black 25%,transparent 78%)}
.nb--nm-bignum .bignum__row{position:relative;display:grid;grid-template-columns:1fr;justify-items:center;text-align:center}
.nb--nm-bignum .bignum__row::before{content:"";position:absolute;top:-44px;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,color-mix(in oklch,white 28%,transparent),transparent)}
.nb--nm-bignum .bn__val{font-family:var(--nmh-font-display);font-weight:var(--brand-font-display-weight,700);font-size:clamp(56px,7.5vw,112px);letter-spacing:-0.045em;line-height:1;color:oklch(0.9350 0.0060 255);font-variant-numeric:tabular-nums}
.nb--nm-bignum .bn__cap{margin-top:20px;font-family:var(--nmh-font-mono);font-size:13px;color:oklch(0.6800 0.0120 261);letter-spacing:0.02em}
@media(max-width:720px){.nb--nm-bignum .bignum__row::before{display:none}}

/* ===== §4 nm-module-grid ===== */
.nb--nm-module-grid{padding:clamp(72px,11vw,144px) 0}
.nb--nm-module-grid .modules{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.nb--nm-module-grid .mod{position:relative;background:var(--nmh-card);border:1px solid var(--nmh-border);border-radius:var(--nmh-radius-lg);padding:28px;min-height:240px;display:flex;flex-direction:column;gap:14px;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s;cursor:pointer;overflow:hidden;--cat:var(--nmh-primary)}
.nb--nm-module-grid .mod[data-cat="reach"]{--cat:var(--cat-reach,oklch(0.72 0.14 235))}
.nb--nm-module-grid .mod[data-cat="presence"]{--cat:var(--cat-presence,oklch(0.70 0.17 300))}
.nb--nm-module-grid .mod[data-cat="engage"]{--cat:var(--cat-engage,oklch(0.78 0.15 70))}
.nb--nm-module-grid .mod[data-cat="verkoop"]{--cat:var(--cat-verkoop,oklch(0.78 0.17 150))}
.nb--nm-module-grid .mod[data-cat="brain"]{--cat:var(--nmh-primary)}
.nb--nm-module-grid .mod[data-cat="findability"]{--cat:var(--cat-findability,oklch(0.72 0.16 340))}
.nb--nm-module-grid .mod:hover{border-color:color-mix(in oklch,var(--cat) 40%,var(--nmh-border));transform:translateY(-2px);box-shadow:var(--nmh-shadow-md),0 0 40px -16px color-mix(in oklch,var(--cat) 50%,transparent)}
.nb--nm-module-grid .mod__icon{width:42px;height:42px;border-radius:var(--nmh-radius-md);background:color-mix(in oklch,var(--cat) 12%,transparent);border:1px solid color-mix(in oklch,var(--cat) 26%,var(--nmh-border));display:flex;align-items:center;justify-content:center;color:var(--cat);flex-shrink:0}
.nb--nm-module-grid .mod__title{font-size:21px;font-weight:700;letter-spacing:-0.02em;line-height:1.2;color:var(--nmh-fg)}
/* Merktegel: het logo staat op de plek van het categorie-icoon. Hoogte is de
   constante, breedte volgt de vorm — een vaste breedte drukt een woordmerk
   plat. Bij een woordmerk-logo (staat al de naam in de tekening) blijft de
   losse tekstkop uit de markup, alleen niet zichtbaar (--vh). Bij een kale
   glyph-logo (isGlyphBrandMark) blijft .mod__title gewoon zichtbaar — dan is
   het logo net zo klein als het categorie-icoon dat het vervangt. */
.nb--nm-module-grid .mod__logo{display:flex;align-items:center;min-height:42px}
.nb--nm-module-grid .mod__logo img{height:26px;width:auto;max-width:100%;object-fit:contain;display:block}
.nb--nm-module-grid .mod__title--vh{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.nb--nm-module-grid .mod__logo:has(+ .mod__title:not(.mod__title--vh)) img{height:42px;width:42px;object-fit:contain}
.nb--nm-module-grid .mod__title em{color:var(--cat);font-style:normal}
.nb--nm-module-grid .mod__desc{color:var(--nmh-muted);font-size:14.5px;line-height:1.55;flex:1}
.nb--nm-module-grid .mod__arrow{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--cat);margin-top:auto;opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s}
.nb--nm-module-grid .mod:hover .mod__arrow{opacity:1;transform:translateX(0)}
.nb--nm-module-grid .mod--brain{background:radial-gradient(circle at top right,color-mix(in oklch,var(--nmh-primary) 14%,transparent),transparent 70%),var(--nmh-card);border-color:color-mix(in oklch,var(--nmh-primary) 30%,transparent)}
.nb--nm-module-grid .mod--brain .mod__icon{background:linear-gradient(135deg,var(--nmh-primary),color-mix(in oklch,var(--nmh-primary) 60%,black));color:var(--nmh-primary-fg);border:0}
.nb--nm-module-grid .mod--plus{background:color-mix(in oklch,var(--nmh-primary) 6%,var(--nmh-card));border-color:color-mix(in oklch,var(--nmh-primary) 30%,transparent);--cat:var(--nmh-primary)}
.nb--nm-module-grid .mod--plus .mod__icon{background:var(--nmh-primary);color:var(--nmh-primary-fg);border:0}
.nb--nm-module-grid .mod--img{padding:0;gap:0;min-height:0}
.nb--nm-module-grid .mod__media{position:relative;aspect-ratio:16/10;max-width:100%;overflow:hidden;border-bottom:1px solid var(--nmh-border);background:radial-gradient(120% 90% at 20% 0%,color-mix(in oklch,var(--cat) 22%,transparent),transparent 60%),var(--nmh-card)}
.nb--nm-module-grid .mod__media img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .5s}
.nb--nm-module-grid .mod--img:hover .mod__media img{transform:scale(1.035)}
.nb--nm-module-grid .mod__ph{position:absolute;inset:0;background-image:linear-gradient(color-mix(in oklch,var(--cat) 10%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in oklch,var(--cat) 10%,transparent) 1px,transparent 1px);background-size:24px 24px}
.nb--nm-module-grid .mod__body{display:flex;flex-direction:column;gap:8px;padding:18px 20px 20px;flex:1}
.nb--nm-module-grid .mod__label{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--nmh-muted)}
.nb--nm-module-grid .mod__label::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--cat);box-shadow:0 0 10px var(--cat)}
.nb--nm-module-grid .mod--img .mod__title{font-size:19px}
.nb--nm-module-grid .mod--img .mod__desc{font-size:14px}
.nb--nm-module-grid .mod--img .mod__arrow{opacity:1;transform:none;padding-top:10px}
.nb--nm-module-grid .mod--feature{grid-column:1/-1;flex-direction:row}
.nb--nm-module-grid .mod--feature .mod__media{aspect-ratio:auto;width:58%;min-height:320px;flex:none;border-bottom:0;border-right:1px solid var(--nmh-border)}
.nb--nm-module-grid .mod--feature .mod__body{padding:32px;justify-content:center}
.nb--nm-module-grid .mod--feature .mod__title{font-size:28px}
.nb--nm-module-grid .mod--feature .mod__desc{font-size:15px;max-width:40ch;flex:0}
@media (max-width:720px){.nb--nm-module-grid .mod--feature{flex-direction:column}.nb--nm-module-grid .mod--feature .mod__media{width:100%;min-height:0;aspect-ratio:16/10;border-right:0;border-bottom:1px solid var(--nmh-border)}.nb--nm-module-grid .mod--feature .mod__body{padding:20px}.nb--nm-module-grid .mod--feature .mod__title{font-size:22px}}
@media (prefers-reduced-motion:reduce){.nb--nm-module-grid .mod__media img{transition:none}}
@media(max-width:980px){.nb--nm-module-grid .modules{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.nb--nm-module-grid .modules{grid-template-columns:1fr}}

/* ===== §6 nm-screenshots ===== */
.nb--nm-screenshots{padding:clamp(72px,11vw,144px) 0}
.nb--nm-screenshots .nmh-shots{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.nb--nm-screenshots .nmh-shot{background:var(--nmh-card);border:1px solid var(--nmh-border);border-radius:var(--nmh-radius-lg);overflow:hidden;box-shadow:var(--nmh-shadow-xs)}
.nb--nm-screenshots .nmh-shot__frame{aspect-ratio:16/10;position:relative;overflow:hidden;border-bottom:1px solid var(--nmh-border);background:var(--nmh-bg)}
.nb--nm-screenshots .nmh-shot__frame img{width:100%;height:100%;object-fit:cover}
.nb--nm-screenshots .nmh-shot__ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,color-mix(in oklch,var(--nmh-primary) 10%,transparent) 0 2px,transparent 2px 16px),linear-gradient(135deg,color-mix(in oklch,var(--nmh-primary) 14%,transparent),color-mix(in oklch,var(--nmh-primary) 3%,transparent))}
.nb--nm-screenshots .nmh-shot__ph span{font-family:var(--nmh-font-mono);font-size:11px;letter-spacing:var(--nmh-tracking-widest);text-transform:uppercase;color:color-mix(in oklch,var(--nmh-fg) 75%,transparent);padding:6px 12px;border-radius:var(--nmh-radius-sm);background:color-mix(in oklch,var(--nmh-bg) 60%,transparent);border:1px dashed color-mix(in oklch,var(--nmh-fg) 22%,transparent)}
.nb--nm-screenshots .nmh-shot__body{padding:20px 22px 24px}
.nb--nm-screenshots .nmh-shot__label{font-size:16px;font-weight:600;color:var(--nmh-fg);margin-bottom:6px}
.nb--nm-screenshots .nmh-shot__cap{font-size:14px;line-height:1.55;color:var(--nmh-muted)}
@media(max-width:720px){.nb--nm-screenshots .nmh-shots{grid-template-columns:1fr}}

/* ===== §7 nm-testimonials ===== */
.nb--nm-testimonials{padding:clamp(72px,11vw,144px) 0}
.nb--nm-testimonials .testis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.nb--nm-testimonials .testi{background:var(--nmh-card);border:1px solid var(--nmh-border);border-radius:var(--nmh-radius-lg);padding:28px;display:flex;flex-direction:column;gap:24px;box-shadow:var(--nmh-shadow-xs)}
.nb--nm-testimonials .testi__quote{font-size:18.5px;line-height:1.45;letter-spacing:-0.01em;color:var(--nmh-fg);font-weight:500;flex:1}
.nb--nm-testimonials .testi__quote::before{content:"\201C";color:var(--nmh-primary-text);font-size:32px;line-height:0;vertical-align:-14px;margin-right:4px;font-weight:700}
.nb--nm-testimonials .testi__quote em{color:var(--nmh-primary-text);font-style:normal}
.nb--nm-testimonials .testi__person{display:flex;gap:12px;align-items:center}
.nb--nm-testimonials .testi__av{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:var(--nmh-primary-fg);background:linear-gradient(135deg,var(--nmh-primary),color-mix(in oklch,var(--nmh-primary) 60%,black))}
.nb--nm-testimonials .testi__av.b{background:linear-gradient(135deg,oklch(0.72 0.18 30),oklch(0.5 0.16 25))}
.nb--nm-testimonials .testi__av.c{background:linear-gradient(135deg,oklch(0.72 0.12 220),oklch(0.5 0.16 240))}
.nb--nm-testimonials .testi__av.d{background:linear-gradient(135deg,oklch(0.74 0.14 150),oklch(0.5 0.14 160))}
.nb--nm-testimonials .testi__name{font-weight:600;font-size:14.5px;color:var(--nmh-fg)}
.nb--nm-testimonials .testi__role{font-size:13px;color:var(--nmh-muted)}
@media(max-width:880px){.nb--nm-testimonials .testis{grid-template-columns:1fr}}

/* ===== §8 nm-plans ===== */
.nb--nm-plans{padding:clamp(72px,11vw,144px) 0}
.nb--nm-plans .plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}
.nb--nm-plans .plan{background:var(--nmh-card);border:1px solid var(--nmh-border);border-radius:var(--nmh-radius-lg);padding:32px 28px;display:flex;flex-direction:column;gap:18px;position:relative;box-shadow:var(--nmh-shadow-xs)}
.nb--nm-plans .plan--pro{background:linear-gradient(180deg,color-mix(in oklch,var(--nmh-primary) 8%,var(--nmh-card)) 0%,var(--nmh-card) 60%);border-color:color-mix(in oklch,var(--nmh-primary) 36%,transparent);box-shadow:var(--nmh-shadow-xl),0 0 80px -20px var(--nmh-glow);transform:translateY(-4px)}
.nb--nm-plans .plan__badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);font-family:var(--nmh-font-mono);font-size:10.5px;letter-spacing:var(--nmh-tracking-widest);background:var(--nmh-primary);color:var(--nmh-primary-fg);padding:5px 12px;border-radius:999px;font-weight:700;text-transform:uppercase;white-space:nowrap}
.nb--nm-plans .plan__name{font-family:var(--nmh-font-mono);font-size:12px;letter-spacing:var(--nmh-tracking-widest);text-transform:uppercase;color:var(--nmh-muted);font-weight:600}
.nb--nm-plans .plan--pro .plan__name{color:var(--nmh-primary)}
.nb--nm-plans .plan__price{display:flex;align-items:baseline;gap:6px;font-family:var(--nmh-font-display);letter-spacing:-0.03em;font-weight:var(--brand-font-display-weight,800)}
.nb--nm-plans .plan__price-val{font-size:52px;line-height:1;color:var(--nmh-fg)}
.nb--nm-plans .plan__price-per{color:var(--nmh-muted);font-size:13.5px;font-weight:500;letter-spacing:0}
.nb--nm-plans .plan__one{color:var(--nmh-muted);font-size:14.5px;line-height:1.5}
.nb--nm-plans .plan__intro{margin-top:10px;padding:8px 12px;border-radius:10px;font-size:13px;line-height:1.45;color:var(--nmh-fg,inherit);background:color-mix(in srgb,var(--nmh-primary,#7c5cff) 14%,transparent)}
.nb--nm-plans .plan__sep{height:1px;background:var(--nmh-border);margin:4px 0}
.nb--nm-plans .plan__feats{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.nb--nm-plans .plan__feats li{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--nmh-fg)}
.nb--nm-plans .plan__feats li .check{flex-shrink:0;color:var(--nmh-primary);margin-top:2px;width:16px;height:16px}
.nb--nm-plans .plan .btn{margin-top:auto;width:100%;height:46px}
.nb--nm-plans .plans-cta{text-align:center;margin-top:32px}
.nb--nm-plans .plans-cta a{color:var(--nmh-primary-text);font-weight:600;font-size:14.5px}
@media(max-width:880px){.nb--nm-plans .plans{grid-template-columns:1fr}.nb--nm-plans .plan--pro{transform:none}}

/* ===== §9 nm-home-faq ===== */
.nb--nm-home-faq{padding:clamp(72px,11vw,144px) 0}
.nb--nm-home-faq .faq{border-top:1px solid var(--nmh-border);max-width:920px}
.nb--nm-home-faq .faq__item{border-bottom:1px solid var(--nmh-border)}
.nb--nm-home-faq .faq__btn{width:100%;text-align:left;padding:24px 0;display:flex;align-items:center;gap:20px;font-size:18px;font-weight:600;color:var(--nmh-fg);letter-spacing:-0.015em;transition:color .15s;background:none;border:0;cursor:pointer;font-family:inherit}
.nb--nm-home-faq .faq__btn:hover{color:var(--nmh-primary-text)}
.nb--nm-home-faq .faq__num{font-family:var(--nmh-font-mono);font-size:12px;color:var(--nmh-muted);width:32px;letter-spacing:0.06em;font-weight:600}
.nb--nm-home-faq .faq__q{flex:1}
.nb--nm-home-faq .faq__plus{width:22px;height:22px;position:relative;flex-shrink:0}
.nb--nm-home-faq .faq__plus::before,.nb--nm-home-faq .faq__plus::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;background:var(--nmh-muted);transform:translate(-50%,-50%);transition:transform .25s,background .15s}
.nb--nm-home-faq .faq__plus::after{transform:translate(-50%,-50%) rotate(90deg)}
.nb--nm-home-faq .faq__item.is-open .faq__plus::after{transform:translate(-50%,-50%) rotate(0)}
.nb--nm-home-faq .faq__item.is-open .faq__plus::before,.nb--nm-home-faq .faq__item.is-open .faq__plus::after{background:var(--nmh-primary)}
.nb--nm-home-faq .faq__item.is-open .faq__btn{color:var(--nmh-primary-text)}
.nb--nm-home-faq .faq__a{max-height:0;overflow:hidden;transition:max-height .25s ease}
.nb--nm-home-faq .faq__item.is-open .faq__a{max-height:340px}
.nb--nm-home-faq .faq__a-inner{padding:0 52px 28px 52px;font-size:15.5px;color:var(--nmh-muted);line-height:1.65}
.nb--nm-home-faq .faq__a-inner em{color:var(--nmh-primary-text);font-style:normal}
@media(max-width:600px){.nb--nm-home-faq .faq__num{display:none}.nb--nm-home-faq .faq__a-inner{padding:0 0 24px 0}}
.nm-rt>p{margin:0 0 .6em}.nm-rt>:last-child{margin-bottom:0}.nm-rt :where(ul,ol){margin:.3em 0 .6em;padding-left:1.4em}.nm-rt :where(ul){list-style:disc}.nm-rt :where(ol){list-style:decimal}.nm-rt a{text-decoration:underline;text-underline-offset:2px}


/* ===== gedeelde tokens (alle nm-overons-blokken) ===== */
.nb--nm-facts,.nb--nm-spreadsheet,.nb--nm-story,.nb--nm-jaartabs,.nb--nm-brands-list,.nb--nm-rules,.nb--nm-team{
  --nm-fg:var(--foreground,oklch(0.22 0.01 260));
  --nm-muted:var(--muted-foreground,oklch(0.55 0.015 260));
  --nm-card:var(--card,oklch(0.99 0.002 260));
  --nm-border:var(--border,oklch(0.91 0.005 260));
  --nm-primary:var(--primary,oklch(0.635 0.168 277));
  --nm-primary-fg:var(--primary-foreground,oklch(0.99 0 0));
  --nm-radius:var(--radius,0.75rem);
  --nm-radius-lg:var(--radius-lg,1rem);
  --nm-font-display:var(--font-display,inherit);
  --nm-font-mono:var(--font-mono,ui-monospace,'SFMono-Regular',monospace);
  --nm-tracking-widest:var(--tracking-widest,0.1em);
  padding:0;border-top:0;color:var(--nm-fg);font-family:var(--font-body,inherit);
}
.nb--nm-facts :where(*,*::before,*::after),.nb--nm-spreadsheet :where(*,*::before,*::after),.nb--nm-story :where(*,*::before,*::after),.nb--nm-jaartabs :where(*,*::before,*::after),.nb--nm-brands-list :where(*,*::before,*::after),.nb--nm-rules :where(*,*::before,*::after),.nb--nm-team :where(*,*::before,*::after){box-sizing:border-box}
.nb--nm-facts :where(p,h2,h3),.nb--nm-spreadsheet :where(p,h2,h3),.nb--nm-story :where(p,h2,h3),.nb--nm-jaartabs :where(p,h2,h3),.nb--nm-brands-list :where(p,h2,h3),.nb--nm-rules :where(p,h2,h3),.nb--nm-team :where(p,h2,h3){margin:0}
.nb--nm-facts :where(a),.nb--nm-spreadsheet :where(a),.nb--nm-story :where(a),.nb--nm-jaartabs :where(a),.nb--nm-brands-list :where(a),.nb--nm-rules :where(a),.nb--nm-team :where(a){color:inherit;text-decoration:none}
.nb--nm-facts>.nb-container,.nb--nm-spreadsheet>.nb-container,.nb--nm-story>.nb-container,.nb--nm-jaartabs>.nb-container,.nb--nm-brands-list>.nb-container,.nb--nm-rules>.nb-container,.nb--nm-team>.nb-container{max-width:none;padding:0 clamp(20px,5vw,24px)}
.nb--nm-facts .nm-inner,.nb--nm-spreadsheet .nm-inner,.nb--nm-story .nm-inner,.nb--nm-jaartabs .nm-inner,.nb--nm-brands-list .nm-inner,.nb--nm-rules .nm-inner,.nb--nm-team .nm-inner{max-width:1240px;margin:0 auto}
.nb--nm-story .em,.nb--nm-spreadsheet .em,.nb--nm-rules .em{color:var(--nm-primary)}

/* ===== gedeelde section-head (story) ===== */
.nb--nm-story .nm-head{text-align:center;max-width:640px;margin:0 auto clamp(28px,4vw,40px)}
.nb--nm-story .nm-head .eyebrow{display:inline-block;font-family:var(--nm-font-mono);font-size:11.5px;letter-spacing:0.14em;text-transform:uppercase;color:color-mix(in srgb,var(--nm-primary) 65%,#fff);margin-bottom:14px}
.nb--nm-story .nm-head h2{font-family:var(--nm-font-display);font-weight:700;font-size:clamp(28px,3.6vw,44px);letter-spacing:-0.03em;line-height:1.1;color:var(--nm-fg);text-wrap:balance}

/* ===== 1. nm-facts ===== */
.nb--nm-facts{padding:0 0 clamp(8px,2vw,16px)}
.nb--nm-facts .facts-line{font-family:var(--nm-font-mono);font-size:12.5px;color:var(--nm-muted);letter-spacing:0.02em;margin-top:28px;display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.nb--nm-facts .facts-line b{color:var(--nm-fg);font-weight:600}
.nb--nm-facts .facts-line .sep{opacity:.4}

/* ===== 2. nm-spreadsheet ===== */
.nb--nm-spreadsheet{padding:clamp(56px,8vw,96px) 0}
.nb--nm-spreadsheet .sheet-wrap{max-width:680px;margin:0 auto}
.nb--nm-spreadsheet .sheet-intro{text-align:center;max-width:56ch;margin:0 auto 32px;color:var(--nm-muted);font-size:16px;line-height:1.6}
.nb--nm-spreadsheet .sheet-intro strong{color:var(--nm-fg);font-weight:600}
.nb--nm-spreadsheet .sheet{background:var(--nm-card);border:1px solid var(--nm-border);border-radius:var(--nm-radius-lg);overflow:hidden;font-variant-numeric:tabular-nums}
.nb--nm-spreadsheet .sheet__bar{display:flex;align-items:center;gap:10px;padding:12px 18px;border-bottom:1px solid var(--nm-border)}
.nb--nm-spreadsheet .sheet__bar .dots{display:flex;gap:6px}
.nb--nm-spreadsheet .sheet__bar .dots i{width:10px;height:10px;border-radius:50%;background:color-mix(in oklch, var(--nm-fg) 12%, transparent)}
.nb--nm-spreadsheet .sheet__bar .name{font-family:var(--nm-font-mono);font-size:12px;color:var(--nm-muted)}
.nb--nm-spreadsheet .sheet__row{display:grid;grid-template-columns:1fr auto;gap:16px;padding:11px 20px;border-bottom:1px solid color-mix(in oklch, var(--nm-border) 60%, transparent);font-size:14px;transition:opacity .45s,text-decoration-color .45s;position:relative}
.nb--nm-spreadsheet .sheet__row .tool{color:var(--nm-fg);font-weight:500}
.nb--nm-spreadsheet .sheet__row .why{color:var(--nm-muted);font-size:12.5px;margin-left:10px}
.nb--nm-spreadsheet .sheet__row .price{font-family:var(--nm-font-mono);font-size:13px;color:var(--nm-muted)}
.nb--nm-spreadsheet .sheet.is-after .sheet__row--old{opacity:.32}
.nb--nm-spreadsheet .sheet.is-after .sheet__row--old .tool,.nb--nm-spreadsheet .sheet.is-after .sheet__row--old .price{text-decoration:line-through;text-decoration-color:color-mix(in oklch, var(--nm-primary) 70%, transparent)}
.nb--nm-spreadsheet .sheet__row--new{display:none;background:color-mix(in oklch, var(--nm-primary) 7%, transparent)}
.nb--nm-spreadsheet .sheet__row--new .tool{color:var(--nm-primary);font-weight:700}
.nb--nm-spreadsheet .sheet__row--new .price{color:var(--nm-fg);font-weight:600}
.nb--nm-spreadsheet .sheet.is-after .sheet__row--new{display:grid}
.nb--nm-spreadsheet .sheet__total{display:grid;grid-template-columns:1fr auto;gap:16px;padding:16px 20px;background:color-mix(in oklch, var(--nm-fg) 3%, transparent)}
.nb--nm-spreadsheet .sheet__total .lbl{font-family:var(--nm-font-mono);font-size:11px;letter-spacing:var(--nm-tracking-widest);text-transform:uppercase;color:var(--nm-muted);font-weight:600;align-self:center}
.nb--nm-spreadsheet .sheet__total .sum{font-family:var(--nm-font-mono);font-size:22px;font-weight:700;color:var(--nm-fg)}
.nb--nm-spreadsheet .sheet__total .sum small{font-size:12px;color:var(--nm-muted);font-weight:400;margin-left:4px}
.nb--nm-spreadsheet .sheet-toggle{display:flex;justify-content:center;gap:0;margin:24px 0 0}
.nb--nm-spreadsheet .sheet-toggle button{padding:10px 22px;font-family:var(--nm-font-mono);font-size:12.5px;font-weight:600;color:var(--nm-muted);border:1px solid var(--nm-border);background:none;cursor:pointer;transition:all .15s}
.nb--nm-spreadsheet .sheet-toggle button:first-child{border-radius:999px 0 0 999px}
.nb--nm-spreadsheet .sheet-toggle button:last-child{border-radius:0 999px 999px 0;border-left:0}
.nb--nm-spreadsheet .sheet-toggle button.is-active{color:var(--nm-primary-fg);background:var(--nm-primary);border-color:var(--nm-primary)}
.nb--nm-spreadsheet .sheet-note{text-align:center;font-size:13px;color:var(--nm-muted);margin-top:14px}

/* ===== 3. nm-story ===== */
.nb--nm-story{padding:clamp(48px,7vw,80px) 0}
.nb--nm-story .story{max-width:65ch;margin:0 auto;font-size:clamp(17px,1.4vw,19px);line-height:1.7;color:var(--nm-fg)}
.nb--nm-story .story p{margin:0 0 22px}
.nb--nm-story .story .quote{font-family:var(--nm-font-display);font-size:clamp(24px,2.6vw,32px);font-weight:700;letter-spacing:-0.02em;line-height:1.25;margin:36px 0;text-wrap:balance;text-align:center}
.nb--nm-story .story strong{color:var(--nm-fg);font-weight:700}
.nb--nm-story .nm-inner--left .nm-head{text-align:left;max-width:65ch;font-size:clamp(17px,1.4vw,19px)}
.nb--nm-story .nm-inner--left .story .quote{text-align:left}
.nb--nm-story .story a{color:var(--brand-accent,var(--primary,currentColor));font-weight:600;text-decoration:underline;text-decoration-color:color-mix(in oklch,var(--brand-accent,var(--primary,currentColor)) 50%,transparent);text-underline-offset:3px;text-decoration-thickness:1px}
.nb--nm-story .story a:hover{text-decoration-thickness:2px}

/* ===== 4. nm-jaartabs ===== */
.nb--nm-jaartabs{padding:clamp(48px,7vw,80px) 0}
.nb--nm-jaartabs .years{max-width:680px;margin:0 auto}
.nb--nm-jaartabs .years__tabs{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-bottom:28px}
.nb--nm-jaartabs .years__tabs button{padding:9px 18px;border-radius:999px;font-family:var(--nm-font-mono);font-size:13px;font-weight:600;color:var(--nm-muted);border:1px solid var(--nm-border);background:none;cursor:pointer;transition:all .15s}
.nb--nm-jaartabs .years__tabs button:hover{color:var(--nm-fg)}
.nb--nm-jaartabs .years__tabs button.is-active{color:var(--nm-primary-fg);background:var(--nm-primary);border-color:var(--nm-primary)}
.nb--nm-jaartabs .years__panel{background:var(--nm-card);border:1px solid var(--nm-border);border-radius:var(--nm-radius-lg);padding:32px;min-height:150px}
.nb--nm-jaartabs .years__panel[hidden]{display:none}
.nb--nm-jaartabs .years__panel h3{font-size:20px;font-weight:700;letter-spacing:-0.015em;margin:0 0 10px}
.nb--nm-jaartabs .years__panel p,.nb--nm-jaartabs .years__panel .years__body{color:var(--nm-muted);font-size:15.5px;line-height:1.65;margin:0}
.nb--nm-jaartabs .years__panel .years__body>p:not(:last-child){margin-bottom:.6em}
.nb--nm-jaartabs .years__panel .yr{font-family:var(--nm-font-mono);font-size:12px;color:var(--nm-primary);font-weight:600;letter-spacing:0.04em;display:block;margin-bottom:10px}
.nb--nm-jaartabs .years__nav{display:flex;justify-content:space-between;margin-top:16px}
.nb--nm-jaartabs .years__nav button{font-family:var(--nm-font-mono);font-size:12.5px;font-weight:600;color:var(--nm-muted);background:none;border:none;cursor:pointer;padding:6px 0;transition:color .15s}
.nb--nm-jaartabs .years__nav button:hover:not([disabled]){color:var(--nm-primary)}
.nb--nm-jaartabs .years__nav button[disabled]{opacity:.3;cursor:default}

/* ===== 5. nm-brands-list ===== */
.nb--nm-brands-list{padding:clamp(48px,7vw,80px) 0}
.nb--nm-brands-list .brands-list{max-width:820px;margin:0 auto;border-top:1px solid var(--nm-border)}
.nb--nm-brands-list .brand-row{display:grid;grid-template-columns:200px 1fr auto;gap:24px;align-items:center;padding:26px 4px;border-bottom:1px solid var(--nm-border);transition:background .15s}
.nb--nm-brands-list .brand-row:hover{background:color-mix(in oklch, var(--nm-fg) 2.5%, transparent)}
.nb--nm-brands-list .brand-row__mark{font-family:var(--nm-font-display);font-weight:800;font-size:24px;letter-spacing:-0.025em;color:var(--nm-fg)}
.nb--nm-brands-list .brand-row__mark .v{color:var(--nm-primary)}
.nb--nm-brands-list .brand-row__since{font-family:var(--nm-font-mono);font-size:11px;color:var(--nm-muted);letter-spacing:0.04em;margin-top:2px}
.nb--nm-brands-list .brand-row__desc{color:var(--nm-muted);font-size:14.5px;line-height:1.55;max-width:52ch}
.nb--nm-brands-list .brand-row__stat{text-align:right}
.nb--nm-brands-list .brand-row__stat .v{font-family:var(--nm-font-mono);font-size:16px;font-weight:600;color:var(--nm-fg)}
.nb--nm-brands-list .brand-row__stat .l{font-family:var(--nm-font-mono);font-size:10.5px;color:var(--nm-muted);letter-spacing:0.06em;text-transform:uppercase;margin-top:2px}
@media (max-width:760px){.nb--nm-brands-list .brand-row{grid-template-columns:1fr;gap:10px}.nb--nm-brands-list .brand-row__stat{text-align:left}}

/* ===== 6. nm-rules ===== */
.nb--nm-rules{padding:clamp(48px,7vw,80px) 0}
.nb--nm-rules .rules{max-width:680px;margin:0 auto;border-top:1px solid var(--nm-border)}
.nb--nm-rules .rule-item{border-bottom:1px solid var(--nm-border)}
.nb--nm-rules .rule-item__head{display:flex;align-items:baseline;gap:18px;width:100%;padding:20px 4px;cursor:pointer;background:none;border:none;text-align:left;font:inherit;color:inherit;transition:color .15s}
.nb--nm-rules .rule-item__head .n{font-family:var(--nm-font-mono);font-size:12px;color:var(--nm-muted);width:20px;flex-shrink:0}
.nb--nm-rules .rule-item__head .t{font-size:clamp(17px,1.6vw,20px);font-weight:700;letter-spacing:-0.015em;flex:1}
.nb--nm-rules .rule-item__head .chev{color:var(--nm-muted);transition:transform .25s;flex-shrink:0;align-self:center}
.nb--nm-rules .rule-item.is-open .rule-item__head .chev{transform:rotate(45deg)}
.nb--nm-rules .rule-item.is-open .rule-item__head .n{color:var(--nm-primary)}
.nb--nm-rules .rule-item__head:hover .t{color:var(--nm-primary)}
.nb--nm-rules .rule-item .body{padding:0 4px 22px 42px;color:var(--nm-muted);font-size:15px;line-height:1.65;max-width:60ch}
.nb--nm-rules .rule-item .body[hidden]{display:none}

/* ===== 7. nm-team ===== */
.nb--nm-team{padding:clamp(48px,7vw,80px) 0}
.nb--nm-team .roster{max-width:680px;margin:0 auto;border-top:1px solid var(--nm-border)}
.nb--nm-team .roster-item{border-bottom:1px solid var(--nm-border);padding:16px 4px}
.nb--nm-team .roster-item__row{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:baseline}
.nb--nm-team .roster-item .name{font-size:16px;font-weight:600;letter-spacing:-0.01em}
.nb--nm-team .roster-item .role{font-family:var(--nm-font-mono);font-size:12px;color:var(--nm-muted);letter-spacing:0.02em}
.nb--nm-team .roster-item .city{font-family:var(--nm-font-mono);font-size:12px;color:var(--nm-muted);opacity:.7;width:86px;text-align:right}
.nb--nm-team .roster-item .bio{padding:8px 0 2px;color:var(--nm-muted);font-size:14px;line-height:1.6;max-width:56ch}
@media (max-width:560px){.nb--nm-team .roster-item .city{display:none}}
.nb--nm-team .hiring{max-width:680px;margin:64px auto 0;padding:28px 0 0;border-top:1px solid var(--nm-border);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.nb--nm-team .hiring__head{font-size:18px;font-weight:700;letter-spacing:-0.015em;margin-bottom:4px}
.nb--nm-team .hiring__sub{color:var(--nm-muted);font-size:14px;line-height:1.55;max-width:44ch}
.nb--nm-team .hiring .btn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:var(--nm-radius);border:1px solid var(--nm-border);font-size:14px;font-weight:600;color:var(--nm-fg);white-space:nowrap;transition:border-color .15s,color .15s}
.nb--nm-team .hiring .btn:hover{border-color:var(--nm-primary);color:var(--nm-primary)}
.nm-rt>p{margin:0 0 .6em}.nm-rt>:last-child{margin-bottom:0}.nm-rt :where(ul,ol){margin:.3em 0 .6em;padding-left:1.4em}.nm-rt :where(ul){list-style:disc}.nm-rt :where(ol){list-style:decimal}.nm-rt a{text-decoration:underline;text-underline-offset:2px}


/* ===== gedeelde tokens + resets (alle nm-blog-* blokken) ===== */
[data-nblg]{
  --nblg-bg:var(--background,oklch(0.9876 0.0085 67.7269));
  --nblg-fg:var(--foreground,oklch(0.2795 0.0368 260.0310));
  --nblg-muted:var(--muted-foreground,oklch(0.5510 0.0234 264.3637));
  --nblg-card:var(--card,oklch(0.9699 0.0013 106.4238));
  --nblg-border:var(--border,oklch(0.8687 0.0043 56.3660));
  --nblg-primary:var(--primary,oklch(0.635 0.168 277));
  --nblg-primary-fg:var(--primary-foreground,oklch(1 0 0));
  --nblg-radius:var(--radius,1.25rem);
  --nblg-radius-sm:var(--radius-sm,0.5rem);
  --nblg-radius-md:var(--radius-md,0.75rem);
  --nblg-radius-lg:var(--radius-lg,1.25rem);
  --nblg-font-display:var(--font-display,var(--font-sans,inherit));
  --nblg-font-mono:var(--font-mono,ui-monospace,monospace);
  --nblg-tracking-widest:var(--tracking-widest,0.1em);
  --nblg-shadow-xs:var(--shadow-xs,2px 2px 10px 4px hsl(240 4% 60% / 0.09));
  --nblg-shadow-md:var(--shadow-md,2px 2px 10px 4px hsl(240 4% 60% / 0.18),2px 2px 4px 3px hsl(240 4% 60% / 0.18));
  padding:0;border-top:0;color:var(--nblg-fg);
  font-family:var(--font-sans,inherit);
}
[data-nblg]>.nb-container{max-width:none;padding:0}
[data-nblg] :where(*,*::before,*::after){box-sizing:border-box}
[data-nblg] :where(p,h1,h2,h3,ul,blockquote,figure){margin:0}
[data-nblg] :where(img){display:block;max-width:100%}
[data-nblg] :where(a){color:inherit;text-decoration:none}
[data-nblg] svg{display:block}
[data-nblg] .nblg-inner{max-width:1240px;margin:0 auto;padding:0 clamp(20px,4vw,32px)}
[data-nblg] h2{font-family:var(--nblg-font-display);font-size:clamp(28px,3.6vw,44px);font-weight:700;line-height:1.1;letter-spacing:-0.03em;text-wrap:balance;color:var(--nblg-fg)}
[data-nblg] h2 .gt{color:color-mix(in oklch,var(--nblg-fg) 45%,transparent)}

/* ===== gedeelde meta-regel ===== */
[data-nblg] .nblg-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--nblg-font-mono);font-size:11.5px;letter-spacing:0.06em;text-transform:uppercase;color:var(--nblg-muted)}
[data-nblg] .nblg-meta .sep{opacity:.5}
[data-nblg] .nblg-meta__cat{color:var(--nblg-primary);font-weight:600}

/* ===== gedeelde auteur-regel ===== */
[data-nblg] .nblg-author{display:flex;align-items:center;gap:12px}
[data-nblg] .nblg-av{width:38px;height:38px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:var(--nblg-primary-fg);background:linear-gradient(135deg,var(--nblg-primary),color-mix(in oklch,var(--nblg-primary) 60%,black))}
[data-nblg] .nblg-av.b{background:linear-gradient(135deg,oklch(0.72 0.18 30),oklch(0.5 0.16 25))}
[data-nblg] .nblg-av.c{background:linear-gradient(135deg,oklch(0.72 0.12 220),oklch(0.5 0.16 240))}
[data-nblg] .nblg-av.d{background:linear-gradient(135deg,oklch(0.74 0.14 150),oklch(0.5 0.14 160))}
[data-nblg] .nblg-author__name{font-weight:600;font-size:14px;color:var(--nblg-fg)}
[data-nblg] .nblg-author__role{font-size:12.5px;color:var(--nblg-muted)}

/* ===== gedeeld placeholder-paneel (§2m — 4 kleurvarianten) ===== */
[data-nblg] .post__img{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--nblg-bg)}
[data-nblg] .post__img img{width:100%;height:100%;object-fit:cover}
[data-nblg] .post__img--ph{display:flex;align-items:center;justify-content:center}
[data-nblg] .post__img--ph span{font-family:var(--nblg-font-mono);font-size:11px;letter-spacing:var(--nblg-tracking-widest);text-transform:uppercase;color:color-mix(in oklch,var(--nblg-fg) 78%,transparent);padding:6px 12px;border-radius:var(--nblg-radius-sm);background:color-mix(in oklch,var(--nblg-bg) 62%,transparent);border:1px dashed color-mix(in oklch,var(--nblg-fg) 22%,transparent)}
[data-nblg] .post__img--ph[data-panel="violet"]{background:repeating-linear-gradient(135deg,color-mix(in oklch,var(--nblg-primary) 10%,transparent) 0 2px,transparent 2px 16px),linear-gradient(135deg,color-mix(in oklch,var(--nblg-primary) 15%,transparent),color-mix(in oklch,var(--nblg-primary) 3%,transparent))}
[data-nblg] .post__img--ph[data-panel="amber"]{background:repeating-linear-gradient(135deg,color-mix(in oklch,var(--cat-engage,oklch(0.78 0.15 70)) 12%,transparent) 0 2px,transparent 2px 16px),linear-gradient(135deg,color-mix(in oklch,var(--cat-engage,oklch(0.78 0.15 70)) 18%,transparent),color-mix(in oklch,var(--cat-engage,oklch(0.78 0.15 70)) 3%,transparent))}
[data-nblg] .post__img--ph[data-panel="teal"]{background:repeating-linear-gradient(135deg,color-mix(in oklch,var(--cat-reach,oklch(0.72 0.14 235)) 12%,transparent) 0 2px,transparent 2px 16px),linear-gradient(135deg,color-mix(in oklch,var(--cat-reach,oklch(0.72 0.14 235)) 18%,transparent),color-mix(in oklch,var(--cat-reach,oklch(0.72 0.14 235)) 3%,transparent))}
[data-nblg] .post__img--ph[data-panel="green"]{background:repeating-linear-gradient(135deg,color-mix(in oklch,var(--cat-verkoop,oklch(0.78 0.17 150)) 12%,transparent) 0 2px,transparent 2px 16px),linear-gradient(135deg,color-mix(in oklch,var(--cat-verkoop,oklch(0.78 0.17 150)) 18%,transparent),color-mix(in oklch,var(--cat-verkoop,oklch(0.78 0.17 150)) 3%,transparent))}

/* ===== levende Puls-kaart (gedeeld: nm-featured-post + nm-blog-grid) =====
   De kaart is bewust een eigen donkere wereld (de visual ís het beeld) en volgt
   dus niet het licht/donker-thema; de accentkleur komt per categorie uit de
   inline vars --nblg-acc-h/-c die de renderer zet. */
/* <article> om de kaart voor de semantiek; contents houdt de grid-layout ongewijzigd. */
[data-nblg] .nblg-card{display:contents}
[data-nblg] .nblg-puls{
  --nblg-acc:oklch(0.72 var(--nblg-acc-c,0.17) var(--nblg-acc-h,277));
  --nblg-acc-ink:oklch(0.8 var(--nblg-acc-c,0.17) var(--nblg-acc-h,277));
  --nblg-acc-wash:oklch(0.72 var(--nblg-acc-c,0.17) var(--nblg-acc-h,277) / 0.12);
  position:relative;display:flex;flex-direction:column;justify-content:flex-end;
  overflow:hidden;min-height:380px;border-radius:18px;
  border:1px solid oklch(0.28 0.008 270);background:#0b0b10;color:oklch(0.93 0.004 270);
  transition:border-color .35s,box-shadow .35s;
}
[data-nblg] .nblg-puls:hover{border-color:color-mix(in oklch,var(--nblg-acc) 55%,oklch(0.28 0.008 270));box-shadow:0 0 0 1px color-mix(in oklch,var(--nblg-acc) 25%,transparent),0 18px 50px -18px var(--nblg-acc-wash)}
[data-nblg] .nblg-puls__visual{position:absolute;inset:0}
[data-nblg] .nblg-puls__visual .post__img{position:absolute;inset:0;height:100%;aspect-ratio:auto}
[data-nblg] .nblg-viz{position:absolute;inset:0;width:100%;height:100%;display:block;transition:filter .6s ease}
[data-nblg] .nblg-puls:hover .nblg-viz{filter:brightness(1.18) saturate(1.12)}
[data-nblg] .nblg-puls__spot{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .5s ease;background:radial-gradient(340px 300px at var(--nblg-mx,50%) var(--nblg-my,40%),var(--nblg-acc-wash),transparent 70%)}
[data-nblg] .nblg-puls:hover .nblg-puls__spot{opacity:1}
[data-nblg] .nblg-puls__scrim{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(4,4,6,.95) 0%,rgba(4,4,6,.6) 34%,rgba(4,4,6,0) 66%)}
[data-nblg] .nblg-puls__beam{position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,var(--nblg-acc),transparent 70%);transition:opacity .35s ease}
[data-nblg] .nblg-puls:hover .nblg-puls__beam{opacity:0}
[data-nblg] .nblg-puls__tracer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
[data-nblg] .nblg-puls__tracer rect{x:1px;y:1px;width:calc(100% - 2px);height:calc(100% - 2px);rx:17px;fill:none;stroke:var(--nblg-acc);stroke-width:2;stroke-linecap:round;stroke-dasharray:26 74;opacity:0;filter:drop-shadow(0 0 6px var(--nblg-acc));transition:opacity .35s ease}
[data-nblg] .nblg-puls:hover .nblg-puls__tracer rect{opacity:1;animation:nblg-trace 5.6s linear infinite}
@keyframes nblg-trace{to{stroke-dashoffset:-100}}
[data-nblg] .nblg-puls__body{position:relative;padding:24px;display:flex;flex-direction:column;gap:11px}
[data-nblg] .nblg-puls .nblg-meta{color:oklch(0.72 0.004 270)}
[data-nblg] .nblg-puls .nblg-meta__cat{color:var(--nblg-acc-ink)}
[data-nblg] .nblg-puls h3{font-family:var(--nblg-font-display);font-size:21px;font-weight:700;line-height:1.18;letter-spacing:-0.02em;color:inherit;text-wrap:balance}
[data-nblg] .nblg-puls__excerpt{font-size:14px;line-height:1.62;color:oklch(0.8 0.004 270);max-width:56ch;text-wrap:pretty}
[data-nblg] .nblg-puls__excerpt em{color:var(--nblg-acc-ink);font-style:normal}
[data-nblg] .nblg-puls .nblg-author__name{color:inherit}
[data-nblg] .nblg-puls .nblg-author__role{color:oklch(0.72 0.004 270)}
/* Hover-reveal van de excerpt — alleen op hover-apparaten zonder reduced motion;
   touch en reduced motion houden de excerpt permanent zichtbaar. */
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  [data-nblg] .nblg-puls__excerpt{max-height:0;opacity:0;filter:blur(7px);transform:translateY(10px);overflow:hidden;transition:max-height .6s cubic-bezier(.2,.7,.2,1),opacity .5s ease .06s,filter .5s ease .06s,transform .6s cubic-bezier(.2,.7,.2,1)}
  [data-nblg] .nblg-puls:hover .nblg-puls__excerpt,[data-nblg] .nblg-puls:focus-visible .nblg-puls__excerpt{max-height:9em;opacity:1;filter:blur(0);transform:none}
}
@media(prefers-reduced-motion:reduce){
  [data-nblg] .nblg-puls__tracer{display:none}
  [data-nblg] .nblg-viz,[data-nblg] .nblg-puls__spot{transition:none}
}
[data-nblg] .nblg-puls:focus-visible{outline:none;box-shadow:0 0 0 2px #0b0b10,0 0 0 4px var(--nblg-acc)}

/* ===== 1. nm-featured-post ===== */
.nb--nm-featured-post{padding:clamp(40px,6vw,72px) 0}
.nb--nm-featured-post[hidden]{display:none}
.nb--nm-featured-post .nblg-puls--featured{max-width:1240px;margin:0 auto;min-height:clamp(340px,38vw,420px)}
.nb--nm-featured-post .nblg-puls--featured .nblg-puls__body{max-width:640px}
.nb--nm-featured-post .nblg-puls--featured h2{font-size:clamp(26px,3.2vw,34px);color:inherit}
.nb--nm-featured-post .nblg-puls--featured h2 .gt{color:color-mix(in oklch,currentColor 55%,transparent)}
.nb--nm-featured-post .nblg-featured__badge{position:absolute;top:16px;right:16px;z-index:2;font-family:var(--nblg-font-mono);font-size:10.5px;font-weight:700;letter-spacing:var(--nblg-tracking-widest);text-transform:uppercase;color:#0b0b10;background:var(--nblg-acc);padding:5px 12px;border-radius:999px}

/* ===== 2. nm-blog-grid ===== */
.nb--nm-blog-grid{padding:clamp(40px,6vw,72px) 0}
.nb--nm-blog-grid .nblg-grid__head{margin-bottom:clamp(24px,3vw,36px)}

/* ── categorie-drawer (spec §3b): hamburger + actieve chip + drawer van links ── */
[data-nblg] .nblg-catbar{display:flex;align-items:center;gap:10px;margin-bottom:clamp(24px,3vw,34px)}
[data-nblg] .nblg-hamb{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--nblg-border);background:none;color:var(--nblg-muted);cursor:pointer;transition:color .2s,border-color .2s}
[data-nblg] .nblg-hamb:hover,[data-nblg] .nblg-hamb[aria-expanded="true"]{color:var(--nblg-fg);border-color:var(--nblg-primary)}
[data-nblg] .nblg-hamb:focus-visible{outline:none;box-shadow:0 0 0 2px var(--nblg-bg),0 0 0 4px var(--nblg-primary)}
@property --nblg-chip-ang{syntax:'<angle>';initial-value:0deg;inherits:false}
[data-nblg] .nblg-chip{--nblg-acc:oklch(0.72 var(--nblg-acc-c,0.17) var(--nblg-acc-h,277));position:relative;display:inline-flex;align-items:center;gap:8px;padding:8px 15px;border-radius:999px;border:1px solid var(--nblg-border);color:var(--nblg-muted);text-decoration:none;font-size:13px;font-weight:600;transition:color .2s,border-color .2s,background .2s}
[data-nblg] .nblg-chip:hover{border-color:var(--nblg-acc);color:var(--nblg-fg)}
/* border-sweep bij hover: kort accentsegment dat rustig rond de chip loopt
   (mini-versie van de kaart-tracer). Reduced motion → stilstaande accentrand. */
[data-nblg] .nblg-chip::before{content:'';position:absolute;inset:-1px;border-radius:999px;padding:1px;background:conic-gradient(from var(--nblg-chip-ang),var(--nblg-acc) 0 14%,transparent 14% 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .25s ease;pointer-events:none}
[data-nblg] .nblg-chip:hover::before{opacity:1;animation:nblg-chipring 1.8s linear infinite}
@keyframes nblg-chipring{to{--nblg-chip-ang:360deg}}
@media(prefers-reduced-motion:reduce){[data-nblg] .nblg-chip:hover::before{animation:none;background:conic-gradient(var(--nblg-acc) 0 100%)}}
[data-nblg] .nblg-chip:focus-visible{outline:none;box-shadow:0 0 0 2px var(--nblg-bg),0 0 0 4px var(--nblg-acc)}
[data-nblg] .nblg-chip--actief{border-color:var(--nblg-acc);color:var(--nblg-fg);background:oklch(0.72 var(--nblg-acc-c,0.17) var(--nblg-acc-h,277) / 0.12)}
[data-nblg] .nblg-chip--actief i{width:8px;height:8px;border-radius:50%;background:var(--nblg-acc);flex:none}
[data-nblg] .nblg-sugg{display:inline-flex;gap:8px;flex-wrap:wrap}
/* De sectie zelf is een stapelcontext (de bundle-CSS zet section op position:relative;z-index:2).
   Zonder deze verhoging blijft ALLES erin onder de sticky header (z-index 50) — de drawer
   schoof dus onder de kop. :has tilt alleen de sectie met een open drawer op. */
[data-nblg]:has(.nblg-drawer.is-open){z-index:120}
[data-nblg] .nblg-drawer-backdrop{position:fixed;inset:0;background:rgba(4,4,6,.6);backdrop-filter:blur(2px);z-index:90}
[data-nblg] .nblg-drawer-backdrop[hidden]{display:none}
[data-nblg] .nblg-drawer{position:fixed;inset:0 auto 0 0;width:min(320px,85vw);background:var(--nblg-card);border-right:1px solid var(--nblg-border);z-index:95;padding:26px 18px;overflow-y:auto;transform:translateX(-100%);transition:transform .3s cubic-bezier(.2,.7,.2,1)}
[data-nblg] .nblg-drawer.is-open{transform:none}
[data-nblg] .nblg-drawer[hidden]{display:none}
[data-nblg] .nblg-drawer__kop{font-family:var(--nblg-font-mono);font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--nblg-muted);font-weight:700;margin:0 0 14px 12px}
[data-nblg] .nblg-dlink{--nblg-acc:oklch(0.72 var(--nblg-acc-c,0.17) var(--nblg-acc-h,277));display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:10px;color:var(--nblg-muted);text-decoration:none;font-size:14px;font-weight:600;transition:color .2s,background .2s}
[data-nblg] .nblg-dlink i{width:8px;height:8px;border-radius:50%;background:var(--nblg-acc);flex:none;opacity:.55;transition:opacity .2s}
[data-nblg] .nblg-dlink__n{margin-left:auto;font-family:var(--nblg-font-mono);font-size:11px;color:var(--nblg-muted);font-variant-numeric:tabular-nums}
[data-nblg] .nblg-dlink:hover{color:var(--nblg-fg);background:color-mix(in oklch,var(--nblg-fg) 5%,transparent)}
[data-nblg] .nblg-dlink:hover i{opacity:1}
[data-nblg] .nblg-dlink[aria-current]{color:var(--nblg-fg);background:color-mix(in oklch,var(--nblg-acc) 12%,transparent)}
[data-nblg] .nblg-dlink[aria-current] i{opacity:1}
[data-nblg] .nblg-dlink:focus-visible{outline:none;box-shadow:0 0 0 2px var(--nblg-card),0 0 0 4px var(--nblg-acc)}
[data-nblg] .nblg-drij{display:flex;align-items:center}
[data-nblg] .nblg-drij .nblg-dlink{flex:1}
[data-nblg] .nblg-dchev{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:none;background:none;color:var(--nblg-muted);cursor:pointer;transition:color .2s,transform .25s}
[data-nblg] .nblg-dchev:hover{color:var(--nblg-fg)}
[data-nblg] .nblg-dchev[aria-expanded="true"]{transform:rotate(180deg);color:var(--nblg-fg)}
[data-nblg] .nblg-dsub{border-left:1px solid var(--nblg-border);margin-left:15px;padding-left:6px}
[data-nblg] .nblg-dsub[hidden]{display:none}
[data-nblg] .nblg-dlink--sub{font-size:13px;padding-top:9px;padding-bottom:9px}
[data-nblg] .nblg-dlink--sub2{font-size:12.5px;padding-top:8px;padding-bottom:8px}
[data-nblg] .nblg-puls[hidden]{display:none}
[data-nblg] .nblg-grid__leeg{color:var(--nblg-muted);padding:18px 0 6px}
[data-nblg] .nblg-grid__leeg[hidden]{display:none}
@media(prefers-reduced-motion:reduce){[data-nblg] .nblg-drawer{transition:none}}
.nb--nm-blog-grid .nblg-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:clamp(28px,4vw,44px)}
.nb--nm-blog-grid .nblg-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;border:1px solid var(--nblg-border);background:var(--nblg-card);font-size:13px;font-weight:600;color:var(--nblg-fg);transition:border-color .2s,color .2s}
.nb--nm-blog-grid .nblg-chip:hover{border-color:color-mix(in oklch,var(--nblg-primary) 40%,var(--nblg-border));color:var(--nblg-primary)}
.nb--nm-blog-grid .nblg-chip__count{font-family:var(--nblg-font-mono);font-size:11px;color:var(--nblg-muted)}
.nb--nm-blog-grid .nblg-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:980px){.nb--nm-blog-grid .nblg-posts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.nb--nm-blog-grid .nblg-posts{grid-template-columns:1fr}}

/* ===== 6. nm-blog-rail — dezelfde Puls-kaarten, in de carousel-rail =====
   De sectie draagt ook de nb--carousel-klasse, dus track/cel/knoppen komen uit
   CAROUSEL_CSS; hier alleen wat de kaart in een cel nodig heeft. */
.nb--nm-blog-rail{padding:clamp(40px,6vw,72px) 0}
.nb--nm-blog-rail .nb-title{margin-bottom:10px}
/* Volledige .nb-lede-regel, niet alleen een override: zo hoeft PRODUCT_SHOWCASE_CSS
   (3,8 KB productkaart-opmaak die de rail nooit rendert) niet mee naar de home. */
.nb--nm-blog-rail .nb-lede{color:var(--nblg-muted);font-size:16px;line-height:1.6;max-width:56ch;margin:0 0 clamp(24px,3vw,36px)}
/* De cel bepaalt de breedte; de kaart vult 'm en houdt alle kaarten even hoog. */
.nb--nm-blog-rail .nb-gbc__cell{display:flex}
.nb--nm-blog-rail .nblg-puls{width:100%;min-height:clamp(320px,34vw,400px)}
/* Rail-controls in de blog-tokens i.p.v. de GB-ember-tokens. ALLE ember-tokens die
   de voettekst aanraakt moeten mee: de voortgangsbalk is een gradient over
   --nbc-ember-deep/-hot, en die vallen zonder remap terug op de Grill-Bill-roest
   (#B8500F) zodra een merkkit geen accentkleur zet. Half remappen geeft een
   paars-oranje balk. */
.nb--nm-blog-rail .nb-gbc{
  --nbc-bone:var(--nblg-muted);--nbc-fog:var(--nblg-muted);--nbc-paper:var(--nblg-fg);
  --nbc-ember:var(--nblg-primary);
  --nbc-ember-deep:color-mix(in oklch,var(--nblg-primary) 70%,#000);
  --nbc-ember-hot:color-mix(in oklch,var(--nblg-primary) 70%,#fff);
  --nbc-ember-glow:color-mix(in oklch,var(--nblg-primary) 22%,transparent);
  --nbc-coal:var(--nblg-card);--nbc-smoke:var(--nblg-border);--nbc-ash:var(--nblg-border);
}

/* ===== 3. nm-blog-resources ===== */
.nb--nm-blog-resources{padding:clamp(40px,6vw,72px) 0}
.nb--nm-blog-resources .nblg-res__head{margin-bottom:clamp(24px,3vw,36px)}
.nb--nm-blog-resources .nblg-res__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.nb--nm-blog-resources .nblg-res__card{display:flex;flex-direction:column;gap:12px;padding:26px 24px;background:var(--nblg-card);border:1px solid var(--nblg-border);border-radius:var(--nblg-radius-lg);box-shadow:var(--nblg-shadow-xs);transition:border-color .2s,transform .2s,box-shadow .2s}
.nb--nm-blog-resources .nblg-res__card:hover{border-color:color-mix(in oklch,var(--nblg-primary) 34%,var(--nblg-border));transform:translateY(-2px);box-shadow:var(--nblg-shadow-md)}
.nb--nm-blog-resources .nblg-res__icon{width:46px;height:46px;border-radius:var(--nblg-radius-md);background:color-mix(in oklch,var(--nblg-primary) 12%,transparent);border:1px solid color-mix(in oklch,var(--nblg-primary) 26%,var(--nblg-border));display:flex;align-items:center;justify-content:center;color:var(--nblg-primary)}
.nb--nm-blog-resources .nblg-res__title{font-family:var(--nblg-font-display);font-size:17px;font-weight:700;letter-spacing:-0.01em;color:var(--nblg-fg)}
.nb--nm-blog-resources .nblg-res__sub{font-size:14px;line-height:1.55;color:var(--nblg-muted);flex:1;text-wrap:pretty}
.nb--nm-blog-resources .nblg-res__arrow{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--nblg-primary);margin-top:4px}
@media(max-width:880px){.nb--nm-blog-resources .nblg-res__grid{grid-template-columns:1fr}}

/* ===== 4. nm-case ===== */
.nb--nm-case{padding:clamp(48px,7vw,96px) 0;border-top:1px solid var(--nblg-border)}
.nb--nm-case .nblg-case__inner{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(32px,5vw,72px);align-items:start}
.nb--nm-case .nblg-case__eyebrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.nb--nm-case .nblg-case__brand{font-family:var(--nblg-font-display);font-size:22px;font-weight:800;letter-spacing:-0.02em;color:var(--nblg-fg)}
.nb--nm-case .nblg-case__sector{font-family:var(--nblg-font-mono);font-size:11px;font-weight:600;letter-spacing:var(--nblg-tracking-widest);text-transform:uppercase;color:var(--nblg-muted);padding:4px 10px;border-radius:999px;border:1px solid var(--nblg-border)}
.nb--nm-case .nblg-case__quote{font-family:var(--nblg-font-display);font-size:clamp(24px,2.8vw,34px);font-weight:700;line-height:1.25;letter-spacing:-0.02em;color:var(--nblg-fg);margin-bottom:24px;text-wrap:balance}
.nb--nm-case .nblg-case__quote em{color:var(--nblg-primary);font-style:normal}
.nb--nm-case .nblg-case__story{font-size:16px;line-height:1.7;color:var(--nblg-muted)}
.nb--nm-case .nblg-case__story p{margin:0 0 18px}
.nb--nm-case .nblg-case__story p:last-child{margin-bottom:0}
.nb--nm-case .nblg-case__story strong{color:var(--nblg-fg);font-weight:600}
.nb--nm-case .nblg-case__story em{color:var(--nblg-primary);font-style:normal}
.nb--nm-case .nblg-case__media .post__img{border:1px solid var(--nblg-border);border-radius:var(--nblg-radius-lg);margin-bottom:20px}
.nb--nm-case .nblg-case__metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.nb--nm-case .nblg-case__metric{padding:20px;background:var(--nblg-card);border:1px solid var(--nblg-border);border-radius:var(--nblg-radius-md)}
.nb--nm-case .nblg-case__metric-val{font-family:var(--nblg-font-display);font-size:clamp(28px,3vw,40px);font-weight:800;letter-spacing:-0.03em;line-height:1;color:var(--nblg-primary);font-variant-numeric:tabular-nums}
.nb--nm-case .nblg-case__metric-lbl{margin-top:8px;font-size:13px;line-height:1.4;color:var(--nblg-muted)}
@media(max-width:880px){.nb--nm-case .nblg-case__inner{grid-template-columns:1fr}}

/* ===== 5. nm-article ===== */
.nb--nm-article{padding:clamp(40px,6vw,80px) 0}
.nb--nm-article .nblg-art{max-width:720px;margin:0 auto;padding:0 clamp(20px,4vw,32px)}
.nb--nm-article .nblg-art__head{padding-bottom:clamp(28px,4vw,40px);margin-bottom:clamp(28px,4vw,40px);border-bottom:1px solid var(--nblg-border)}
.nb--nm-article .nblg-art__head h1{margin:20px 0 24px;font-family:var(--nblg-font-display);font-size:clamp(34px,5vw,56px);font-weight:800;line-height:1.06;letter-spacing:-0.035em;color:var(--nblg-fg);text-wrap:balance}
.nb--nm-article .nblg-art__head h1 .gt{background:linear-gradient(180deg,var(--nblg-fg) 0%,color-mix(in srgb,var(--nblg-fg) 55%,transparent) 70%,color-mix(in srgb,var(--nblg-fg) 18%,transparent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone}
@media (forced-colors:active),print{.nb--nm-article .nblg-art__head h1 .gt{background:none;color:inherit}}
.nb--nm-article .nblg-art__intro p{font-size:clamp(18px,1.5vw,21px);line-height:1.6;color:var(--nblg-muted);margin:0 0 18px;text-wrap:pretty}
.nb--nm-article .nblg-art__intro p:last-child{margin-bottom:0}
.nb--nm-article .nblg-art__body{font-size:17px;line-height:1.75;color:var(--nblg-fg)}
.nb--nm-article .nblg-art__para p{margin:0 0 24px}
.nb--nm-article .nblg-art__body strong{font-weight:700;color:var(--nblg-fg)}
.nb--nm-article .nblg-art__body em{color:var(--nblg-primary);font-style:normal}
.nb--nm-article .nblg-art__h2{font-family:var(--nblg-font-display);font-size:clamp(24px,2.6vw,32px);font-weight:700;letter-spacing:-0.025em;line-height:1.2;color:var(--nblg-fg);margin:44px 0 18px}
.nb--nm-article .nblg-art__quote{margin:32px 0;padding:4px 0 4px 24px;border-left:3px solid var(--nblg-primary);font-family:var(--nblg-font-display);font-size:clamp(20px,2.2vw,26px);font-weight:600;line-height:1.35;letter-spacing:-0.015em;color:var(--nblg-fg);text-wrap:balance}
.nb--nm-article .nblg-art__quote em{color:var(--nblg-primary);font-style:normal}
.nb--nm-article .nblg-art__callout{margin:32px 0;padding:22px 24px;background:color-mix(in oklch,var(--nblg-primary) 7%,var(--nblg-card));border:1px solid color-mix(in oklch,var(--nblg-primary) 26%,var(--nblg-border));border-radius:var(--nblg-radius-md);font-size:15.5px;line-height:1.65;color:var(--nblg-fg)}
.nb--nm-article .nblg-art__callout p{margin:0 0 12px}
.nb--nm-article .nblg-art__callout p:last-child{margin-bottom:0}
.nb--nm-article .nblg-art__foot{margin-top:clamp(36px,5vw,56px);padding-top:clamp(24px,3vw,32px);border-top:1px solid var(--nblg-border)}
.nm-rt>p{margin:0 0 .6em}.nm-rt>:last-child{margin-bottom:0}.nm-rt :where(ul,ol){margin:.3em 0 .6em;padding-left:1.4em}.nm-rt :where(ul){list-style:disc}.nm-rt :where(ol){list-style:decimal}.nm-rt a{text-decoration:underline;text-underline-offset:2px}


/* ===== gedeelde tokens + resets + UI (alle nm-launch-* blokken) ===== */
section[data-neura-block^="nm-launch-"]{
  --nml-bg:var(--background,oklch(0.9876 0.0085 67.7269));
  --nml-fg:var(--foreground,oklch(0.2795 0.0368 260.0310));
  --nml-muted:var(--muted-foreground,oklch(0.5510 0.0234 264.3637));
  --nml-card:var(--card,oklch(0.9699 0.0013 106.4238));
  --nml-border:var(--border,oklch(0.8687 0.0043 56.3660));
  --nml-primary:var(--primary,oklch(0.635 0.168 277));
  /* Accent-tekst op donker: de merk-primary zelf haalt als kleine tekst de AA-drempel
     niet (gemeten 2,2 op de donkere achtergrond, nodig is 4,5). Deze afgeleide houdt
     de merk-tint maar wordt licht genoeg; alleen voor TEKST, niet voor vlakken. */
  --nml-primary-text:color-mix(in srgb,var(--nml-primary) 65%,#fff);
  --nml-primary-fg:var(--primary-foreground,oklch(1 0 0));
  --nml-secondary:var(--secondary,oklch(0.8687 0.0043 56.3660));
  --nml-secondary-fg:var(--secondary-foreground,oklch(0.4461 0.0263 256.8018));
  --nml-radius:var(--radius,1.25rem);
  --nml-radius-sm:var(--radius-sm,0.5rem);
  --nml-radius-md:var(--radius-md,0.75rem);
  --nml-radius-lg:var(--radius-lg,1.25rem);
  --nml-radius-xl:var(--radius-xl,1.5rem);
  --nml-font-display:var(--font-display,var(--font-sans,inherit));
  --nml-font-mono:var(--font-mono,ui-monospace,monospace);
  --nml-tracking-widest:var(--tracking-widest,0.1em);
  --nml-nums-bg:oklch(0.1250 0.0020 67);
  color:var(--nml-fg);
  font-family:var(--font-sans,inherit);
}
section[data-neura-block^="nm-launch-"]>.nb-container{max-width:none;padding:0}
section[data-neura-block^="nm-launch-"] :where(*,*::before,*::after){box-sizing:border-box}
section[data-neura-block^="nm-launch-"] :where(p,h1,h2,h3,ul,ol){margin:0}
section[data-neura-block^="nm-launch-"] :where(ul,ol){list-style:none;padding:0}
section[data-neura-block^="nm-launch-"] :where(img){display:block;max-width:100%}
section[data-neura-block^="nm-launch-"] :where(a){color:inherit;text-decoration:none}
section[data-neura-block^="nm-launch-"] svg{display:block}
section[data-neura-block^="nm-launch-"] .nml-container{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,32px);position:relative;z-index:2}
section[data-neura-block^="nm-launch-"] h1{font-family:var(--nml-font-display);font-size:clamp(40px,6.4vw,74px);font-weight:800;line-height:1.03;letter-spacing:-0.038em;text-wrap:balance;color:var(--nml-fg)}
section[data-neura-block^="nm-launch-"] h2{font-family:var(--nml-font-display);font-size:clamp(28px,3.8vw,46px);font-weight:700;line-height:1.08;letter-spacing:-0.025em;text-wrap:balance;color:var(--nml-fg)}
section[data-neura-block^="nm-launch-"] h3{font-size:18px;font-weight:700;line-height:1.25;letter-spacing:-0.015em;color:var(--nml-fg)}
section[data-neura-block^="nm-launch-"] .accent{color:var(--nml-primary-text)}
section[data-neura-block^="nm-launch-"] h1 .accent{background:linear-gradient(180deg,var(--nml-fg) 0%,color-mix(in srgb,var(--nml-fg) 55%,transparent) 70%,color-mix(in srgb,var(--nml-fg) 18%,transparent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone}
@media (forced-colors:active),print{section[data-neura-block^="nm-launch-"] h1 .accent{background:none;color:inherit}}

/* ===== buttons ===== */
section[data-neura-block^="nm-launch-"] .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border-radius:var(--nml-radius-md);font-size:14px;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;border:0;font-family:inherit;transition:transform .15s ease,box-shadow .2s ease,background .15s ease,color .15s ease,border-color .15s ease}
section[data-neura-block^="nm-launch-"] .btn-lg{height:54px;padding:0 28px;font-size:15px}
section[data-neura-block^="nm-launch-"] .btn-primary{background:var(--nml-primary);color:var(--nml-primary-fg)}
section[data-neura-block^="nm-launch-"] .btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 28px -10px color-mix(in oklch,var(--nml-primary) 60%,transparent)}
section[data-neura-block^="nm-launch-"] .btn-ghost{background:transparent;color:var(--nml-fg);border:1px solid var(--nml-border)}
section[data-neura-block^="nm-launch-"] .btn-ghost:hover{transform:translateY(-1px);border-color:color-mix(in oklch,var(--nml-fg) 20%,transparent);background:color-mix(in oklch,var(--nml-fg) 5%,transparent)}

/* ===== lp-hero ===== */
.nb--nm-launch-hero{position:relative;overflow:hidden;padding:clamp(88px,10vw,120px) 0 clamp(72px,10vw,120px);text-align:center}
.nb--nm-launch-hero .lp-hero__bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.nb--nm-launch-hero .lp-hero__bg::before{content:"";position:absolute;top:-15%;left:50%;transform:translateX(-50%);width:92%;max-width:1040px;height:760px;background:radial-gradient(ellipse at center,color-mix(in oklch,var(--nml-primary) 12%,transparent) 0%,transparent 62%)}
.nb--nm-launch-hero .lp-hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 72%,var(--nml-bg) 100%)}
.nb--nm-launch-hero .lp-hero__inner{position:relative;z-index:2;max-width:880px;margin:0 auto}
.nb--nm-launch-hero .lp-hero__badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:color-mix(in oklch,var(--nml-primary) 12%,transparent);border:1px solid color-mix(in oklch,var(--nml-primary) 30%,transparent);font-family:var(--nml-font-mono);font-size:11px;font-weight:600;color:var(--nml-primary);letter-spacing:var(--nml-tracking-widest);text-transform:uppercase;margin-bottom:28px}
.nb--nm-launch-hero .lp-hero__badge .dot{width:6px;height:6px;border-radius:999px;background:var(--nml-primary);box-shadow:0 0 0 3px color-mix(in oklch,var(--nml-primary) 25%,transparent);animation:nml-pulse 2.4s ease-in-out infinite}
@keyframes nml-pulse{0%,100%{box-shadow:0 0 0 3px color-mix(in oklch,var(--nml-primary) 25%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in oklch,var(--nml-primary) 10%,transparent)}}
.nb--nm-launch-hero h1{margin:0 0 22px}
.nb--nm-launch-hero .lp-hero__sub{font-size:clamp(17px,1.5vw,21px);color:var(--nml-muted);max-width:620px;margin:0 auto 36px;line-height:1.55;text-wrap:pretty}
.nb--nm-launch-hero .lp-hero__ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
@media(prefers-reduced-motion:reduce){.nb--nm-launch-hero .lp-hero__badge .dot{animation:none}}

/* ===== lp-perks ===== */
.nb--nm-launch-perks{padding:clamp(64px,9vw,112px) 0}
.nb--nm-launch-perks .lp-perks__head{max-width:640px;margin:0 auto clamp(40px,5vw,64px);text-align:center}
.nb--nm-launch-perks .lp-perks__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.6vw,32px)}
.nb--nm-launch-perks .lp-perk{border:1px solid var(--nml-border);border-radius:var(--nml-radius-lg);background:var(--nml-card);padding:clamp(22px,2.4vw,30px)}
.nb--nm-launch-perks .lp-perk__icon{width:46px;height:46px;border-radius:var(--nml-radius-md);border:1px solid color-mix(in oklch,var(--nml-primary) 30%,var(--nml-border));background:color-mix(in oklch,var(--nml-primary) 10%,transparent);display:flex;align-items:center;justify-content:center;color:var(--nml-primary);margin-bottom:18px}
.nb--nm-launch-perks .lp-perk h3{margin-bottom:8px}
.nb--nm-launch-perks .lp-perk p{font-size:14.5px;line-height:1.6;color:var(--nml-muted);text-wrap:pretty}
@media(max-width:880px){.nb--nm-launch-perks .lp-perks__grid{grid-template-columns:1fr}}

/* ===== lp-nums (donkere big-number-statband) ===== */
.nb--nm-launch-nums{background:var(--nml-nums-bg);padding:clamp(56px,7vw,96px) 0}
.nb--nm-launch-nums .lp-nums__row{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(24px,4vw,56px)}
.nb--nm-launch-nums .lp-num{text-align:center}
.nb--nm-launch-nums .lp-num__val{font-family:var(--nml-font-display);font-size:clamp(38px,5.2vw,64px);font-weight:800;line-height:1;letter-spacing:-0.03em;color:oklch(0.98 0.005 260);font-variant-numeric:tabular-nums}
.nb--nm-launch-nums .lp-num__label{margin-top:12px;font-family:var(--nml-font-mono);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:oklch(0.72 0.02 260)}
@media(max-width:880px){.nb--nm-launch-nums .lp-nums__row{grid-template-columns:repeat(2,1fr);gap:40px 24px}}

/* ===== lp-road (roadmap/stappen-tijdlijn) ===== */
.nb--nm-launch-road{padding:clamp(64px,9vw,112px) 0}
.nb--nm-launch-road .lp-road__head{max-width:640px;margin:0 auto clamp(40px,5vw,64px);text-align:center}
.nb--nm-launch-road .lp-road__list{max-width:760px;margin:0 auto;display:flex;flex-direction:column}
.nb--nm-launch-road .lp-step{display:flex;gap:clamp(18px,2.4vw,28px);position:relative;padding-bottom:clamp(28px,3.4vw,40px)}
.nb--nm-launch-road .lp-step:not(:last-child)::before{content:"";position:absolute;left:23px;top:48px;bottom:0;width:2px;background:linear-gradient(180deg,color-mix(in oklch,var(--nml-primary) 40%,transparent),var(--nml-border))}
.nb--nm-launch-road .lp-step__marker{position:relative;z-index:1;flex-shrink:0;width:48px;height:48px;border-radius:50%;border:1px solid color-mix(in oklch,var(--nml-primary) 32%,var(--nml-border));background:color-mix(in oklch,var(--nml-primary) 10%,var(--nml-bg));display:flex;align-items:center;justify-content:center}
.nb--nm-launch-road .lp-step__marker span{font-family:var(--nml-font-mono);font-size:15px;font-weight:700;color:var(--nml-primary-text);font-variant-numeric:tabular-nums}
/* De marker toont het volgnummer, niet `step`: een periode-label van vrije lengte
   ("Eind september") past nooit in een cirkel van 48px en liep er links en rechts
   uit, dwars over de verbindingslijn. `step` staat nu als eyebrow in de body —
   ook toegankelijker, want de marker is aria-hidden. */
.nb--nm-launch-road .lp-step__when{display:block;font-family:var(--nml-font-mono);font-size:12px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--nml-primary-text);margin-bottom:6px}
.nb--nm-launch-road .lp-step__body{padding-top:6px}
.nb--nm-launch-road .lp-step__body h3{margin-bottom:6px}
.nb--nm-launch-road .lp-step__body p{font-size:14.5px;line-height:1.6;color:var(--nml-muted);text-wrap:pretty}
@media(max-width:560px){.nb--nm-launch-road .lp-step:not(:last-child)::before{left:19px}.nb--nm-launch-road .lp-step__marker{width:40px;height:40px}}

/* ===== lp-shots (screenshot-rij) ===== */
.nb--nm-launch-shots{padding:0 0 clamp(72px,10vw,128px)}
.nb--nm-launch-shots .lp-shots__row{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(20px,2.6vw,32px)}
.nb--nm-launch-shots .lp-shot{border:1px solid var(--nml-border);border-radius:var(--nml-radius-lg);background:var(--nml-card);overflow:hidden}
.nb--nm-launch-shots .lp-shot__frame{position:relative;aspect-ratio:16/10;background:color-mix(in oklch,var(--nml-fg) 4%,transparent)}
.nb--nm-launch-shots .lp-shot__frame img{width:100%;height:100%;object-fit:cover}
.nb--nm-launch-shots .lp-shot__ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,color-mix(in oklch,var(--nml-fg) 4%,transparent) 0 12px,transparent 12px 24px)}
.nb--nm-launch-shots .lp-shot__ph span{font-family:var(--nml-font-mono);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--nml-muted)}
.nb--nm-launch-shots .lp-shot__body{padding:18px 20px}
.nb--nm-launch-shots .lp-shot__label{font-size:15px;font-weight:600;color:var(--nml-fg)}
.nb--nm-launch-shots .lp-shot__cap{margin-top:4px;font-size:13.5px;line-height:1.55;color:var(--nml-muted);text-wrap:pretty}
@media(max-width:720px){.nb--nm-launch-shots .lp-shots__row{grid-template-columns:1fr}}
.nm-rt>p{margin:0 0 .6em}.nm-rt>:last-child{margin-bottom:0}.nm-rt :where(ul,ol){margin:.3em 0 .6em;padding-left:1.4em}.nm-rt :where(ul){list-style:disc}.nm-rt :where(ol){list-style:decimal}.nm-rt a{text-decoration:underline;text-underline-offset:2px}


/* Eén geheel met de hero erboven: geen scheidingslijn (de basisregel `.nb` geeft
   élk blok een border-top) en de onderruimte van de hero grotendeels opgetrokken.
   Wat er nog ónder zit vertelt de scroll-pijl, niet een streep. */
.nb--nm-demoplayer{border-top:0;padding:0 0 clamp(28px,4vw,48px);margin-top:-16px}
.nb--nm-demoplayer .nmdp{max-width:1300px;margin:0 auto;font-family:'Plus Jakarta Sans',var(--font-sans,-apple-system,'Segoe UI',Roboto,sans-serif);color:#f0f0f6}
.nb--nm-demoplayer .nmdp__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.nb--nm-demoplayer .nmdp__frame{border:1px solid #1f1f28;border-radius:16px;background:#0d0d12;overflow:hidden;box-shadow:0 30px 80px -30px rgba(0,0,0,.85)}
.nb--nm-demoplayer .nmdp__chrome{height:44px;display:flex;align-items:center;gap:14px;padding:0 16px;border-bottom:1px solid #1a1a22;background:#101016}
.nb--nm-demoplayer .nmdp__dots{display:flex;gap:7px;flex:none}
.nb--nm-demoplayer .nmdp__dots i{width:10px;height:10px;border-radius:50%;background:#26262f;display:block}
.nb--nm-demoplayer .nmdp__urlwrap{flex:1;display:flex;justify-content:center;min-width:0}
.nb--nm-demoplayer .nmdp__url{height:26px;min-width:340px;max-width:100%;border:1px solid #22222c;border-radius:13px;background:#0b0b0f;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;font-family:'Roboto Mono',ui-monospace,monospace;font-size:10.5px;color:#8b8b9b;white-space:nowrap;overflow:hidden}
.nb--nm-demoplayer .nmdp__live{display:flex;align-items:center;gap:6px;flex:none;font-size:9.5px;font-weight:700;letter-spacing:1px;color:#4ade80;border:1px solid rgba(34,197,94,.3);background:rgba(34,197,94,.1);border-radius:7px;padding:4px 9px}
.nb--nm-demoplayer .nmdp__live i{width:6px;height:6px;border-radius:50%;background:#22c55e;display:block;animation:nmdp-live 2.4s ease-out infinite}
@keyframes nmdp-live{0%{box-shadow:0 0 0 0 rgba(34,197,94,.5)}70%{box-shadow:0 0 0 7px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
.nb--nm-demoplayer .nmdp__stage{position:relative;width:100%;aspect-ratio:1520/785;background:#08080c}
.nb--nm-demoplayer .nmdp__layer{position:absolute;inset:0;transition:opacity .55s ease;pointer-events:none}
.nb--nm-demoplayer .nmdp__poster{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%,rgba(91,85,230,.16),transparent 62%)}
/* De tabbalk hapt in de onderrand van het frame — zo hoort hij zichtbaar bij de
   demo in plaats van eronder te zweven. Vandaar ook de eigen stapelcontext. */
.nb--nm-demoplayer .nmdp__tabs{position:relative;z-index:2;display:flex;justify-content:center;flex-wrap:wrap;align-items:center;gap:4px;margin:-18px auto 0;width:max-content;max-width:100%;background:#0e0e14;border:1px solid #1f1f28;border-radius:14px;padding:5px;box-shadow:0 14px 40px -18px rgba(0,0,0,.9)}
.nb--nm-demoplayer .nmdp__tab{position:relative;overflow:hidden;height:38px;padding:0 16px;border:0;border-radius:10px;background:transparent;display:flex;align-items:center;gap:8px;font-family:inherit;font-size:12.5px;font-weight:600;color:#8b8b9b;cursor:pointer;transition:background .4s ease,color .4s ease}
.nb--nm-demoplayer .nmdp__tab[aria-pressed="true"]{background:rgba(91,85,230,.14);color:#e6e3ff}
.nb--nm-demoplayer .nmdp__prog{position:absolute;left:0;bottom:0;height:2px;width:0;background:linear-gradient(90deg,#5b55e6,#8b7cff)}
/* Staat bóven het frame: de aanwijzer van de hero naar de demo. Klikken zet de
   demo precies in het midden van het venster (blocks.js). */
.nb--nm-demoplayer .nmdp__next{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 auto clamp(16px,2.4vw,24px);padding:0;border:1px solid #1f1f28;border-radius:999px;background:#0e0e14;color:#8b8b9b;cursor:pointer;transition:color .25s ease,border-color .25s ease,background .25s ease;animation:nmdp-hint 2.6s ease-in-out infinite}
.nb--nm-demoplayer .nmdp__next:hover,.nb--nm-demoplayer .nmdp__next:focus-visible{color:#e6e3ff;border-color:rgba(91,85,230,.55);background:rgba(91,85,230,.14)}
@keyframes nmdp-hint{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(5px)}}
/* Teaser + fullscreen-chrome bestaan alleen op mobiel; hierbuiten altijd weg. */
.nb--nm-demoplayer .nmdp__teaser{display:none}
.nb--nm-demoplayer .nmdp__close{display:none}
.nb--nm-demoplayer .nmdp__rotate{display:none}
@media (max-width:767px){
.nb--nm-demoplayer[data-nmdp-min-width="768"]:not([data-nmdp-teaser]){display:none}
.nb--nm-demoplayer .nmdp__url{min-width:0}
.nb--nm-demoplayer .nmdp__tab{height:34px;padding:0 11px;font-size:11.5px;gap:6px}
/* Teaser-stand: player dicht, kale knop + draai-hint open. Staat er een
   hero-dash op de pagina, dan legt blocks.js een play-knop óp die mockup
   (poster-gevoel) en wordt deze knop sr-only — zie .nmdp--dash onderaan. */
.nb--nm-demoplayer[data-nmdp-teaser]{padding:4px 0 36px}
.nb--nm-demoplayer[data-nmdp-teaser]:not([data-nmdp-open]) .nmdp{display:none}
.nb--nm-demoplayer[data-nmdp-teaser] .nmdp__teaser{display:flex;flex-direction:column;align-items:center;gap:12px}
.nb--nm-demoplayer .nmdp__teaserbtn{display:flex;align-items:center;gap:10px;height:48px;padding:0 22px 0 18px;border:1px solid rgba(230,227,255,.35);border-radius:999px;background:rgba(91,85,230,.92);color:#fff;font-family:'Plus Jakarta Sans',var(--font-sans,sans-serif);font-size:14.5px;font-weight:700;cursor:pointer;box-shadow:0 18px 44px -12px rgba(0,0,0,.9)}
/* Gedeelde opmaak — géén display hier: .nmdp__rotate mag alleen in de
   fullscreen-weergave verschijnen (de [data-nmdp-open]-regel zet 'm aan),
   anders staat de draai-hint dubbel onder de preview. */
.nb--nm-demoplayer .nmdp__teaserhint,.nb--nm-demoplayer .nmdp__rotate{align-items:center;justify-content:center;gap:9px;margin:0;font-size:12.5px;color:#8b8b9b}
.nb--nm-demoplayer[data-nmdp-teaser] .nmdp__teaserhint{display:flex}
.nb--nm-demoplayer .nmdp__rotate-icon{animation:nmdp-rotate 2.8s ease-in-out infinite}
}
/* Fullscreen-lightbox: blocks.js verplaatst de hele sectie bij het openen naar
   een eigen container (.nb--nm-demoplayer-lightbox) direct onder <body>. Nooit
   position:fixed vanuit de sectie-context zelf — een reveal-transform op een
   voorouder maakt die anders het containing block en dan hangt de "fullscreen"
   demo midden in de pagina (gebeurde op echte telefoons; emulators met reduced
   motion verzwijgen het). Bewust búiten elke media query: de lightbox moet het
   op elke breedte doen. De naam begint met .nb--nm-demoplayer zodat de
   scoping-test blijft gelden. */
/* Volledig dekkend en op de maximale z-index: de chatwidget zit óók op
   2147483647, maar de lightbox wordt bij het openen als laatste aan <body>
   toegevoegd en wint dan op DOM-volgorde. De achtergrond MOET !important:
   de neuramerce-bundel draagt een naadregel
   body:has(.nb--nm-home-hero) [class^="nb--"] die élk nb--element
   transparant maakt (0,2,1) — een doorschijnende lightbox dus. */
.nb--nm-demoplayer-lightbox{position:fixed;inset:0;z-index:2147483647;display:flex;flex-direction:column;justify-content:center;background:#050507!important;padding:16px 10px;overflow:auto;overscroll-behavior:contain}
.nb--nm-demoplayer-lightbox .nb--nm-demoplayer{display:block;margin:0;padding:0;border:0}
.nb--nm-demoplayer-lightbox .nmdp{display:flex;flex-direction:column;justify-content:center;gap:14px;margin:0;max-width:none}
.nb--nm-demoplayer-lightbox .nmdp__stagewrap{width:100%;max-width:calc((100dvh - 170px)*1.9363);margin:0 auto}
/* Dubbel opgeschreven vanwege specificiteit: de toonregel op
   [data-nmdp-teaser] .nmdp__teaser (0,3,0) won anders van een kale
   verstopregel (0,2,0) — dan staat de teaser-knop in de lightbox. */
.nb--nm-demoplayer-lightbox .nmdp__teaser,
.nb--nm-demoplayer-lightbox .nb--nm-demoplayer[data-nmdp-teaser] .nmdp__teaser{display:none}
.nb--nm-demoplayer-lightbox .nmdp__next{display:none}
/* Binnen de lightbox is de player gewoon zichtbaar — de teaser-verstopregel
   hierboven geldt alleen voor het blok dat nog op de pagina staat. */
.nb--nm-demoplayer-lightbox .nb--nm-demoplayer[data-nmdp-teaser] .nmdp{display:flex}
.nb--nm-demoplayer-lightbox .nmdp__tabs{display:flex}
.nb--nm-demoplayer-lightbox .nmdp__close{display:flex;align-items:center;justify-content:center;position:fixed;top:12px;right:12px;z-index:5;width:44px;height:44px;padding:0;border:1px solid #2a2a35;border-radius:999px;background:#0e0e14;color:#e6e3ff;cursor:pointer}
@media (orientation:portrait){
.nb--nm-demoplayer-lightbox .nmdp__rotate{display:flex}
}
@media (max-height:560px){
.nb--nm-demoplayer-lightbox .nmdp__tabs{display:none}
.nb--nm-demoplayer-lightbox .nmdp__scenedots{display:flex}
}
/* Telefoon in landscape (breed genoeg voor de inline player, maar laag venster):
   op volle breedte is het frame ~470px hoog op een viewport van ~410px — je ziet
   dan nooit demo én tabbalk samen. Schaal het frame op hoogte: chrome 44 +
   tabbalk ~48 + sticky header ~70 + wat lucht ≈ 210px, de rest is stage
   (breedte = hoogte × 1520/785). */
@media (min-width:768px) and (max-height:560px){
.nb--nm-demoplayer .nmdp__stagewrap{max-width:max(420px,calc((100dvh - 210px)*1.9363));margin:0 auto}
}
/* Laag venster (telefoon landscape, óók de fullscreen-weergave): tabbalk klapt
   in tot dotjes + naam van de actieve scene — labels + iconen passen daar niet
   en een tooltip kan niet op touch. blocks.js spiegelt de actieve tab. */
.nb--nm-demoplayer .nmdp__scenedots{display:none}
@media (max-height:560px){
.nb--nm-demoplayer .nmdp__tabs{display:none}
.nb--nm-demoplayer .nmdp__scenedots{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:8px;margin:-14px auto 0;width:max-content;background:#0e0e14;border:1px solid #1f1f28;border-radius:999px;padding:8px 14px}
.nb--nm-demoplayer .nmdp__scenedots i{width:6px;height:6px;border-radius:50%;background:#2c2c36;transition:background .3s ease,width .3s ease}
.nb--nm-demoplayer .nmdp__scenedots i.on{width:16px;border-radius:3px;background:linear-gradient(90deg,#5b55e6,#8b7cff)}
.nb--nm-demoplayer .nmdp__scenedots span{font:600 11px/1 'Plus Jakarta Sans',var(--font-sans,sans-serif);color:#a7a4c4;margin-left:4px}
}
/* In de teaser-preview (alleen <768px) horen geen dotjes — daar speelt niets.
   Boven 768px draait de player inline en zijn de dotjes juist de vervanger
   van de verborgen tabbalk. */
@media (max-width:767px) and (max-height:560px){
.nb--nm-demoplayer[data-nmdp-teaser]:not([data-nmdp-open]) .nmdp__scenedots{display:none}
}
@media (prefers-reduced-motion:reduce){
.nb--nm-demoplayer .nmdp__scenedots i{transition:none}
}
/* Play-knop óp de hero-dash-mockup (poster-gevoel): blocks.js legt deze knop op
   .hero__dash--mobile als die op de pagina staat, en maakt de kale teaser-knop
   dan sr-only (de dash is aria-hidden, dus screenreaders houden de echte knop).
   Alleen-op-mobiel: boven 768px is de dash weg en draait de player inline. */
/* Geen padding-nudge: het driehoekje staat in z'n 24px-tekenvlak al ~1,5px
   rechts van het midden — precies de optische correctie die een play-knop
   nodig heeft. Extra padding schuift 'm zichtbaar uit het midden. */
.nb--nm-demoplayer-dashplay{display:none;align-items:center;justify-content:center;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;width:64px;height:64px;padding:0;border:1px solid rgba(230,227,255,.5);border-radius:50%;background:rgba(91,85,230,.92);color:#fff;cursor:pointer;box-shadow:0 18px 44px -12px rgba(0,0,0,.55)}
@media (max-width:767px){
.nb--nm-demoplayer-dashplay{display:flex}
.nb--nm-demoplayer[data-nmdp-teaser].nmdp--dash .nmdp__teaser{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.nb--nm-demoplayer[data-nmdp-teaser].nmdp--dash{padding:0}
}
@keyframes nmdp-rotate{0%,20%{transform:rotate(0)}45%,70%{transform:rotate(90deg)}95%,100%{transform:rotate(0)}}
.nb--nm-demoplayer .nmdp__stagewrap{position:relative}
/* Play-knop midden op de demo. Alleen zichtbaar als de demo stilstaat (CSS bij
   reduced motion); de JS verbergt 'm zodra hij speelt. */
.nb--nm-demoplayer .nmdp__play{display:none;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;align-items:center;justify-content:center;width:72px;height:72px;padding:0;border:1px solid rgba(230,227,255,.35);border-radius:50%;background:rgba(91,85,230,.92);color:#fff;cursor:pointer;box-shadow:0 18px 44px -12px rgba(0,0,0,.9);transition:transform .2s ease,background .2s ease}
.nb--nm-demoplayer .nmdp__play:hover,.nb--nm-demoplayer .nmdp__play:focus-visible{background:#5b55e6;transform:translate(-50%,-50%) scale(1.06)}
.nb--nm-demoplayer .nmdp__play[hidden]{display:none}
@media (prefers-reduced-motion:reduce){
.nb--nm-demoplayer .nmdp__live i{animation:none}
.nb--nm-demoplayer .nmdp__layer{transition:none}
.nb--nm-demoplayer .nmdp__next{animation:none}
.nb--nm-demoplayer .nmdp__rotate-icon{animation:none;transform:rotate(90deg)}
/* De demo staat stil op z'n eindbeeld; deze knop is de zichtbare uitnodiging om
   'm alsnog te laten draaien. */
.nb--nm-demoplayer .nmdp__play:not([hidden]){display:flex}
.nb--nm-demoplayer .nmdp__play{transition:none}
}
