:root {
	--header-inline-padding: 10px;
	--header-container-inline-padding: 1.5rem;
	--header-container-block-padding: 0.75rem;
	--header-container-background-color: #fff;
	--header-container-box-shadow: 0px 8px 16px 0px rgba(127, 136, 192, 0.16), 0px 2px 4px 0px rgba(40, 41, 61, 0.04);
	--header-container-border-radius: 12px;
	--header-container-border-radius-menu-active: 12px 12px 0 0;
	--header-container-margin-top: 2rem;
	--header-container-gap: clamp(16px, 5vw, 50px);
	--header-container-line-height: 1.875rem;
	--header-container-vertical-offset: calc( var(--header-container-height, 54px) + var(--header-container-margin-top) );
	--sticky-header-top-offset: 2rem;
	--mega-menu-panel-border-radius: 0 0 12px 12px;
	--mega-menu-panel-block-padding: 1.5rem;
	--mega-menu-panel-inline-padding: 1.5rem;
	--mega-menu-panel-divider-gap: 32px;
	--sub-menu-background-color: #fff;
	--menu-item-background-color-hover: #fbe8cc;
	--menu-item-nav-link-color-hover: #293896;
	--mobile-menu-block-padding: 2rem;
	--mobile-menu-inline-padding: 2rem;
}

#header-sentinel {
	position: relative;
	height: 1px;
	margin-top: -1px;
}

#site-header {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding-inline: var(--header-inline-padding);
	position: sticky;
	top: calc(var(--sticky-header-top-offset) + var(--wp-admin--admin-bar--height, 0px));
	height: 0px;
}

.conquest-sticky-header #search-container {
	display: none;
	opacity: 0;
}

.header-container {
	width: 100%;
	max-width: 1280px;
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: var(--header-container-gap);
	padding-inline: var(--header-container-inline-padding);
	padding-block: var(--header-container-block-padding);
	background-color: var(--header-container-background-color);
	box-shadow: var(--header-container-box-shadow);
	border-radius: var(--header-container-border-radius);
	margin-top: var(--header-container-margin-top);
	align-items: center;
	position: relative;
}

#search-container {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
    display: grid;
    height: 100vh;
    width: 100vw;
    grid-template-columns: 1fr;
    overflow: hidden;
    transition: 0.2s opacity ease-in-out, 0.2s display ease-in-out;
    transition-behavior: allow-discrete;
    overscroll-behavior: contain;
    background-color: var(--conquest-blue--500);
    z-index: 99;
}

.conquest-sticky-header.search-form-open #search-container {
	display: grid;	
	opacity: 1;
	pointer-events: auto;
}

body.conquest-search-form-open {
	overflow: hidden;
}

.search-toggle .search-icon {
    color: var(--conquest-blue--500);
}

.search-toggle:hover .search-icon {
    color: var(--conquest-orange--500);
}

#search-container .search-toggle {
	position: absolute;
    right: 20px;
    top: calc(var(--sticky-header-top-offset) + var(--wp-admin--admin-bar--height, 0px));
    padding-inline: var(--header-container-inline-padding);
    padding-block: var(--header-container-block-padding);
    border: 1px solid #fff;
    background-color: #fff;
    color: var(--conquest-blue--500);
    transition: 0.2s color ease-in-out, 0.2s background-color ease-in-out, 0.2s border-color ease-in-out;
}

#search-container .search-toggle:hover {
	background-color: var(--conquest-orange--200);
    color: var(--conquest-blue--500);
    border-color: var(--conquest-orange--500);
}

#search-container .search-toggle:hover .search-icon {
    color: var(--conquest-blue--500);
}

#search-container .container {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	width: 100%;
    max-width: 1280px;
}

.search-toggle {
	display: flex;
	align-items: center;
    justify-content: center;
    gap: 10px;
	cursor: pointer;
}

.search-toggle .search-icon {
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}

#search-container .search-form {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 32px;
    width: 100%;
    max-width: 800px;
}

#search-container .search-form .search-field {
	width: 100%;
    padding: 10px 20px;
    border: none;
    border-bottom: 2px solid var(--conquest-blue--100);
    background: transparent;
    outline-offset: 3px;
    outline-color: var(--conquest-orange--100);
    color: #fff;
}

#search-container .search-form .search-field::placeholder {
	color: var(--conquest-orange--300);
}

#search-container .search-form .search-field:focus {
    outline-style: solid;
    outline-width: 2px;
    border-color: var(--conquest-orange--400);
}

#search-container .search-form label {
	margin: 0;
}

