@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-lede{font-size:clamp(14px,1.2vw,16px);color:var(--nb-text-soft);max-width:56ch;line-height:1.6;margin:-24px 0 36px}
.nb-showcase__grid{display:grid;gap:clamp(16px,2vw,32px)}
.nb-showcase__grid--2{grid-template-columns:repeat(2,1fr)}
.nb-showcase__grid--3{grid-template-columns:repeat(3,1fr)}
.nb-pcard{position:relative;display:block;text-decoration:none;color:inherit;border-radius:6px;overflow:hidden;border:1px solid color-mix(in srgb,var(--nb-text) 12%,transparent);transition:transform .6s var(--brand-easing-default,cubic-bezier(.16,1,.3,1)),border-color .6s}
.nb-pcard:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--nb-text) 26%,transparent)}
.nb-pcard__media{position:relative;aspect-ratio:4/5;background:var(--nb-surface);overflow:hidden}
.nb-pcard__media img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--brand-easing-default,cubic-bezier(.16,1,.3,1))}
.nb-pcard:hover .nb-pcard__media img{transform:scale(1.05)}
.nb-pcard__sale{position:absolute;top:14px;left:14px;z-index:2;padding:5px 9px;font-family:var(--nb-font-mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;background:color-mix(in srgb,var(--nb-bg) 62%,transparent);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--nb-text) 12%,transparent);color:var(--nb-accent);font-weight:600;border-radius:2px}
.nb-pcard__out{position:absolute;inset:0;z-index:2;background:color-mix(in srgb,var(--nb-bg) 72%,transparent);display:flex;align-items:center;justify-content:center;color:var(--nb-text);font-family:var(--nb-font-mono);font-size:12px;letter-spacing:0.18em;text-transform:uppercase}
.nb-pcard__info{position:absolute;inset:auto 0 0 0;z-index:1;padding:28px 20px 20px;display:flex;flex-direction:column;background:linear-gradient(to top,color-mix(in srgb,var(--nb-bg) 97%,transparent) 0%,color-mix(in srgb,var(--nb-bg) 88%,transparent) 60%,color-mix(in srgb,var(--nb-bg) 28%,transparent) 100%)}
.nb-pcard__name{font-family:var(--nb-font-display);font-size:clamp(15px,1.45vw,22px);font-weight:600;letter-spacing:-0.01em;margin:0 0 8px;line-height:1.15;color:var(--nb-text);opacity:0.78;text-shadow:0 1px 8px color-mix(in srgb,var(--nb-bg) 55%,transparent);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.3em;transition:opacity .35s ease}
.nb-pcard:hover .nb-pcard__name{opacity:1;display:block;-webkit-line-clamp:unset;overflow:visible}
.nb-pcard__specs{color:var(--nb-text-soft);font-size:12px;margin:0;letter-spacing:0.02em;font-feature-settings:"tnum"}
.nb-pcard__bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-top:14px}
.nb-pcard__rating{display:inline-flex;align-items:center;gap:7px;background:color-mix(in srgb,var(--nb-bg) 55%,transparent);border:1px solid color-mix(in srgb,var(--nb-text) 10%,transparent);padding:5px 10px;border-radius:999px;font-size:12px}
.nb-pcard__stars{color:var(--nb-accent);letter-spacing:1px;font-size:13px;line-height:1}
.nb-pcard__rating--empty{opacity:0.85}
.nb-pcard__rating--empty .nb-pcard__stars{color:var(--nb-text-soft)}
.nb-pcard__rscore{font-family:var(--nb-font-display);font-weight:600;color:var(--nb-text);font-size:13px}
.nb-pcard__rcount{color:var(--nb-muted);font-family:var(--nb-font-mono);font-size:10px}
.nb-pcard__price{font-family:var(--nb-font-display);font-size:20px;font-weight:600;color:var(--nb-accent);white-space:nowrap;display:flex;flex-direction:column;align-items:flex-end;line-height:1.1;flex:0 0 auto;margin-left:auto}
.nb-pcard__price s{color:var(--nb-muted);font-family:var(--nb-font-mono);font-size:12px;text-decoration:line-through;margin:0 0 2px}
@media (max-width:1100px){.nb-showcase__grid--3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.nb-showcase__grid--2,.nb-showcase__grid--3{grid-template-columns:1fr}}


.nb-fcard__intro{max-width:60ch;color:var(--nb-text-soft);font-size:clamp(15px,1.2vw,17px);line-height:1.65;margin:-12px 0 44px}
.nb-fcard__grid{list-style:none;margin:0;padding:0;display:grid;gap:20px}
.nb-fcard__grid--2{grid-template-columns:repeat(2,1fr)}
.nb-fcard__grid--3{grid-template-columns:repeat(3,1fr)}
.nb-fcard__grid--4{grid-template-columns:repeat(4,1fr)}
.nb-fcard{display:flex;flex-direction:column;border:1px solid var(--nb-line);border-radius:10px;background:var(--nb-surface);overflow:hidden;transition:border-color .2s}
.nb-fcard:hover{border-color:color-mix(in srgb,var(--nb-accent) 40%,var(--nb-line))}
.nb-fcard__media{margin:0;aspect-ratio:4/3;overflow:hidden;background:color-mix(in srgb,var(--nb-text) 4%,transparent)}
.nb-fcard__media img{width:100%;height:100%;object-fit:cover}
.nb-fcard__body{display:flex;flex-direction:column;gap:10px;padding:24px}
.nb-fcard__eyebrow{align-self:flex-start;font-family:var(--nb-font-mono);font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:var(--nb-accent);border:1px solid color-mix(in srgb,var(--nb-accent) 35%,transparent);border-radius:999px;padding:4px 10px}
.nb-fcard__title{font-family:var(--nb-font-display);font-size:clamp(17px,1.4vw,21px);font-weight:700;letter-spacing:-0.015em;margin:0;color:var(--nb-text)}
.nb-fcard__desc{font-size:14px;line-height:1.65;color:var(--nb-text-soft);margin:0}
@media (max-width:1023px){.nb-fcard__grid--3,.nb-fcard__grid--4{grid-template-columns:1fr 1fr}}
@media (max-width:639px){.nb-fcard__grid--2,.nb-fcard__grid--3,.nb-fcard__grid--4{grid-template-columns:1fr}}


