:root {
	--white: white;
	--black: black;

	--font-oswald: 'Oswald', sans-serif;
	--font-roboto: 'Roboto', sans-serif;

	--shadow-lg: 0px 12px 16px -4px rgba(16, 24, 40, 0.08),
		0px 4px 6px -2px rgba(16, 24, 40, 0.03);

	--neutral-50: #f8fafc;
	--neutral-100: #f1f5f9;
	--neutral-200: #e2e8f0;
	--neutral-300: #cad5e2;
	--neutral-400: #90a1b9;
	--neutral-500: #62748e;
	--neutral-600: #45556c;
	--neutral-700: #314158;
	--neutral-800: #1d293d;
	--neutral-900: #0f172b;
	--neutral-950: #020618;

	--primary-50: #f1f9fe;
	--primary-100: #e1f3fd;
	--primary-200: #bce7fb;
	--primary-300: #6dcff6;
	--primary-400: #3fc1f1;
	--primary-500: #16aae1;
	--primary-600: #0989c0;
	--primary-700: #096d9b;
	--primary-800: #0c5c80;
	--primary-900: #104c6a;
	--primary-950: #0a3147;
}

/* Wrapper */
.wg-mm-wrap {
	display: block;
	font-family: var(--font-roboto);
	font-style: normal;
	width: 100%;
}

@media (max-width: 1199.98px) {
	.wg-mm-wrap {
		position: relative;
		overflow: auto;
		padding: 0;
	}
}

/* Hide the menu */
.wg-mm-wrap .sub-menu-cols {
	display: none;
}

/* List resets */
.wg-mm-wrap ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

/* Primary menu */
.wg-mm-wrap ul.wg-mm-primary {
	display: flex;
	justify-content: center;
	gap: 0.75rem;
}

@media (max-width: 1199.98px) {
	.wg-mm-wrap ul.wg-mm-primary {
		flex-direction: column;
	}
}

@media (min-width: 1200px) {
	.wg-mm-wrap ul.wg-mm-primary {
		align-items: center;
		gap: 1.25rem;
	}
	.wg-mm-wrap ul.wg-mm-primary li.wg-mm-link {
		position: unset;
	}
	.wg-mm-wrap ul.wg-mm-primary > li:hover .sub-menu-cols li.wg-mm-col {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		flex: 1;
	}
	.wg-mm-wrap ul.wg-mm-primary > li {
		position: relative;
	}
	.wg-mm-wrap ul.wg-mm-primary li {
		transition: all 0.25s ease-in-out;
		line-height: 1.5;
	}

	/* body:has(#wpadminbar) .wg-mm-wrap ul.wg-mm-primary li:hover .sub-menu-cols {
		top: 98px;
	} */
	.wg-mm-wrap ul.wg-mm-primary li:hover .sub-menu-cols {
		background: var(--white);
		box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1),
			0px 4px 6px -2px rgba(0, 0, 0, 0.05);
		transition: all 0.25s ease-in-out;
		position: absolute;
		top: 65px;
		left: 0;
		right: 0;
		display: flex;
		z-index: 28;
	}
}

/* Links */
.wg-mm-wrap a {
	color: var(--black);
	font-family: var(--font-oswald);
	font-size: 1rem;
	font-weight: normal;
	line-height: 1.5rem;
	padding: 1rem 0;
	position: relative;
	text-decoration: none;
}

.wg-mm-wrap .wg-mm-link a.mega-menu-link {
	border-bottom: 1px solid var(--neutral-300);
	text-transform: uppercase;
	z-index: 1;
}

ul.wg-mm-col-modules li.wg-mm-link > a {
	padding: 0.625rem 0;
}

@media (max-width: 1199.98px) {
	.wg-mm-wrap a {
		display: block;
	}

	.wg-mm-link a.mega-menu-link[aria-haspopup='true']::after {
		content: '';
		background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNMTAuODMzNSA5LjE2NjU5TDE4LjMzMzYgOS4xNjY0MlYxMC44MzMxTDEwLjgzMzUgMTAuODMzM1YxOC4zMzMySDkuMTY2ODNWMTAuODMzM0wxLjY2Njc4IDEwLjgzMzRMMS42NjY3NSA5LjE2Njc1TDkuMTY2ODMgOS4xNjY1OUw5LjE2Njc1IDEuNjY2ODhMMTAuODMzNCAxLjY2Njg3TDEwLjgzMzUgOS4xNjY1OVoiIGZpbGw9ImJsYWNrIi8+Cjwvc3ZnPg==');
		background-size: contain;
		background-repeat: no-repeat;
		width: 1.25rem;
		height: 1.25rem;
		aspect-ratio: 1/1;
		position: absolute;
		top: 1.125rem;
		right: 0;
		display: inline-block;
		transition: all 0.15s ease-in-out;
	}

	.wg-mm-link a.mega-menu-link[aria-expanded='true']::after {
		background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNNC4xNjY1IDkuMTY2NjlWMTAuODMzNEgxNS44MzMyVjkuMTY2NjlINC4xNjY1WiIgZmlsbD0iYmxhY2siLz4KPC9zdmc+');
		transition: all 0.15s ease-in-out;
	}
}

