/* Indicateur de Scroll pour Elementor — styles du front */

.sie-wrap {
	display: flex;
	justify-content: center;
	width: 100%;
}

.sie-indicator {
	--sie-color: #185FA5;
	--sie-width: 26px;
	--sie-height: 42px;
	--sie-border: 2px;
	--sie-dot: 4px;
	--sie-speed: 1.6s;
	--sie-gap: 12px;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: var(--sie-gap);
	line-height: 1;
	transition: opacity .4s ease;
}

.sie-mouse {
	box-sizing: border-box;
	width: var(--sie-width);
	height: var(--sie-height);
	border: var(--sie-border) solid var(--sie-color);
	border-radius: 999px;
	display: flex;
	justify-content: center;
	padding-top: calc(var(--sie-height) * .16);
}

.sie-wheel {
	width: var(--sie-dot);
	height: calc(var(--sie-dot) * 2);
	border-radius: 999px;
	background: var(--sie-color);
	animation: sie-wheel var(--sie-speed) cubic-bezier(.45, 0, .2, 1) infinite;
}

@keyframes sie-wheel {
	0%   { opacity: 0; transform: translateY(0); }
	25%  { opacity: 1; }
	60%  { opacity: 1; transform: translateY(calc(var(--sie-height) * .26)); }
	100% { opacity: 0; transform: translateY(calc(var(--sie-height) * .36)); }
}

.sie-label {
	color: var(--sie-color);
	font-weight: 500;
	letter-spacing: .08em;
	text-transform: uppercase;
	font-size: 13px;
}

.sie-arrows {
	margin-top: -6px;
	color: var(--sie-color);
	font-size: 16px;
}

.sie-arrows span {
	display: block;
	margin-top: -4px;
	animation: sie-arrow var(--sie-speed) ease-in-out infinite;
}

.sie-arrows span:nth-child(2) {
	animation-delay: .18s;
}

@keyframes sie-arrow {
	0%, 100% { opacity: .2; }
	50%      { opacity: 1; }
}

/* Respecte les préférences d'accessibilité */
@media (prefers-reduced-motion: reduce) {
	.sie-wheel,
	.sie-arrows span {
		animation: none !important;
	}
	.sie-wheel {
		opacity: 1;
		transform: translateY(calc(var(--sie-height) * .12));
	}
}
