/**
 * IT Monteur — header & navigation v1.7.6
 */

:root {
	--itmonteur-navy: #1a366f;
	--itmonteur-navy-dark: #234a8c;
	--itmonteur-navy-menu: #234a8c;
	--itmonteur-green: #86c724;
	--itmonteur-menu-hover-bg: rgba(134, 199, 36, 0.28);
	--itmonteur-menu-hover-text: #d4f08a;
	--itmonteur-submenu-bg: #234a8c;
	--itmonteur-submenu-hover-bg: #86c724;
	--itmonteur-submenu-hover-text: #1a366f;
	--itmonteur-submenu-text: #ffffff;
	--itmonteur-submenu-heading: #86c724;
	--itmonteur-menu-border: rgba(255, 255, 255, 0.92);
	--itmonteur-header-row-h: 70px;
	--itmonteur-top-nav-h: 45px;
	--itmonteur-wp-admin-bar-h: 0px;
	--itmonteur-font: 'Roboto', 'Open Sans', Arial, sans-serif;
}

.admin-bar {
	--itmonteur-wp-admin-bar-h: 32px;
}

@media screen and (max-width: 782px) {
	.admin-bar {
		--itmonteur-wp-admin-bar-h: 46px;
	}
}

.top_nav {
	background: var(--itmonteur-submenu-bg) !important;
	border-bottom: 3px solid var(--itmonteur-green) !important;
	margin-bottom: 0 !important;
	min-height: var(--itmonteur-top-nav-h);
	box-sizing: border-box;
}

/* WordPress admin bar — keep site header below toolbar, not behind it */
.admin-bar .header {
	margin-top: 0 !important;
	top: calc(var(--itmonteur-wp-admin-bar-h) + var(--itmonteur-top-nav-h)) !important;
}

.admin-bar .header.innerpages {
	top: calc(var(--itmonteur-wp-admin-bar-h) + var(--itmonteur-top-nav-h)) !important;
}

.admin-bar body.compact .header,
.admin-bar.compact .header,
.admin-bar body.compact .header.innerpages {
	top: var(--itmonteur-wp-admin-bar-h) !important;
}

#wpadminbar {
	z-index: 100001 !important;
}

.top_nav + .clearfix {
	display: none !important;
	height: 0 !important;
	margin: 0 !important;
}

.top_nav a,
.top_nav strong {
	color: rgba(255, 255, 255, 0.92) !important;
}

.top_nav a:hover,
.top_nav .tpbut:hover {
	color: var(--itmonteur-green) !important;
}

/* Header — no extra padding, green line at bottom */
.header {
	background: #ffffff !important;
	border-bottom: 3px solid var(--itmonteur-green) !important;
	box-shadow: none !important;
	top: 45px !important;
	padding: 0 !important;
	margin: 0 !important;
	height: var(--itmonteur-header-row-h) !important;
	min-height: var(--itmonteur-header-row-h) !important;
	max-height: var(--itmonteur-header-row-h) !important;
	z-index: 10000 !important;
	overflow: visible !important;
}

.compact .header,
body.compact .header {
	top: 0 !important;
	height: var(--itmonteur-header-row-h) !important;
	min-height: var(--itmonteur-header-row-h) !important;
	max-height: var(--itmonteur-header-row-h) !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Sticky mode — collapse top bar so no white strip between menu and slider */
body.compact .top_nav {
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	border: 0 !important;
}

.header.innerpages {
	top: 45px !important;
}

body.compact .header.innerpages {
	top: 0 !important;
}

.header > .container,
.header .menu_main,
.header .menu_main .navbar,
.header .menu_main .navbar-collapse {
	overflow: visible !important;
}

.header > .container {
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	height: 100% !important;
	min-height: 0 !important;
	padding: 0 15px !important;
	box-sizing: border-box;
}

/* Logo */
.header .logo {
	background: #ffffff !important;
	display: flex;
	align-items: center;
	flex: 0 0 25%;
	width: 25%;
	margin: 0 !important;
	padding: 0 12px 0 0;
	box-sizing: border-box;
	height: 100% !important;
}

html body .header .logo,
html body .logo {
	margin-top: 0 !important;
}

html body .header .logo #logo img,
html body #logo img {
	max-height: 54px !important;
	width: auto !important;
	height: auto !important;
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}

