.hvl-ml-toc {
	--ml-toc-ring: rgba(20, 22, 29, 0.09);
	border-radius: 20px;
	padding: 18px 16px;
	background-color: var(--e-global-color-blanc, #fff);
	box-shadow: inset 0 0 0 1px var(--ml-toc-ring);
	font-family: var(--e-global-typography-text-font-family), sans-serif;
}

@media (min-width: 1000px) {
	.hvl-ml-aside > .elementor-widget-hvl-ml-toc {
		position: sticky;
		top: 96px;
	}
}

.hvl-ml-toc__lbl {
	margin: 0 0 10px;
	font-family: var(--e-global-typography-label-font-family), ui-monospace, monospace;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--e-global-color-gris, #6a6f7d);
}

.hvl-ml-toc ol {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: hvl-ml-toc;
}

.hvl-ml-toc li {
	margin: 0;
	counter-increment: hvl-ml-toc;
}

.hvl-ml-toc a {
	display: block;
	border-radius: 9px;
	padding: 7px 8px;
	font-size: 14.5px;
	font-weight: 500;
	line-height: 1.35;
	color: var(--e-global-color-text, #14161d);
	text-decoration: none;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.hvl-ml-toc--num a {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	gap: 8px;
}

.hvl-ml-toc--num a::before {
	content: counter(hvl-ml-toc, decimal-leading-zero);
	font-family: var(--e-global-typography-label-font-family), ui-monospace, monospace;
	font-size: 11.5px;
	line-height: 1.8;
	color: var(--e-global-color-gris, #6a6f7d);
}

.hvl-ml-toc a:hover {
	background-color: rgba(20, 22, 29, 0.06);
}

.hvl-ml-toc a[aria-current="true"],
.hvl-ml-toc a[aria-current="true"]::before {
	color: var(--e-global-color-primary, #08739f);
}

.hvl-ml-toc a[aria-current="true"] {
	background-color: var(--e-global-color-azur_50, #eef8fd);
}

.hvl-ml-anchor {
	scroll-margin-top: 96px;
}

@media (max-width: 999px) {
	.e-con.hvl-ml-layout {
		flex-direction: column;
	}

	.e-con.hvl-ml-layout > .e-con {
		--width: 100%;
		width: 100%;
	}
}

.hvl-ml-t .elementor-heading-title {
	margin: 0;
}

.hvl-ml-h1 .elementor-heading-title {
	font-size: 30px;
}

@media (min-width: 640px) {
	.hvl-ml-h1 .elementor-heading-title {
		font-size: 38px;
	}
}

@media (min-width: 810px) {
	.hvl-ml-h1 .elementor-heading-title {
		font-size: 44px;
	}
}

.hvl-ml-h2 .elementor-heading-title {
	font-size: 22px;
}

@media (min-width: 810px) {
	.hvl-ml-h2 .elementor-heading-title {
		font-size: 26px;
	}
}

.hvl-ml-lede .elementor-heading-title {
	max-width: 52ch;
}

.hvl-ml-p .elementor-heading-title {
	max-width: 55ch;
}

.hvl-ml-flag .elementor-heading-title {
	max-width: 55ch;
}

.e-con.hvl-ml-note,
.e-con.hvl-ml-end {
	font-size: 14.5px;
	max-width: 54ch;
}

.hvl-ml-p strong,
.hvl-ml-note strong,
.hvl-ml-end strong,
.hvl-ml-flag strong {
	font-weight: 600;
	color: var(--e-global-color-text, #14161d);
}

.hvl-ml-flag strong {
	color: inherit;
}

.hvl-ml-p a,
.hvl-ml-lede a,
.hvl-ml-note a,
.hvl-ml-end a {
	color: var(--e-global-color-primary, #08739f);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}

.hvl-ml-p a:hover,
.hvl-ml-lede a:hover,
.hvl-ml-note a:hover,
.hvl-ml-end a:hover {
	color: var(--e-global-color-azur_deep, #032838);
}

.hvl-ml-end code {
	padding: 1px 5px;
	border-radius: 5px;
	font-family: var(--e-global-typography-label-font-family), ui-monospace, monospace;
	font-size: 0.88em;
	background-color: rgba(20, 22, 29, 0.06);
}
