/* ==========================================================================
   LEGAL CSS - Privacy Policy, Terms and Conditions, Cookie Policy,
   Disclaimer. Loaded only on those four pages (see inc/enqueue.php).

   Deliberately restrained. These are reference documents, not marketing
   pages: someone arrives with one question, finds the answer and leaves.
   The only thing here that earns its keep visually is the contents list -
   the rest is print support.
   ========================================================================== */

/* --- "On this page" contents list (built in inc/legal-toc.php) -------------
   The selectors are prefixed with .entry-content because the nav is injected
   into the post content, so the generic .entry-content ul/a rules in base.css
   would otherwise win on specificity.
   -------------------------------------------------------------------------- */
.legal-toc {
	background: var(--color-bg-alt);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	padding: 20px 22px;
	margin-bottom: 2em;
}
.legal-toc__title {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--color-text-muted);
	margin: 0 0 12px;
}
.entry-content .legal-toc__list {
	list-style: none;
	margin: 0;
	padding: 0;
	/* Two columns once there's room - 16 sections in a single stack pushes
	   the document itself below the fold. */
	columns: 2;
	column-gap: 28px;
}
.entry-content .legal-toc__list li {
	margin: 0 0 7px;
	break-inside: avoid;
}
.entry-content .legal-toc__list a {
	font-size: 14.5px;
	line-height: 1.45;
	color: var(--color-navy-900);
	text-decoration: none;
}
.entry-content .legal-toc__list a:hover,
.entry-content .legal-toc__list a:focus {
	color: var(--color-primary);
	text-decoration: underline;
}

@media (max-width: 599px) {
	.entry-content .legal-toc__list {
		columns: 1;
	}
}

/* Breathing room above a section when it's jumped to, so the heading doesn't
   land flush against the top of the viewport. */
.entry-content h2 {
	scroll-margin-top: 24px;
}

/* --- Print ----------------------------------------------------------------
   People save and print terms far more than any other page on a site. The
   goal here is a clean document: no site furniture, no wasted ink, and no
   headings stranded at the bottom of a page away from their section.
   -------------------------------------------------------------------------- */
@media print {
	@page {
		margin: 18mm 16mm;
	}

	.site-header,
	.mindship-ticker,
	.mobile-nav,
	.search-overlay,
	.skip-link,
	.floating-social,
	.bg-pre-footer,
	.site-footer,
	.legal-toc {
		display: none !important;
	}

	body {
		background: #fff;
		color: #000;
		font-size: 11pt;
		line-height: 1.5;
	}

	/* The page template caps content at 820px and pads the section for screen
	   layout; on paper the margin box already handles both. */
	.section {
		padding-block: 0;
	}
	.container {
		max-width: none !important;
		width: auto;
		padding-inline: 0;
	}

	.entry-content {
		font-size: 11pt;
		line-height: 1.5;
	}
	.entry-content h2 {
		font-size: 13pt;
		margin-top: 1.4em;
	}
	.entry-content h3 {
		font-size: 11.5pt;
	}
	.entry-content a {
		color: #000;
		text-decoration: none;
	}

	/* A printed policy is useless if its references are invisible, so spell
	   the destination out - but only for real destinations, not the in-page
	   section links, which mean nothing on paper. */
	.entry-content a[href^="http"]::after {
		content: " (" attr(href) ")";
		font-size: 9pt;
		word-break: break-all;
	}
	.entry-content a[href^="mailto:"]::after {
		content: "";
	}

	h1,
	.entry-content h2,
	.entry-content h3 {
		break-after: avoid;
		page-break-after: avoid;
	}
	.entry-content li,
	.entry-content p {
		break-inside: avoid;
		page-break-inside: avoid;
	}
	.entry-content hr {
		display: none;
	}
}
