.tm-legal-page .site-content .ast-container,
.tm-legal-page .site-main,
.tm-legal-page .site-main > article,
.tm-legal-page .entry-content {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.tm-legal-page #primary {
	margin: 0 !important;
}

.tm-legal {
	max-width: none !important;
	padding: 0 !important;
	background: var(--tm-white);
}

.tm-legal-hero {
	padding: clamp(72px, 10vw, 132px) max(24px, calc((100vw - 1180px) / 2));
	background: var(--tm-sand);
}

.tm-legal-hero > * {
	max-width: 900px;
}

.tm-legal-eyebrow {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 0 24px;
	color: var(--tm-caramel-deep);
	font-size: .76rem;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.tm-legal-eyebrow::before {
	content: "";
	width: 48px;
	height: 1px;
	background: currentColor;
}

.tm-legal-title {
	margin: 0;
	color: var(--tm-ink);
	font-family: var(--tm-serif);
	font-size: clamp(3.25rem, 7vw, 6.4rem);
	font-weight: 400;
	letter-spacing: -.045em;
	line-height: .98;
}

.tm-legal-lede {
	max-width: 760px;
	margin: 28px 0 0;
	color: var(--tm-ink);
	font-size: clamp(1.1rem, 2vw, 1.35rem);
	line-height: 1.7;
}

.tm-legal-updated {
	margin: 26px 0 0;
	color: var(--tm-muted);
	font-size: .82rem;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.tm-legal-body {
	padding: clamp(64px, 9vw, 112px) 24px;
}

.tm-legal-body > * {
	max-width: 820px;
	margin-right: auto;
	margin-left: auto;
}

.tm-legal-body h2 {
	margin-top: 58px;
	margin-bottom: 18px;
	color: var(--tm-ink);
	font-family: var(--tm-serif);
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 400;
	letter-spacing: -.025em;
	line-height: 1.15;
}

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

.tm-legal-body p,
.tm-legal-body li {
	color: #35423d;
	font-size: 1rem;
	line-height: 1.8;
}

.tm-legal-body ul {
	padding-left: 1.25rem;
}

.tm-legal-body li + li {
	margin-top: 12px;
}

.tm-legal-body a {
	color: #704532;
	font-weight: 650;
}

.tm-legal-body a:hover,
.tm-legal-body a:focus-visible {
	color: var(--tm-ink);
}

.tm-legal-notice {
	margin-top: 30px;
	padding: 24px 26px;
	border-left: 3px solid var(--tm-caramel-deep);
	background: var(--tm-cream);
}

.tm-legal-contact {
	margin-top: 72px;
	padding: clamp(30px, 5vw, 48px);
	background: var(--tm-ink);
}

.tm-legal-contact h2,
.tm-legal-contact p {
	color: var(--tm-white);
}

.tm-legal-contact h2 {
	margin-top: 0;
}

.tm-legal-contact a {
	color: #f4cbae;
}

@media (max-width: 544px) {
	.tm-legal-hero {
		padding-top: 56px;
		padding-bottom: 64px;
	}

	.tm-legal-title {
		font-size: clamp(2.75rem, 16vw, 4rem);
	}

	.tm-legal-body {
		padding-top: 54px;
		padding-bottom: 72px;
	}

	.tm-legal-body h2 {
		margin-top: 46px;
	}
}
