.trace-anime {
	display: block;
	width: 100%;
	height: auto;
	overflow: visible;
	--_epaisseur: var(--trace-epaisseur, 1.5);
	--_contour: var(--trace-contour, 900ms);
	--_pas: var(--trace-pas, 260ms);
	--_remplir: var(--trace-remplir, var(--motion-slow, 500ms));
	--_geste: var(--trace-geste, 2200ms);
	--_fondu: var(--trace-fondu, var(--motion-slow, 500ms));
	--_courbe: var(--trace-courbe, var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)));
	--_rangs: var(--rangs, 1);
	--_vb: var(--vb, 320);
	--_largeur: var(--trace-largeur, 320);
	--_geste-debut: calc((var(--_rangs) - 1) * var(--_pas) + var(--_contour) + var(--_remplir) / 2);
	--_fin: calc(var(--_geste-debut) + var(--_geste));
}
@media (prefers-reduced-motion: no-preference) {
	.trace-anime-arme .trace-anime .trace-anime-contours path {
		stroke-width: calc(var(--_epaisseur) * var(--_vb) / var(--_largeur));
		stroke-dasharray: calc(var(--l, 0) * 1px) calc(var(--l, 0) * 1px);
		stroke-dashoffset: calc(var(--l, 0) * 1px);
		fill-opacity: 0;
	}
	.trace-anime-arme .trace-anime .trace-anime-geste mask path {
		stroke-dasharray: calc(var(--l, 0) * 1px) calc(var(--l, 0) * 1px);
		stroke-dashoffset: calc(var(--l, 0) * 1px);
	}
	.trace-anime-arme .trace-anime .trace-anime-voile,
	.trace-anime-arme .trace-anime .trace-anime-fondu,
	.trace-anime-arme .trace-anime .trace-anime-net {
		opacity: 0;
	}
	.trace-anime-arme .trace-anime .trace-anime-lettre {
		transform: translateX(calc(var(--dx, 0) * 1px));
	}
	.trace-anime-arme .trace-anime.est-dessine .trace-anime-contours path {
		animation:
			trace-anime-trait var(--_contour) var(--_courbe) calc(var(--rang, 0) * var(--_pas)) both,
			trace-anime-remplir var(--_remplir) var(--_courbe)
				calc((var(--_rangs) - 1) * var(--_pas) + var(--_contour) - var(--motion-instant, 100ms)) both;
	}
	.trace-anime-arme .trace-anime.est-dessine .trace-anime-geste mask path {
		animation: trace-anime-trait calc(var(--part, 1) * var(--_geste)) var(--trace-plume, linear)
			calc(var(--_geste-debut) + var(--debut, 0) * var(--_geste)) both;
	}
	.trace-anime-arme .trace-anime.est-dessine .trace-anime-voile {
		animation: trace-anime-apparaitre var(--motion-base, 300ms) linear var(--_fin) both;
	}
	.trace-anime-arme .trace-anime.est-dessine .trace-anime-fondu {
		animation: trace-anime-apparaitre var(--_fondu) var(--_courbe) var(--_fin) both;
	}
	.trace-anime-arme .trace-anime.est-dessine .trace-anime-flou {
		animation: trace-anime-flou var(--_geste) var(--_courbe) var(--_geste-debut) both;
	}
	.trace-anime-arme .trace-anime.est-dessine .trace-anime-net {
		animation: trace-anime-apparaitre calc(var(--_geste) * 2 / 3) var(--_courbe)
			calc(var(--_geste-debut) + var(--_geste) / 3) both;
	}
	.trace-anime-arme .trace-anime.est-dessine .trace-anime-lettre {
		animation: trace-anime-resserrer var(--_geste) var(--_courbe) var(--_geste-debut) both;
	}
	.trace-anime-arme .trace-anime:not(.est-guette):not(.est-dessine) .trace-anime-contours path {
		animation: trace-anime-remplir var(--_remplir) var(--_courbe) 4s both;
	}
	.trace-anime-arme .trace-anime:not(.est-guette):not(.est-dessine) .trace-anime-voile,
	.trace-anime-arme .trace-anime:not(.est-guette):not(.est-dessine) .trace-anime-fondu,
	.trace-anime-arme .trace-anime:not(.est-guette):not(.est-dessine) .trace-anime-net {
		animation: trace-anime-apparaitre var(--_remplir) linear 4s both;
	}
	.trace-anime-arme .trace-anime:not(.est-guette):not(.est-dessine) .trace-anime-lettre {
		transform: none;
	}
}
@keyframes trace-anime-trait {
	to {
		stroke-dashoffset: calc((var(--l, 0) - var(--lv, var(--l, 0))) * 1px);
	}
}
@keyframes trace-anime-remplir {
	to {
		fill-opacity: 1;
		stroke-opacity: 0;
	}
}
@keyframes trace-anime-apparaitre {
	to {
		opacity: 1;
	}
}
@keyframes trace-anime-flou {
	0% {
		opacity: 0;
	}
	30% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
@keyframes trace-anime-resserrer {
	to {
		transform: none;
	}
}
.be-heros-signe .dtb-hero-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.be-heros-signe .dtb-hero-inner > .dtb-breadcrumb,
.be-heros-signe .dtb-hero-inner > .dtb-hero-eyebrow {
	order: 1;
}
.be-heros-signe .dtb-hero-inner > .be-heros-logo {
	order: 2;
	width: min(240px, 64vw);
	margin: 28px auto 40px;
}
.be-heros-signe .dtb-hero-inner > .dtb-hero-actions {
	order: 3;
	margin-top: 0;
}
.be-heros-signe .dtb-hero-inner > .dtb-hero-title {
	order: 4;
	margin-top: 64px;
}
.be-heros-signe .dtb-hero-inner > .dtb-hero-lieu { order: 5; }
.be-heros-signe .dtb-hero-inner > .dtb-hero-sub { order: 6; }
.be-heros-signe .dtb-hero-inner > .dtb-hero-reassurance { order: 7; }
.be-heros-logo .trace-anime {
	margin-inline: auto;
}
@media (min-width: 768px) {
	.be-heros-signe .dtb-hero-inner > .be-heros-logo {
		width: 320px;
		margin: 48px auto 48px;
	}
	.be-heros-signe .dtb-hero-inner > .dtb-hero-title {
		margin-top: 112px;
	}
}
