/* RJH Support — Sinterklaas/Kerst actiepopup */

.rjh-actie {
	--rjh-donker: #2a2a29;      /* antraciet uit het logo */
	--rjh-donker-2: #3d3d3b;
	--rjh-licht: #f5f3ef;
	--rjh-tekst: #2a2a29;
	--rjh-tekst-zacht: #6b6a66;
	--rjh-accent: #c41e3a;      /* per thema overschreven */
	--rjh-accent-2: #d9a441;
	--rjh-radius: 14px;
	--rjh-font: inherit;

	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	font-family: var(--rjh-font);
	color: var(--rjh-tekst);
}
.rjh-actie[hidden] { display: none; }

.rjh-actie--sinterklaas { --rjh-accent: #c41e3a; --rjh-accent-2: #d9a441; }
.rjh-actie--kerst       { --rjh-accent: #1f6b4f; --rjh-accent-2: #d9a441; }

.rjh-actie__overlay {
	position: absolute;
	inset: 0;
	background: rgba(20, 20, 19, .62);
	backdrop-filter: blur(3px);
	opacity: 0;
	transition: opacity .3s ease;
}

.rjh-actie__venster {
	position: relative;
	width: 100%;
	max-width: 620px;
	max-height: calc(100vh - 48px);
	overflow-y: auto;
	background: var(--rjh-licht);
	border-radius: var(--rjh-radius);
	box-shadow: 0 30px 80px -20px rgba(0, 0, 0, .55);
	opacity: 0;
	transform: translateY(18px) scale(.98);
	transition: opacity .35s ease, transform .35s cubic-bezier(.2, .8, .2, 1);
}

.rjh-actie.is-open .rjh-actie__overlay { opacity: 1; }
.rjh-actie.is-open .rjh-actie__venster { opacity: 1; transform: none; }

/* ---------- Kop: donker, technisch rooster + seizoensdecoratie ---------- */
.rjh-actie__kop {
	position: relative;
	padding: 62px 32px 30px;
	color: #fff;
	background-color: var(--rjh-donker);
	background-image:
		linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
	background-size: 22px 22px;
	border-radius: var(--rjh-radius) var(--rjh-radius) 0 0;
	overflow: hidden;
}
/* Gekleurde balk onderaan de kop */
.rjh-actie__kop::after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: 0;
	height: 8px;
	background: repeating-linear-gradient(-45deg, var(--rjh-accent) 0 10px, var(--rjh-lint-2) 10px 20px);
}
.rjh-actie--sinterklaas { --rjh-lint-2: #d9a441; }
.rjh-actie--kerst       { --rjh-lint-2: #f5f3ef; }
/* Warme gloed achter de tekening */
.rjh-actie__kop::before {
	content: "";
	position: absolute;
	right: -60px; bottom: -80px;
	width: 340px; height: 340px;
	border-radius: 50%;
	background: radial-gradient(circle, var(--rjh-gloed) 0%, transparent 65%);
	pointer-events: none;
}
.rjh-actie--sinterklaas { --rjh-gloed: rgba(196, 30, 58, .38); }
.rjh-actie--kerst       { --rjh-gloed: rgba(31, 107, 79, .5); }

.rjh-actie__logo {
	display: block;
	width: 112px;
	height: auto;
	margin: 0 0 18px;
}

.rjh-actie__label {
	display: inline-block;
	padding: 5px 11px;
	border-radius: 999px;
	background: var(--rjh-accent);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.rjh-actie__titel {
	margin: 14px 0 8px;
	font-size: clamp(22px, 4.2vw, 30px);
	line-height: 1.15;
	font-weight: 700;
	color: #fff;
	max-width: 22ch;
	text-wrap: balance;
}

.rjh-actie__tekst {
	margin: 0 0 18px;
	font-size: 15px;
	line-height: 1.55;
	color: rgba(255, 255, 255, .78);
	max-width: 46ch;
}

.rjh-actie__deadline {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 8px 13px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 8px;
	font-size: 14px;
	color: rgba(255, 255, 255, .9);
	background: rgba(255, 255, 255, .05);
}
.rjh-actie__deadline strong { color: var(--rjh-accent-2); }

.rjh-actie__stip {
	flex: none;
	width: 8px; height: 8px;
	border-radius: 50%;
	background: var(--rjh-accent-2);
	box-shadow: 0 0 0 0 rgba(217, 164, 65, .6);
	animation: rjh-puls 2s infinite;
}
@keyframes rjh-puls {
	0%   { box-shadow: 0 0 0 0 rgba(217, 164, 65, .55); }
	70%  { box-shadow: 0 0 0 9px rgba(217, 164, 65, 0); }
	100% { box-shadow: 0 0 0 0 rgba(217, 164, 65, 0); }
}

/* ---------- Sluitknop ---------- */
.rjh-actie__sluit {
	position: absolute;
	top: 14px; right: 14px;
	z-index: 2;
	width: 38px; height: 38px;
	display: grid; place-items: center;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, .12);
	color: #fff;
	cursor: pointer;
	transition: background .2s;
}
.rjh-actie__sluit:hover { background: rgba(255, 255, 255, .24); }
.rjh-actie__sluit svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }

/* ---------- Artikelen ---------- */
.rjh-actie__artikelen {
	list-style: none;
	margin: 0;
	padding: 24px 32px 4px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 14px;
}
.rjh-actie__artikel a {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
	color: inherit;
	text-decoration: none;
	box-shadow: 0 1px 0 rgba(0,0,0,.04), 0 0 0 1px rgba(0,0,0,.06);
	transition: transform .2s ease, box-shadow .2s ease;
}
.rjh-actie__artikel a:hover {
	transform: translateY(-3px);
	box-shadow: 0 10px 24px -10px rgba(0,0,0,.3), 0 0 0 1px rgba(0,0,0,.06);
}
.rjh-actie__artikel img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	background: #e7e4de;
}
.rjh-actie__artikel-titel {
	padding: 11px 12px 0;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
}
.rjh-actie__artikel-tekst {
	padding: 3px 12px 0;
	font-size: 13px;
	line-height: 1.4;
	color: var(--rjh-tekst-zacht);
}
.rjh-actie__prijs {
	margin-top: auto;
	padding: 9px 12px 12px;
	font-size: 13px;
	font-weight: 700;
	color: var(--rjh-accent);
}

/* ---------- Voet ---------- */
.rjh-actie__voet {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 18px;
	padding: 22px 32px 28px;
}
.rjh-actie__knop {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 22px;
	border-radius: 10px;
	background: var(--rjh-accent);
	color: #fff !important;
	font-weight: 700;
	font-size: 15px;
	text-decoration: none !important;
	transition: filter .2s, transform .2s;
}
.rjh-actie__knop:hover { filter: brightness(1.1); transform: translateY(-1px); }
.rjh-actie__knop svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.rjh-actie__later {
	padding: 8px 4px;
	border: 0;
	background: none;
	color: var(--rjh-tekst-zacht);
	font: inherit;
	font-size: 14px;
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}
.rjh-actie__later:hover { color: var(--rjh-tekst); }

.rjh-actie :focus-visible {
	outline: 3px solid var(--rjh-accent-2);
	outline-offset: 2px;
}

/* Venster zelf krijgt focus bij openen, zonder zichtbare rand */
.rjh-actie .rjh-actie__venster:focus,
.rjh-actie .rjh-actie__venster:focus-visible { outline: none; }

/* ---------- Zwevend knopje om opnieuw te openen ---------- */
.rjh-actie-tab {
	--tab-accent: #c41e3a;
	--tab-streep: #d9a441;
	position: fixed;
	left: 20px; bottom: 20px;
	z-index: 99998;
	display: flex;
	align-items: center;
	padding: 0;
	border: 0;
	background: none;
	font: inherit;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}
.rjh-actie-tab--kerst { --tab-accent: #1f6b4f; --tab-streep: #f5f3ef; }
.rjh-actie-tab--rechts { left: auto; right: 20px; flex-direction: row-reverse; }
.rjh-actie-tab--rechts .rjh-actie-tab__tekst {
	margin-left: 0; margin-right: -28px;
	padding: 10px 38px 10px 16px;
	border-radius: 999px 0 0 999px;
	transform: translateX(12px);
	clip-path: inset(0 0 0 100%);
}
.rjh-actie-tab--stil .rjh-actie-tab__rond { animation: rjh-tab-in .5s cubic-bezier(.2,.8,.2,1) both; }
.rjh-actie-tab[hidden] { display: none; }

/* Ronde knop met gestreepte feestrand (zelfde lint als in de popup) */
.rjh-actie-tab__rond {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	width: 62px; height: 62px;
	border-radius: 50%;
	background: repeating-conic-gradient(var(--tab-accent) 0 15deg, var(--tab-streep) 15deg 30deg);
	box-shadow: 0 12px 26px -8px rgba(0,0,0,.5);
	transition: transform .25s cubic-bezier(.2,.8,.2,1);
	animation: rjh-tab-in .5s cubic-bezier(.2,.8,.2,1) both, rjh-tab-wiebel 7s ease-in-out 2s infinite;
}
.rjh-actie-tab__rond::before {
	content: "";
	position: absolute;
	inset: 4px;
	border-radius: 50%;
	background-color: #2a2a29;
	background-image:
		radial-gradient(circle at 50% 70%, color-mix(in srgb, var(--tab-accent) 55%, transparent) 0%, transparent 70%),
		linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
	background-size: auto, 8px 8px, 8px 8px;
}
.rjh-actie-tab__icoon {
	position: relative;
	width: 30px; height: 30px;
	fill: none;
	stroke: #d9a441;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.rjh-actie-tab__icoon .rjh-actie__vul { fill: #d9a441; stroke: none; }
.rjh-actie-tab__icoon .rjh-actie__dik { stroke-width: 3.4; }

/* Gouden stipje rechtsboven */
.rjh-actie-tab__stip {
	position: absolute;
	top: 2px; right: 2px;
	width: 14px; height: 14px;
	border-radius: 50%;
	background: #d9a441;
	border: 2px solid #2a2a29;
	animation: rjh-puls 2s infinite;
}

/* Tekst die uitschuift bij aanwijzen */
.rjh-actie-tab__tekst {
	margin-left: -28px;
	padding: 10px 16px 10px 38px;
	border-radius: 0 999px 999px 0;
	background: #2a2a29;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	white-space: nowrap;
	box-shadow: 0 10px 24px -8px rgba(0,0,0,.45);
	opacity: 0;
	transform: translateX(-12px);
	clip-path: inset(0 100% 0 0);
	transition: opacity .25s ease, transform .3s ease, clip-path .35s ease;
	pointer-events: none;
}
.rjh-actie-tab:hover .rjh-actie-tab__rond,
.rjh-actie-tab:focus-visible .rjh-actie-tab__rond { transform: scale(1.07) rotate(-6deg); }
.rjh-actie-tab:hover .rjh-actie-tab__tekst,
.rjh-actie-tab:focus-visible .rjh-actie-tab__tekst {
	opacity: 1;
	transform: none;
	clip-path: inset(0 0 0 0);
}
.rjh-actie-tab__icoon .rjh-actie__stippel { stroke-dasharray: 1.5 3.5; }
.rjh-actie-tab:focus-visible { outline: none; }
.rjh-actie-tab:focus-visible .rjh-actie-tab__rond { outline: 3px solid #d9a441; outline-offset: 3px; }

/* Bij verschijnen ook even de tekst tonen, daarna inklappen */
.rjh-actie-tab.is-nieuw .rjh-actie-tab__tekst { animation: rjh-tab-tekst 3.2s ease .4s both; }
.rjh-actie-tab--rechts.is-nieuw .rjh-actie-tab__tekst { animation-name: rjh-tab-tekst-r; }

@keyframes rjh-tab-tekst-r {
	0%   { opacity: 0; transform: translateX(12px); clip-path: inset(0 0 0 100%); }
	15%, 80% { opacity: 1; transform: none; clip-path: inset(0 0 0 0); }
	100% { opacity: 0; transform: translateX(12px); clip-path: inset(0 0 0 100%); }
}
@keyframes rjh-tab-in {
	from { transform: scale(.4) rotate(-30deg); opacity: 0; }
	to   { transform: none; opacity: 1; }
}
@keyframes rjh-tab-wiebel {
	0%, 88%, 100% { rotate: 0deg; }
	90% { rotate: -12deg; }
	92% { rotate: 10deg; }
	94% { rotate: -6deg; }
	96% { rotate: 3deg; }
}
@keyframes rjh-tab-tekst {
	0%   { opacity: 0; transform: translateX(-12px); clip-path: inset(0 100% 0 0); }
	15%, 80% { opacity: 1; transform: none; clip-path: inset(0 0 0 0); }
	100% { opacity: 0; transform: translateX(-12px); clip-path: inset(0 100% 0 0); }
}

/* =====================================================================
 * FEESTELIJKE LAAG
 * ===================================================================== */

/* Kop-inhoud boven de decoratie */
.rjh-actie__logo, .rjh-actie__label, .rjh-actie__titel,
.rjh-actie__tekst, .rjh-actie__deadline { position: relative; z-index: 1; }

/* Slinger / lichtjessnoer langs de bovenrand */
.rjh-actie__slinger {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	height: 60px;
	pointer-events: none;
	overflow: visible;
}
.rjh-actie__draad { fill: none; stroke: rgba(255,255,255,.45); stroke-width: 1.4; }
.rjh-actie--sinterklaas .rjh-actie__slinger path:not(.rjh-actie__draad) {
	filter: drop-shadow(0 2px 2px rgba(0,0,0,.35));
}
.rjh-actie__fitting { fill: #8d8a83; }
.rjh-actie__lamp ellipse { fill: currentColor; filter: drop-shadow(0 0 5px currentColor); }
.rjh-actie__lamp--rood  { color: #ff4d5e; }
.rjh-actie__lamp--goud  { color: #ffc95a; }
.rjh-actie__lamp--groen { color: #5fe0a0; }
.rjh-actie__lamp--wit   { color: #e9f3ff; }
.rjh-actie__lamp { animation: rjh-twinkel 2.4s ease-in-out infinite; animation-delay: calc(var(--i) * -.48s); }
@keyframes rjh-twinkel {
	0%, 100% { opacity: 1; }
	50%      { opacity: .35; }
}

/* Lijntekening (gravure-stijl) rechts in de kop */
.rjh-actie__tekening {
	position: absolute;
	right: 34px; bottom: 26px;
	width: 132px; height: auto;
	fill: none;
	stroke: var(--rjh-accent-2);
	stroke-width: 2.2;
	stroke-linecap: round;
	stroke-linejoin: round;
	pointer-events: none;
}
.rjh-actie__tekening .rjh-actie__vul    { fill: var(--rjh-accent-2); stroke: none; }
.rjh-actie__tekening .rjh-actie__dik    { stroke-width: 4.5; }
.rjh-actie__tekening .rjh-actie__stippel { stroke-dasharray: 2 5; stroke-width: 2; }
.rjh-actie--kerst .rjh-actie__tekening .rjh-actie__vul:first-child {
	filter: drop-shadow(0 0 6px rgba(255, 201, 90, .8));
}

/* Vallende pepernoten / sneeuw */
.rjh-actie__vallen { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.rjh-actie__vallen i {
	position: absolute;
	top: -14px;
	left: var(--x);
	width: var(--s); height: var(--s);
	border-radius: 50%;
	opacity: 0;
	animation: rjh-val var(--d) linear infinite;
	animation-delay: var(--w);
}
.rjh-actie--sinterklaas .rjh-actie__vallen i {
	background: radial-gradient(circle at 35% 35%, #d4a066, #9c6a35 70%);
	box-shadow: inset -1px -1px 0 rgba(0,0,0,.25);
}
.rjh-actie--kerst .rjh-actie__vallen i { background: #fff; box-shadow: 0 0 6px rgba(255,255,255,.7); }
@keyframes rjh-val {
	0%   { transform: translate(0, 0) rotate(0deg); opacity: 0; }
	10%  { opacity: .9; }
	85%  { opacity: .8; }
	100% { transform: translate(var(--dx), 340px) rotate(260deg); opacity: 0; }
}
.rjh-actie__vallen i:nth-child(1)  { --x: 6%;  --s: 8px;  --d: 9s;   --w: -1s;  --dx: 14px; }
.rjh-actie__vallen i:nth-child(2)  { --x: 14%; --s: 5px;  --d: 11s;  --w: -6s;  --dx: -10px; }
.rjh-actie__vallen i:nth-child(3)  { --x: 23%; --s: 7px;  --d: 10s;  --w: -3s;  --dx: 18px; }
.rjh-actie__vallen i:nth-child(4)  { --x: 31%; --s: 4px;  --d: 12s;  --w: -9s;  --dx: -6px; }
.rjh-actie__vallen i:nth-child(5)  { --x: 39%; --s: 6px;  --d: 8.5s; --w: -4s;  --dx: 12px; }
.rjh-actie__vallen i:nth-child(6)  { --x: 47%; --s: 9px;  --d: 11.5s;--w: -7s;  --dx: -16px; }
.rjh-actie__vallen i:nth-child(7)  { --x: 55%; --s: 5px;  --d: 9.5s; --w: -2s;  --dx: 10px; }
.rjh-actie__vallen i:nth-child(8)  { --x: 62%; --s: 7px;  --d: 12.5s;--w: -10s; --dx: -12px; }
.rjh-actie__vallen i:nth-child(9)  { --x: 69%; --s: 4px;  --d: 10.5s;--w: -5s;  --dx: 8px; }
.rjh-actie__vallen i:nth-child(10) { --x: 76%; --s: 8px;  --d: 9s;   --w: -8s;  --dx: -14px; }
.rjh-actie__vallen i:nth-child(11) { --x: 83%; --s: 5px;  --d: 11s;  --w: -1.5s;--dx: 12px; }
.rjh-actie__vallen i:nth-child(12) { --x: 90%; --s: 6px;  --d: 10s;  --w: -6.5s;--dx: -8px; }
.rjh-actie__vallen i:nth-child(13) { --x: 96%; --s: 4px;  --d: 12s;  --w: -3.5s;--dx: 6px; }
.rjh-actie__vallen i:nth-child(14) { --x: 52%; --s: 6px;  --d: 13s;  --w: -11s; --dx: 16px; }

/* Lichte deel: subtiel cadeaupapier-patroon */
.rjh-actie--sinterklaas .rjh-actie__venster {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46'%3E%3Cpath d='M11 5l3.5 6-3.5 6-3.5-6z' fill='%23d9a441' fill-opacity='.28'/%3E%3Ccircle cx='34' cy='34' r='2.6' fill='%23c41e3a' fill-opacity='.18'/%3E%3C/svg%3E");
}
.rjh-actie--kerst .rjh-actie__venster {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46'%3E%3Cpath d='M11 4l1.7 4.1 4.4.3-3.4 2.9 1.1 4.3L11 13.3 7.2 15.6l1.1-4.3-3.4-2.9 4.4-.3z' fill='%23d9a441' fill-opacity='.32'/%3E%3Ccircle cx='34' cy='33' r='2.2' fill='%231f6b4f' fill-opacity='.2'/%3E%3C/svg%3E");
}

/* Prijs als cadeaulabel */
.rjh-actie__artikel .rjh-actie__prijs {
	position: relative;
	align-self: flex-start;
	margin: auto 12px 12px;
	padding: 5px 11px 5px 20px;
	background: var(--rjh-accent);
	color: #fff;
	font-size: 12px;
	line-height: 1.2;
	clip-path: polygon(10px 0, 100% 0, 100% 100%, 10px 100%, 0 50%);
	border-radius: 0 4px 4px 0;
}
.rjh-actie__artikel .rjh-actie__prijs::before {
	content: "";
	position: absolute;
	left: 8px; top: 50%;
	width: 5px; height: 5px;
	margin-top: -2.5px;
	border-radius: 50%;
	background: #fff;
}
.rjh-actie__artikel-tekst { padding-bottom: 10px; }

/* Beeld van een artikel: foto of lijntekening-plaatshouder */
.rjh-actie__beeld { position: relative; display: block; }
.rjh-actie__plaatshouder {
	display: grid;
	place-items: center;
	aspect-ratio: 4 / 3;
	background-color: var(--rjh-donker);
	background-image:
		radial-gradient(circle at 50% 60%, var(--rjh-gloed) 0%, transparent 70%),
		linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
	background-size: auto, 14px 14px, 14px 14px;
}
.rjh-actie__plaatshouder svg {
	width: 44%;
	height: auto;
	fill: none;
	stroke: var(--rjh-accent-2);
	stroke-width: 2.2;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform .3s ease;
}
.rjh-actie__plaatshouder .rjh-actie__vul { fill: var(--rjh-accent-2); stroke: none; }
.rjh-actie__plaatshouder .rjh-actie__stippel { stroke-dasharray: 2 5; }
.rjh-actie__artikel a:hover .rjh-actie__plaatshouder svg { transform: scale(1.06) rotate(-2deg); }

.rjh-actie__badge {
	position: absolute;
	top: 8px; left: 8px;
	padding: 4px 8px;
	border-radius: 4px;
	background: var(--rjh-accent-2);
	color: #2a2a29;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.2;
	box-shadow: 0 2px 6px rgba(0,0,0,.25);
}

/* Zakelijke balk */
.rjh-actie__zakelijk {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 14px 32px 0;
	padding: 10px 14px 10px 10px;
	background: #fff;
	border-radius: 10px;
	border-left: 4px solid var(--rjh-donker);
	box-shadow: 0 0 0 1px rgba(0,0,0,.06);
	color: inherit;
	text-decoration: none;
	transition: transform .2s ease, box-shadow .2s ease;
}
.rjh-actie__zakelijk:hover { transform: translateY(-2px); box-shadow: 0 10px 24px -10px rgba(0,0,0,.3), 0 0 0 1px rgba(0,0,0,.06); }
.rjh-actie__zakelijk img {
	flex: none;
	width: 64px; height: 64px;
	border-radius: 6px;
	object-fit: cover;
}
.rjh-actie__zakelijk-tekst { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.rjh-actie__zakelijk-label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--rjh-accent);
}
.rjh-actie__zakelijk-tekst strong { font-size: 14px; line-height: 1.3; }
.rjh-actie__zakelijk-tekst span:last-child { font-size: 13px; line-height: 1.4; color: var(--rjh-tekst-zacht); }
.rjh-actie__pijl {
	flex: none;
	width: 20px; height: 20px;
	margin-left: auto;
	fill: none; stroke: var(--rjh-tekst); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;
}

/* Cadeau-icoon in de knop */
.rjh-actie__knop .rjh-actie__cadeau { width: 20px; height: 20px; }

/* Pagina niet laten scrollen achter de popup */
html.rjh-actie-open { overflow: hidden; }

/* ---------- Mobiel: schuift van onderen in ---------- */
@media (max-width: 600px) {
	.rjh-actie { padding: 0; align-items: flex-end; }
	.rjh-actie__venster {
		max-height: 92vh;
		border-radius: 18px 18px 0 0;
		transform: translateY(40px);
	}
	.rjh-actie__kop { padding: 52px 20px 24px; border-radius: 18px 18px 0 0; }
	.rjh-actie__logo { width: 92px; margin-bottom: 14px; }
	.rjh-actie__artikelen {
		display: flex;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: 20px;
		padding: 18px 20px 6px;
		gap: 12px;
	}
	.rjh-actie__artikel { flex: 0 0 62%; scroll-snap-align: start; }
	.rjh-actie__voet { padding: 18px 20px 24px; }
	.rjh-actie__knop { flex: 1 1 100%; justify-content: center; }
	.rjh-actie__later { margin: 0 auto; }
	.rjh-actie-tab { left: 14px; bottom: 14px; }
	.rjh-actie-tab--rechts { left: auto; right: 14px; }
	.rjh-actie-tab__rond { width: 56px; height: 56px; }
	.rjh-actie__tekening { width: 84px; right: 18px; bottom: auto; top: 50px; opacity: .85; }
	.rjh-actie__titel, .rjh-actie__tekst { max-width: none; }
	.rjh-actie__label { margin-right: 90px; }
	.rjh-actie__zakelijk { margin: 12px 20px 0; }
}

@media (prefers-reduced-motion: reduce) {
	.rjh-actie__overlay, .rjh-actie__venster, .rjh-actie__artikel a, .rjh-actie-tab { transition: none; }
	.rjh-actie__stip, .rjh-actie__lamp, .rjh-actie-tab__rond, .rjh-actie-tab__stip { animation: none; }
	.rjh-actie__vallen { display: none; }
}
