/* 1.76.525: Black Friday. Een balk bovenin de vaste header (drie stijlen), de deal onder de prijs op de pakketkaarten
   en de pagina /black-friday/. Paars blijft de merkkleur; amber alleen voor het prijskaartje en de korting (datakleur). */
.nsl-has-bf { --header-h: 114px; }
.nsl-has-bf .nsl-header { display: flex; flex-direction: column; }
.nsl-has-bf .nsl-header__inner { height: 76px; width: 100%; }
.nsl-bf { flex: 0 0 38px; height: 38px; width: 100%; display: flex; align-items: center; gap: 16px; padding: 0 var(--gutter); background: #0b0a0e; border-bottom: 1px solid rgba(255, 255, 255, .08); color: #e6e4ec; font-size: 13.5px; line-height: 1; white-space: nowrap; overflow: hidden; }
.nsl-bf a { color: inherit; text-decoration: none; }
.nsl-bf__lead { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; }
.nsl-bf__lead b { font-weight: 700; letter-spacing: .01em; }
.nsl-bf__tag { width: 18px; height: 18px; color: #ffb86b; flex: 0 0 auto; }
.nsl-bf__deal { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; color: #cfcbd8; }
.nsl-bf__deal b { color: #fff; font-weight: 600; }
.nsl-bf s, .nsl-plan__bf s, .nsl-bfp__row s { color: #8d8899; text-decoration-thickness: 1px; }
.nsl-bf__all { flex: 0 0 auto; color: #fff; border-bottom: 1px solid #7643c8; padding-bottom: 2px; }
.nsl-bf__all:hover { border-bottom-color: #fff; }
.nsl-bf__clock { flex: 0 0 auto; color: #ffb86b; font-size: 12.5px; font-variant-numeric: tabular-nums; }
.nsl-bf__sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
/* Koersbord: alle deals lopen langzaam voorbij, zoals een beursbalk */
.nsl-bf__tape { flex: 1 1 auto; min-width: 0; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); }
.nsl-bf__run { display: inline-flex; gap: 36px; animation: nslBfRun 60s linear infinite; padding-left: 36px; }
.nsl-bf__tape:hover .nsl-bf__run { animation-play-state: paused; }
.nsl-bf__q { font-family: var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace); font-size: 12.5px; color: #cfcbd8; }
.nsl-bf__q b { font-family: inherit; color: #fff; font-weight: 600; }
.nsl-bf__q em { font-style: normal; color: #ffb86b; }
@keyframes nslBfRun { to { transform: translateX(-50%); } }
/* Op de pakketkaarten */
.nsl-plan__bf { margin: 10px 0 0; padding: 8px 0 0; border-top: 1px solid rgba(255, 255, 255, .08); font-size: 13.5px; color: #cfcbd8; line-height: 1.5; }
.nsl-plan__bf b { color: #ffb86b; font-weight: 700; margin-right: 4px; }
.nsl-plan__bf .nsl-mono { color: #fff; font-weight: 600; }
.nsl-plan__bf small { display: block; color: #8d8899; font-size: 12px; }
/* Pagina */
.nsl-bfp__hero { padding-top: calc(var(--header-h) + 56px); }
.nsl-bfp__hero .nsl-h1 { max-width: 18ch; }
.nsl-bfp__hero .nsl-lead { max-width: 62ch; }
.nsl-bfp__state { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: baseline; }
.nsl-bfp__state .nsl-mono { color: #ffb86b; font-variant-numeric: tabular-nums; }
.nsl-bfp__table { margin: 22px 0 14px; border-top: 1px solid rgba(255, 255, 255, .1); }
.nsl-bfp__row { display: grid; grid-template-columns: minmax(0, 2.2fr) 1fr 1.3fr .8fr 1.2fr; gap: 16px; align-items: center; padding: 14px 0; border-bottom: 1px solid rgba(255, 255, 255, .08); }
.nsl-bfp__row--head { color: #8d8899; font-size: 12.5px; padding: 10px 0; }
.nsl-bfp__row small { display: block; color: #8d8899; font-size: 12px; margin-top: 2px; }
.nsl-bfp__row > span:first-child small { margin: 0 0 2px; }
.nsl-bfp__row b.nsl-mono { color: #fff; font-size: 1.05rem; }
.nsl-bfp__row > span:nth-child(4) { color: #ffb86b; }
.nsl-bfp__row > span:last-child { text-align: right; }
.nsl-bfp__rules { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
@media (max-width: 860px) {
	.nsl-bf { gap: 12px; }
	.nsl-bf--prijskaartje .nsl-bf__deal { display: none; }
	.nsl-bf--uitgelicht .nsl-bf__all { display: none; }
	.nsl-bf--prijskaartje .nsl-bf__all { margin-left: auto; }
	.nsl-bfp__rules { grid-template-columns: 1fr; gap: 24px; }
	.nsl-bfp__row { grid-template-columns: 1fr auto; gap: 4px 16px; }
	.nsl-bfp__row--head { display: none; }
	.nsl-bfp__row > span:nth-child(2) { grid-column: 2; grid-row: 1; text-align: right; }
	.nsl-bfp__row > span:nth-child(3) { grid-column: 1; }
	.nsl-bfp__row > span:nth-child(4) { grid-column: 2; grid-row: 2; text-align: right; }
	.nsl-bfp__row > span:last-child { grid-column: 1 / -1; text-align: left; }
}
@media (max-width: 480px) {
	.nsl-bf { font-size: 12.5px; }
	.nsl-bf__clock { font-size: 12px; }
	.nsl-bf--uitgelicht .nsl-bf__deal { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) { .nsl-bf__run { animation: none; } .nsl-bf__tape { overflow-x: auto; } }
@media print { .nsl-bf { display: none; } .nsl-has-bf { --header-h: 76px; } }
