/* Header Styles */

header#masthead {
	background: #fff none repeat scroll 0 0;
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
	border-top: 22px solid #e5e5e5;
}

header#masthead > .container:after {
	display: none !important;
}

#masthead #logo-section .container, 
#masthead #menu-section .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 0;
	padding-bottom: 0;
	max-width: 1300px;
}

#masthead #logo-section .container:before, 
#masthead #menu-section .container:before, 
#masthead #logo-section .container:after, 
#masthead #menu-section .container:after {
	display: none !important;
}

#masthead #logo-section {
	padding: 28px 0 20px;
}

#masthead #logo-section #headerBanner .ad-block {
	margin: 0 !important;
	display: flex;
	justify-content: flex-end;
}

#masthead #menu-section {
	background-color: #10163e;
	color: #ffffff;
	padding: 10px 0;
}

/* Header Widget Styles */

#header-widget-section {
	background-color: #16183e;
	padding: 0.3em;
}

#header-widget-section > .container {
	max-width: 1075px;
	padding: 0;
	text-align: right;
}

#header-widget-section .widget {
	display: inline-block;
	margin: 0;
	max-width: 420px;
	vertical-align: middle;
	width: 100%;
}

/* Header Widget Menu */

#header-widget-section ul.menu {
	list-style: outside none none;
	margin: 0 -10px;
	padding: 0;
}

#header-widget-section ul.menu::after {
	content: " ";
	display: block;
	clear: both;
}

#header-widget-section ul.menu > li {
	margin: 0;
	padding: 0 10px;
	display: block;
}

/* Header Widget Search */

form.search-form {
	position: relative;
}

form.search-form label {
	display: inline-block;
	width: 100%;
}

form.search-form label input {
	background-color: #f2f2f2;
	border: medium none;
	border-radius: 0;
	display: inline-block;
	font-size: 14px;
	font-weight: 400;
	height: 49px;
	padding: 10px 107px 10px 20px;
	text-align: right;
	width: 100%;
}

form.search-form input[type="submit"] {
	background-color: #10163e;
	background-image: url("../images/icon-search.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 16px auto;
	border: medium none;
	border-radius: 0;
	box-shadow: none;
	height: 49px;
	position: absolute;
	right: 0;
	text-indent: -999em;
	top: 0;
	width: 57px;
	overflow: hidden;
	padding: 0;
}

.site-header .a2a_kit .a2a_svg {
	background-color: transparent !important;
}

.site-header .a2a_svg path {
	fill: #fff !important;
}

#logo-section > .container {
	padding: 0 20px;
}

#logo-section > .container .site-branding {
	display: inline-block;
	max-width: 100%;
	width: 200px;
	margin: 0;
}

body.citybizplus #logo-section > .container .site-branding {
	width: 230px;
}

h1.site-title, div.site-title {
	background: none;
	margin: 0;
	padding: 0;
}

h1.site-title a, div.site-title a {

	/* background-image: none !important;
	*/

	color: #10163e;
	font-size: 58px;
	height: 0;
	letter-spacing: 5.5px;
	line-height: 1;
	max-width: 100%;
	text-decoration: none;
	text-indent: -999em;

	/* width: 100%;
	*/

	padding-bottom: 30%;
}

/* Main Navigation Styles */

#navigation-section {
	background: #ccc;
}

#navigation-section > .container {
	padding-bottom: 5px;
	padding-top: 5px;
}

#logo-section #site-navigation {
	clear: none;
	display: inline-block;
	margin-top: 0;
	width: auto;
}

#site-navigation ul.menu {
	list-style: outside none none;
	margin: 0 -10px;
	padding: 0;
	display: flex;
}

#site-navigation ul.menu::after {
	content: " ";
	display: block;
	clear: both;
}

#site-navigation ul.menu li {
	display: block;
	margin: 0;
	padding: 0 22px;
	padding: 0;
	font-family: 'Montserrat', sans-serif;
}

#site-navigation ul.menu > li {
	position: relative;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

#site-navigation ul.menu > li::before {
	border-left: 1px solid rgb(172, 172, 172);
	bottom: 0;
	content: " ";
	height: 40px;
	left: 0;
	position: absolute;
	width: 0;
	display: none;
}

#site-navigation ul.menu > li:hover::before, 

#site-navigation ul.menu > li:hover + li::before, 

#site-navigation ul.menu > li.current-menu-item::before, 

#site-navigation ul.menu > li.current-menu-item + li::before, 

#site-navigation ul.menu > li.current_page_ancestor::before, 

#site-navigation ul.menu > li.current_page_ancestor + li::before {
	display:none;
}

#site-navigation ul.menu > li:first-child::before {
	display:none;
}

