/* ==========================================================================
   Solution73 Child - Centered Logo with Split Navigation (header + footer)
   ========================================================================== */

/* --- Header: menu left / logo centre / menu right --- */
.nav-bar-split {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
}

.nav-bar-split .split-side {
	display: flex;
	align-items: center;
	flex: 1 1 0;
	min-width: 0;
}

.nav-bar-split .split-left {
	justify-content: flex-start;
}

.nav-bar-split .split-right {
	justify-content: flex-end;
}

.nav-bar-split .split-center {
	flex: 0 0 auto;
	justify-content: center;
	padding: 0 20px;
}

.nav-bar-split .split-logo img.logo {
	max-height: 34px;
	width: auto;
}

.nav-bar-split .split-left .module,
.nav-bar-split .split-right .module {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 14px;
}

.nav-bar-split {
	min-height: 70px;
}

.nav-bar-split .split-logo,
.nav-bar-split .split-logo a {
	line-height: 1.3 !important;
	margin: 0 !important;
}

.nav-bar-split .menu a {
	line-height: 1.3 !important;
}

.nav-bar-split .menu li {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.nav-bar-split .split-left .menu,
.nav-bar-split .split-right .menu {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	flex-shrink: 0;
	margin: 0;
}

.nav-bar-split .split-left .menu > li,
.nav-bar-split .split-right .menu > li {
	white-space: nowrap;
}

/* Mobile fallback - matches the theme's existing .visible-sm/.visible-xs breakpoint (<992px) */
@media (max-width: 991px) {

	.nav-bar-split {
		flex-wrap: wrap;
	}

	.nav-bar-split .split-center {
		order: 1 !important;
		flex: 0 0 auto !important;
		width: auto !important;
		padding: 0 !important;
	}

	.nav-bar-split .mobile-toggle {
		order: 2 !important;
		flex: 0 0 auto !important;
	}

	.nav-bar-split .mobile-toggle {
		order: 2;
	}

	.nav-bar-split .split-left,
	.nav-bar-split .split-right {
		order: 3;
		flex: 1 1 100%;
		display: none;
		flex-direction: column;
		align-items: flex-start;
	}

	.nav-bar-split.nav-open .split-left,
	.nav-bar-split.nav-open .split-right {
		display: flex;
	}

	.nav-bar-split .split-right {
		align-items: flex-start;
	}

}

/* --- Footer: menu left / logo centre / menu right --- */
.footer-split .footer-split-col {
	display: flex;
	align-items: center;
}

.footer-split .col-sm-4.text-left.footer-split-col {
	justify-content: flex-start;
}

.footer-split .col-sm-4.text-center.footer-split-col {
	justify-content: center;
	flex-direction: column;
}

.footer-split .col-sm-4.text-right.footer-split-col {
	justify-content: flex-end;
}

.footer-split .footer-menu {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	list-style: none;
	padding: 0;
}

.footer-split .footer-menu > li {
	margin: 0 10px;
}

.footer-split .col-sm-4.text-right .footer-menu {
	justify-content: flex-end;
}

@media (max-width: 767px) {

	.footer-split .footer-split-col {
		justify-content: center !important;
		margin-bottom: 20px;
		text-align: center;
	}

	.footer-split .footer-menu {
		justify-content: center !important;
	}

	.footer-split .footer-menu > li {
		margin: 0 8px;
	}

}

.s73-header-utility-cluster {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 8px;
}

.s73-header-utility-cluster .search-widget-handle {
	margin: 0;
}
