.luxf-icon-box .icon-box-img {
	font-size: var(--luxf-icon-size, 60px);
}

/* Flatsome spaces with 1em, which here equals the icon size (font-size above). */
.luxf-icon-box.icon-box .icon-box-img {
	margin-bottom: var(--luxf-icon-box-gap, 1rem);
}

.luxf-icon-box.icon-box-center .icon-box-img {
	margin: 0 auto var(--luxf-icon-box-gap, 1rem);
}

.luxf-icon-box.icon-box-left .icon-box-img,
.luxf-icon-box.icon-box-right .icon-box-img {
	margin-bottom: 0;
}

.luxf-icon-box.icon-box-left .icon-box-img + .icon-box-text {
	padding-left: var(--luxf-icon-box-gap, 1em);
}

.luxf-icon-box.icon-box-right .icon-box-img + .icon-box-text {
	padding-right: var(--luxf-icon-box-gap, 1em);
}

.luxf-icon-box .icon-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	line-height: 1;
	font-size: inherit;
	color: inherit;
	overflow: visible;
	width: auto;
	height: auto;
	min-width: 0;
	min-height: 0;
}

.luxf-icon-box .icon-box-img img,
.luxf-icon-box .icon-box-img svg {
	width: auto;
	max-width: 100%;
	height: auto;
}

.luxf-icon-box .icon-inner > i,
.luxf-icon-box .icon-inner .luxf-icon-svg,
.luxf-icon-box .icon-inner .luxf-icon__svg,
.luxf-icon-box .icon-inner svg,
.luxf-icon-box .icon-inner img,
.luxf-icon-box .icon-inner .luxf-icon-img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	font-size: inherit;
	line-height: 1;
	object-fit: contain;
}

.luxf-icon-box .icon-inner svg,
.luxf-icon-box .icon-inner svg *:not([fill='none']) {
	fill: currentColor !important;
}