#search-container .search-form .search-submit {
    padding-inline: var(--header-container-inline-padding);
    padding-block: var(--header-container-block-padding);
    background-color: var(--conquest-orange--500);
    border: 1px solid var(--conquest-orange--500);
    color: #fff;
    font-weight: bold;
    transition: 0.2s background-color ease-in-out, 0.2s color ease-in-out;
}

#search-container .search-form .search-submit:hover {
	color: var(--conquest-blue--500);
	background-color: var(--conquest-orange--200);
	border-color: var(--conquest-orange--500);
}

.conquest-menu .nav-item:hover > .submenu__wrapper:not(:has(.nav-item.menu-item-has-children)),
.conquest-menu .nav-item > .submenu__wrapper.submenu-open:not(:has(.nav-item.menu-item-has-children)) {
	max-height: calc(95vh - 100px - var(--wp-admin--admin-bar--height, 0px));
	overflow-y: auto;
}

.main-navigation {
	margin-block: calc(-1 * var(--header-container-block-padding));
}

.conquest-menu .nav-dropdown-toggle,
.conquest-menu .submenu__heading.mobile-heading,
.conquest-menu .nav-link__mobile-back,
.conquest-menu .submenu__wrapper {
	display: none;
}

.conquest-menu.primary-menu {
	margin: 0;
	padding: 0;
	list-style: none;
	display: inline-flex;
	gap: 14px;
}

.conquest-menu.primary-menu .nav-link {
    padding: 8px 12px;
    font-weight: 600;
    color: var(--conquest-blue--500);
}


.conquest-menu .nav-item.level-0.menu-item-has-children > .nav-link .submenu-icon {
	/*transform: rotate(90deg);*/
}

.conquest-menu .nav-link.has-submenu:has(> .submenu-icon) {
    display: flex;
    align-items: center;
}

.conquest-menu button.nav-link.nav-dropdown-toggle,
.conquest-menu .nav-link.nav-link__mobile-back {
	-webkit-appearance: none;
	background: none;
	border: none;
}

.conquest-menu button.nav-link.nav-dropdown-toggle *, 
.conquest-menu .nav-link.nav-link__mobile-back * {
	pointer-events: none;
}

.conquest-menu .nav-link.has-submenu:has(> .submenu-icon) .submenu-icon {
	width: 0.7em;
}

.conquest-menu .nav-item.level-0 > .nav-link > span {
    margin-right: 0.5rem;
    line-height: var(--header-container-line-height);
}

.conquest-menu .nav-item.level-0 > .nav-link {
	padding-block: var(--header-container-block-padding);
}

.conquest-menu .submenu.navlist {
    list-style: none;
    padding: 0;
    margin: 0;
}

.conquest-menu .submenu .nav-item .nav-link {
	font-size: 18px;
	font-weight: 500;
}


.conquest-menu .mobile-submenu__header {
	display: none;
}