@media (min-width: 1200px) {
	.wg-mm-wrap .wg-mm-link a.mega-menu-link {
		border-bottom: 0;
		padding-bottom: 1.25rem;
	}
	.wg-mm-wrap .wg-mm-link:hover a.mega-menu-link {
		border-bottom: 2px solid var(--black);
	}
}

@media (min-width: 1200px) and (max-width: 1398px) {
	.wg-mm-wrap ul.wg-mm-primary {
		gap: 0.875rem;
	}
	.wg-mm-wrap .wg-mm-link a.mega-menu-link {
		font-size: 0.875rem;
	}
}

/* Active module link */
@media (min-width: 1200px) {
	.wg-mm-wrap li.mm-module-link.wg-mm-link-active a {
		background: var(--neutral-950);
		color: white !important;
		opacity: 1;
	}
}

/* Mega menu link header */
.wg-mm-wrap .mm-module-link span.mm-lie-header {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.wg-mm-wrap .mm-module-link span.mm-lie-header img {
	flex-shrink: 0;
	width: 2rem;
	height: 2rem;
}

/* Column title */
.wg-mm-wrap span.mm-col-title {
	font-family: var(--font-roboto);
	font-style: normal;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.25rem;
	color: var(--neutral-700);
	text-transform: none;
	margin-bottom: 1rem;
}

@media (max-width: 1199.98px) {
	.wg-mm-wrap span.mm-col-title {
		margin-bottom: 0;
	}
}

/* Icons grid */
.wg-mm-wrap .mm-icons-grid {
	display: flex;
	margin: 0;
}

.wg-mm-wrap .mm-icons-grid li.mm-ic {
	flex: 0 0 25%;
	max-width: 25%;
	padding: 5px;
}

.wg-mm-wrap
	ul.sub-menu.sub-menu-cols
	li.wg-mm-link.mm-module-link.mm-module-icons_grid
	li.mm-ic
	a {
	padding: 0;
}

.wg-mm-wrap .mm-icons-grid li.mm-ic span.mm-lie-icon {
	position: relative;
	padding-bottom: 100%;
	background-color: var(--white);
	display: inline-block;
	width: 2rem;
}

li.wg-mm-link.mm-module-link.mm-module-icons_grid
	ul.mm-icons-grid
	span.mm-lie-icon {
	padding-bottom: 2rem;
}

.mm-module-link_icon_excerpt span.mm-lie-title {
	overflow: hidden;
	color: var(--black);
	text-overflow: ellipsis;
	font-family: var(--font-roboto);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5rem;
}

.mm-module-link_icon_excerpt span.mm-lie-excerpt {
	font-size: 0.75rem;
	color: var(--neutral-800);
}

@media (min-width: 1200px) {
	.mm-module-card_w span.mm-lie-header {
		justify-content: center;
	}
}

li.mm-module-card_w span.mm-lie-title,
li.mm-module-card_w span.mm-lie-excerpt {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	text-overflow: ellipsis;
	overflow: hidden;
	align-self: stretch;
	color: var(--neutral-600);
	font-family: var(--font-roboto);
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.25rem;
}

li.mm-module-card_w span.mm-lie-title {
	color: var(--neutral-900);
	font-family: var(--font-oswald);
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 2rem;
	text-transform: uppercase;
}

li.mm-module-card_w span.mm-lie-excerpt {
	margin-top: 0.25rem;
}

.mm-module-card_w span.mm-btn-text {
	display: inline-block;
	margin-top: 0.25rem;
}

.wg-mm-wrap .mm-icons-grid li.mm-ic span.mm-lie-icon > span {
	position: absolute;
	inset: 5px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}
@media (min-width: 1200px) {
	li.mm-module-card_w span.mm-lie-title,
	li.mm-module-card_w span.mm-lie-excerpt {
		text-align: center;
	}
}

/* Submenu modules */
.wg-mm-wrap ul.sub-menu.sub-menu-cols li.wg-mm-col ul.wg-mm-col-modules a {
	color: black;
	font-family: var(--font-roboto);
	font-size: 1rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5rem;
}

.mm-module-link:not(.mm-module-link.mm-module-card_w) a:hover {
	background-color: var(--neutral-50);
}

li.wg-mm-link.mm-module-link.mm-module-card_w span.mm-lie-image {
	display: flex;
	margin-bottom: 0.75rem;
}

@media (min-width: 1200px) {
	.wg-mm-wrap ul.sub-menu.sub-menu-cols li.wg-mm-col ul.wg-mm-col-modules {
		display: flex;
		flex-direction: column;
		gap: 0.25rem;
		max-width: 100%;
		width: 100%;
	}

	.wg-mm-wrap ul.sub-menu.sub-menu-cols li.wg-mm-col ul.wg-mm-col-modules a {
		padding: 0.625rem;
		overflow: hidden;
		text-overflow: ellipsis;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 1;
	}

	.wg-mm-wrap
		ul.sub-menu.sub-menu-cols
		li.wg-mm-col
		ul.wg-mm-col-modules
		li.mm-module-link.mm-module-icons_grid {
		padding-top: 0;
		padding-bottom: 0;
	}

	.wg-mm-wrap
		ul.sub-menu.sub-menu-cols
		li.wg-mm-col
		ul.wg-mm-col-modules
		li.mm-module-link.mm-module-icons_grid
		ul.mm-icons-grid {
		flex-wrap: wrap;
	}

	.wg-mm-wrap
		ul.sub-menu.sub-menu-cols
		li.wg-mm-col
		ul.wg-mm-col-modules
		li.mm-module-link.mm-module-icons_grid
		ul.mm-icons-grid
		li.mm-ic {
		flex-basis: 50%;
		max-width: 50%;
		line-height: 1;
		padding-top: 0;
		padding-bottom: 0;
	}

	.wg-mm-wrap
		ul.sub-menu.sub-menu-cols
		li.wg-mm-col
		ul.wg-mm-col-modules
		li.mm-module-link:not(:last-of-type) {
		margin-bottom: 1px;
	}

	.wg-mm-wrap
		ul.sub-menu.sub-menu-cols
		li.wg-mm-col
		ul.wg-mm-col-modules
		li.mm-module-link.mm-module-link_icon_excerpt:hover {
		background-color: var(--neutral-50);
	}

	.wg-mm-wrap .sub-menu.sub-menu-cols .wg-mm-col .mm-lie-header img.img-fluid {
		width: 2rem;
		height: 2rem;
		object-fit: contain;
	}

	.wg-mm-wrap
		ul.sub-menu.sub-menu-cols
		li.wg-mm-link.mm-module-link.mm-module-card_w
		a {
		width: 100%;
		padding: 0 1.5rem;
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	li.wg-mm-link.mm-module-link.mm-module-card_w span.mm-lie-image {
		min-height: 8.5rem;
		position: relative;
		width: 100%;
	}

	li.wg-mm-link.mm-module-link.mm-module-card_w span.mm-lie-image img {
		border-radius: 0.125rem;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.wg-mm-wrap
		ul.sub-menu.sub-menu-cols
		ul.wg-mm-col-modules
		.mm-module-link_icon_excerpt
		a {
		display: flex;
		padding: 0.625rem;
		text-decoration: none;
	}
}

/* Bottom overview */
@media (min-width: 1200px) {
	.wg-mm-wrap ul.sub-menu.sub-menu-cols.mm-col-count-2 .wg-mm-grid-column-all {
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
	}
	.wg-mm-wrap .mm-col-count-3 li.mm-col-count-3:first-of-type {
		border-right: 1px solid var(--neutral-300);
	}
	.wg-mm-wrap
		.mm-col-count-3
		li.mm-col-count-3:first-of-type
		ul.wg-mm-col-modules {
		padding-right: 1.5rem;
	}
	.wg-mm-wrap
		.mm-col-count-3
		li.mm-col-count-3:nth-of-type(2)
		ul.wg-mm-col-modules {
		padding-left: 1.5rem;
	}
}

/* Offcanvas styling */
.offcanvas.offcanvas-mobile-menu {
	width: 100% !important;
	top: 65px !important;
	border: none !important;
}

body:has(#wpadminbar) .offcanvas.offcanvas-mobile-menu {
	top: 111px !important;
}

/* Offcanvas backdrop - hidden */
nav.nav-primary:has(.offcanvas-backdrop) .offcanvas-backdrop {
	display: none !important;
	background-color: transparent !important;
	pointer-events: none !important;
}

@media screen and (max-width: 1198px) {
	.wg-mm-link a.mega-menu-link[aria-haspopup='true']::after {
		display: none;
	}

	.wg-mm-link a .submenu-toggle {
		background: none;
		border: none;
		cursor: pointer;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 1.5rem;
		height: 1.5rem;
		aspect-ratio: 1/1;
		flex-shrink: 0;
		padding: 0;
	}

	.submenu-toggle .icon-toggle {
		background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNOS44MzMyNSA4LjE2NjU5TDE3LjMzMzMgOC4xNjY0MlY5LjgzMzA5TDkuODMzMjUgOS44MzMyNVYxNy4zMzMySDguMTY2NTlWOS44MzMyNUwwLjY2NjUzNyA5LjgzMzQyTDAuNjY2NTA0IDguMTY2NzVMOC4xNjY1OSA4LjE2NjU5TDguMTY2NSAwLjY2Njg3OEw5LjgzMzE3IDAuNjY2ODdMOS44MzMyNSA4LjE2NjU5WiIgZmlsbD0iYmxhY2siLz4KPC9zdmc+');
		background-size: 1.25rem;
		background-repeat: no-repeat;
		width: 1.25rem;
		height: 1.25rem;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.submenu-toggle[aria-expanded='true'] .icon-toggle {
		background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNNC4xNjY1IDkuMTY2NjlWMTAuODMzNEgxNS44MzMyVjkuMTY2NjlINC4xNjY1WiIgZmlsbD0iYmxhY2siLz4KPC9zdmc+');
	}

	.wg-mm-wrap .wg-mm-link a.mega-menu-link {
		justify-content: space-between;
		display: flex;
		align-items: center;
	}
}