#site-navigation ul.menu li a {
	color: rgb(77, 77, 77);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	text-transform: uppercase;
}

#site-navigation ul.menu > li > a {
	padding: 20px 15px;
	color: #ffffff;
	font-weight: 600;
	font-size: 15px;
	display: block;
	text-transform: uppercase;
	transition: all 0.4s;
}

#site-navigation ul.menu > li > a {
	padding: 18px 8px;
	color: #ffffff;
	font-weight: 600;
	font-size: 13px;
	display: block;
	text-transform: uppercase;
	transition: all 0.4s;
}

@media (min-width: 1400px) {
	#site-navigation ul.menu > li > a {
		padding: 18px 10px;
	}

}

#site-navigation ul.menu > li > a:hover {
	color: #e5e5e5;
}

#site-navigation ul.menu > li.current_page_ancestor > a, 

#site-navigation ul.menu > li.current-menu-item > a, 

#site-navigation ul.menu > li:hover > a {

	/*background-color: #10163e;
	color: #fff;
	color: #000;
	*/
}

/*
#site-navigation ul.menu li.menu-item-has-children > a {
background-image: url("../images/nav-arrow.png");
background-position: right 30px center;
background-repeat: no-repeat;
background-size: 13px auto;
padding-right: 56px;
}
*/

#site-navigation ul.menu > li.menu-item-has-children.current_page_ancestor > a, 

#site-navigation ul.menu > li.menu-item-has-children.current-menu-item > a, 

#site-navigation ul.menu > li.menu-item-has-children:hover > a {

	/*background-image: url("../images/nav-arrow-active.png");
	*/
}

#site-buttons ul.menu > li:not(.menu-button) + li.menu-button {
	margin-left: 1em;
}

#site-buttons ul.menu {
	display: flex;
	justify-content: flex-end;
	margin: 0;
	padding: 0;
}

#site-buttons ul.menu > li {
	margin-left: 8px;
	list-style-type: none;
}

#site-buttons ul.menu > li:first-child {
	margin-left: 0;
}

#site-buttons ul.menu > li.menu-button > a {
	font-family: "Montserrat";
	text-transform: none;
	background-color: #333;
	padding: 0.9em 1.5em;
	font-family: 'Montserrat', sans-serif;
	color: #fff;
	display: block;
	font-weight: 500;
	letter-spacing: 0;
	font-size: 13px;
	text-decoration: none;
	border-radius: 8px;
	white-space: nowrap;
}

li.publish-news a::before {
	--_fa-family: var(--fa-family,var(--fa-style-family,"Font Awesome 7 Free"));
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: var(--fa-display,inline-block);
	font-family: var(--_fa-family);
	font-feature-settings: normal;
	font-style: normal;
	font-synthesis: none;
	font-variant: normal;
	font-weight: var(--fa-style,900);
	line-height: 1;
	text-align: center;
	text-rendering: auto;
	width: var(--fa-width,1.25em);
	content: "\f1ea";
	font-weight: 100;
	margin-right: 0.2em;
	font-size: 1.4em;
	position: relative;
	top: 0.07em;
}

#site-buttons ul.menu > li.menu-button.blue > a {
	background-color: #487ebb;
	transition: background-color 0.4s;
}

#site-buttons ul.menu > li.menu-button.blue > a:hover {
	background-color: #255891;
}

#site-buttons ul.menu > li.menu-button.red > a {
	background-color: #db513d;
}

#site-buttons ul.menu > li.menu-button.red > a:hover {
	background-color: #ba3522;
}

#site-buttons ul.menu > li.menu-button.gold > a {
	background-color: #ebc865;
	color: #10163e;
}

#site-buttons ul.menu > li.menu-button.gold > a:hover {
	background-color: #cba845;
}

/* CityBiz+ Buttons */

body:not(.citybizplus-subscriber-logged-out) #site-buttons ul.menu > li.cbp-logged-out, 
body:not(.citybizplus-subscriber-0) #site-buttons ul.menu > li.cbp-level-0 {
	display: none !important;
}

#site-navigation ul.menu ul {
	background-color: #404040;
	padding: 13px 30px;
	top: auto;
}

#site-navigation ul.menu ul::before {
	background-color: #404040;
	content: " ";
	height: 10px;
	left: 0;
	pointer-events: none;
	position: absolute;
	top: 6px;
	width: 100%;
	z-index: 10;
}

#site-navigation ul.menu ul > li {
	min-width: 90px;
	width: 100%;
}

#site-navigation ul.menu li.col-2 ul > li {
	width: 210px;
}

#site-navigation ul.menu ul > li a {
	border-top: 1px solid rgba(179, 179, 179, 0.3);
	color: #fff;
	display: table;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.2;
	padding: 12px 10px 12px 0;
	text-transform: none;
	width: 100%;
	transition: all 0.4s;
	opacity: 0.7;
}

