/* DESKTOP NAVBARS
-------------------------------------------------------------------------------*/
@media (min-width: 768px) {
	.header-logo {
		height: 102px;
	}
}
@media (min-width: 1024px) {
	.header-logo {
		height: 118px;
	}
}
.header-navutil,
.header-navmain {
	text-align: right;
}
.header-navutil {
	flex-flow: column nowrap;
	align-items: flex-end;
	font-size: 12.5px;
	max-height: 36px;
	padding-right: 21px;
}
.header-navutil a {
	color: #B9BCBF;
	padding: 0.5em;
	font-weight: 500;
}
.header-navmain {
	overflow: hidden;
	flex-flow: column nowrap;
	align-items: flex-end;
	font-size: 15.5px;
	height: 87px;
}
.header-navmain > ul {
	position: relative;
	margin-right: 80px;
	height: 100%;
	width: 100%;
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-end;
	justify-content: flex-end;
	min-height: 87px;
}
.header-navmain ul > .menu-item a {
	color: #FFFFFF;
	display: block;
	font-weight: 600;
	padding: 5px 10px 34px 10px;
	font-size: 0.8em;
}
@media (min-width: 1200px) {
	.header-navmain ul > .menu-item a {
		font-size: 1em;
	}
}


/* MOBILE MMENU
-------------------------------------------------------------------------------*/
.mm-page {
	overflow: hidden;
}
.mm-panel {
	background: #2b3234;
	background: linear-gradient(-20deg, #2b3234 0%, #000 170%) !important;
}
.mm-navbar {
	background: transparent;
}
.mm-navbar,
.mm-listitem:after,
.mm-listitem__btn {
	border-color:rgba(255, 255, 255, 0.1);
}


/* MOBILE TRIGGERS
-------------------------------------------------------------------------------*/
.header-navmobile {
	align-items: center;
	justify-content: flex-start;
	position: absolute;
	top: 0px;
	bottom: 0px;
	right: 0;
	padding-right: 1em;
}
.trigger-sidenav {
	margin-left: 5px;
	font-size: 0.9em;
	background: #16A3EE;
	padding: 0.675em 0.8em;
	line-height: 1rem;
	border-radius: 5px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	transition: all 0.1s ease-in-out;
	text-decoration: none;
	margin-right: 1em;
}
@media (min-width: 768px) {
	.trigger-sidenav {
		font-size: 1rem;
	}
}
.trigger-sidenav .icon-label {
	color: #FFF;
}
.trigger-sidenav:hover {
	background-color: #0B4564;
}
.trigger-sidenav .icon-menu {
	top: 1px;
	margin-right: 3px;
}
.trigger-sidenav:hover .icon-menu span,
.trigger-sidenav:hover .icon-menu:before,
.trigger-sidenav:hover .icon-menu:after {
	background-color: #16A3EE;
}


/* SEARCH FORM
-------------------------------------------------------------------------------*/
.header-search {
	position: relative;
	height: 50px;
	z-index: 1;
	text-align: right;
}
.header-search .search-form {
	min-width: 400px;
}
.header-search #searchform {
	display: none;
}
.header-search .search-form button,
.header-search .search-form input {
	display: inline-block;
	padding: 0;
	margin: 0;
	border: 0;
	width: auto;
	vertical-align: middle;
	text-align: center;
}
.header-search .search-form label {
	color: #539BD1;
	font-weight: bold;
	margin-right: 5px;
}
.header-search .search-form input {
	text-align: left;
	padding-left: 1em;
	position: relative;
	border-radius: 50px;
}
.header-search .search-form [type="text"]:focus {
	border-color: #539BD1;
}
.header-search .search-form #searchsubmit {
	width: 0;
	height: 0;
	visibility: hidden;
	position: absolute;
}
.header-search .search-form input::-webkit-input-placeholder,
.header-search .search-form textarea::-webkit-input-placeholder {
	opacity: .2;
	color: #000;
}


/* SEARCH POSITIONING MAGIC
-------------------------------------------------------------------------------*/
.header-search .search-form {
	position: absolute;
	right: 7px;
	top: 7px;
	z-index: 1;
}
.trigger-search {
	position: absolute;
	top: 11px;
	right: 11px;
	z-index: 2;
}
.trigger-close {
	position: absolute;
	top: 4px;
	right: 4px;
}
.trigger-search img {
	position: absolute;
	width: 18px !important;
	top: 4px;
	left: 4px;
}
@media (min-width: 960px) {
	.header-search {
		position: absolute;
		top: 50px;
		right: 20px;
	}
}
@media (min-width: 1024px) {
	.header {
		height: 118px;
	}
}

/* MEGAMENU
-------------------------------------------------------------------------------*/
.megamenu {
	position: relative;
	z-index: 100;
	width: 100%;
	min-height: 0;
}
.megamenu-panel {
	display: none;
	position: absolute;
	top: -1px;
	padding: 35px 35px 15px 35px;
	width: 100%;
	background-color: #000000;
	color: #FFF;
}
.megamenu-panel.is-open {
	display: block;
}
.menu-item.is-active {
	position: relative;
}
.menu-item.is-active:after {
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	left: 50%;
	bottom: 0px;
	margin-left: -10px;
	border-style: solid;
	border-width: 0 10px 10px 10px;
	border-color: transparent transparent #000 transparent;
}


/* MEGAMENU CONTENT
-------------------------------------------------------------------------------*/

