.be-heros-plein {
	--be-entete: 69px;
	--be-haut: 16px;
	--be-premier-ecran: calc(100vh - var(--be-entete) - var(--be-haut));
	position: relative;
	overflow: hidden;
}
.be-heros .dtb-hero.be-heros-plein {
	padding-top: var(--be-haut);
}
@supports (height: 100svh) {
	.be-heros-plein {
		--be-premier-ecran: calc(100svh - var(--be-entete) - var(--be-haut));
	}
}
.be-heros-plein .dtb-hero-inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: auto 1fr auto auto 1fr auto auto auto auto auto;
	justify-items: center;
}
.be-heros-plein .dtb-hero-inner::before {
	content: "";
	grid-row: 1 / 7;
	grid-column: 1;
	min-height: var(--be-premier-ecran);
}
.be-heros-plein .dtb-hero-inner > .dtb-breadcrumb,
.be-heros-plein .dtb-hero-inner > .dtb-hero-eyebrow {
	grid-row: 1;
	grid-column: 1;
	margin-top: clamp(20px, 6svh, 64px);
}
.be-heros-plein .dtb-hero-inner > .be-heros-logo {
	grid-row: 3;
	grid-column: 1;
	width: min(250px, 64vw);
	margin: 0 auto;
}
.be-heros-plein .dtb-hero-inner > .dtb-hero-actions { grid-row: 4; grid-column: 1; margin: clamp(40px, 7svh, 48px) 0 0; }
.be-heros-plein .dtb-hero-inner > .be-heros-fleche { grid-row: 6; grid-column: 1; }
.be-heros-plein .dtb-hero-inner > .dtb-hero-title {
	grid-row: 7;
	grid-column: 1;
	margin-top: 72px;
	scroll-margin-top: calc(var(--be-entete) + 24px);
}
.be-heros-plein .dtb-hero-inner > .dtb-hero-lieu { grid-row: 8; grid-column: 1; }
.be-heros-plein .dtb-hero-inner > .dtb-hero-sub { grid-row: 9; grid-column: 1; }
.be-heros-plein .dtb-hero-inner > .dtb-hero-reassurance { grid-row: 10; grid-column: 1; }
.be-heros-fleche {
	display: block;
	width: 44px;
	height: 44px;
	margin: 18px auto 10px;
	color: var(--be-par-encre);
	opacity: .45;
	border-radius: 50%;
	animation: be-fleche 2.6s ease-in-out infinite;
}
.be-heros-fleche svg {
	display: block;
	width: 100%;
	height: 100%;
}
.be-heros-fleche:hover,
.be-heros-fleche:focus-visible {
	opacity: .9;
}
.be-heros-fleche:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}
@keyframes be-fleche {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(7px); }
}
.be-heros-fond {
	position: absolute;
	inset: 0 0 auto 0;
	height: calc(var(--be-premier-ecran) + var(--be-haut));
	z-index: 0;
	pointer-events: none;
}
.be-matiere {
	position: absolute;
	left: var(--x);
	top: var(--y);
	width: calc(var(--t) * var(--echelle, 1));
	height: auto;
	opacity: var(--o, .55);
	animation: be-flotte var(--d, 14s) ease-in-out var(--delai, 0s) infinite alternate;
}
@keyframes be-flotte {
	from { transform: translate3d(0, 0, 0) rotate(0deg); }
	to { transform: translate3d(var(--dx, 10px), var(--dy, -18px), 0) rotate(var(--r, 8deg)); }
}
.be-bulle {
	position: absolute;
	left: var(--x);
	bottom: -40px;
	width: calc(var(--t) * var(--echelle, 1));
	height: calc(var(--t) * var(--echelle, 1));
	border-radius: 50%;
	background: radial-gradient(circle at 35% 32%, rgba(255, 255, 255, .95) 0 14%, rgba(241, 236, 228, .55) 40%, rgba(214, 196, 190, .28) 100%);
	box-shadow: inset 0 0 0 1px rgba(214, 196, 190, .35);
	opacity: 0;
	animation: be-monte var(--d, 18s) linear var(--delai, 0s) infinite;
}
@keyframes be-monte {
	0% { transform: translate3d(0, 0, 0); opacity: 0; }
	12% { opacity: .8; }
	50% { transform: translate3d(14px, calc((var(--be-premier-ecran) + 80px) * -.5), 0); }
	85% { opacity: .6; }
	100% { transform: translate3d(0, calc((var(--be-premier-ecran) + 80px) * -1), 0); opacity: 0; }
}
@media (min-width: 768px) {
	.be-heros-plein {
		--be-entete: 47px;
		--be-haut: 24px;
	}
	.be-heros-fond { --echelle: 1.7; }
	.be-heros-plein .dtb-hero-inner > .be-heros-logo { width: 340px; }
	.be-heros-plein .dtb-hero-inner > .dtb-hero-actions { margin-top: 56px; }
	.be-heros-plein .dtb-hero-inner > .dtb-hero-title { margin-top: 120px; }
}
@media (min-width: 1025px) {
	.be-heros-plein { --be-entete: 101px; }
}
@media (prefers-reduced-motion: no-preference) {
	html:has(.be-heros-plein) { scroll-behavior: smooth; }
}
@media (prefers-reduced-motion: reduce) {
	.be-matiere,
	.be-bulle,
	.be-heros-fleche { animation: none; }
	.be-bulle {
		opacity: .6;
		bottom: auto;
		top: var(--y-fixe, 60%);
	}
}
