/* Legal / Accessibility */
.legal-page {
	background: #f7f9fa;
	padding: 54px 0 80px;
	color: #223f52;
}

.legal-container {
	max-width: 980px;
}

.legal-heading {
	margin-bottom: 30px;
}

.legal-kicker {
	display: block;
	margin-bottom: 7px;
	color: #5d8195;
	font: 800 .76rem "Montserrat", sans-serif;
	letter-spacing: .15em;
}

.legal-heading h1 {
	margin: 0 0 12px;
	color: #18384f;
	font: 850 clamp(2.4rem, 4vw, 3.8rem)/1.05 "Montserrat", sans-serif;
	letter-spacing: -.035em;
}

.legal-heading p {
	max-width: 760px;
	margin: 0;
	color: #5e7584;
	font-size: 1.06rem;
	line-height: 1.65;
}

.legal-content {
	padding: clamp(24px, 4vw, 42px);
	border: 1px solid #dce6ea;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 9px 28px rgba(18, 63, 88, .05);
}

.legal-content h2 {
	margin: 32px 0 11px;
	color: #18384f;
	font: 800 1.35rem/1.25 "Montserrat", sans-serif;
}

.legal-content h2:first-child {
	margin-top: 0;
}

.legal-content p,
.legal-content li {
	color: #526c7b;
	line-height: 1.75;
}

.legal-content ul,
.legal-content ol {
	padding-left: 1.35rem;
}

.legal-content a,
.legal-help a,
.accessibility-status-card a {
	color: #0b6fa5;
	font-weight: 700;
}

.legal-help {
	margin-top: 22px;
	padding: 24px 26px;
	border-radius: 12px;
	background: #eaf5f0;
}

.legal-help h2 {
	margin: 0 0 7px;
	color: #176545;
	font: 800 1.15rem "Montserrat", sans-serif;
}

.legal-help p {
	margin: 0 0 10px;
	color: #46685b;
}

.accessibility-status-card {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 14px;
	margin-bottom: 22px;
	padding: 18px 20px;
	border: 1px solid #d9e6eb;
	border-radius: 11px;
	background: #fff;
}

.accessibility-status-card span {
	color: #6a808d;
	font-size: .86rem;
}

.accessibility-status-card strong {
	color: #173d55;
	font: 800 1rem "Montserrat", sans-serif;
}

.accessibility-status-card small {
	color: #667d8a;
}

.legal-page a:focus-visible {
	outline: 3px solid #147eb4;
	outline-offset: 3px;
}

@media (max-width: 600px) {
	.legal-page {
		padding-top: 36px;
	}

	.legal-content {
		padding: 22px;
	}
}
