.hcmc-legal-wrapper {
	--lp-text: #0f172a;
	--lp-muted: #475569;
	--lp-brand: #0d5e95;
	--lp-border: #dbe7f3;
	color: var(--lp-text);
	background: #fff;
}

.hcmc-legal-full { width: 100%; }
.hcmc-legal-container { width: min(1120px, 100% - 40px); margin: 0 auto; }

.hcmc-legal-hero {
	padding: 42px 0 26px;
	background: linear-gradient(180deg, #eef7ff 0%, #fff 92%);
	border-bottom: 1px solid #e8f1fa;
}
.hcmc-legal-kicker {
	margin: 0 0 8px;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .03em;
	color: #0a4b78;
}
.hcmc-legal-hero h1 { margin: 0 0 10px; font-size: clamp(32px, 4.3vw, 48px); line-height: 1.1; }
.hcmc-legal-hero p { margin: 0; color: var(--lp-muted); line-height: 1.75; max-width: 920px; }
.hcmc-legal-effective { margin-top: 10px !important; color: #1f3b55 !important; }

.hcmc-legal-layout {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	gap: 14px;
	padding: 24px 0 30px;
	align-items: start;
}
.hcmc-legal-layout__side { position: sticky; top: 112px; }

.hcmc-legal-nav {
	display: grid;
	gap: 8px;
	padding: 10px;
	background: #fff;
	border: 1px solid #d8e5f2;
	border-radius: 14px;
}
.hcmc-legal-chip {
	display: inline-flex;
	width: 100%;
	padding: 8px 11px;
	border-radius: 10px;
	border: 1px solid #caddee;
	background: #fff;
	color: #0d4266;
	text-decoration: none;
	font-weight: 600;
	font-size: 13px;
}
.hcmc-legal-chip:hover, .hcmc-legal-chip:focus-visible, .hcmc-legal-chip.is-active {
	background: #0d5e95;
	border-color: #0d5e95;
	color: #fff;
}

.hcmc-legal-section {
	padding: 24px 0;
	border-bottom: 1px solid #edf3f9;
	scroll-margin-top: 96px;
}
.hcmc-legal-section:last-child { border-bottom: 0; }
.hcmc-legal-section h2 { margin: 0 0 10px; font-size: clamp(24px, 3vw, 34px); line-height: 1.2; }
.hcmc-legal-section p { margin: 0; color: var(--lp-muted); line-height: 1.8; }
.hcmc-legal-section p + p { margin-top: 12px; }
.hcmc-legal-section ul {
	margin: 0;
	padding-left: 18px;
	display: grid;
	gap: 6px;
	color: var(--lp-muted);
	line-height: 1.7;
}
.hcmc-legal-section--tint {
	background: #f8fbff;
	border: 1px solid #e6eef7;
	border-radius: 14px;
	padding: 20px;
	margin: 12px 0;
}
.hcmc-legal-section--note {
	background: #f9fbfd;
	border: 1px solid #e6ecf3;
	border-radius: 14px;
	padding: 20px;
	margin: 12px 0;
}
.hcmc-legal-section--alert {
	background: #fff3f1;
	border: 1px solid #efb6ad;
	border-radius: 14px;
	padding: 20px;
	margin: 12px 0;
}
.hcmc-legal-section--alert h2 { color: #7f1d1d; }
.hcmc-legal-section--alert p { color: #3f2a2a; }

@media (max-width: 1100px) {
	.hcmc-legal-layout { display: block; }
	.hcmc-legal-layout__side { position: static; margin-bottom: 10px; }
}

@media (max-width: 768px) {
	.hcmc-legal-container { width: min(1120px, 100% - 24px); }
	.hcmc-legal-hero { padding: 34px 0 22px; }
	.hcmc-legal-nav { padding: 0; border: 0; background: transparent; }
	.hcmc-legal-chip { width: auto; }
	.hcmc-legal-section--tint, .hcmc-legal-section--note, .hcmc-legal-section--alert { padding: 16px; }
}