/*

#site-navigation ul.menu ul > li:nth-child(1) a, 

#site-navigation ul.menu ul > li:nth-child(8) a {
border-top: none;
}

*/

#site-navigation ul.menu ul > li a:hover {
	color: #fff;
	opacity: 1;
}

/*

#site-navigation ul.menu ul > li:nth-child(1) a {
border-top: none;
}

*/

#site-navigation ul.nav-taxonomy, 

#site-navigation ul.menu li.col-2 ul {
	-webkit-column-count: 3;
	-moz-column-count: 3;
	column-count: 3;
	-webkit-column-gap: 45px;
	-moz-column-gap: 45px;
	column-gap: 45px;
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	column-gap: 20px;
	overflow: hidden;
}

#site-navigation ul.menu ul.nav-taxonomy {
	left: auto;
	top: auto;
	position: relative;
	padding: 0;
	box-shadow: none;
	padding-top: 9px;
}

#site-navigation ul.menu ul.nav-taxonomy::before {
	top: 0px;
}

#site-navigation ul.nav-taxonomy > li, 

#site-navigation ul.menu li.col-2 ul li {
	display: inline-table;
}

#site-navigation ul.nav-taxonomy > .term {
	min-width: 180px;
	float: none;
}

#site-navigation ul.menu ul > li.heading > a {
	border: none;
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: 0.05em;
	padding-bottom: 0;
	font-size: 14px;
	opacity: 0.65;
}

#site-navigation ul.menu ul > li.heading > a[href='#'] {
	pointer-events: none;
}

#site-navigation ul.menu ul > li.heading:not(:first-child) > a {
	padding: 1em 0 0;
}

#site-navigation ul.menu ul > li.heading + li > a {
	border: none;
}

/* MOBILE MENU */

body #sdrn_menu.top {
	top: 53px;
	background-color: rgba(0, 0, 0, .8) !important;
	position: fixed;
	z-index: 500;
	padding: 0 27px;
}

body #sdrn_menu.sdrn_levels ul li {
	border-bottom: none;
	border-top-color: rgba(255, 255, 255, .8);
}

#sdrn_menu.sdrn_levels ul li a {
	padding: 15px 0;
	text-transform: lowercase;
	font-weight: 600;
	font-size: 15px;
}

#sdrn_menu.sdrn_levels ul li:last-child a {
	padding-bottom: 20px;
}

#sdrn_bar {
	border-top: 4px solid #10163e;
	padding: 10px 15px 10px 28px;
	height: auto;
}

#sdrn_bar .menu_title, #sdrn_bar .sdrn_icon_menu {
	font-size: 29px;
	display: block;
	line-height: 1;
	letter-spacing: 2px;
	display: none;
}

#sdrn_bar .sdrn_ic {
	width: 30px;
	height: 24px;
	margin: 5px 0 0;
}

#sdrn_bar .sdrn_ic span {
	width: 100%;
	height: 2px;
}

#sdrn_bar .sdrn_ic_2 {
	top: 9px;
}

#sdrn_bar .sdrn_ic_3 {
	top: 18px;
}

.search-close {
	background-image: url('../images/search-close.png');
	background-size: 23px auto;
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -999em;
	display: none;
	text-align: left;
	width: 45px;
	height: 45px;
	overflow: hidden;
	top: 6px;
	position: fixed;
	right: 11px;
	background-color: #fff;
	padding: 10px;
	cursor: pointer;
	z-index: 510;
}

/* Page Header */

header.page-header {
	--image-opacity: 0.6;
	--preheading-text-color: #fff;
	--header-text-color: #fff;
	--heading-text-max-width: 100%;
	--paragraph-text-color: #fff;
	--paragraph-text-max-width: 680px;
	--overlay-color: #000;
	--heading-strong-text-color: inherit;
	--extra-overlap-size: 0;
	background-color: #477ebc;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
	margin: 0 calc(50% - 50vw);
}

header.page-header.has-image::before {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: #10163e;
	opacity: var(--image-opacity);
	content: '';
}

header.page-header .overlay {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: #333;
	display: none;
}

header.page-header .container {
	position: relative;
	padding-top: 88px;
	padding-bottom: 88px;
}

header.page-header .preheading {
	color: var(--preheading-text-color);
	text-align: center;
	border: none;
	padding: 0;
	font-size: 20px;
	
	@media (max-width: 63.999em) {
		& {
			font-size: 17px;
		}
	}
	
	@media (max-width: 39.999em) {
		& {
			font-size: 14px;
		}
	}
}

header.page-header .preheading a {
	color: inherit;
	text-decoration: none;
}

