/* HEADER */

.HEADER {
	height: 100%;
	transition: background 0.25s;
}

.HEADER .b-frame {
	padding-top: 0;
	padding-bottom: 0;
	height: 100%;
}

.HEADER .container {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 100%;
}

.HEADER .logo {
	flex: 0 0 auto;
	width: 164rem;
	height: 34rem;
	margin-top: -10rem;
}

.HEADER .nav-trigger {
	display: none;
	flex: 0 0 auto;
	width: 40rem;
	height: 40rem;
	background: url(../images/menu.svg) no-repeat center / 100%;
	cursor: pointer;
}

.HEADER nav .a {
	color: inherit;
	cursor: default;
}

.HEADER nav .a::after {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 12rem;
	height: 9rem;
	background: url(../images/expand-light.svg) no-repeat center / 100%;
	margin: -2rem 0 0 6rem;
}

.HEADER nav a:not(.b-button) {color: inherit;}
.HEADER nav a:not(.b-button):hover {color: var(--green);}

.HEADER nav > ul {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.HEADER nav > ul > li {
	flex: 0 0 auto;
	position: relative;
	margin: 0 0 0 35rem;
	font-size: 15rem;
	line-height: 50rem;
	font-weight: 700;
}

/* submenu */

.HEADER nav > ul > li > ul {
	display: block !important;
	position: absolute;
	top: 100%;
	left: 0;
	background: var(--dark-blue);
	opacity: 0;
	transform: translate(0, 40rem);
	pointer-events: none;
	transition: opacity 0.25s, transform 0.25s;
}

.HEADER nav > ul > li:hover > .a::after,
.HEADER nav > ul > li:focus-within > .a::after {
	transform: scaleY(-1);
}

.HEADER nav > ul > li:hover > ul,
.HEADER nav > ul > li:focus-within > ul {
	opacity: 1;
	transform: translate(0, 0);
	pointer-events: auto;
}



/* dropdown */

.HEADER .dropdown > ul {width: 200rem;}

.HEADER .dropdown > ul > li {
	padding: 10rem 20rem;
	font-size: 16rem;
	line-height: 1.25;
}

.HEADER .dropdown > ul > li:first-child {padding-top: 20rem;}
.HEADER .dropdown > ul > li:last-child {padding-bottom: 20rem;}



/* megamenu */

.HEADER .megamenu {position: static;}
.HEADER .megamenu > ul {width: 100%;}
.HEADER .megamenu > ul > li {display: flex;}

.HEADER .megamenu > ul::before {
	content: "";
	position: absolute;
	bottom: 100%;
	left: 0;
	right: 0;
	height: 40rem;
}

.HEADER .megamenu .primary {
	padding: 50rem 50rem 20rem;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	flex-grow: 1;
	flex-basis: 50%;
	align-content: flex-start;
}

.HEADER .megamenu .primary > li {
	width: 50%;
}

.HEADER .megamenu .primary a {
	display: block;
	position: relative;
	min-height: 50rem;
	padding: 0 30rem 0 60rem;
	margin-bottom: 30rem;
}

.HEADER .megamenu .primary a svg {
	width: 24rem;
	height: 12rem;
	display: inline-block;
	vertical-align: middle;
	margin: -1.5rem 0 0 6rem;
}

.HEADER .megamenu .primary a .icon {
	position: absolute;
	top: 0;
	left: 0;
	width: 40rem;
	height: 40rem;
}

.HEADER .megamenu .primary a .title {
	display: block;
	font-size: 20rem;
	font-weight: 800;
	margin-bottom: 10rem;
	line-height: 1.25;
}

.HEADER .megamenu .primary a .description {
	display: block;
	font-weight: 400;
	line-height: 1.5;
}

.HEADER .megamenu .primary .simple {
	width: 100%;
}

.HEADER .megamenu .primary .simple a {
	position: relative;
	display: block;
	width: 190rem;
	font-size: 20rem;
	font-weight: 800;
	line-height: 1.25;
	min-height: 0;
	border-bottom: 1px solid #252945;
	padding: 0 30rem 15rem 0;
	margin: 0 0 10rem 60rem;
}

.HEADER .megamenu .primary .simple a svg {
	display: block;
	position: absolute;
	top: 9rem;
	right: 0;
	margin: 0;
}

.HEADER .megamenu .primary .simple:last-child a {
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 30rem;
}

.HEADER .megamenu .secondary {
	width: 33.333%;
	padding: 40rem 50rem;
	box-sizing: border-box;
	background: #0D1130;
	flex: 0 0 auto;
}

.HEADER .megamenu .secondary > li:not(:last-child) {
	border-bottom: 1px solid #30344d;
}

.HEADER .megamenu .posts {
	width: 33.333%;
	padding: 50rem 50rem 20rem;
	box-sizing: border-box;
	background: #0D1130;
	flex: 0 0 auto;
}

.HEADER .megamenu .posts a {
	display: block;
	position: relative;
	padding-right: 30rem;
	line-height: 1.5em;
	font-weight: 500;
}

.HEADER .megamenu .posts .heading {
	padding: 0;
	font-size: 20rem;
	font-weight: 800;
	line-height: 1.25;
	min-height: 0;
}

.HEADER .megamenu .posts .heading svg {
	position: static;
	width: 24rem;
	height: 12rem;
	display: inline-block;
	vertical-align: middle;
	margin: -1.5rem 0 0 6rem;
}

.HEADER .megamenu .posts > li:not(:last-child) {
	border-bottom: 1px solid #30344d;
	padding-bottom: 15rem;
	margin-bottom: 10rem;
}

.HEADER .megamenu .posts > li:first-child {
	border-bottom: none;
}

.HEADER .megamenu .primary.alt-resources {position: relative; min-height: 415rem;}
.HEADER .megamenu .primary.alt-resources .image {position: absolute; bottom: 50rem; right: 50rem; width: 340rem;}
.HEADER .megamenu .primary.alt-resources li:first-child a svg {
	display: block;
	position: absolute;
	top: 9rem;
	right: 50rem;
	margin: 0;
}

/* slide down */

.b-page[data-scroll] .HEADER {background: var(--dark-blue);}
.b-page[data-scroll] .HEADER .megamenu > ul::before {height:15rem;}

/* nav open */

#toggle-nav:checked ~ .b-page .HEADER {background: var(--dark-blue);}
#toggle-nav:checked ~ .b-page .HEADER .nav-trigger {background-image: url(../images/dismiss.svg);}

/* fix to make sure the nav can always be closed */

#toggle-nav:checked ~ .b-page .HEADER .nav-trigger {display: block;}
#toggle-nav:checked ~ .b-page .HEADER nav {display: none;}

@media screen and (max-width: 960px) {
	.HEADER .nav-trigger {display: block;}
	.HEADER nav {display: none;}
}

/* blog posts */

.b-page.alt-blue .b-page-head {position: relative;}
.b-page.alt-blue .HEADER {background: linear-gradient(225deg, var(--blue), #0D1A66);}