/* Sticky header — same logo size & clarity as normal header */
body.compact .header .logo,
body.compact .header .logo #logo,
body.compact .header .logo #logo a {
	display: flex !important;
	align-items: center !important;
	height: 100% !important;
	opacity: 1 !important;
	visibility: visible !important;
}

body.compact .header .logo #logo,
.compact .header #logo {
	background: none !important;
	background-size: auto !important;
	background-position: left center !important;
	min-height: 0 !important;
}

body.compact html body .header .logo #logo img,
body.compact html body #logo img,
.compact .header #logo img {
	max-height: 54px !important;
	width: auto !important;
	height: auto !important;
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}

body.compact #logo.has_compact_logo img:first-child {
	display: block !important;
}

body.compact #logo.has_compact_logo .compact_logo {
	display: none !important;
}

/*
 * Menu column — transparent; navy strip only on nav items (right-aligned)
 */
.header .menu_main {
	position: relative;
	z-index: 10001;
	background: transparent !important;
	flex: 1 1 auto;
	width: auto !important;
	height: 100% !important;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-left: auto;
}

.header .menu_main .navbar,
.header .menu_main .navbar-default {
	background: transparent !important;
	border: 0 !important;
	margin: 0 !important;
	width: auto;
	height: 100% !important;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.header .menu_main .navbar-collapse,
.header .menu_main .navbar-collapse.pull-right {
	float: none !important;
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	height: 100% !important;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.header .menu_main #king-mainmenu,
.header .menu_main .nav.navbar-nav {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	display: inline-flex !important;
	flex-direction: row;
	flex-wrap: nowrap !important;
	align-items: center;
	align-self: center;
	height: 100% !important;
	min-height: var(--itmonteur-header-row-h);
	background: var(--itmonteur-submenu-bg) !important;
	box-shadow: inset 0 -3px 0 var(--itmonteur-green);
	white-space: nowrap;
}

.header .menu_main #king-mainmenu > li,
.header .menu_main .nav.navbar-nav > li {
	display: flex !important;
	align-items: center;
	float: none;
	position: relative;
	height: 100%;
	flex-shrink: 0;
}

/* Spacer — fixed gap = header height only (top bar is already in document flow) */
body.home .margin_bottom11.resp_margin_bottom68,
body.front-page .margin_bottom11.resp_margin_bottom68 {
	margin-top: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-bottom: var(--itmonteur-header-gap, 70px) !important;
	padding: 0 !important;
	height: 0 !important;
	line-height: 0 !important;
	font-size: 0 !important;
	border: 0 !important;
	overflow: visible !important;
}

body.home header.header + .clearfix.margin_bottom11,
body.home .margin_bottom11.resp_margin_bottom68 + #container_full {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.home #container_full,
body.home #content,
body.home .entry-content,
body.home .wpb_row:has(.wpb_revslider_element),
body.home .wpb_revslider_element,
body.home #rev_slider_1_1_wrapper,
body.home rs-module-wrap {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.home #rev_slider_1_1_wrapper,
body.home rs-module-wrap,
body.home .wpb_revslider_element,
body.home .wpb_row:has(.wpb_revslider_element) {
	position: relative;
	z-index: 1 !important;
	overflow: visible !important;
}

/* Preserve full Revolution Slider height — do not clip layers */
body.home #rev_slider_1_1_wrapper rs-module,
body.home rs-module-wrap rs-module {
	overflow: hidden !important;
}

/* ── Top menu links — one line, vertically centered ── */
.header .navbar-default .navbar-nav > li > a,
.site_wrapper .header > .container .navbar-nav > li > a {
	color: rgba(255, 255, 255, 0.95) !important;
	font-family: var(--itmonteur-font) !important;
	font-size: 14px !important;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	border-right: 1px solid var(--itmonteur-menu-border) !important;
	padding: 0 16px !important;
	height: 100% !important;
	min-height: var(--itmonteur-header-row-h);
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	line-height: 1 !important;
	white-space: nowrap !important;
	word-break: keep-all !important;
	flex-shrink: 0;
	position: relative;
	transition: color 0.2s ease, background-color 0.2s ease;
}

@media (min-width: 1000px) and (max-width: 1199px) {
	.header .navbar-default .navbar-nav > li > a {
		font-size: 13px !important;
		padding: 0 12px !important;
		letter-spacing: 0.02em;
	}
}

.header .navbar-default .navbar-nav > li:last-child > a {
	border-right: 0;
}

.header .navbar-default .navbar-nav > li > a:hover,
.header .navbar-default .navbar-nav > li > a:focus,
.header .navbar-default .navbar-nav > .open > a,
.header .navbar-default .navbar-nav > li.itmonteur-menu-open > a,
.site_wrapper .header > .container .navbar-nav > li > a:hover,
.site_wrapper .header > .container .navbar-nav > li > a:focus {
	color: var(--itmonteur-menu-hover-text) !important;
	background: var(--itmonteur-menu-hover-bg) !important;
}

.header .navbar-default .navbar-nav > .active > a,
.header .navbar-default .navbar-nav > .current-menu-item > a,
.header .navbar-default .navbar-nav > .current-menu-parent > a,
.site_wrapper .header > .container .navbar-nav > li.current-menu-item > a {
	color: var(--itmonteur-green) !important;
	background: rgba(134, 199, 36, 0.15) !important;
	box-shadow: inset 0 -3px 0 var(--itmonteur-green);
}

/* ── Submenus: colored panel, width = content only ── */
.header .navbar-nav .dropdown-menu,
.header .dropdown-menu.three,
.header .yamm .dropdown-menu,
.header .yamm .dropdown.yamm-fw > .dropdown-menu,
.header .dropdown-submenu > .dropdown-menu {
	background-color: var(--itmonteur-submenu-bg) !important;
	background: var(--itmonteur-submenu-bg) !important;
	border: 0 !important;
	border-top: 3px solid var(--itmonteur-green) !important;
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.3) !important;
	padding: 0 !important;
	margin: 0 !important;
	top: 100% !important;
	z-index: 100002 !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: calc(100vw - 20px) !important;
}

.header .navbar-nav > li:not(.yamm-fw) > .dropdown-menu {
	left: 0 !important;
	right: auto !important;
	min-width: 220px !important;
}

@media (min-width: 1000px) {
	.header .navbar-nav > li.dropdown:hover > .dropdown-menu,
	.header .navbar-nav > li.yamm-fw:hover > .dropdown-menu,
	.header .navbar-nav > li.itmonteur-menu-open > .dropdown-menu {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	.header .yamm .dropdown.yamm-fw > .dropdown-menu {
		left: 0 !important;
		right: auto !important;
		width: max-content !important;
		min-width: 0 !important;
		max-width: calc(100vw - 20px) !important;
	}

	.header .navbar-nav > li.dropdown > a::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: -4px;
		height: 4px;
	}
}

.header .yamm .nav,
.header .yamm .collapse,
.header .yamm .dropup {
	position: static;
}

.header .yamm .dropdown,
.header .navbar-nav > li.dropdown,
.header .navbar-nav > li.yamm-fw {
	position: relative !important;
}

.header .dropdown-menu.three > li,
.header .navbar-nav .dropdown-menu > li,
.header .yamm .dropdown-menu > li {
	background: var(--itmonteur-submenu-bg) !important;
}

.header .dropdown-menu.three > li > a,
.header .navbar-nav .dropdown-menu > li > a,
.site_wrapper .header .dropdown-menu li > a {
	color: var(--itmonteur-submenu-text) !important;
	background: var(--itmonteur-submenu-bg) !important;
	font-family: var(--itmonteur-font) !important;
	font-size: 14px !important;
	padding: 11px 18px !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
	line-height: 1.5;
	white-space: nowrap;
	transition: color 0.2s ease, background-color 0.2s ease;
}

.header .dropdown-menu.three > li:last-child > a,
.header .navbar-nav .dropdown-menu > li:last-child > a {
	border-bottom: 0 !important;
}

/* Submenu hover — green bg, navy text (different from menu hover) */
.header .dropdown-menu.three > li > a:hover,
.header .navbar-nav .dropdown-menu > li > a:hover,
.site_wrapper .header .dropdown-menu li > a:hover,
.header .yamm-content .list-unstyled li a:hover {
	color: var(--itmonteur-submenu-hover-text) !important;
	background: var(--itmonteur-submenu-hover-bg) !important;
}

/* Mega menu inner layout — no blank columns */
.header .yamm-content {
	background: var(--itmonteur-submenu-bg) !important;
	padding: 10px 0 !important;
	width: auto !important;
}

.header .yamm-content .row,
.header .yamm-content .wpb_row,
.header .yamm-content .container {
	background: transparent !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: row;
	flex-wrap: nowrap;
}

.header .yamm-content .wpb_wrapper,
.header .yamm-content .wpb_text_column {
	background: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
}

.header .yamm-content .wpb_column {
	background: transparent !important;
	border-right: 1px solid rgba(255, 255, 255, 0.15);
	padding: 0 !important;
	margin: 0 !important;
	float: none !important;
	width: auto !important;
	min-width: 200px;
	max-width: 320px;
	flex: 0 0 auto;
	box-sizing: border-box;
}

.header .yamm-content .wpb_column:last-child {
	border-right: 0;
}

.header .yamm-content .wpb_column.itmonteur-empty-col {
	display: none !important;
}

.header .yamm-content .list-unstyled {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.header .yamm-content .list-unstyled li {
	margin: 0;
	border: 0;
}

.header .yamm-content p:empty {
	display: none !important;
}

.header .yamm-content .list-unstyled li p {
	color: var(--itmonteur-submenu-heading) !important;
	background: rgba(0, 0, 0, 0.2) !important;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	margin: 0 !important;
	padding: 8px 14px 6px !important;
	border-bottom: 2px solid var(--itmonteur-green) !important;
}

.header .yamm-content .list-unstyled li a {
	color: var(--itmonteur-submenu-text) !important;
	background: var(--itmonteur-submenu-bg) !important;
	font-size: 14px !important;
	padding: 9px 14px !important;
	display: block;
	white-space: normal;
}

.header .yamm-content .list-unstyled li a i {
	color: var(--itmonteur-green) !important;
	margin-right: 5px;
}

.header .dropdown-submenu > .dropdown-menu {
	left: 100% !important;
	right: auto !important;
	min-width: 220px !important;
}

.header .menu_main .navbar-header {
	background: transparent;
}

@media (max-width: 999px) {
	.header {
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		top: 45px !important;
	}

	.header .logo {
		width: 100% !important;
		flex: 1 1 100%;
		height: auto !important;
		padding: 8px 0;
	}

	.header .menu_main {
		width: 100% !important;
		height: auto !important;
	}

	.header .menu_main #king-mainmenu {
		display: block !important;
		width: 100% !important;
	}

	.header .yamm-content .row,
	.header .yamm-content .wpb_row,
	.header .yamm-content .container {
		flex-wrap: wrap !important;
	}

	.header .yamm-content .wpb_column {
		width: 100% !important;
		max-width: none !important;
		border-right: 0 !important;
	}
}
