.page .nd-legal {
	--nd-ink: #211c19;
	--nd-muted: #6d625a;
	--nd-sand: #f6f1e9;
	--nd-line: #e4dacf;
	--nd-accent: #9b704e;
	max-width: 920px;
	margin: 0 auto 5rem;
	color: var(--nd-ink);
	font-size: 16px;
	line-height: 1.75;
}

.nd-legal__hero {
	position: relative;
	margin: 0 0 2.75rem;
	padding: clamp(2rem, 6vw, 4.25rem);
	overflow: hidden;
	border: 1px solid var(--nd-line);
	border-radius: 2px;
	background: linear-gradient(135deg, #fbf8f3 0%, #eee4d7 100%);
}

.nd-legal__hero::after {
	position: absolute;
	top: -55px;
	right: -40px;
	width: 210px;
	height: 210px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 229, 174, .7) 0%, rgba(255, 229, 174, 0) 68%);
	content: "";
}

.nd-legal__hero h1 {
	max-width: 720px;
	margin: .15rem 0 .85rem;
	font-size: clamp(2.25rem, 7vw, 4.25rem);
	line-height: 1.02;
}

.nd-legal__hero p:not(.nd-legal__eyebrow) {
	max-width: 690px;
	margin-bottom: .8rem;
	color: var(--nd-muted);
	font-size: clamp(1rem, 2.4vw, 1.2rem);
}

.nd-legal__hero span,
.nd-legal__eyebrow {
	color: var(--nd-accent);
	font-size: .76rem;
	font-weight: 600;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.nd-legal section {
	padding: 1.75rem 0;
	border-bottom: 1px solid var(--nd-line);
}

.nd-legal section h2 {
	margin: 0 0 .75rem;
	font-size: clamp(1.45rem, 3.5vw, 2rem);
	line-height: 1.2;
}

.nd-legal section p,
.nd-legal section ul {
	margin: 0 0 .85rem;
}

.nd-legal section p:last-child,
.nd-legal section ul:last-child {
	margin-bottom: 0;
}

.nd-legal a {
	color: var(--nd-accent);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: .18em;
}

.nd-legal__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(1.5rem, 5vw, 4rem);
}

.nd-legal__notice,
.nd-legal__form {
	margin: 1.25rem 0;
	padding: clamp(1.4rem, 4vw, 2.25rem) !important;
	border: 1px solid var(--nd-line) !important;
	background: var(--nd-sand);
}

.nd-legal__form p:nth-last-child(-n+5) {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: .9rem;
}

.nd-legal__steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	margin: 0 0 2rem;
	background: var(--nd-line);
	border: 1px solid var(--nd-line);
}

.nd-legal__steps > div {
	padding: 1.4rem;
	background: #fff;
}

.nd-legal__steps strong {
	display: inline-grid;
	width: 2rem;
	height: 2rem;
	margin-bottom: .8rem;
	place-items: center;
	border-radius: 50%;
	background: var(--nd-sand);
	color: var(--nd-accent);
}

.nd-legal__steps h2 {
	margin: 0 0 .35rem;
	font-size: 1.25rem;
}

.nd-legal__steps p {
	margin: 0;
	color: var(--nd-muted);
	font-size: .92rem;
}

@media (max-width: 700px) {
	.page .nd-legal {
		font-size: 15px;
	}

	.nd-legal__grid,
	.nd-legal__steps {
		grid-template-columns: 1fr;
	}

	.nd-legal__hero {
		margin-right: -10px;
		margin-left: -10px;
	}
}
