/* The policy pages: contents list, sections and the way back to the top. These lived in the stylesheet
   every page loads, which had no room left for the header, footer and form fixes of 4.2.0. */

.bnb-legal-content section {
	border-block-start: 1px solid var(--bnb-line);
	padding-block: 1.6rem;
	scroll-margin-block-start: var(--bnb-space-6);
}

.bnb-legal-content h2 {
	font-size: 1.5rem;
	margin-block: 0 0.5rem;
}

.bnb-legal-content p {
	color: var(--bnb-ink-soft);
	font-size: 1.08rem;
}

.bnb-legal-toc {
	background: var(--bnb-surface);
	border: 1px solid var(--bnb-line);
	border-radius: var(--bnb-r);
	box-shadow: var(--bnb-shadow-sm);
	margin-block: var(--bnb-space-6);
	padding: var(--bnb-space-5);
}

.bnb-legal-toc h2 {
	font-size: 1.2rem;
	margin-block: 0 var(--bnb-space-3);
}

.bnb-legal-toc ol {
	columns: 2;
	margin: 0;
	padding-inline-start: 1.5rem;
}

/* Padding, not margin: a column break drops the top margin of the first item in the second column,
   which started that column 8px higher than the first and left no row lined up. */
.bnb-legal-toc li {
	break-inside: avoid;
	padding-block: 0.25rem;
}

.bnb-legal-back {
	display: inline-block;
	font-size: 0.82rem;
	font-weight: 700;
	margin-block-start: var(--bnb-space-2);
}

/* The contact form shares this route: each label sits closer to its own field than to the one above. */
.bnb-contact-form > label:not(:first-of-type) {
	margin-block-start: 0.6rem;
}

@media (max-width: 42.5rem) {
	.bnb-legal-toc ol {
		columns: 1;
	}
}
