/*
 * Global rich-text presentation for dynamic Meta Box WYSIWYG content.
 *
 * Apply `.lucratief-rich-text` to the Bricks Text element that renders the
 * field. Apply `.lucratief-rich-text-accordion` to a Bricks Accordion whose
 * answer content comes from a WYSIWYG field. Display headings remain outside
 * this scope so editorial copy cannot compete with section titles.
 */

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) {
	--rich-text-flow-space: 1.15em;
	--rich-text-heading-space: 1.75em;
	--rich-text-heading-follow-space: 0.55em;
	--rich-text-list-indent: 1.35em;
	--rich-text-subtle-surface: color-mix(in srgb, currentColor 7%, transparent);
	--rich-text-divider: color-mix(in srgb, currentColor 20%, transparent);
	--rich-text-table-border: color-mix(in srgb, currentColor 16%, transparent);
	--rich-text-table-header: var(--primary-t-1, color-mix(in srgb, var(--primary, currentColor) 9%, transparent));
	--rich-text-table-row: color-mix(in srgb, currentColor 3%, transparent);

	font-family: var(--site-font-body);
	font-size: inherit;
	font-kerning: normal;
	font-optical-sizing: auto;
	line-height: 1.7;
	overflow-wrap: break-word;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > * {
	margin-block: 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > * + * {
	margin-block-start: var(--rich-text-flow-space);
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > :where(h2, h3, h4, h5, h6) {
	font-family: var(--site-font-body);
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.3;
	margin-block-start: var(--rich-text-heading-space);
	text-wrap: pretty;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > :where(h2, h3, h4, h5, h6):first-child {
	margin-block-start: 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > :where(h2, h3, h4, h5, h6):empty {
	display: none;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > :where(h2, h3, h4, h5, h6) + * {
	margin-block-start: var(--rich-text-heading-follow-space);
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > h2 {
	font-size: 1.35em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > h3 {
	font-size: 1.2em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > :where(h4, h5, h6) {
	font-size: 1em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(p, li, dd, figcaption) {
	text-wrap: pretty;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(strong, b) {
	font-weight: 700;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(ul, ol) {
	list-style-position: outside;
	padding-inline-start: var(--rich-text-list-indent);
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) li + li {
	margin-block-start: 0.35em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) ul > li::marker {
	color: currentColor;
	font-size: 0.72em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) ol > li::marker {
	font-variant-numeric: tabular-nums;
	font-weight: 700;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(ul, ol) :where(ul, ol) {
	margin-block: 0.45em 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) li > :where(p, ul, ol) {
	margin-block: 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) li > :where(p, ul, ol) + :where(p, ul, ol) {
	margin-block-start: 0.45em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) a {
	color: inherit;
	text-decoration-color: color-mix(in srgb, currentColor 62%, transparent);
	text-decoration-line: underline;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) a:hover {
	text-decoration-color: currentColor;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) a:focus-visible {
	border-radius: 0.15em;
	outline: 2px solid var(--site-focus-color);
	outline-offset: 0.18em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) blockquote {
	background: var(--rich-text-subtle-surface);
	border-radius: var(--site-radius-small);
	font-size: 1.05em;
	line-height: 1.65;
	margin-inline: 0;
	padding: 1.15em 1.3em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) blockquote > * {
	margin-block: 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) blockquote > * + * {
	margin-block-start: 0.65em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) cite {
	display: block;
	font-size: 0.875em;
	font-style: normal;
	opacity: 0.76;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(code, kbd, samp) {
	background: var(--rich-text-subtle-surface);
	border-radius: 0.3em;
	box-decoration-break: clone;
	font-family: ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;
	font-size: 0.88em;
	font-variant-ligatures: none;
	overflow-wrap: anywhere;
	padding: 0.12em 0.35em;
	-webkit-box-decoration-break: clone;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) pre {
	background: var(--rich-text-subtle-surface);
	border-radius: var(--site-radius-small);
	font-size: 0.875em;
	line-height: 1.6;
	max-inline-size: 100%;
	overflow-x: auto;
	padding: 1em 1.1em;
	tab-size: 2;
	white-space: pre;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) pre code {
	background: transparent;
	border-radius: 0;
	font-size: inherit;
	overflow-wrap: normal;
	padding: 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) mark {
	background: color-mix(in srgb, var(--site-focus-color) 38%, transparent);
	border-radius: 0.12em;
	box-decoration-break: clone;
	color: inherit;
	padding-inline: 0.12em;
	-webkit-box-decoration-break: clone;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(sup, sub) {
	font-size: 0.75em;
	line-height: 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) abbr[title] {
	text-decoration-style: dotted;
	text-underline-offset: 0.16em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) hr {
	background: var(--rich-text-divider);
	border: 0;
	block-size: 1px;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) dl {
	margin-block: 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) dt {
	font-weight: 700;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) dd {
	margin-inline: 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) dd + dt {
	margin-block-start: 0.9em;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) table {
	background: transparent;
	border: 1px solid var(--rich-text-table-border);
	border-collapse: separate;
	border-radius: var(--site-radius-small, var(--radius-m, 0.75rem));
	border-spacing: 0;
	display: block;
	font-size: 0.9375em;
	font-variant-numeric: tabular-nums;
	inline-size: 100%;
	max-inline-size: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: thin;
	-webkit-overflow-scrolling: touch;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) caption {
	font-weight: 700;
	padding-block-end: 0.7em;
	text-align: start;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(th, td) {
	border: 0;
	border-block-end: 1px solid var(--rich-text-table-border);
	padding: 0.8em 1em;
	text-align: start;
	vertical-align: top;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) th {
	font-weight: 700;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) thead th {
	background: var(--rich-text-table-header);
	border-block-end-color: var(--rich-text-table-border);
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) tbody tr:nth-child(even) > :where(th, td) {
	background: var(--rich-text-table-row);
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) tbody tr:last-child > :where(th, td) {
	border-block-end: 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(td, th) :where(a, code) {
	overflow-wrap: anywhere;
	word-break: break-word;
}

/*
 * WPConsent supplies its own table borders, zebra striping and hover colors.
 * Keep the correction inside the rich-text scope so the plugin and tables in
 * other contexts retain their own presentation.
 */
.lucratief-rich-text .wpconsent-cookie-policy > * {
	margin-block: 0;
}

.lucratief-rich-text .wpconsent-cookie-category-name {
	font-family: var(--site-font-body);
	font-size: 1.35em;
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.3;
	margin-block-start: var(--rich-text-heading-space);
	text-wrap: pretty;
}

.lucratief-rich-text .wpconsent-cookie-category-name:first-child {
	margin-block-start: 0;
}

.lucratief-rich-text .wpconsent-cookie-category-name + .wpconsent-cookie-category-description {
	margin-block-start: var(--rich-text-heading-follow-space);
}

.lucratief-rich-text .wpconsent-cookie-policy-table {
	background: transparent;
	border: 1px solid var(--rich-text-table-border);
	border-collapse: separate;
	border-radius: var(--site-radius-small, var(--radius-m, 0.75rem));
	border-spacing: 0;
	font-size: inherit;
	margin-block: 0.85em 2.25em;
}

.lucratief-rich-text .wpconsent-cookie-policy-table :where(thead, tbody) {
	display: table;
	inline-size: 100%;
	table-layout: fixed;
}

.lucratief-rich-text .wpconsent-cookie-policy-table :where(th, td) {
	background: transparent;
	border: 0;
	border-block-end: 1px solid var(--rich-text-table-border);
	padding: 0.85em 1em;
	white-space: normal;
}

.lucratief-rich-text .wpconsent-cookie-policy-table thead th {
	background: var(--rich-text-table-header);
}

.lucratief-rich-text .wpconsent-cookie-policy-table tbody > tr:nth-child(even) > :where(th, td),
.lucratief-rich-text .wpconsent-cookie-policy-table tbody > tr:nth-child(even):hover > :where(th, td) {
	background: var(--rich-text-table-row);
}

.lucratief-rich-text .wpconsent-cookie-policy-table tbody > tr:nth-child(odd) > :where(th, td),
.lucratief-rich-text .wpconsent-cookie-policy-table tbody > tr:nth-child(odd):hover > :where(th, td) {
	background: transparent;
}

.lucratief-rich-text .wpconsent-cookie-policy-table tbody > tr:last-child > :where(th, td) {
	border-block-end: 0;
}

.lucratief-rich-text .wpconsent-cookie-policy-table :where(th, td):first-child {
	inline-size: 22%;
	min-inline-size: 11rem;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.lucratief-rich-text .wpconsent-cookie-policy-table :where(th, td):nth-child(2) {
	inline-size: 60%;
	min-inline-size: 28rem;
}

.lucratief-rich-text .wpconsent-cookie-policy-table :where(th, td):last-child {
	inline-size: 18%;
	min-inline-size: 10rem;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(figure, .wp-caption) {
	max-inline-size: 100%;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(img, video, iframe) {
	block-size: auto;
	max-inline-size: 100%;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) iframe {
	border: 0;
}

:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) figcaption,
:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) .wp-caption-text {
	font-size: 0.875em;
	line-height: 1.5;
	margin-block-start: 0.55em;
	opacity: 0.76;
}

@media (max-width: 478px) {
	:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > h2 {
		font-size: 1.25em;
	}

	:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) > h3 {
		font-size: 1.125em;
	}

	.lucratief-rich-text .wpconsent-cookie-category-name {
		font-size: 1.25em;
	}

	.lucratief-rich-text .wpconsent-cookie-policy-table :where(thead, tbody) {
		min-inline-size: 48rem;
	}

	:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) blockquote {
		padding: 1em;
	}

	:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(th, td) {
		padding: 0.65em 0.7em;
	}
}

@media print {
	:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) a {
		text-decoration-color: currentColor;
	}

	:is(.lucratief-rich-text, .brxe-accordion.lucratief-rich-text-accordion .accordion-content-wrapper) :where(pre, table) {
		overflow: visible;
	}
}
