/* ================================================================
 * Privacy policy page
 * ================================================================ */

.policy-root,
.policy-root * {
	box-sizing: border-box;
}

.policy-root {
	color: var(--mt-ink);
	font-family: var(--mt-font-sans);
	line-height: 1.8;
}

.policy-root p,
.policy-root ol {
	margin-top: 0;
}

body.policy-page #container {
	padding-bottom: 0;
}

body.policy-page .free-trial-cta--before-site-footer {
	margin-top: 0;
}

.policy-hero {
	padding: 38px 0 46px;
	background: var(--mt-canvas);
}

.policy-hero__title,
#container .policy-hero__title {
	margin: 0;
	color: var(--mt-navy-950);
	font-size: clamp(30px, 4vw, 44px);
	font-weight: 700;
	line-height: 1.22;
	letter-spacing: 0;
}

.policy-hero__lead {
	max-width: 800px;
	margin: 16px 0 0;
	color: var(--mt-muted);
	font-size: 16px;
	line-height: 1.8;
}

.policy-content {
	padding: 56px 0 72px;
	background: var(--mt-paper);
}

.policy-content__inner {
	width: 100%;
}

.policy-section {
	padding: 0 0 32px;
	border-bottom: 1px solid var(--mt-line);
}

.policy-section + .policy-section {
	margin-top: 32px;
}

.policy-section h2,
#container .policy-section h2 {
	margin: 0 0 12px;
	padding: 0;
	background: none;
	color: var(--mt-navy-950);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0;
}

.policy-section p,
.policy-section li {
	color: var(--mt-muted);
	font-size: 16px;
	line-height: 1.8;
}

.policy-section p {
	margin-bottom: 0;
}

.policy-section ol {
	margin-bottom: 0;
	padding-left: 1.5em;
}

.policy-section li + li {
	margin-top: 6px;
}

.policy-section--contact {
	padding: 24px 26px;
	border: 0;
	border-radius: var(--mt-radius-md);
	background: var(--mt-purple-100);
}

.policy-section p.policy-contact {
	margin-top: 14px;
	color: var(--mt-ink);
	font-weight: 700;
}

.policy-contact a,
#container .policy-contact a {
	color: var(--mt-navy-800);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.policy-contact a:hover,
#container .policy-contact a:hover {
	color: var(--mt-purple-700);
}

@media (min-width: 640px) {
	.policy-hero {
		padding: 48px 0 56px;
	}
}

@media (max-width: 768px) {
	.policy-hero {
		padding: 30px 0 38px;
	}

	.policy-content {
		padding: 40px 0 52px;
	}

	.policy-section,
	.policy-section--contact {
		padding-bottom: 26px;
	}

	.policy-section + .policy-section {
		margin-top: 26px;
	}

	.policy-section h2,
	#container .policy-section h2 {
		font-size: 21px;
	}

	.policy-section--contact {
		padding: 22px 20px;
	}
}
