/* Shared typography for the privacy policy and user agreement documents. */
.legal-richtext {
	width: 100%;
	margin: 0;
	padding: 36px 0 44px;
	color: #475569;
	font-size: 15px;
	line-height: 1.9;
	overflow-wrap: anywhere;
}

.legal-richtext > :first-child {
	margin-top: 0;
}

.legal-richtext h2,
.legal-richtext h3,
.legal-richtext h4 {
	color: #0f172a;
	font-weight: 700;
}

.legal-richtext h2 {
	margin: 30px 0 16px;
	font-size: 22px;
	line-height: 1.45;
}

.legal-richtext h3,
.legal-section-title {
	position: relative;
	margin: 34px 0 15px;
	padding: 0 0 0 16px;
	color: #0f172a;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.45;
}

.legal-richtext h3::before,
.legal-section-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 3px;
	width: 4px;
	height: 22px;
	border-radius: 3px;
	background: #2563eb;
}

.legal-richtext h4 {
	margin: 27px 0 12px;
	color: #1d4ed8;
	font-size: 16px;
	line-height: 1.6;
}

.legal-richtext p {
	margin: 0 0 17px;
	padding: 0;
	color: #475569;
	font-size: 15px;
	line-height: 1.95;
	text-indent: 0;
	word-break: normal;
}

.legal-richtext p.legal-lead {
	margin-bottom: 29px;
	padding: 15px 17px;
	border: 1px solid #dbeafe;
	border-left: 4px solid #2563eb;
	border-radius: 0 8px 8px 0;
	background: #f8fbff;
	color: #334155;
}

.legal-richtext p.spec,
.legal-richtext p.pad-l-2em,
.legal-richtext p.pad-l-4em {
	padding-left: 0;
}

.legal-richtext p.indent-2em {
	text-indent: 0;
}

.legal-richtext strong {
	color: #0f172a;
	font-weight: 700;
}

.legal-richtext a {
	color: #1d4ed8;
	text-decoration: underline;
	text-decoration-color: #bfdbfe;
	text-underline-offset: 2px;
}

.legal-richtext ul,
.legal-richtext ol {
	margin: 0 0 22px;
	padding-left: 28px;
	color: #475569;
}

.legal-richtext li {
	margin: 0 0 11px;
	padding-left: 5px;
	font-size: 15px;
	line-height: 1.9;
}

.legal-richtext li::marker {
	color: #2563eb;
	font-weight: 700;
}

.legal-richtext table {
	width: 100%;
	margin: 22px 0;
	border-collapse: collapse;
	font-size: 14px;
}

.legal-richtext th,
.legal-richtext td {
	padding: 10px 12px;
	border: 1px solid #e2e8f0;
	text-align: left;
	vertical-align: top;
}

.legal-richtext th {
	background: #f8fafc;
	color: #0f172a;
	font-weight: 700;
}

@media (max-width: 900px) {
	.legal-richtext {
		padding-top: 27px;
		padding-bottom: 30px;
	}
}

@media (max-width: 560px) {
	.legal-richtext {
		padding-top: 24px;
		padding-bottom: 14px;
		font-size: 14px;
	}

	.legal-richtext h2 {
		font-size: 20px;
	}

	.legal-richtext h3,
	.legal-section-title {
		margin-top: 27px;
		padding-left: 13px;
		font-size: 18px;
	}

	.legal-richtext h3::before,
	.legal-section-title::before {
		top: 2px;
		height: 20px;
	}

	.legal-richtext h4 {
		margin-top: 22px;
		font-size: 16px;
	}

	.legal-richtext p,
	.legal-richtext li {
		font-size: 14px;
		line-height: 1.85;
	}

	.legal-richtext p.legal-lead {
		margin-bottom: 24px;
		padding: 13px 14px;
	}

	.legal-richtext ul,
	.legal-richtext ol {
		padding-left: 24px;
	}

	.legal-richtext li {
		padding-left: 3px;
	}

	.legal-richtext table {
		display: block;
		overflow-x: auto;
		white-space: nowrap;
	}
}