.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:var(--brand-accent,#B8500F);
  --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-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__uspicon path{animation:nbcDraw 1.1s var(--nbc-ease) forwards;animation-delay:calc(.25s + var(--nbc-rd,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__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--hero-slider{padding:0;border-top:0}
.nb--hero-slider>.nb-container{max-width:none;padding:0}
.nb--hero-slider .nb-hs{
  --nbhs-primary:var(--brand-primary,#154a4a);
  --nbhs-accent:var(--brand-accent,var(--brand-primary,#b84a19));
  --nbhs-on:var(--brand-text-on-primary,#f7f1e5);
  --nbhs-on-soft:color-mix(in srgb,var(--nbhs-on) 76%,transparent);
  --nbhs-on-line:color-mix(in srgb,var(--nbhs-on) 32%,transparent);
  --nbhs-accent-light:color-mix(in srgb,var(--nbhs-accent) 62%,var(--nbhs-on));
  --nbhs-scrim:var(--brand-primary-hover,var(--nbhs-primary));
  --nbhs-font-display:var(--brand-font-display,var(--brand-font-heading,inherit));
  --nbhs-font-body:var(--brand-font-body,inherit);
  --nbhs-display-weight:var(--brand-font-display-weight,700);
  --nbhs-radius-btn:var(--brand-btn-radius,var(--brand-radius-control,8px));
  --nbhs-radius-thumb:var(--brand-radius-control,10px);
  --nbhs-radius-media:var(--brand-radius-xs,6px);
  --nbhs-ease:var(--brand-easing-default,cubic-bezier(0,0,.2,1));
  --nbhs-dur:var(--brand-duration-default,250ms);
  --nbhs-dur-slow:var(--brand-duration-dramatic,500ms);
  --nbhs-pad:var(--pad-x,clamp(20px,4vw,48px));
  --nbhs-min-h:clamp(560px,78vh,760px);
  --nbhs-autoplay:7000ms;
  position:relative;isolation:isolate;overflow:hidden;
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px;
  min-height:var(--nbhs-min-h);padding:48px var(--nbhs-pad);
  background:var(--nbhs-scrim);color:var(--nbhs-on);font-family:var(--nbhs-font-body);
}
.nb--hero-slider .nb-hs--h-compact{--nbhs-min-h:clamp(440px,60vh,560px)}
.nb--hero-slider .nb-hs--h-groot{--nbhs-min-h:clamp(640px,90vh,900px)}
/* scherm: tot de onderrand van het eerste scherm. --nbhs-top = waar de hero begint (balken en
   header erboven), gemeten door de runtime; zonder JS is hij 100svh, iets te hoog maar dat valt
   onder de vouw. svh en niet vh: op mobiel telt vh de ingeklapte adresbalk mee. */
.nb--hero-slider .nb-hs--h-scherm{--nbhs-min-h:calc(100vh - var(--nbhs-top,0px));--nbhs-min-h:calc(100svh - var(--nbhs-top,0px))}

.nb--hero-slider .nb-hs__slides{position:absolute;inset:0;z-index:-2}
.nb--hero-slider .nb-hs__slide{position:absolute;inset:0;opacity:0;transition:opacity var(--nbhs-dur-slow) var(--nbhs-ease);overflow:hidden}
.nb--hero-slider .nb-hs__slide.is-actief{opacity:1}
.nb--hero-slider .nb-hs__img,.nb--hero-slider .nb-hs__ph{position:absolute;inset:-4%;width:108%;height:108%;max-width:none;object-fit:cover}
.nb--hero-slider .nb-hs__ph{background:radial-gradient(ellipse at 70% 55%,var(--nbhs-accent),var(--nbhs-scrim) 70%)}
.nb--hero-slider .nb-hs__img--center{object-position:50% 50%}
.nb--hero-slider .nb-hs__img--top{object-position:50% 15%}
.nb--hero-slider .nb-hs__img--bottom{object-position:50% 85%}
.nb--hero-slider .nb-hs__img--left{object-position:15% 50%}
.nb--hero-slider .nb-hs__img--right{object-position:85% 50%}
.nb--hero-slider .nb-hs__slide.is-actief .nb-hs__img{animation:nbhs-drift 9s linear forwards}
@keyframes nbhs-drift{from{transform:scale(1)}to{transform:scale(1.07) translate(-1%,1%)}}
/* Achtergrondvideo: 16:9-iframe als cover over de slide (container-units, niet vw/vh: de hero
   is niet schermhoog), uitgelijnd zoals de foto via dezelfde focus. Onzichtbaar tot de iframe
   geladen is, zodat de poster niet eerst door een zwart vlak wordt vervangen. */
.nb--hero-slider .nb-hs__video{position:absolute;inset:0;overflow:hidden;pointer-events:none;container-type:size;--nbhs-fx:50%;--nbhs-fy:50%}
.nb--hero-slider .nb-hs__video--top{--nbhs-fy:15%}
.nb--hero-slider .nb-hs__video--bottom{--nbhs-fy:85%}
.nb--hero-slider .nb-hs__video--left{--nbhs-fx:15%}
.nb--hero-slider .nb-hs__video--right{--nbhs-fx:85%}
.nb--hero-slider .nb-hs__video iframe{position:absolute;left:var(--nbhs-fx);top:var(--nbhs-fy);transform:translate(calc(var(--nbhs-fx) * -1),calc(var(--nbhs-fy) * -1));
  width:max(100cqw,177.78cqh);height:max(100cqh,56.25cqw);border:0;pointer-events:none;opacity:0;transition:opacity var(--nbhs-dur-slow) var(--nbhs-ease)}
.nb--hero-slider .nb-hs__video iframe.is-klaar{opacity:1}
@media (max-width:768px){.nb--hero-slider .nb-hs__video{display:none}}
/* De mobiele foto is voor de telefoon gemaakt: centreren, niet de focus van de desktopfoto. */
@media (max-width:768px){.nb--hero-slider .nb-hs__img.nb-hs__img--mobiel{object-position:50% 50%}}

.nb--hero-slider .nb-hs__scrim{position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  linear-gradient(90deg,color-mix(in srgb,var(--nbhs-scrim) 92%,transparent) 0%,color-mix(in srgb,var(--nbhs-scrim) 62%,transparent) 42%,color-mix(in srgb,var(--nbhs-scrim) 14%,transparent) 78%,transparent 100%),
  linear-gradient(0deg,color-mix(in srgb,var(--nbhs-scrim) 90%,transparent) 0%,color-mix(in srgb,var(--nbhs-scrim) 32%,transparent) 42%,transparent 68%)}
.nb--hero-slider .nb-hs--ov-licht .nb-hs__scrim{opacity:.78}
.nb--hero-slider .nb-hs--ov-sterk .nb-hs__scrim{background:color-mix(in srgb,var(--nbhs-scrim) 58%,transparent)}
.nb--hero-slider .nb-hs--ov-sterk .nb-hs__scrim::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--nbhs-scrim) 82%,transparent),transparent 70%)}
.nb--hero-slider .nb-hs__embers{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;color:var(--nbhs-accent-light)}

.nb--hero-slider .nb-hs__main{align-self:end;display:flex;flex-direction:column;gap:40px;min-width:0;max-width:760px}
.nb--hero-slider .nb-hs__copy{display:flex;flex-direction:column;align-items:flex-start}
.nb--hero-slider .nb-hs__stack{display:grid;align-items:end}
.nb--hero-slider .nb-hs__stack>.nb-hs__copy{grid-area:1/1}
.nb--hero-slider .nb-hs__copy:not(.is-actief){visibility:hidden}
.nb--hero-slider .nb-hs__copy.is-in>*{animation:nbhs-rise var(--nbhs-dur-slow) var(--nbhs-ease) both}
.nb--hero-slider .nb-hs__copy.is-in>*:nth-child(2){animation-delay:60ms}
.nb--hero-slider .nb-hs__copy.is-in>*:nth-child(3){animation-delay:120ms}
.nb--hero-slider .nb-hs__copy.is-in>*:nth-child(4){animation-delay:180ms}
@keyframes nbhs-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.nb--hero-slider .nb-hs__eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0;color:var(--nbhs-accent-light);
  font-size:var(--brand-eyebrow-size,.75rem);font-weight:var(--brand-eyebrow-weight,700);letter-spacing:var(--brand-eyebrow-tracking,.1em);text-transform:var(--brand-eyebrow-transform,uppercase)}
.nb--hero-slider .nb-hs__eyebrow::before{content:"";width:28px;height:2px;background:var(--nbhs-accent)}
.nb--hero-slider .nb-hs__title{margin:14px 0 18px;font-family:var(--nbhs-font-display);font-weight:var(--nbhs-display-weight);
  font-size:clamp(2.4rem,5.6vw,var(--brand-display-xl-size,4.75rem));line-height:var(--brand-display-xl-leading,1.05);letter-spacing:-.02em;text-wrap:balance;color:var(--nbhs-on)}
.nb--hero-slider .nb-hs__title em{font-style:normal;color:var(--nbhs-accent-light)}
.nb--hero-slider .nb-hs__text{margin:0 0 32px;max-width:52ch;color:var(--nbhs-on-soft);font-size:var(--brand-lead-size,1.125rem);line-height:var(--brand-lead-leading,1.7)}
.nb--hero-slider .nb-hs__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.nb--hero-slider .nb-hs__btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 26px;border-radius:var(--nbhs-radius-btn);
  font-family:var(--nbhs-font-body);font-weight:var(--brand-btn-weight,700);font-size:var(--brand-text-base,1rem);line-height:1.2;text-decoration:none;
  transition:transform var(--nbhs-dur) var(--nbhs-ease),background-color var(--nbhs-dur) var(--nbhs-ease),border-color var(--nbhs-dur) var(--nbhs-ease)}
.nb--hero-slider .nb-hs__btn svg{flex:none}
.nb--hero-slider .nb-hs__btn--primary{background:var(--nbhs-accent);color:var(--brand-text-on-primary,var(--nbhs-on));border:1px solid var(--nbhs-accent);box-shadow:0 12px 30px -12px color-mix(in srgb,var(--nbhs-accent) 70%,transparent)}
.nb--hero-slider .nb-hs__btn--primary:hover{transform:translateY(-2px);background:color-mix(in srgb,var(--nbhs-accent) 86%,var(--nbhs-on))}
.nb--hero-slider .nb-hs__btn--ghost{background:color-mix(in srgb,var(--nbhs-scrim) 25%,transparent);color:var(--nbhs-on);border:1px solid var(--nbhs-on-line)}
.nb--hero-slider .nb-hs__btn--ghost:hover{background:color-mix(in srgb,var(--nbhs-on) 10%,transparent);border-color:color-mix(in srgb,var(--nbhs-on) 60%,transparent)}
.nb--hero-slider .nb-hs__btn:focus-visible,.nb--hero-slider .nb-hs__arrow:focus-visible,.nb--hero-slider .nb-hs__thumb:focus-visible{outline:2px solid var(--nbhs-accent-light);outline-offset:3px}

.nb--hero-slider .nb-hs__nav{display:flex;align-items:center;gap:14px}
.nb--hero-slider .nb-hs__arrow{width:44px;height:44px;padding:0;border-radius:var(--brand-radius-full,9999px);border:1px solid var(--nbhs-on-line);background:transparent;color:var(--nbhs-on);display:grid;place-items:center;cursor:pointer;
  transition:background-color var(--nbhs-dur) var(--nbhs-ease),border-color var(--nbhs-dur) var(--nbhs-ease)}
.nb--hero-slider .nb-hs__arrow:hover{background:var(--nbhs-accent);border-color:var(--nbhs-accent)}
.nb--hero-slider .nb-hs__toggle{margin-left:4px}
.nb--hero-slider .nb-hs__toggle .nb-hs__i-play,.nb--hero-slider .nb-hs__toggle[aria-pressed="true"] .nb-hs__i-pause{display:none}
.nb--hero-slider .nb-hs__toggle[aria-pressed="true"] .nb-hs__i-play{display:block}
.nb--hero-slider .nb-hs__count{font-family:var(--nbhs-font-display);font-weight:700;font-size:1.05rem;letter-spacing:.04em;color:var(--nbhs-on-soft);font-variant-numeric:tabular-nums}
.nb--hero-slider .nb-hs__count b{color:var(--nbhs-on)}

.nb--hero-slider .nb-hs__rail{display:flex;flex-direction:column;gap:12px;width:250px}
.nb--hero-slider .nb-hs__thumb{position:relative;overflow:hidden;display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px;align-items:center;padding:10px;margin:0;text-align:left;cursor:pointer;
  font:inherit;color:var(--nbhs-on);border-radius:var(--nbhs-radius-thumb);border:1px solid color-mix(in srgb,var(--nbhs-on) 12%,transparent);
  background:color-mix(in srgb,var(--nbhs-scrim) 66%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  transition:background-color var(--nbhs-dur) var(--nbhs-ease),border-color var(--nbhs-dur) var(--nbhs-ease)}
.nb--hero-slider .nb-hs__thumb:hover{background:color-mix(in srgb,var(--nbhs-primary) 84%,transparent)}
.nb--hero-slider .nb-hs__thumb.is-actief{border-color:color-mix(in srgb,var(--nbhs-accent-light) 70%,transparent)}
.nb--hero-slider .nb-hs__pic{display:block;aspect-ratio:1;border-radius:var(--nbhs-radius-media);overflow:hidden;background:var(--nbhs-primary)}
.nb--hero-slider .nb-hs__pic img{width:100%;height:100%;object-fit:cover}
.nb--hero-slider .nb-hs__tt{display:flex;flex-direction:column;min-width:0}
.nb--hero-slider .nb-hs__t{font-size:.8125rem;font-weight:700;line-height:1.2}
.nb--hero-slider .nb-hs__s{margin-top:3px;font-size:.6875rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--nbhs-on-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nb--hero-slider .nb-hs__prog{position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--nbhs-accent-light);transform:scaleX(0);transform-origin:left}
.nb--hero-slider .nb-hs--play .nb-hs__thumb.is-actief .nb-hs__prog{animation:nbhs-prog var(--nbhs-autoplay) linear forwards}
.nb--hero-slider .nb-hs--paused .nb-hs__thumb.is-actief .nb-hs__prog{animation-play-state:paused}
@keyframes nbhs-prog{to{transform:scaleX(1)}}

/* naast-tekst: de foto krijgt een eigen gridkolom (tekst | foto | rail) en past er met contain
   volledig in. Cover over de hele hero sneed een 5:4-productfoto op 1520x573 boven en onder af,
   en de rail lag eroverheen. De runtime wisselt alleen .is-actief, dus de stapeling blijft gelijk.
   Kader: de img krijgt zelf de verhouding van de foto (--nbhs-r, gezet door de runtime) en
   wordt het grootste vak in die verhouding dat in de slide past (container-units). Zo liggen
   radius en rand op de foto zelf. Niet width:auto + max-*: dat schaalt niet op boven de
   gekozen srcset-variant (gemeten op 390px: 208px breed in een vak van 335px). Cover vangt
   alleen de 4:3-terugval vóór de load op; met de echte verhouding snijdt het niets af. */
.nb--hero-slider .nb-hs--naast{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) auto;
  --nbhs-radius-frame:var(--brand-radius-card,var(--brand-radius-lg,16px))}
.nb--hero-slider .nb-hs--naast:not(.nb-hs--rail){grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
.nb--hero-slider .nb-hs--naast .nb-hs__slides{position:relative;inset:auto;z-index:0;grid-column:2;grid-row:1;align-self:stretch;min-height:320px}
.nb--hero-slider .nb-hs--naast .nb-hs__main{grid-column:1;grid-row:1}
.nb--hero-slider .nb-hs--naast .nb-hs__slide{container-type:size;overflow:visible}
.nb--hero-slider .nb-hs--naast .nb-hs__img{inset:0;margin:auto;
  width:min(100cqw,100cqh * var(--nbhs-r,1.3333));height:min(100cqh,100cqw / var(--nbhs-r,1.3333));
  object-fit:cover;object-position:50% 50%;border-radius:var(--nbhs-radius-frame);
  border:1px solid color-mix(in srgb,var(--nbhs-on) 14%,transparent);
  box-shadow:0 28px 60px -30px color-mix(in srgb,var(--nbhs-scrim) 85%,transparent),0 0 0 6px color-mix(in srgb,var(--nbhs-on) 4%,transparent)}
.nb--hero-slider .nb-hs--naast .nb-hs__ph{inset:0;width:100%;height:100%;border-radius:var(--nbhs-radius-frame)}
.nb--hero-slider .nb-hs--naast .nb-hs__slide.is-actief .nb-hs__img{animation:none}
/* Alleen desktop: deze selector is specifieker dan de tablet- en mobielregels voor de titel. */
@media (min-width:1101px){
  .nb--hero-slider .nb-hs--naast .nb-hs__title{font-size:clamp(2.2rem,3.8vw,var(--brand-display-xl-size,4.75rem))}
}

@media (max-width:1100px){
  .nb--hero-slider .nb-hs{grid-template-columns:minmax(0,1fr);align-items:stretch;min-height:0;padding-top:clamp(96px,14vw,140px);padding-bottom:28px;gap:28px}
  .nb--hero-slider .nb-hs__main{align-self:auto;max-width:none;gap:28px}
  .nb--hero-slider .nb-hs__title{font-size:clamp(2.2rem,6.8vw,4rem)}
  .nb--hero-slider .nb-hs__rail{width:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
  .nb--hero-slider .nb-hs__thumb{grid-template-columns:48px minmax(0,1fr)}
  .nb--hero-slider .nb-hs--naast,.nb--hero-slider .nb-hs--naast:not(.nb-hs--rail){grid-template-columns:minmax(0,1fr)}
  .nb--hero-slider .nb-hs--naast .nb-hs__slides{grid-column:1;grid-row:auto;order:-1;min-height:0;height:clamp(220px,46vw,420px)}
  .nb--hero-slider .nb-hs--naast .nb-hs__main{grid-column:1;grid-row:auto}
  /* Ook gestapeld schermhoog, met tekst en thumbnails onderin zodat de foto erboven ademt. */
  .nb--hero-slider .nb-hs--h-scherm{min-height:var(--nbhs-min-h);align-content:end}
}
@media (max-width:640px){
  .nb--hero-slider .nb-hs{padding-top:120px;padding-left:20px;padding-right:0}
  .nb--hero-slider .nb-hs__main{padding-right:20px}
  .nb--hero-slider .nb-hs--naast .nb-hs__slides{margin-right:20px;height:clamp(180px,52vw,300px)}
  .nb--hero-slider .nb-hs__title{font-size:clamp(2.1rem,9.6vw,2.75rem);margin:12px 0 14px}
  .nb--hero-slider .nb-hs__text{font-size:var(--brand-text-base,1rem);margin-bottom:22px}
  .nb--hero-slider .nb-hs__actions{align-self:stretch;flex-direction:column;align-items:stretch;gap:10px}
  .nb--hero-slider .nb-hs__btn{padding:15px 20px}
  .nb--hero-slider .nb-hs__arrow{width:40px;height:40px}
  .nb--hero-slider .nb-hs__rail{display:flex;flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;padding-right:20px;scrollbar-width:none;overscroll-behavior-x:contain}
  .nb--hero-slider .nb-hs__rail::-webkit-scrollbar{display:none}
  .nb--hero-slider .nb-hs__thumb{flex:0 0 74%;scroll-snap-align:start;grid-template-columns:44px minmax(0,1fr)}
  .nb--hero-slider .nb-hs__s{display:none}
}
@media (prefers-reduced-motion:reduce){
  .nb--hero-slider .nb-hs__slide,.nb--hero-slider .nb-hs__btn,.nb--hero-slider .nb-hs__arrow,.nb--hero-slider .nb-hs__thumb{transition:none}
  .nb--hero-slider .nb-hs__slide.is-actief .nb-hs__img,.nb--hero-slider .nb-hs__copy.is-in>*{animation:none}
  .nb--hero-slider .nb-hs__embers{display:none}
}

/* ── gesplitst (prototype Atlas) ──────────────────────────────────────────────
   Na de volbeeld-regels en één klasse specifieker (.nb-hs.nb-hs--split), zodat de tablet- en
   mobielregels van volbeeld (padding, titelmaat, rail als veegstrook) hier niet doorwerken.
   Het paneel draagt het bewaakte kleurpaar primair + tekst-op-primair; de filmstrip staat
   op de paginagrond en neemt daarom de gewone tekst- en lijnkleuren van de Brand Kit. */
.nb--hero-slider .nb-hs.nb-hs--split{
  --nbhs-page-text:var(--brand-text-primary,currentColor);
  --nbhs-page-muted:var(--brand-text-muted,color-mix(in srgb,currentColor 62%,transparent));
  --nbhs-page-line:var(--brand-border,color-mix(in srgb,currentColor 18%,transparent));
  --nbhs-page-subtle:var(--brand-bg-subtle,color-mix(in srgb,currentColor 5%,transparent));
  --nbhs-radius-frame:var(--brand-radius-card,var(--brand-radius-lg,16px));
  --nbhs-wipe:800ms;
  --nbhs-min-h:clamp(480px,64vh,600px);
  box-sizing:border-box;display:block;max-width:1360px;min-height:0;margin:0 auto;padding:28px var(--nbhs-pad) 0;
  overflow:visible;background:transparent;color:var(--nbhs-page-text)}
.nb--hero-slider .nb-hs.nb-hs--split.nb-hs--h-compact{--nbhs-min-h:clamp(400px,52vh,480px)}
.nb--hero-slider .nb-hs.nb-hs--split.nb-hs--h-groot{--nbhs-min-h:clamp(560px,76vh,720px)}
.nb--hero-slider .nb-hs--split .nb-hs__card{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);
  min-height:var(--nbhs-min-h);border-radius:var(--nbhs-radius-frame);background:var(--nbhs-primary);color:var(--nbhs-on);
  box-shadow:var(--brand-shadow-lg,0 30px 60px -40px #0000008c)}

.nb--hero-slider .nb-hs--split .nb-hs__main{position:relative;align-self:stretch;max-width:none;display:flex;flex-direction:column;justify-content:space-between;gap:32px;
  padding:48px 44px 40px;overflow:hidden}
.nb--hero-slider .nb-hs--split .nb-hs__main::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(60% 50% at 0% 100%,color-mix(in srgb,var(--nbhs-accent) 28%,transparent),transparent 70%)}
.nb--hero-slider .nb-hs--split .nb-hs__main>*{position:relative}
.nb--hero-slider .nb-hs--split .nb-hs__stack{align-items:center}
.nb--hero-slider .nb-hs--split .nb-hs__count{font-size:.75rem;letter-spacing:.1em;color:var(--nbhs-on-soft)}
.nb--hero-slider .nb-hs--split .nb-hs__count b{font-size:1.875rem;font-weight:700;letter-spacing:-.02em;margin-right:6px;color:var(--nbhs-on)}
.nb--hero-slider .nb-hs--split .nb-hs__title{margin:12px 0 18px;font-size:clamp(2.25rem,4vw,3.625rem)}
.nb--hero-slider .nb-hs--split .nb-hs__title em{font-weight:500}
.nb--hero-slider .nb-hs--split .nb-hs__text{max-width:42ch;margin-bottom:26px}
.nb--hero-slider .nb-hs--split .nb-hs__nav{gap:10px}
.nb--hero-slider .nb-hs--split .nb-hs__arrow{width:48px;height:48px}
.nb--hero-slider .nb-hs--split .nb-hs__ring{display:block;margin-left:auto;width:34px;height:34px}
.nb--hero-slider .nb-hs--split .nb-hs__ring svg{display:block;transform:rotate(-90deg)}
.nb--hero-slider .nb-hs--split .nb-hs__ring circle{fill:none;stroke-width:2}
.nb--hero-slider .nb-hs--split .nb-hs__ring-bg{stroke:color-mix(in srgb,var(--nbhs-on) 20%,transparent)}
.nb--hero-slider .nb-hs--split .nb-hs__ring .nb-hs__prog{position:static;width:auto;height:auto;background:none;transform:none;
  stroke:var(--nbhs-accent-light);stroke-dasharray:88;stroke-dashoffset:88}
.nb--hero-slider .nb-hs--split.nb-hs--play .nb-hs__ring .nb-hs__prog{animation:nbhs-ring var(--nbhs-autoplay) linear forwards}
.nb--hero-slider .nb-hs--split.nb-hs--paused .nb-hs__ring .nb-hs__prog{animation-play-state:paused}
@keyframes nbhs-ring{to{stroke-dashoffset:0}}

/* Beeld: de nieuwe foto schuift van rechts over de vorige. De vertrekkende wacht met
   inklappen tot de nieuwe hem bedekt; alleen de runtime-klasse is-actief wisselt. */
.nb--hero-slider .nb-hs--split .nb-hs__slides{position:relative;inset:auto;z-index:0;min-height:360px;overflow:hidden;background:var(--nbhs-scrim)}
.nb--hero-slider .nb-hs--split .nb-hs__slides::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;
  background:linear-gradient(0deg,color-mix(in srgb,var(--nbhs-primary) 35%,transparent),transparent 45%)}
.nb--hero-slider .nb-hs--split .nb-hs__slide{opacity:1;z-index:1;clip-path:inset(0 0 0 100%);
  transition:clip-path var(--nbhs-wipe) cubic-bezier(.7,0,.2,1) var(--nbhs-wipe)}
.nb--hero-slider .nb-hs--split .nb-hs__slide.is-actief{z-index:2;clip-path:inset(0);transition:clip-path var(--nbhs-wipe) cubic-bezier(.7,0,.2,1)}
.nb--hero-slider .nb-hs--split .nb-hs__img,.nb--hero-slider .nb-hs--split .nb-hs__ph{inset:0;width:100%;height:100%}
.nb--hero-slider .nb-hs--split .nb-hs__slide.is-actief .nb-hs__img{animation:none}

/* Filmstrip op de paginagrond: genummerd, actieve met een accentlijn bovenop. */
.nb--hero-slider .nb-hs--split .nb-hs__rail{width:auto;display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:0;margin-top:22px;padding:0;overflow:visible;
  border-top:1px solid var(--nbhs-page-line)}
.nb--hero-slider .nb-hs--split .nb-hs__thumb{grid-template-columns:64px minmax(0,1fr);gap:14px;padding:18px 16px 18px 0;overflow:visible;
  border:0;border-right:1px solid var(--nbhs-page-line);border-radius:0;background:transparent;color:var(--nbhs-page-text);-webkit-backdrop-filter:none;backdrop-filter:none}
.nb--hero-slider .nb-hs--split .nb-hs__thumb:last-child{border-right:0}
.nb--hero-slider .nb-hs--split .nb-hs__thumb:hover{background:var(--nbhs-page-subtle)}
.nb--hero-slider .nb-hs--split .nb-hs__thumb.is-actief{border-color:var(--nbhs-page-line)}
.nb--hero-slider .nb-hs--split .nb-hs__thumb::before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--nbhs-accent);
  transform:scaleX(0);transform-origin:left;transition:transform var(--nbhs-dur) var(--nbhs-ease)}
.nb--hero-slider .nb-hs--split .nb-hs__thumb.is-actief::before{transform:scaleX(1)}
.nb--hero-slider .nb-hs--split .nb-hs__thumb .nb-hs__prog{display:none}
.nb--hero-slider .nb-hs--split .nb-hs__pic{aspect-ratio:4/3;border-radius:var(--nbhs-radius-thumb);opacity:.85;transition:opacity var(--nbhs-dur) var(--nbhs-ease),transform var(--nbhs-dur-slow) var(--nbhs-ease)}
.nb--hero-slider .nb-hs--split .nb-hs__thumb.is-actief .nb-hs__pic{opacity:1;transform:scale(1.04)}
.nb--hero-slider .nb-hs--split .nb-hs__k{font-family:var(--nbhs-font-display);font-weight:500;font-size:.75rem;letter-spacing:.1em;color:var(--nbhs-page-muted);font-variant-numeric:tabular-nums}
.nb--hero-slider .nb-hs--split .nb-hs__t{margin-top:2px;font-family:var(--nbhs-font-display);font-size:1rem;letter-spacing:-.01em;line-height:1.15}
.nb--hero-slider .nb-hs--split .nb-hs__s{font-size:.8125rem;font-weight:400;letter-spacing:0;text-transform:none;white-space:normal;color:var(--nbhs-page-muted)}

@media (max-width:900px){
  .nb--hero-slider .nb-hs.nb-hs--split{padding-top:16px}
  .nb--hero-slider .nb-hs--split .nb-hs__card{grid-template-columns:minmax(0,1fr);min-height:0}
  .nb--hero-slider .nb-hs--split .nb-hs__slides{order:-1;min-height:0;aspect-ratio:16/10}
  .nb--hero-slider .nb-hs--split .nb-hs__main{padding:30px 22px 26px;gap:26px}
  .nb--hero-slider .nb-hs--split .nb-hs__rail{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr))}
  .nb--hero-slider .nb-hs--split .nb-hs__thumb:nth-child(2n){border-right:0}
}
@media (max-width:640px){
  .nb--hero-slider .nb-hs.nb-hs--split{padding-left:16px;padding-right:16px}
  .nb--hero-slider .nb-hs--split .nb-hs__title{font-size:clamp(2rem,8.6vw,2.6rem)}
  .nb--hero-slider .nb-hs--split .nb-hs__thumb{grid-template-columns:48px minmax(0,1fr);padding-right:10px}
}
@media (prefers-reduced-motion:reduce){
  .nb--hero-slider .nb-hs--split .nb-hs__slide,.nb--hero-slider .nb-hs--split .nb-hs__slide.is-actief{transition:none}
  .nb--hero-slider .nb-hs--split .nb-hs__ring{display:none}
}

