/* ------------------------------------------------------------------
 * Legal pages (Privacy Policy, Legal Notice, Cookie Policy)
 *
 * Layout is handled in Bricks: section > container (.legal-body) >
 * post-title (.legal-title) + post-content. This file only styles the
 * prose that WordPress renders inside post-content, which Bricks cannot
 * reach element by element.
 * ------------------------------------------------------------------ */

body.tca-legal .brxe-post-content {
	color: var(--color-tertiary);
	font-size: 16px;
	line-height: 1.7;
}

body.tca-legal .brxe-post-content h2 {
	font-size: 26px;
	line-height: 1.2;
	letter-spacing: -0.5px;
	color: var(--color-primary);
	margin: 56px 0 16px;
	padding-top: 24px;
	border-top: 1px solid var(--color-grey);
}

body.tca-legal .brxe-post-content h3 {
	font-size: 18px;
	line-height: 1.3;
	color: var(--color-primary);
	margin: 32px 0 12px;
}

body.tca-legal .brxe-post-content p {
	margin: 0 0 16px;
}

body.tca-legal .brxe-post-content strong {
	color: var(--color-primary);
	font-weight: 600;
}

body.tca-legal .brxe-post-content a {
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}

body.tca-legal .brxe-post-content a:hover {
	color: var(--color-primary);
}

body.tca-legal .brxe-post-content ul,
body.tca-legal .brxe-post-content ol {
	margin: 0 0 16px;
	padding-left: 22px;
}

body.tca-legal .brxe-post-content li {
	margin-bottom: 8px;
}

/* Intro paragraph */
body.tca-legal .brxe-post-content .legal-lead {
	font-size: 18px;
	line-height: 1.6;
	color: var(--color-primary);
	margin-bottom: 8px;
	padding-bottom: 24px;
}

/* Address / contact blocks */
body.tca-legal .brxe-post-content .legal-contact {
	list-style: none;
	padding: 24px 28px;
	margin: 0 0 24px;
	background: var(--color-light);
	border-left: 3px solid var(--bricks-color-accent);
	border-radius: 4px;
}

body.tca-legal .brxe-post-content .legal-contact li {
	margin-bottom: 6px;
}

body.tca-legal .brxe-post-content .legal-contact li:last-child {
	margin-bottom: 0;
}

body.tca-legal .brxe-post-content .legal-meta {
	font-size: 14px;
	color: var(--color-tertiary);
}

/* ---- Complianz generated document ---- */
/* Complianz caps its own document at max-width:800px, which left the cookie
   pages 40px narrower than the other legal pages and flush left inside the
   container. The reading measure is decided in Bricks (.legal-body), so let
   the document fill it. */
body.tca-legal .brxe-post-content #cmplz-document {
	max-width: 100%;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
}

body.tca-legal .brxe-post-content .cmplz-document h3 {
	border-top: 0;
	padding-top: 0;
}

/* Complianz obfuscates emails with a decoy domain span but ships no rule to
   hide it — without this the fake "ex.com" is rendered in the contact block. */
body.tca-legal .brxe-post-content .cmplz-fmail-domain {
	display: none;
}

/* Cookie tables need room for three columns. Break out of the reading measure
   when it is narrower than 792px, but never end up narrower than the prose:
   the container width is set in Bricks (.legal-body) and may change. */
body.tca-legal .brxe-post-content #cmplz-cookies-overview {
	--cookie-table-width: max(100%, min(792px, calc(100vw - 128px)));
	width: var(--cookie-table-width);
	margin-inline: calc((100% - var(--cookie-table-width)) / 2);
}

body.tca-legal .brxe-post-content table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 0 24px;
	font-size: 14px;
}

body.tca-legal .brxe-post-content table th,
body.tca-legal .brxe-post-content table td {
	border: 1px solid var(--color-grey);
	padding: 10px 12px;
	text-align: left;
	vertical-align: top;
}

body.tca-legal .brxe-post-content table th {
	background: var(--color-light);
	color: var(--color-primary);
	font-weight: 600;
	width: 30%;
}

@media (max-width: 991px) {
	body.tca-legal .brxe-post-content #cmplz-cookies-overview {
		width: 100%;
		margin-inline: 0;
	}
}

@media (max-width: 767px) {
	body.tca-legal .brxe-post-content h2 {
		font-size: 22px;
		margin-top: 40px;
	}

	body.tca-legal .brxe-post-content .legal-lead {
		font-size: 17px;
	}
}
