body:has(.machmon-legal-page) {
	font-family: var(--machmon-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);
	font-size: var(--machmon-type-body-size, 14px);
	line-height: var(--machmon-type-body-line, 21px);
	color: var(--color-text, #45586a);
	background: var(--color-bg-light, #f9f9f9);
}

.machmon-legal-page {
	position: relative;
	left: 50%;
	right: 50%;
	width: 100vw;
	margin-left: -50vw;
	margin-right: -50vw;
	padding: 28px 18px 72px;
	background: linear-gradient(180deg, var(--color-bg-subtle, #f4f7f9) 0%, var(--color-bg-light, #f9f9f9) 100%);
	color: var(--color-text, #45586a);
}

.machmon-legal-page__shell {
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
}

.machmon-legal-page__crumbs {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 18px;
	font-size: 14px;
	color: var(--color-text-muted, #64748b);
}

.machmon-legal-page__crumbs a,
.machmon-legal-page__content a {
	color: var(--color-primary, #b2212b);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.16em;
}

.machmon-legal-page__crumbs a:hover,
.machmon-legal-page__crumbs a:focus,
.machmon-legal-page__content a:hover,
.machmon-legal-page__content a:focus {
	text-decoration: underline;
	text-decoration-thickness: 2px;
}

.machmon-legal-page__hero,
.machmon-legal-page__panel {
	border: 1px solid var(--color-border, #dce2e7);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 18px 42px rgba(32, 44, 57, 0.08);
}

.machmon-legal-page__hero {
	padding: 28px 32px;
	margin-bottom: 24px;
}

.machmon-legal-page__eyebrow {
	display: inline-flex;
	align-items: center;
	padding: 6px 12px;
	border-radius: 999px;
	background: #f9e8ea;
	color: var(--color-primary-dark, #870c25);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.machmon-legal-page__hero h1 {
	margin: 14px 0 10px;
	font-size: 34px;
	line-height: 40px;
	font-weight: 700;
	color: var(--color-text-dark, #0f1720);
}

.machmon-legal-page__hero p,
.machmon-legal-page__meta {
	margin: 0;
	max-width: 860px;
	font-size: var(--machmon-type-subsection-size, 18px);
	line-height: var(--machmon-type-subsection-line, 24px);
	color: var(--color-text-muted, #64748b);
}

.machmon-legal-page__meta {
	margin-top: 14px;
	font-size: var(--machmon-type-body-size, 14px);
}

.machmon-legal-page__layout {
	display: grid;
	grid-template-columns: minmax(0, 280px) minmax(0, 1fr);
	gap: 24px;
	align-items: start;
}

.machmon-legal-page__toc {
	position: sticky;
	top: 24px;
}

.machmon-legal-page__panel {
	padding: 28px;
}

.machmon-legal-page__toc h2,
.machmon-legal-page__content h2 {
	margin: 0 0 16px;
	font-size: var(--machmon-type-title-size, 24px);
	line-height: var(--machmon-type-title-line, 30px);
	font-weight: 700;
	color: var(--color-text-dark, #0f1720);
}

.machmon-legal-page__toc ul {
	display: grid;
	gap: 9px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.machmon-legal-page__toc li {
	margin: 0;
}

.machmon-legal-page__toc a {
	display: block;
	padding: 9px 12px;
	border-radius: 8px;
	background: #fff4f2;
	border: 1px solid #f2d7d1;
	color: var(--color-primary, #b2212b);
	font-size: var(--machmon-type-body-size, 14px);
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
}

.machmon-legal-page__toc a:hover,
.machmon-legal-page__toc a:focus {
	background: #fce5df;
}

.machmon-legal-page__content {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
}

.machmon-legal-page__content h3 {
	margin: 22px 0 12px;
	font-size: var(--machmon-type-subsection-size, 18px);
	line-height: var(--machmon-type-subsection-line, 24px);
	font-weight: 700;
	color: var(--color-text-dark, #0f1720);
}

.machmon-legal-page__content p,
.machmon-legal-page__content li {
	margin: 0 0 14px;
	font-size: var(--machmon-type-body-size, 14px);
	line-height: var(--machmon-type-body-line, 21px);
	color: var(--color-text, #45586a);
}

.machmon-legal-page__content p:last-child,
.machmon-legal-page__content li:last-child {
	margin-bottom: 0;
}

.machmon-legal-page__content ul {
	margin: 0 0 14px;
	padding-left: 20px;
	color: var(--color-text, #45586a);
}

.machmon-legal-page__address {
	margin-top: 12px;
	padding-top: 16px;
	border-top: 1px solid #ececef;
}

@media (max-width: 940px) {
	.machmon-legal-page__layout {
		grid-template-columns: 1fr;
	}

	.machmon-legal-page__toc {
		position: static;
	}

	.machmon-legal-page__toc ul {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767.98px) {
	.machmon-legal-page {
		padding: 20px 12px 48px;
	}

	.machmon-legal-page__hero,
	.machmon-legal-page__panel {
		padding: 22px;
	}

	.machmon-legal-page__hero h1 {
		font-size: 28px;
		line-height: 34px;
	}

	.machmon-legal-page__toc ul {
		grid-template-columns: 1fr;
	}
}
