/** Widgets: icon-box **/

.ha-badge {
	padding: 10px 18px;
	border-radius: 50px;
	background-color: #fff;
	font-size: 12px;
	line-height: 1;
	-webkit-transform: translate(var(--ha-badge-translate-x), var(--ha-badge-translate-y));
	-ms-transform: translate(var(--ha-badge-translate-x), var(--ha-badge-translate-y));
	transform: translate(var(--ha-badge-translate-x), var(--ha-badge-translate-y));
	--ha-badge-translate-x: 0;
	--ha-badge-translate-y: 0;
}

.ha-badge--top-left {
	top: 25px;
	left: 25px;
}

.ha-badge--top-center {
	top: 25px;
	left: 50%;
	--ha-badge-translate-x: -50%;
}

.ha-badge--top-right {
	top: 25px;
	right: 25px;
}

.ha-badge--middle-center, .ha-badge--middle-left {
	top: 50%;
	left: 25px;
	--ha-badge-translate-x: -50%;
}

.ha-badge--middle-center {
	left: 50%;
	--ha-badge-translate-y: -50%;
}

.ha-badge--middle-right {
	top: 50%;
	right: 25px;
	--ha-badge-translate-y: -50%;
}

.ha-badge--bottom-left {
	bottom: 25px;
	left: 25px;
}

.ha-badge--bottom-center {
	bottom: 25px;
	left: 50%;
	--ha-badge-translate-x: -50%;
}

.ha-badge--bottom-right {
	right: 25px;
	bottom: 25px;
}

@-webkit-keyframes pulse_animation {
	0%, to {
		-webkit-box-shadow: 0 0 0 0 var(--icon-pulse-color);
		box-shadow: 0 0 0 0 var(--icon-pulse-color);
		-webkit-transform: scale(.95);
		transform: scale(.95);
	}
	
	70% {
		-webkit-box-shadow: 0 0 0 20px var(--icon-pulse-color);
		box-shadow: 0 0 0 20px var(--icon-pulse-color);
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}

@keyframes pulse_animation {
	0%, to {
		-webkit-box-shadow: 0 0 0 0 var(--icon-pulse-color);
		box-shadow: 0 0 0 0 var(--icon-pulse-color);
		-webkit-transform: scale(.95);
		transform: scale(.95);
	}
	
	70% {
		-webkit-box-shadow: 0 0 0 20px var(--icon-pulse-color);
		box-shadow: 0 0 0 20px var(--icon-pulse-color);
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}

.ha-icon-box > .elementor-widget-container {
	position: relative;
	padding: 25px;
	border-radius: 5px;
	background-color: #fff;
	-webkit-box-shadow: 0 3px 40px rgba(36, 36, 36, .1);
	box-shadow: 0 3px 40px rgba(36, 36, 36, .1);
}

.ha-icon-box-title {
	margin-top: 0;
	margin-bottom: 0;
	color: #151515;
	font-size: 24px;
	-webkit-transition: color .3s;
	transition: color .3s;
}

.ha-icon-box-icon {
	display: inline-block;
	margin-bottom: 20px;
	color: #151515;
	text-align: center;
	font-size: 48px;
	-webkit-transition: border .3s, background .3s, color .3s, -webkit-transform .3s;
	transition: transform .3s, border .3s, background .3s, color .3s;
	transition: transform .3s, border .3s, background .3s, color .3s, -webkit-transform .3s;
}

.ha-icon-box-icon i, .ha-icon-box-icon svg {
	position: relative;
	display: block;
	width: 1em;
	height: 1em;
	fill: currentColor;
}

.ha-icon-box-icon i {
	-webkit-transition: -webkit-transform .3s;
	transition: transform .3s;
	transition: transform .3s, -webkit-transform .3s;
}

.ha-icon-box-icon i:before {
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.ha-icon-box-link {
	display: block;
	color: transparent;
	text-decoration: none;
}

.ha-icon-box .ha-badge {
	position: absolute;
	z-index: 10;
	background-color: #e2498a;
	color: #fff;
}

.pulse_effect {
	-webkit-box-shadow: 0 0 0 0 var(--icon-pulse-color);
	box-shadow: 0 0 0 0 var(--icon-pulse-color);
	-webkit-animation: pulse_animation 1.5s infinite;
	animation: pulse_animation 1.5s infinite;
}