@media (min-width: 1025px) {
	/* Mega menu panel desktop styling */
	.conquest-menu .mega-menu-panel.nav-item > .submenu__wrapper {
		position: absolute;
	    left: 0;
	    width: 100%;
	    background-color: var(--sub-menu-background-color);
	    box-shadow: var(--header-container-box-shadow);
	    clip-path: inset(0px -100% -100% -100%); /* Hide top edge of box-shadow */
	    border-radius: var(--mega-menu-panel-border-radius);
	    padding-block: var(--mega-menu-panel-block-padding);
	    padding-inline: var(--mega-menu-panel-inline-padding);
	}

	.conquest-menu .nav-link.nav-dropdown-toggle.has-submenu:has(> .submenu-icon) {
		display: none;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 {
	    display: grid;
	    grid-template-columns: minmax(20%, 200px) 1fr;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0::before {
	    content: "";
	    display: block;
	    border-right: 3px solid var(--conquest-blue--400); 
	    grid-column: 2;
	    grid-row: 1 / 99;
	    padding-left: var(--mega-menu-panel-divider-gap);
	    width: 3px;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item {
	    display: contents;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item > .nav-link {
	    grid-column: 1;
	    padding: 10px 12px;
	    display: flex;
	    flex-direction: row;
	    justify-content: space-between;
	    align-items: center;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item > .nav-link > .submenu-icon {
		transform: rotate(-90deg);
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item > .submenu__wrapper {
	    grid-column: 2;
	    grid-row-start: 1;
	    grid-row-end: 99;
	    display: block;
	    opacity: 0;
	    pointer-events: none;
	    z-index: 1;
	    /*transition: 0.1s opacity ease-in-out;*/
	    padding-inline-start: calc(2 * var(--mega-menu-panel-divider-gap));
	}


	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item > .submenu__wrapper .mobile-submenu__header, 
	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item > .submenu__wrapper .mobile-submenu__header .submenu__heading.mobile-heading {
	    display: block;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item > .submenu__wrapper .mobile-submenu__header .submenu__heading.mobile-heading {
		padding: 10px 12px;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item > .submenu__wrapper .mobile-submenu__header .submenu__heading.mobile-heading::before {
	    content: "Browse all ";
	    font-weight: inherit;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-1 .nav-link {
	    background: none;
	}

	.mega-menu-panel .nav-link:has(.mega-menu-img) {
	    display: flex;
	    flex-direction: column;
	}

	.mega-menu-panel .nav-link > .mega-menu-img {
		order: 0;
	    aspect-ratio: 3 / 2;
	    background-color: var(--conquest-blue--50);
	    overflow: hidden;
	    position: relative;
	    padding: 0.5rem;
	    transition: 0.2s background-color ease-in-out;
	}

	.mega-menu-panel .nav-link:hover > .mega-menu-img {
		background-color: var(--conquest-orange--100);
	}

	.mega-menu-panel .nav-link:has(.mega-menu-img) > span {
		order: 1;
		margin-top: 0.5rem;
	}

	.mega-menu-panel .nav-link .mega-menu-img img {
	    width: 100%;
	    height: 100%;
	    object-fit: contain;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-1 {
		list-style: none;
	    margin: 0;
	    padding: 0;
	    display: grid;
	    position: relative;
	    width: 100%;
	    grid-template-columns: 1fr 1fr;
	    gap: 20px;
	}

	.mega-menu-panel .submenu__wrapper.dropdown.level-1 .nav-link {
	    font-weight: bold;
	}

	
}

@media (hover: hover) and (pointer: fine) {
	/* Remove bottom border radius while mega menu panel is open */
	.header-container:has(.conquest-menu .mega-menu-panel.nav-item:hover) {
		border-radius: var(--header-container-border-radius-menu-active);
	}

	.conquest-menu .nav-item.level-0:hover > .nav-link {
		color: var(--conquest-orange--500);
	}

	.conquest-menu .nav-item:hover > .submenu__wrapper {
	    display: block;
	}

	.conquest-menu .nav-item.level-0:hover > .submenu__wrapper {
		position: absolute;
		background-color: var(--sub-menu-background-color);
	    box-shadow: var(--header-container-box-shadow);
	    clip-path: inset(0px -100% -100% -100%); /* Hide top edge of box-shadow */
	}

	.conquest-menu .nav-item:not(.mega-menu-panel) .nav-item.level-1.menu-item-has-children {
	    position: relative;
	}

	.conquest-menu .nav-item:not(.mega-menu-panel) .nav-item.level-1.menu-item-has-children > .submenu__wrapper {
		position: absolute;
		left: 100%;
		top: 0;
		width: max-content;
        background-color: #fff;
        box-shadow: var(--header-container-box-shadow);
        clip-path: inset(-100% -100% -100% 0px);
	}

	.conquest-menu .submenu .nav-link:hover,
	.conquest-menu .submenu .nav-item:hover > .nav-link {
		background-color: var(--menu-item-background-color-hover);
		color: var(--menu-item-nav-link-color-hover);
	}

	.conquest-menu .nav-item.level-1.menu-item-has-children > .nav-link.has-submenu {
		justify-content: space-between;
	}

	.conquest-menu .nav-item.level-1.menu-item-has-children > .nav-link.has-submenu > .submenu-icon {
		transform: rotate(-90deg);
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item > button.nav-link {
		display: none;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item:hover > .submenu__wrapper {
	    opacity: 1;
	    pointer-events: auto;
	    z-index: 10;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item:hover > .nav-link {
		background-color: var(--menu-item-background-color-hover);
		color: var(--menu-item-nav-link-color-hover);
	}


	/* If no submenu items are being hovered display the first child as active */
	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0:not(:has(> .nav-item:hover)) > .nav-item:first-of-type > .nav-link {
		background-color: var(--menu-item-background-color-hover);
		color: var(--menu-item-nav-link-color-hover);
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0:not(:has(> .nav-item:hover)) > .nav-item:first-of-type > .submenu__wrapper {
	    opacity: 1;
	    pointer-events: auto;
	    z-index: 10;
	}
}

/* Replacement UX for devices without support for hover state (touch based laptops) */
@media (any-hover: none) and (min-width: 1025px) {
	.conquest-menu .nav-link.has-submenu:not(.nav-dropdown-toggle) {
    	display: none;
	}

	.conquest-menu .nav-link.nav-dropdown-toggle.has-submenu:has(> .submenu-icon) {
		display: flex;
	}

	.conquest-menu .nav-link.nav-dropdown-toggle.has-submenu:focus {
		outline: none;
	}

	/* Remove bottom border radius while mega menu panel is open */
	.header-container:has(.conquest-menu .mega-menu-panel.nav-item .submenu-open) {
		border-radius: var(--header-container-border-radius-menu-active);
	}

	.conquest-menu .nav-item > .submenu__wrapper.submenu-open {
	    display: block;
	}

	.conquest-menu .nav-item.level-0 > .submenu__wrapper.submenu-open {
		position: absolute;
		background-color: var(--sub-menu-background-color);
	    box-shadow: var(--header-container-box-shadow);
	    clip-path: inset(0px -100% -100% -100%); /* Hide top edge of box-shadow */
	}

	.conquest-menu .nav-item.level-0 > .nav-link.submenu-open {
		color: var(--conquest-orange--500);
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 > .nav-item > .nav-link.has-submenu:not(.nav-dropdown-toggle) {
        display: none;
    }

	.mega-menu-panel > .submenu__wrapper.submenu-open .submenu.navlist.level-0 .nav-link.submenu-open ~ .submenu__wrapper {
	    opacity: 1;
	    pointer-events: auto;
	    z-index: 10;
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0 .nav-link.submenu-open {
		background-color: var(--menu-item-background-color-hover);
		color: var(--menu-item-nav-link-color-hover);
	}

	/* If no submenu items are being hovered display the first child as active */
	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0:not(:has(.nav-link.submenu-open)) > .nav-item:first-of-type > .nav-link {
		background-color: var(--menu-item-background-color-hover);
		color: var(--menu-item-nav-link-color-hover);
	}

	.mega-menu-panel > .submenu__wrapper .submenu.navlist.level-0:not(:has(.nav-link.submenu-open)) > .nav-item:first-of-type > .submenu__wrapper {
	    opacity: 1;
	    pointer-events: auto;
	    z-index: 10;
	}

	.conquest-menu .nav-item:not(.mega-menu-panel) .nav-item.level-1.menu-item-has-children {
	    position: relative;
	}

	.conquest-menu .nav-item:not(.mega-menu-panel) .nav-item.level-1.menu-item-has-children > .submenu__wrapper {
		position: absolute;
		left: 100%;
		top: 0;
		width: max-content;
        background-color: #fff;
        box-shadow: var(--header-container-box-shadow);
        clip-path: inset(-100% -100% -100% 0px);
	}

	.conquest-menu .nav-item:not(.mega-menu-panel) .nav-item.level-1:has(> .submenu__wrapper.submenu-open) {
		background-color: var(--menu-item-background-color-hover);
		color: var(--menu-item-nav-link-color-hover);
	}

	.conquest-menu .nav-item:not(.mega-menu-panel) .nav-item.level-1.menu-item-has-children > .nav-link.has-submenu {
		justify-content: space-between;
		width: 100%;
	}

	.conquest-menu .nav-item:not(.mega-menu-panel) .nav-item.level-1.menu-item-has-children > .nav-link.has-submenu > .submenu-icon {
		transform: rotate(-90deg);
	}
}

/* Mobile menu toggle */
.mobile-menu-toggle {
    display: none;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    padding: 4px;
    color: var(--conquest-blue--500);
}

.mobile-menu-toggle .menu-label {
	font-weight: 600;
}

.mobile-menu-toggle .menu-icon {
	display: flex;
    align-items: center;
	line-height: 1;
}

.mobile-menu-toggle .svg-icon {
	width: 24px;
	height: 24px;
	fill: var(--conquest-orange--500);
}

.main-navigation .mobile-menu-toggle {
	color: #fff;
}

.main-navigation .mobile-menu-toggle .svg-icon {
	fill: #fff;
}

.main-navigation .mobile-menu-toggle .svg-icon.close {
	fill: var(--conquest-orange--500);
}

.mobile-menu-toggle .svg-icon.close,
.mobile-menu-toggle .menu-label.close {
	/*display: none;*/
}

@media (max-width: 1024px) {
	.mobile-menu-toggle,
	.main-navigation.menu-open .mobile-menu-toggle {
		display: flex;
	}

	.main-navigation .mobile-menu-toggle {
		display: none;
	}

	.conquest-menu .mega-menu-img {
		display: none;
	}

	body.conquest-menu-open {
		overflow: hidden;
	}

	.submenu__container.level-0 .submenu {
	    max-height: 70vh;
	    overflow-y: scroll;
	    padding-bottom: 1rem;
	}

	.submenu__wrapper.submenu-open {
		height: 100%;
		overflow: hidden;
	}

	.main-navigation {
		display: none;
		flex-direction: column;
		gap: 1rem;
		position: fixed;
        top: 0;
        right: 0;
        left: 2rem;
        bottom: 0;
        z-index: 100;
        background-color: var(--conquest-blue--500);
        padding-inline: var(--mobile-menu-inline-padding);
        padding-block-start: calc(var(--mobile-menu-block-padding) + var(--wp-admin--admin-bar--height, 0px));
        padding-block-end: var(--mobile-menu-block-padding);
        transform: translateX(3rem);
        opacity: 0;
        transition: 0.2s transform ease-in-out, 0.2s opacity ease-in-out, 0.2s display ease-in-out;
        transition-behavior: allow-discrete;
	}

	.main-navigation.menu-open {
		display: flex;
		transform: translateX(0px);
        opacity: 1;
	}

	@starting-style {
		.main-navigation.menu-open {
			transform: translateX(3rem);
	        opacity: 0;
		}
	}

	.conquest-menu.primary-menu {
	    display: flex;
	    flex-direction: column;
	    position: relative;
	    gap: 0;
	    height: 100%;
	}

	.conquest-menu .nav-item ~ .nav-item {
	    border-top: 1px solid var(--conquest-blue--400);
	}

	.conquest-menu.primary-menu .nav-link {
		color: #fff;
	}

	.conquest-menu .nav-item > .nav-link,
	.conquest-menu .submenu .nav-item > .nav-link {
	    font-size: 20px;
	    font-weight: 400;
	    text-align: left;
	    justify-content: space-between;
	    padding: var(--header-container-block-padding);
	}

	.conquest-menu .nav-item > button.nav-link:focus {
		outline: 2px solid var(--conquest-blue--400);
	}

	.conquest-menu .nav-item > .nav-link > .submenu-icon {
	    color: var(--conquest-orange--500);
	    transform: rotate(-90deg);
	}

	.nav-link.nav-dropdown-toggle.has-submenu {
	    display: flex;
	    width: 100%;
	    background: none;
	    padding-block: var(--header-container-block-padding);
	    border: none;
	}

	.nav-link.nav-dropdown-toggle.has-submenu ~ .nav-link {
		display: none;
	}

	.conquest-menu .nav-link.nav-dropdown-toggle.has-submenu ~ .submenu__wrapper {
		display: none;
		transform: translateX(20px);
		opacity: 0;
		transition: 0.2s transform ease-in-out, 0.2s opacity ease-in-out, 0.2s display ease-in-out;
		transition-behaviour: allow-discrete;
	}

	.conquest-menu .nav-link.nav-dropdown-toggle.has-submenu ~ .submenu__wrapper.submenu-open {
		display: block;
	    position: absolute;
	    padding: 2px;
	    left: -2px;
        top: -2px;
        right: -2px;
        bottom: -2px;
        z-index: 20;
        background: var(--conquest-blue--500);
		transform: translateX(0px);
        box-shadow: none;
        opacity: 1;
        max-height: 100%;
        overflow: visible;
	}

	@starting-style {
		.conquest-menu .nav-link.nav-dropdown-toggle.has-submenu ~ .submenu__wrapper.submenu-open {
			transform: translateX(20px);
	        opacity: 0;
		}
	}

	.conquest-menu .mobile-submenu__header {
    	display: flex;
    	justify-content: space-between;
    	border-bottom: 2px solid var(--conquest-blue--100);
        padding-bottom: 10px;
        align-items: flex-end;
	}

	.conquest-menu .submenu__heading.mobile-heading {
	    display: flex;
	    font-size: 20px;
		color: #fff;
	    align-items: flex-start;
	    padding: 8px 12px;
	    flex-direction: column;
	}

	.conquest-menu .submenu__heading.mobile-heading.nav-link::before {
		content: "Browse ";
        display: inline-block;
        color: var(--conquest-blue--200);
        padding-right: 0.3em;
        font-weight: 500;
        font-size: 16px;
	}

	.conquest-menu .nav-link__mobile-back {
	    display: flex;
	    font-size: 16px;
		color: #fff;
	    align-items: center;
	    gap: 6px;
	}

	.conquest-menu .nav-link__mobile-back .back-icon {
	    transform: rotate(90deg);
	    height: 1em;
	    color: var(--conquest-orange--500);
	}
}

@media (max-width: 767px) {
	:root {
		--header-container-inline-padding: 1rem;
	}

	#search-container .search-form {
    	grid-template-columns: 1fr;
	}
}