/* Menu behaviour only. Layout rules for the rest of the site stay with the theme. */

.aim-menu-label > a {
	font-weight: 700;
}

/*
 * Desktop header separators are not list bullets. Xclean paints a 6px circle
 * with li::after inside @media (min-width: 1201px). list-style cannot remove it.
 */
@media (min-width: 1201px) {
	.pbmit-header-style-2 #pbmit-top-menu > li::before,
	.pbmit-header-style-2 #pbmit-top-menu > li::after,
	.pbmit-fixed-header #pbmit-top-menu > li::before,
	.pbmit-fixed-header #pbmit-top-menu > li::after,
	body:not(.mega-menu-pbminfotech-top) .pbmit-navbar div > ul > li::before,
	body:not(.mega-menu-pbminfotech-top) .pbmit-navbar div > ul > li::after,
	body:not(.mega-menu-pbminfotech-top) .pbmit-fixed-header .pbmit-navbar div > ul > li::before,
	body:not(.mega-menu-pbminfotech-top) .pbmit-fixed-header .pbmit-navbar div > ul > li::after {
		content: none !important;
		display: none !important;
		width: 0 !important;
		height: 0 !important;
		background: none !important;
		border: 0 !important;
		box-shadow: none !important;
		opacity: 0 !important;
		visibility: hidden !important;
	}
}

/*
 * Theme menu links are 100px tall with a 100px line-height, so the words
 * sit on the baseline near the bottom of the bar. Center them with the logo.
 */
@media (min-width: 1201px) {
	.pbmit-header-style-2 .pbmit-header-content,
	.pbmit-header-style-2 .pbmit-logo-menuarea,
	.pbmit-header-style-2 .pbmit-right-box,
	.pbmit-header-style-2 .pbmit-navbar > div > ul {
		display: flex !important;
		align-items: center !important;
	}

	.pbmit-header-style-2 .pbmit-header-content {
		flex-wrap: nowrap;
		justify-content: space-between !important;
		width: 100%;
	}

	.pbmit-header-style-2 .pbmit-main-header-area > .container {
		padding-left: 28px !important;
		padding-right: 22px !important;
		box-sizing: border-box;
	}

	.pbmit-header-style-2 .pbmit-logo-menuarea {
		flex: 1 1 auto !important;
		justify-content: flex-start !important;
		width: auto !important;
		min-width: 0;
	}

	.pbmit-header-style-2 .pbmit-menuarea {
		margin-left: auto !important;
		margin-right: 18px !important;
	}

	.pbmit-header-style-2 .pbmit-right-box {
		flex: 0 0 auto;
	}

	.pbmit-header-style-2 .pbmit-navbar > div > ul {
		margin: 0;
		padding: 0 !important;
		height: auto !important;
	}

	.pbmit-header-style-2 .site-title,
	.pbmit-header-style-2 .pbmit-navbar > div > ul > li,
	.pbmit-header-style-2 .pbmit-navbar > div > ul > li > a {
		height: auto !important;
		line-height: 1.2 !important;
	}

	.pbmit-header-style-2 .pbmit-navbar > div > ul > li > a {
		display: inline-flex !important;
		align-items: center !important;
		padding: 10px 18px !important;
	}

	.pbmit-header-style-2 .pbmit-navbar > div > ul {
		flex: 0 0 auto !important;
		width: auto !important;
	}

	.pbmit-header-style-2 .pbmit-navbar > div > ul > li {
		position: relative !important;
		flex: 0 0 auto !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.pbmit-header-style-2 .pbmit-navbar > div > ul > li > ul {
		left: 0 !important;
		right: auto !important;
		top: calc(100% + 6px) !important;
		transform: none !important;
		margin: 0 !important;
		min-width: 190px;
		width: max-content;
	}

	body:not(.mega-menu-pbminfotech-top) .pbmit-header-style-2 .pbmit-navbar ul > li > ul > li {
		padding: 0 !important;
		margin: 0 !important;
	}

	body:not(.mega-menu-pbminfotech-top) .pbmit-header-style-2 .pbmit-navbar ul > li > ul > li > a,
	body:not(.mega-menu-pbminfotech-top) .pbmit-header-style-2 .pbmit-navbar ul > li > ul > li:hover > a {
		display: flex !important;
		align-items: center !important;
		height: auto !important;
		line-height: 1.3 !important;
		padding: 10px 16px !important;
		white-space: nowrap;
	}

	body:not(.mega-menu-pbminfotech-top) .pbmit-header-style-2 .pbmit-navbar ul > li > ul > li > a::before,
	body:not(.mega-menu-pbminfotech-top) .pbmit-header-style-2 .pbmit-navbar ul > li > ul > li > a::after {
		content: none !important;
		display: none !important;
		width: 0 !important;
	}
}

@media (max-width: 1024px) {
	.aim-services-parent > .sub-menu a,
	.aim-services-parent > ul a {
		display: flex;
		align-items: center;
		min-height: 44px;
	}

	.aim-services-parent.aim-submenu-open > .sub-menu,
	.aim-services-parent.aim-submenu-open > ul {
		display: block !important;
		height: auto !important;
		opacity: 1 !important;
		visibility: visible !important;
	}
}