/* ── overlayTone grond ────────────────────────────────────────────────────────
   Verloop in de paginagrond met de gewone tekstkleur. Eén klasse specifieker dan de
   basislaag; de afgeleide tinten (--nbhs-on-soft, -line, accent-light) rekenen vanzelf mee. */
.nb--hero-slider .nb-hs.nb-hs--tone-grond{
  --nbhs-scrim:var(--brand-bg-base,var(--nbhs-primary));
  --nbhs-on:var(--brand-text-primary,var(--brand-text-on-primary,currentColor));
  --nbhs-thumb-bg:var(--brand-bg-surface,var(--nbhs-scrim));
  /* Het verloop gebruikt de primaire kleur hier niet meer, dus die neemt de accentrol over
     (knop, accentwoord, eyebrow, lampring, voortgang). De knop wordt zo tekst-op-primair op
     primair: het paar dat de Brand Kit bewaakt, waar accent + tekst-op-primair dat niet is. */
  --nbhs-accent:var(--brand-primary,var(--brand-accent,currentColor));
  --nbhs-accent-light:color-mix(in srgb,var(--nbhs-accent) 82%,var(--nbhs-on))}
.nb--hero-slider .nb-hs--tone-grond .nb-hs__thumb:hover{background:color-mix(in srgb,var(--nbhs-thumb-bg) 84%,transparent)}
.nb--hero-slider .nb-hs--tone-grond .nb-hs__pic{background:var(--nbhs-thumb-bg)}

