.hvl-ft {
	--hvl-ft-accent: var(--e-global-color-accent, #38b0db);
	position: relative;
	isolation: isolate;
	overflow: hidden;
	color: #fff;
}

.hvl-ft::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		radial-gradient(120% 120% at 8% -25%, color-mix(in srgb, var(--e-global-color-primary, #08739f) 32%, transparent) 0%, transparent 64%),
		radial-gradient(90% 90% at 100% 0%, color-mix(in srgb, var(--hvl-ft-accent) 16%, transparent) 0%, transparent 60%);
}

.hvl-ft__logo img {
	display: block;
	width: 100%;
	height: auto;
}

.hvl-ft__zones .elementor-heading-title {
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

.hvl-ft__dot {
	flex: none;
	margin-top: 6px;
	width: 6px;
	height: 6px;
	border-radius: 99px;
	background: var(--hvl-ft-accent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--hvl-ft-accent) 22%, transparent);
}

.hvl-ft__links .elementor-icon-list-item > a,
.hvl-ft__links .elementor-icon-list-text {
	transition: color 0.2s ease, transform 0.2s ease;
}

.hvl-ft__links .elementor-icon-list-item:hover > a {
	transform: translateX(2px);
}

.hvl-ft__legal-link .elementor-heading-title a {
	color: inherit;
	text-decoration: none;
	transition: color 0.2s ease;
}

.hvl-ft__legal-link .elementor-heading-title a:hover {
	color: #fff;
}
