/***************************************************/
/*Module Styles*/
/***************************************************/
.business-directory-module {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
}

@media (min-width: 768px) {
	.business-directory-module {
		grid-template-columns: 0.3fr 1fr;
	}
}

/***************************************************/
/*Filters Styles*/
/***************************************************/
.categories-filter .business-category:hover {
	color: #841a1a;
}

.business-search-input {
	width: fit-content !important;
}

.business-alphabet-nav {
	margin-top: 20px;
}

.business-letter {
	font-weight: 600;
	color: #4d100e;
}

.business-letter:hover, .business-letter.active, .business-category.active {
	color: #841a1a;
	text-decoration: underline !important;
}

.business-letter:first-of-type {
	display: block !important;
}

.business-letter:not(:first-child) {
	margin-right: 5px;
}

/***************************************************/
/*Module list Styles*/
/***************************************************/
.business-directory-module ul, .business-list ul {
	padding-left: 0;
	margin-bottom: 0;
	list-style: none;
}

.business-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
	position: relative;
	transition: opacity 0.3s ease;
}

.business-list.loading {
	opacity: 0.5;
	pointer-events: none;
}

.business-item {
	padding: 10px;
	background-color: #FFF;
	border: 1px solid #E3E3E3;
	border-radius: 4px;
	color: black;
}

.business-item__logo-wrap {
	border-radius: 4px;
	border: 1px solid #e3e3e3;
	padding: 5px;
	height: fit-content;
	max-width: 240px;
}

.business-item__logo-wrap img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	min-height: 200px;
}

.business-item__logo-wrap.no-logo {
	width: 100%;
	min-height: 200px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #f5f5f5;
}

.business-item__content {
	display: flex;
	justify-content: space-between;
	gap: 10px;
}

.business-item__body {
	text-align: right;
}

/***************************************************/
/*Contact Links*/
/***************************************************/
.business-email {
	word-break: break-word;
}

.business__contact-link {
	font-weight: 600;
	text-decoration: underline !important;
	color: #4d100e;
}

.business__contact-link:hover {
	color: #841a1a;
}

.business__address-link {
	color: black;
}

.business__address-link:hover {
	color: #841a1a;
	text-decoration: underline !important;
}

.business-item__body .link-label {
	font-weight: 600;
}

/***************************************************/
/*Social Icons*/
/***************************************************/
.business-item__body .stay-tuned {
	display: flex;
	align-items: center;
	justify-content: end;
	gap: 5px;
}

.business-item__body .stay-tuned__link {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border-radius: 4px;
	background-color: #4d100e;
	color: white;
}

.business-item__body .stay-tuned__link:hover {
	background-color: #841a1a;
}

.icon-x {
	width: 1em;
	height: 1em;
	fill: currentColor;
	display: inline-block;
	vertical-align: middle;
}

/****************************************************/
/*PAGINATION*/
/***************************************************/
.business-pagination .page-numbers {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

.business-pagination .page-numbers span:hover, .business-pagination .page-numbers span.current {
	text-decoration: underline;
	color: #841a1a;
}

/****************************************************/
/*Preloader*/
/***************************************************/
.business-preloader {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0, 0, 0, 0.3);
	z-index: 999;
	opacity: 1;
	transition: all 0.5s;
}

.business-preloader:after {
	content: ' ';
	display: block;
	width: 64px;
	height: 64px;
	margin: 25% auto;
	border-radius: 50%;
	border: 6px solid #841a1a;
	border-color: #841a1a transparent #841a1a transparent;
	animation: lds-dual-ring 1.2s linear infinite;
}

@keyframes lds-dual-ring {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