/* ── effect lichtbundel ──────────────────────────────────────────────────────
   Een schuine lichtstreep boven het verloop en onder de tekst; de runtime zet is-go bij
   elke wissel. In rust onzichtbaar. */
.nb--hero-slider .nb-hs__beam{position:absolute;inset:-20% -40%;z-index:-1;pointer-events:none;opacity:0;mix-blend-mode:screen;
  background:linear-gradient(105deg,transparent 42%,color-mix(in srgb,var(--nbhs-on) 20%,transparent) 49%,color-mix(in srgb,var(--nbhs-on) 34%,transparent) 50%,color-mix(in srgb,var(--nbhs-on) 16%,transparent) 51%,transparent 56%)}
.nb--hero-slider .nb-hs__beam.is-go{animation:nbhs-sweep 1.25s var(--nbhs-ease) forwards}
@keyframes nbhs-sweep{0%{transform:translateX(-55%);opacity:0}15%{opacity:1}100%{transform:translateX(55%);opacity:0}}

/* ── thumbStyle schakelaars ───────────────────────────────────────────────────
   Tekst linksonder, daaronder een balk over de volle breedte: per slide een rond lampje dat
   aangaat, naam en voortgangsbalk bovenop, en rechts teller, pijlen en pauze. De padding zit
   op de tekst en niet op de hero, zodat de balk zonder negatieve marges van rand tot rand loopt.
   Eén klasse specifieker dan de volbeeld-regels, zodat hun tablet- en mobielregels (rail als
   veegstrook, padding) hier niet doorwerken. */