/* Structure */
.megamenu-panel {
	font-size: 0.8em;
	padding-bottom: 25px;
}
.megamenu-panel .container {
	display: flex;
	flex-flow: column wrap;
	align-items: stretch;
	width:  100%;
}
@media (min-width: 768px) {
	.megamenu-panel .container {
		flex-flow: row nowrap;
	}
}
.megamenu-panel a {
	color: #FFF;
	font-weight: 500;
	text-decoration: none;
}
.mega-column {
	width: 100%;
	margin-top: 2em;
	display: flex;
	flex-flow: column nowrap;
	justify-content: stretch;
}
@media (min-width: 768px) {
	.mega-column {
		margin: 0 1em;
	}
	.mega-column:first-child {
		margin-left: 0;
	}
	.mega-column:last-child {
		margin-right: 0;
	}
}

/* Column Titles */
.megamenu-panel,
.megamenu-panel h4 {
	color: #FFF;
}
.megamenu-panel h4 {
	padding-bottom: 8px;
	border-bottom: 1px solid rgb(103,103,103,0.5);
}
.megamenu-panel hr {
	height: 3px;
	width: 100%;
	background-color: inherit;
	border-bottom: 1px solid rgb(103,103,103,0.5);
	margin-bottom: 14px;
}

/* Features */
.megamenu-feature h3 {
	margin-bottom: 0.5em;
	line-height: 1.5em;
	color: #FFF;
}
.megamenu-feature p {
	color: #FFF;
	margin-bottom: 0.5em;
}
.megamenu-feature span {
	font-weight: bold;
	color: #FFF;
	transition: color 0.01s ease-in;
}
.megamenu-feature {
	text-decoration: none;
	flex: 1;
	display: flex;
	justify-content: stretch;
	width: 100%;
	height: 100%;
	font-size: 0.9em;
	border-radius: 2px;
	background-color: #2B3234;
	transition:
		background-color 0.1s ease-in,
		color 0.1s ease-in;
}
.megamenu-feature:hover {
	background-color: #40484a;
}
.megamenu-feature .megamenu-thumb {
	min-width: 35%;
	background-size: cover;
	background-position: center;
	opacity: 0.85;
	border-radius: 2px 0 0 2px;
	transition: opacity 0.1s ease-in;
}
.megamenu-feature:hover .megamenu-thumb {
	opacity: 1;
}
.megamenu-feature:hover span {
	color: #539BD1;
}
.megamenu-feature .megamenu-excerpt {
	display: flex;
	flex-flow: column;
	justify-content: flex-end;
	height: 100%;
	vertical-align: bottom;
	padding: 25px 20px 20px 20px;
}

/* Infobox */
.megamenu-ghost {
	font-size: 0.9em;
	border: 1px solid #2B3234;
	border-radius: 2px;
	padding: 1em 1em 0.5em 1em;
}
.megamenu-ghost h3,
.megamenu-ghost p {
	color: #FFF;
	margin-bottom: 0.5em;
}

/* Link List */
.mega-list a {
	line-height: 1.25em;
	display: inline-block;
	margin-bottom: 0.4em;
}

/* Categories */
.mega-cats .cat-list {
	column-count: 2;
}
.mega-cats .cat-list li {
	border-color: rgb(103,103,103,0.5);
}
.mega-cats .cat-list li .cat-link {
	position: relative;
	display: inline-block;
	font-weight: 700;
	padding-left: 40px;
}
.mega-cats .cat-list li .cat-link span {
	position: absolute;
	top: -4px;
	left: 0px;
	width: 30px;
	height: 30px;
}
.mega-cats .cat-list li:nth-child(4n-3) {
	border-top: 0;
}


/* MOBILE ICONS
-------------------------------------------------------------------------------*/
.icon {
	position: absolute;
	display: block;
	width: 28px;
	height: 28px;
	z-index: 100;
	transition: all 0.1s;
	background-color: #000000;
	border-radius: 30px;
	z-index: 1;
	display: inline-block;
	min-height: auto;
	margin-top: 0;
}
.icon:hover {
	background-color: #BBBBBB;
}
.icon-menu,
.icon-menu span,
.icon-menu:before,
.icon-menu:after {
	transition: all 0.3s;
}
.icon-menu {
	position: relative;
	display: inline-block;
	z-index: 1;
	width: 13px;
	height: 12px;
	line-height: 12px;
}
.icon-menu span,
.icon-menu:before,
.icon-menu:after {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	left: 0px;
	height: 2px;
	background: rgba(255,255,255,.5);
	border-radius: 10px;
}
.icon-menu:before {
	top: 0;
}
.icon-menu span {
	top: 5px;
}
.icon-menu:after {
	bottom: 0;
}
.icon-close:before,
.icon-close:after {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 4px;
	border-radius: 4px;
	background: #FFF;
	transition: all 0.3s;
	left: 5px;
}
.icon-close:before {
	top: 12px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.icon-close:after {
	bottom: 12px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.icon-close:hover:before {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.icon-close:hover:after {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.trigger-search img {
	width: 30px;
}


/* HELPERS
-------------------------------------------------------------------------------*/
::-ms-clear { width : 0; height: 0; }
.is-active {
	opacity: 1;
	transition: opacity 0.1s;
}
.has-search #searchform {
	display: block;
}
.is-deactive {
	opacity: 0;
	transition: opacity 0.1s;
}
@media (max-width: 768px) {
	.hide-logo {
		opacity: 0;
		transition: opacity 0.1s;
	}
}