header.page-header .heading {
	color: var(--header-text-color);
	font-size: 60px;
	font-weight: 400;
	padding: 0;
	text-align: center;
	margin: 0 auto;
	max-width: var(--heading-text-max-width);
}

header.page-header .heading .logo-style {
	font-size: 1em;
}

header.page-header .heading strong {
	font-weight: 700;
	color: var(--heading-strong-text-color);
}

header.page-header .paragraph-text {
	color: var(--paragraph-text-color);
	text-align: center;
	border: none;
	padding: 0;
	font-size: 26px;
	line-height: calc(32/26);
	font-size: 22px;
	line-height: 1.6;
	max-width: var(--paragraph-text-max-width);
	margin: 0.4em auto 0;
	font-weight: 500;
	font-family: "Montserrat", sans-serif;
	
	@media (max-width: 63.999em) {
		& {
			font-size: 19px;
		}
	}
	
	@media (max-width: 39.999em) {
		& {
			font-size: 16px;
		}
	}
}

header.page-header .below-heading {
	text-align: center;
	margin-top: 0.8em;
}

header.page-header .below-heading h2 {
	color: #ebc865;
	vertical-align: middle;
	text-align: center;
	font-size: 2em;
}

header.page-header .below-heading h2 span {
	white-space: nowrap;
}

header.page-header .below-heading h2 img {
	display: inline-block;
	vertical-align: middle;
	height: auto;
	width: auto;
	max-height: 1.4em;
	position: relative;
	top: -0.15em;
	margin: 0.6em 0.2em;
}

@media (max-width: 39.999em) {
	header.page-header .below-heading h2 {
		font-size: 1.4em;
	}

}

header.page-header.style-large.has-image::before {
	opacity: 0.6;
	background-color: var(--overlay-color);
}

header.page-header.overlay-no::before {
	display: none;
}

header.page-header.style-large .container {
	padding: 140px 20px calc(160px + 1px * var(--extra-overlap-size));
}

header.page-header.style-large .heading {
	font-weight: 400;
	font-size: 59px;
	padding: 0 0.5px;
	margin: 0 auto;
}

@media (max-width: 63.999em) {
	header.page-header.style-large .container {
		padding: 90px 20px 110px;
	}

}

@media (max-width: 39.999em) {
	header.page-header.style-large .container {
		padding: 40px 20px 60px;
	}

}

/* Page Header - Condense */

header.page-header.style-condense.no-image {
	background: none;
	
	& .preheading {
		color: #000;
	}
	
	& .heading {
		color: #000;
	}
}

header.page-header.style-condense .container {
	padding-top: 60px;
	padding-bottom: 0px;
}

@media (max-width: 63.999em) {
	header.page-header.style-condense .container {
		padding-top: 40px;
		padding-bottom: 0px;
	}

}

@media (max-width: 39.999em) {
	header.page-header.style-condense .container {
		padding-top: 20px;
		padding-bottom: 0px;
	}

}

.entry-content header.page-header {
	text-align: center;
}

.entry-content header.page-header h3 {
	font-size: 35px;
	text-transform: none;
	font-weight: 500;
	margin-bottom: 10px;
}

.entry-content header.page-header.redHeader h3 strong, 
.entry-content header.page-header.redHeader h3 b {
	color: #db513d;
}

.entry-content header.page-header.darkBlueHeader h3 strong, 
.entry-content header.page-header.darkBlueHeader h3 b {
	color: #10163e;
}

.entry-content header.page-header.blueHeader h3 strong, 
.entry-content header.page-header.blueHeader h3 b {
	color: #487ebb;
}

.entry-content header.page-header.yellowHeader h3 strong, 
.entry-content header.page-header.yellowHeader h3 b {
	color: #ebc865;
}

.entry-content header.page-header.yellowHeader .redBtn {
	background-color: #ebc865;
	color: #000;
}

.entry-content header.page-header .btn {
	margin-top: 20px;
	border-radius: 0;
	font-size: 16px;
}

@media (max-width: 63.999em) {
	header.page-header.style-large .heading {
		font-size: 50px;
	}

}

@media (max-width: 39.999em) {
	header.page-header.style-large .heading {
		font-size: 30px;
	}

}

.vc_row.overlap-header header.page-header.style-large .container {
	padding: 90px 20px 180px;
}

.vc_row.overlap-header header.page-header.style-large .heading {
	margin: 0 0 0.15em;
	line-height: 1.1;
}

.vc_row.overlap-header + .vc_clearfix + .vc_row {
	margin-top: -100px;
}

@media (max-width: 991px) {
	header.page-header.style-large .heading br {
		display: none;
	}

}

@media (max-width: 900px) {
	#content .overlap-header {
		margin-top: -10px;
	}

}