.nb--hero-slider .nb-hs.nb-hs--schakelaars{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;align-items:end;gap:0;
  min-height:var(--nbhs-min-h);padding:0}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__main{align-self:end;max-width:none;padding:clamp(96px,14vw,140px) var(--nbhs-pad) 40px;gap:0}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__stack{max-width:760px}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__bar{display:grid;grid-template-columns:minmax(0,1fr) auto;
  border-top:1px solid color-mix(in srgb,var(--nbhs-on) 14%,transparent);
  background:color-mix(in srgb,var(--nbhs-scrim) 55%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__rail{width:auto;display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:0;padding:0;overflow:visible}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__thumb{grid-template-columns:44px minmax(0,1fr);gap:16px;padding:22px 24px;overflow:visible;
  border:0;border-right:1px solid color-mix(in srgb,var(--nbhs-on) 10%,transparent);border-radius:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__thumb:first-child{padding-left:var(--nbhs-pad)}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__thumb:hover{background:color-mix(in srgb,var(--nbhs-on) 4%,transparent)}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__thumb.is-actief{border-color:color-mix(in srgb,var(--nbhs-on) 10%,transparent)}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__pic{width:44px;aspect-ratio:1;border-radius:var(--brand-radius-full,9999px);border:1px solid color-mix(in srgb,var(--nbhs-on) 22%,transparent);
  filter:grayscale(1) brightness(.6);transition:filter var(--nbhs-dur-slow) var(--nbhs-ease),box-shadow var(--nbhs-dur-slow) var(--nbhs-ease)}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__thumb.is-actief .nb-hs__pic{filter:none;
  box-shadow:0 0 0 2px var(--nbhs-accent),0 0 22px color-mix(in srgb,var(--nbhs-accent) 45%,transparent)}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__t{font-family:var(--nbhs-font-display);font-weight:var(--nbhs-display-weight);font-size:1.0625rem;letter-spacing:-.01em;
  color:var(--nbhs-on-soft);transition:color var(--nbhs-dur) var(--nbhs-ease)}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__thumb.is-actief .nb-hs__t{color:var(--nbhs-on)}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__prog{top:-1px;bottom:auto;background:var(--nbhs-accent);box-shadow:0 0 10px var(--nbhs-accent)}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__nav{padding:0 var(--nbhs-pad) 0 20px;gap:8px}
.nb--hero-slider .nb-hs--schakelaars .nb-hs__count{min-width:64px;font-size:.875rem}

@media (max-width:1100px){
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__bar{grid-template-columns:minmax(0,1fr)}
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__thumb{grid-template-columns:minmax(0,1fr);gap:10px;padding:16px 14px}
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__thumb:first-child{padding-left:var(--nbhs-pad)}
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__s{display:none}
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__nav{justify-content:space-between;padding:10px var(--nbhs-pad);
    border-top:1px solid color-mix(in srgb,var(--nbhs-on) 10%,transparent)}
}
@media (max-width:640px){
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__main{padding:96px 20px 28px}
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__thumb,.nb--hero-slider .nb-hs--schakelaars .nb-hs__thumb:first-child{padding:14px 12px}
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__pic{width:34px}
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__t{font-size:.875rem}
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__nav{padding:8px 20px}
}
@media (prefers-reduced-motion:reduce){
  .nb--hero-slider .nb-hs__beam{display:none}
  .nb--hero-slider .nb-hs--schakelaars .nb-hs__pic{transition:none}
}


.nb--category-tiles{
  --nbct-primary:var(--brand-primary,#154a4a);
  --nbct-accent:var(--brand-accent,var(--brand-primary,#b84a19));
  --nbct-on:var(--brand-text-on-primary,#f7f1e5);
  --nbct-on-soft:color-mix(in srgb,var(--nbct-on) 76%,transparent);
  --nbct-accent-light:color-mix(in srgb,var(--nbct-accent) 62%,var(--nbct-on));
  --nbct-scrim:var(--brand-primary-hover,var(--nbct-primary));
  --nbct-heading:var(--brand-text-primary,inherit);
  --nbct-muted:var(--brand-text-muted,inherit);
  --nbct-font-display:var(--brand-font-display,var(--brand-font-heading,inherit));
  --nbct-font-body:var(--brand-font-body,inherit);
  --nbct-radius:var(--brand-radius-card,var(--brand-radius,16px));
  --nbct-radius-control:var(--brand-radius-control,10px);
  --nbct-ease:var(--brand-easing-default,cubic-bezier(0,0,.2,1));
  --nbct-dur:var(--brand-duration-fast,150ms);
  --nbct-dur-panel:var(--brand-duration-slow,350ms);
  border-top:0;font-family:var(--nbct-font-body);color:var(--nbct-heading);
}
/* overlayTone grond (zelfde keuze als hero-slider): het verloop over de foto's in de
   paginagrond met de gewone tekstkleur, en de primaire kleur als accent. De afgeleide tinten
   staan er opnieuw, want die zijn op de sectie zelf al uitgerekend. */
.nb--category-tiles[data-tone="grond"]{
  --nbct-primary:var(--brand-bg-surface,var(--brand-bg-base,currentColor));
  --nbct-scrim:var(--brand-bg-base,var(--nbct-primary));
  --nbct-on:var(--brand-text-primary,var(--brand-text-on-primary,currentColor));
  --nbct-accent:var(--brand-primary,var(--brand-accent,currentColor));
  --nbct-on-soft:color-mix(in srgb,var(--nbct-on) 76%,transparent);
  --nbct-accent-light:color-mix(in srgb,var(--nbct-accent) 82%,var(--nbct-on));
}
.nb--category-tiles .nb-ct__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;margin-bottom:28px}
.nb--category-tiles .nb-ct__heading{margin:0;font-family:var(--nbct-font-display);font-weight:var(--brand-font-display-weight,700);
  font-size:clamp(1.875rem,3.6vw,var(--brand-text-5xl,2.9rem));line-height:1.1;letter-spacing:-.02em;color:var(--nbct-heading)}
.nb--category-tiles .nb-ct__heading em{font-style:normal;color:var(--nbct-accent)}
.nb--category-tiles .nb-ct__intro{margin:0;max-width:44ch;color:var(--nbct-muted);font-size:var(--brand-text-base,1rem);line-height:var(--brand-body-leading,1.7)}

.nb--category-tiles .nb-ct{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.nb--category-tiles .nb-ct__tile{position:relative;isolation:isolate;overflow:hidden;grid-column:span 2;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;
  border-radius:var(--nbct-radius);background:var(--nbct-scrim);color:var(--nbct-on)}
.nb--category-tiles .nb-ct--cols-2 .nb-ct__tile{grid-column:span 3}
.nb--category-tiles .nb-ct__tile--wide{grid-column:span 3;min-height:360px}
.nb--category-tiles .nb-ct__img,.nb--category-tiles .nb-ct__ph{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;z-index:-2}
.nb--category-tiles .nb-ct__ph{background:radial-gradient(ellipse at 60% 40%,var(--nbct-accent),var(--nbct-scrim) 72%)}
.nb--category-tiles .nb-ct__img--center{object-position:50% 50%}
.nb--category-tiles .nb-ct__img--top{object-position:50% 15%}
.nb--category-tiles .nb-ct__img--bottom{object-position:50% 85%}
.nb--category-tiles .nb-ct__img--left{object-position:15% 50%}
.nb--category-tiles .nb-ct__img--right{object-position:85% 50%}
.nb--category-tiles .nb-ct__tile::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(0deg,color-mix(in srgb,var(--nbct-scrim) 95%,transparent) 0%,color-mix(in srgb,var(--nbct-scrim) 58%,transparent) 45%,color-mix(in srgb,var(--nbct-scrim) 12%,transparent) 100%)}

/* Koppen en tekst krijgen hun kleur expliciet: thema-CSS zoals h1,h2,h3 met een eigen kleur wint
   anders van de geërfde tegelkleur (gemeten op Nomad Fire: donkere titel op donker verloop). */
/* De kop-link bedekt via ::after de hele tegel. Dat werkt alleen zolang geen voorouder
   tussen link en tegel gepositioneerd is: daarom staat .nb-ct__face statisch. */
.nb--category-tiles .nb-ct__face{position:static;padding:24px;transition:transform var(--nbct-dur-panel) var(--nbct-ease),opacity var(--nbct-dur-panel) var(--nbct-ease)}
.nb--category-tiles .nb-ct__eyebrow{margin:0;color:var(--nbct-accent-light);font-size:var(--brand-eyebrow-size,.75rem);font-weight:var(--brand-eyebrow-weight,700);
  letter-spacing:var(--brand-eyebrow-tracking,.1em);text-transform:var(--brand-eyebrow-transform,uppercase)}
.nb--category-tiles .nb-ct__title{margin:6px 0 0;color:var(--nbct-on);font-family:var(--nbct-font-display);font-weight:var(--brand-font-display-weight,700);font-size:clamp(1.375rem,2vw,1.75rem);line-height:1.15;letter-spacing:-.015em}
.nb--category-tiles .nb-ct__link{color:inherit;text-decoration:none}
.nb--category-tiles .nb-ct__link::after{content:"";position:absolute;inset:0;z-index:0}
.nb--category-tiles .nb-ct__link:focus-visible{outline:none}
.nb--category-tiles .nb-ct__tile:has(.nb-ct__link:focus-visible){outline:2px solid var(--nbct-accent);outline-offset:3px}
.nb--category-tiles .nb-ct__toggle{display:none}

.nb--category-tiles .nb-ct__panel{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;padding:20px 24px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--nbct-primary) 35%,transparent) 0%,color-mix(in srgb,var(--nbct-primary) 72%,transparent) 45%,color-mix(in srgb,var(--nbct-scrim) 95%,transparent) 100%);
  transform:translateY(100%);transition:transform var(--nbct-dur-panel) var(--nbct-ease)}
.nb--category-tiles .nb-ct__panellabel{margin:0 0 4px;color:var(--nbct-accent-light);font-size:.6875rem;font-weight:700;letter-spacing:var(--brand-eyebrow-tracking,.1em);text-transform:uppercase}
.nb--category-tiles .nb-ct__paneltitle{margin:0 0 10px;color:var(--nbct-on);font-family:var(--nbct-font-display);font-weight:var(--brand-font-display-weight,700);font-size:1rem;line-height:1.2}
.nb--category-tiles .nb-ct__subs{list-style:none;margin:0;padding:0;display:grid;gap:4px;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin}
.nb--category-tiles .nb-ct__sub{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 12px;border-radius:var(--nbct-radius-control);
  background:color-mix(in srgb,var(--nbct-on) 12%,transparent);color:var(--nbct-on);text-decoration:none;font-size:var(--brand-text-sm,.9375rem);font-weight:500;line-height:1.3;
  transition:background-color var(--nbct-dur) var(--nbct-ease),color var(--nbct-dur) var(--nbct-ease)}
.nb--category-tiles .nb-ct__sub svg{flex:none;opacity:.6;transition:transform var(--nbct-dur) var(--nbct-ease),opacity var(--nbct-dur) var(--nbct-ease)}
.nb--category-tiles .nb-ct__count{font-size:.75rem;color:var(--nbct-on-soft);font-variant-numeric:tabular-nums;transition:color var(--nbct-dur) var(--nbct-ease)}
.nb--category-tiles .nb-ct__sub:hover,.nb--category-tiles .nb-ct__sub:focus-visible{background:var(--nbct-on);color:var(--nbct-scrim);outline:none}
.nb--category-tiles .nb-ct__sub:hover .nb-ct__count,.nb--category-tiles .nb-ct__sub:focus-visible .nb-ct__count{color:var(--nbct-scrim)}
.nb--category-tiles .nb-ct__sub:hover svg,.nb--category-tiles .nb-ct__sub:focus-visible svg{transform:translateX(3px);opacity:1}
.nb--category-tiles .nb-ct__all{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:var(--nbct-accent-light);text-decoration:none;
  font-size:.75rem;font-weight:700;letter-spacing:var(--brand-eyebrow-tracking,.1em);text-transform:uppercase}
.nb--category-tiles .nb-ct__all:focus-visible{outline:2px solid var(--nbct-accent-light);outline-offset:3px}

@media (hover:hover){
  .nb--category-tiles .nb-ct__tile--subs:hover .nb-ct__panel{transform:none}
  .nb--category-tiles .nb-ct__tile--subs:hover .nb-ct__face{transform:translateY(-12px);opacity:0}
}
.nb--category-tiles .nb-ct__tile--subs:focus-within:not(.is-closed) .nb-ct__panel,.nb--category-tiles .nb-ct__tile--subs.is-open .nb-ct__panel{transform:none}
.nb--category-tiles .nb-ct__tile--subs:focus-within:not(.is-closed) .nb-ct__face,.nb--category-tiles .nb-ct__tile--subs.is-open .nb-ct__face{transform:translateY(-12px);opacity:0}
.nb--category-tiles .nb-ct__tile--subs.is-closed .nb-ct__panel{transform:translateY(100%)}
.nb--category-tiles .nb-ct__tile--subs.is-closed .nb-ct__face{transform:none;opacity:1}

@media (max-width:1000px){
  .nb--category-tiles .nb-ct{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nb--category-tiles .nb-ct__tile,.nb--category-tiles .nb-ct__tile--wide,.nb--category-tiles .nb-ct--cols-2 .nb-ct__tile{grid-column:span 1;min-height:300px}
}
@media (max-width:640px){
  .nb--category-tiles .nb-ct{grid-template-columns:minmax(0,1fr);gap:10px}
  .nb--category-tiles .nb-ct__tile,.nb--category-tiles .nb-ct__tile--wide{min-height:180px}
  .nb--category-tiles .nb-ct__face{padding:18px}
  .nb--category-tiles .nb-ct__title{font-size:1.375rem}
  /* Op mobiel geen overlay: de knop rechtsonder klapt de lijst in de flow uit. */
  .nb--category-tiles .nb-ct__toggle{display:grid;place-items:center;position:absolute;right:18px;bottom:18px;z-index:2;width:34px;height:34px;padding:0;
    border-radius:var(--brand-radius-full,9999px);border:1px solid color-mix(in srgb,var(--nbct-on) 35%,transparent);background:transparent;color:var(--nbct-on);cursor:pointer}
  .nb--category-tiles .nb-ct__toggle::before,.nb--category-tiles .nb-ct__toggle::after{content:"";position:absolute;width:12px;height:2px;border-radius:2px;background:currentColor}
  .nb--category-tiles .nb-ct__toggle::after{transform:rotate(90deg);transition:transform var(--nbct-dur) var(--nbct-ease)}
  .nb--category-tiles .nb-ct__tile--subs .nb-ct__face{position:relative}
  .nb--category-tiles .nb-ct__panel{display:none;position:static;transform:none;padding:0 18px 18px;background:none;overflow:visible}
  .nb--category-tiles .nb-ct__paneltitle,.nb--category-tiles .nb-ct__panellabel{display:none}
  .nb--category-tiles .nb-ct__tile--subs:focus-within .nb-ct__face{transform:none;opacity:1}
  .nb--category-tiles .nb-ct__tile--subs.is-open{min-height:0}
  .nb--category-tiles .nb-ct__tile--subs.is-open .nb-ct__face{transform:none;opacity:1;padding-bottom:10px}
  .nb--category-tiles .nb-ct__tile--subs.is-open .nb-ct__toggle::after{transform:rotate(0)}
  .nb--category-tiles .nb-ct__tile--subs.is-open .nb-ct__panel{display:block}
  .nb--category-tiles .nb-ct__tile--subs.is-open .nb-ct__toggle{top:18px;bottom:auto}
  .nb--category-tiles .nb-ct__sub{padding:12px 14px}
  .nb--category-tiles .nb-ct__all{margin-top:14px}
}
@media (prefers-reduced-motion:reduce){
  .nb--category-tiles .nb-ct__panel,.nb--category-tiles .nb-ct__face,.nb--category-tiles .nb-ct__sub,.nb--category-tiles .nb-ct__sub svg,.nb--category-tiles .nb-ct__toggle::after{transition:none}
}

/* ── layout panelen (prototype Atlas) ─────────────────────────────────────────
   Eén klasse specifieker dan het raster (.nb-ct.nb-ct--panelen), zodat de rasterregels van
   tablet en mobiel hier niet doorwerken. Zichtbaarheid wisselt met visibility (met vertraging
   bij sluiten), zodat een dicht paneel geen onzichtbare tabstops heeft. */
.nb--category-tiles .nb-ct.nb-ct--panelen{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.nb--category-tiles .nb-ct--panelen .nb-ct__prow{display:flex;gap:10px;height:480px}
.nb--category-tiles .nb-ct--rijen .nb-ct__prow{height:400px}
.nb--category-tiles .nb-ct--panelen .nb-ct__p{position:relative;isolation:isolate;overflow:hidden;flex:1 1 0;min-width:0;
  border-radius:var(--nbct-radius);background:var(--nbct-scrim);color:var(--nbct-on);transition:flex var(--nbct-dur-panel) cubic-bezier(.3,.8,.2,1)}
.nb--category-tiles .nb-ct--panelen .nb-ct__p::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,color-mix(in srgb,var(--nbct-primary) 20%,transparent),color-mix(in srgb,var(--nbct-scrim) 92%,transparent) 78%)}
.nb--category-tiles .nb-ct--panelen .nb-ct__p.is-open{flex-grow:3.4}

.nb--category-tiles .nb-ct--panelen .nb-ct__spine{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;
  width:100%;margin:0;padding:22px;border:0;background:transparent;color:var(--nbct-on);font:inherit;text-align:left;cursor:pointer;
  transition:opacity var(--nbct-dur) var(--nbct-ease),visibility 0s}
.nb--category-tiles .nb-ct--panelen .nb-ct__spine:focus-visible{outline:2px solid var(--nbct-accent-light);outline-offset:-4px;border-radius:var(--nbct-radius)}
.nb--category-tiles .nb-ct--panelen .nb-ct__num{position:absolute;top:20px;left:22px;font-family:var(--nbct-font-display);font-weight:500;font-size:.75rem;
  letter-spacing:.1em;opacity:.7;font-variant-numeric:tabular-nums}
.nb--category-tiles .nb-ct--panelen .nb-ct__spinetitle{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;
  font-family:var(--nbct-font-display);font-weight:var(--brand-font-display-weight,700);font-size:1.375rem;letter-spacing:-.015em}
.nb--category-tiles .nb-ct--panelen .nb-ct__p.is-open .nb-ct__spine{opacity:0;visibility:hidden;pointer-events:none}

.nb--category-tiles .nb-ct--panelen .nb-ct__body{position:absolute;inset:0;z-index:2;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;padding:28px;
  opacity:0;visibility:hidden;transform:translateX(24px);
  transition:opacity 200ms var(--nbct-ease),transform 200ms var(--nbct-ease),visibility 0s linear 200ms}
.nb--category-tiles .nb-ct--panelen .nb-ct__p.is-open .nb-ct__body{opacity:1;visibility:visible;transform:none;
  transition:opacity var(--nbct-dur-panel) var(--nbct-ease) 150ms,transform 450ms cubic-bezier(.2,.7,.2,1) 150ms,visibility 0s}
.nb--category-tiles .nb-ct--panelen .nb-ct__title{margin:6px 0 0;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.1;letter-spacing:-.02em}
.nb--category-tiles .nb-ct--panelen .nb-ct__link::after{content:none}
.nb--category-tiles .nb-ct--panelen .nb-ct__link:focus-visible{outline:2px solid var(--nbct-accent-light);outline-offset:3px}
.nb--category-tiles .nb-ct--panelen .nb-ct__subs{align-self:end;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 20px;max-height:100%}
.nb--category-tiles .nb-ct--panelen .nb-ct__sub{padding:10px 12px}
.nb--category-tiles .nb-ct--panelen .nb-ct__sublabel{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nb--category-tiles .nb-ct--panelen .nb-ct__foot{display:flex;align-items:center;justify-content:space-between;gap:14px}
.nb--category-tiles .nb-ct--panelen .nb-ct__all{margin-top:0;font-size:.875rem;letter-spacing:0;text-transform:none}

@media (max-width:900px){
  .nb--category-tiles .nb-ct--panelen .nb-ct__prow,.nb--category-tiles .nb-ct--rijen .nb-ct__prow{flex-direction:column;height:auto}
  .nb--category-tiles .nb-ct--panelen .nb-ct__p{flex:none;min-height:76px;transition:min-height var(--nbct-dur-panel) var(--nbct-ease)}
  .nb--category-tiles .nb-ct--panelen .nb-ct__p.is-open{min-height:420px}
  .nb--category-tiles .nb-ct--panelen .nb-ct__spine{flex-direction:row;align-items:center;justify-content:flex-start;gap:14px;padding:0 22px}
  .nb--category-tiles .nb-ct--panelen .nb-ct__num{position:static}
  .nb--category-tiles .nb-ct--panelen .nb-ct__spinetitle{writing-mode:horizontal-tb;transform:none;font-size:1.25rem}
  .nb--category-tiles .nb-ct--panelen .nb-ct__body{padding:22px}
  .nb--category-tiles .nb-ct--panelen .nb-ct__subs{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){
  .nb--category-tiles .nb-ct--panelen .nb-ct__p,.nb--category-tiles .nb-ct--panelen .nb-ct__spine,.nb--category-tiles .nb-ct--panelen .nb-ct__body,
  .nb--category-tiles .nb-ct--panelen .nb-ct__p.is-open .nb-ct__body{transition:none}
}
