/* 1.76.473: productvitrine. Strak: haarlijnen, radius 0, paars alleen als accent. */
.nsl-sc { display: grid; gap: clamp(48px, 7vw, 96px); }
.nsl-sc__gh { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding-bottom: 14px; margin-bottom: 22px; border-bottom: 1px solid #222226; }
.nsl-sc__gh h2 { margin: 0; font: 700 clamp(1.4rem, 2.2vw, 1.9rem) var(--f-display); color: #fff; letter-spacing: -.01em; }
.nsl-sc__gh span { color: #6f6f75; font-size: 12px; }
.nsl-sc__grid { display: grid; gap: 18px; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-flow: dense; }
.nsl-sc__grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.nsl-sc__grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.nsl-sc__card { display: flex; flex-direction: column; min-width: 0; text-decoration: none; color: inherit; background: #0f0f11; border: 1px solid #222226; transition: border-color .25s, transform .35s var(--ease, ease); }
.nsl-sc__card:hover { border-color: #7643c8; transform: translateY(-3px); }
.nsl-sc__img { display: block; aspect-ratio: 1; overflow: hidden; background: #0b0b0d; }
.nsl-sc__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease, ease); }
.nsl-sc__card:hover .nsl-sc__img img { transform: scale(1.04); }
.nsl-sc__body { display: grid; gap: 6px; padding: 18px 18px 20px; flex: 1; align-content: start; }
.nsl-sc__grp { color: #8f84ad; font-size: 12px; }
.nsl-sc__body > b { color: #fff; font: 700 1.08rem var(--f-display); }
.nsl-sc__body > span:not(.nsl-sc__price) { color: #a3a3a8; font-size: 14px; line-height: 1.5; }
.nsl-sc__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 6px; margin-top: 8px; color: #8a8a8f; font-size: 12.5px; }
.nsl-sc__price b { color: #fff; font-size: 16px; }
.nsl-sc__body em { margin-top: 10px; font-style: normal; font-weight: 600; font-size: 14px; color: #fff; display: inline-flex; gap: 6px; }
.nsl-sc__body em i { font-style: normal; transition: transform .25s var(--ease, ease); }
.nsl-sc__card:hover .nsl-sc__body em i { transform: translateX(4px); }
/* groot: de eerste van een groep beslaat twee kolommen en rijen, beeld links, tekst rechts onder */
/* naam en zin staan al in het beeld: alleen voor schermlezers */
.nsl-sc__body > b, .nsl-sc__body > span:not(.nsl-sc__price) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.nsl-sc__body { position: relative; }
/* strip (portaal): één rij die scrolt */
.nsl-sc--strip { gap: 12px; margin: 0 0 26px; }
.nsl-sc__h { margin: 0; color: #cfcfd4; font-weight: 600; font-size: 14px; }
div.nsl-sc--strip { display: block; margin: 0 0 28px; }
div.nsl-sc--strip .nsl-sc__h { margin: 0 0 12px; padding: 0; border: 0; }
div.nsl-sc--strip .nsl-sc__row { display: flex; flex-wrap: nowrap; gap: 12px; margin: 0; padding: 0 0 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
div.nsl-sc--strip .nsl-sc__row > a.nsl-sc__card { flex: 0 0 210px; width: 210px; max-width: 210px; margin: 0; padding: 0; scroll-snap-align: start; }
.nsl-sc__card.is-sm .nsl-sc__body { padding: 12px 12px 14px; gap: 4px; }
.nsl-sc__card.is-sm .nsl-sc__body > span:not(.nsl-sc__price) { display: none; }
.nsl-sc__card.is-sm .nsl-sc__body > b { font-size: .98rem; }
.nsl-sc__card.is-sm .nsl-sc__body em { display: none; }
.nsl-sc__card.is-sm .nsl-sc__price { margin-top: 2px; }
/* pagina Alle producten */
.nsl-cat__show { margin: clamp(40px, 6vw, 72px) 0 clamp(56px, 8vw, 110px); }
@media (max-width: 1080px) {
	.nsl-sc__grid, .nsl-sc__grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
	.nsl-sc__grid, .nsl-sc__grid--2, .nsl-sc__grid--3 { grid-template-columns: minmax(0, 1fr); }
}
/* megamenu: uitgelicht blok met de productfoto in plaats van de lijnengrafiek */
.nsl-mx__feat.has-photo .nsl-mx__viz { display: none; }
.nsl-mx__feat.has-photo .nsl-mx__photo { position: absolute; inset: 0; z-index: -2; background: center / cover no-repeat; transform: scale(1.03); transition: transform 1.2s var(--ease, ease); }
.nsl-mx__feat.has-photo:hover .nsl-mx__photo { transform: scale(1.09); }
/* megamenu: ronde iconen als beeldmerk, net als de logo's van Google en WordPress */
.nsl-nav .nsl-mx .nsl-mega__ico, .nsl-mx .nsl-mega__ico { width: 38px; height: 38px; flex: 0 0 38px; border-radius: 50% !important; background: #17151c !important; border: 1px solid #2a2533 !important; display: grid; place-items: center; overflow: hidden; }
.nsl-mx .nsl-mega__ico img.nsl-mega__brand.is-icon { width: 22px; height: 22px; }
.nsl-mx .nsl-mega__ico .nsl-mega__lic { display: grid; place-items: center; color: #8a5ad8; }
.nsl-mx .nsl-mega__ico .nsl-mega__lic svg, .nsl-mx .nsl-mega__ico .nsl-mega__lic .nsl-ico { width: 19px; height: 19px; stroke-width: 2; color: #8a5ad8; }
.nsl-mx .nsl-mega__link:hover .nsl-mega__lic { color: #7643c8; }
.nsl-mx .nsl-mega__link:hover .nsl-mega__ico { transform: none; background: #1f1a2a !important; border-color: #7643c8 !important; }
.nsl-mx .nsl-mega__link:hover { transform: none; }
.nsl-mx .nsl-mega__link::before { background: #7643c8; }
