/************************************************************************************
 *
 *			Navigation
 *
 ***********************************************************************************/

#page-container.menu-open {
	z-index: 2000000001 !important;
}

html #wpadminbar, 
.et_fixed_nav #top-header,
.et_fixed_nav #main-header {
	position: fixed;
}

#top-header .container, 
#main-header .container {
    margin: 0;
    max-width: 100%;
    width: 100%;
}

.et_fullwidth_nav #main-header .container, 
#top-header .container, 
#top-header .container .col-sm-12 {
    padding: 0;
}

.header-wrapper, 
#nav-menu-wrapper #menu-top-header-menu {
    display: flex;
}

.header-wrapper {
    justify-content: space-between;
}

.header-wrapper #nav-menu-wrapper,
#nav-menu .menu {
    align-self: center;
}

.fancy-header #top-header,
.fancy-header #primary-navigation {
	margin: 0!important;
	padding: 0!important;
}

#main-header #primary-navigation .et_pb_widget {
    margin: 0!important;
	width: 100%!important;
}

body:not(.logged-in) .hide-if-logged-out, 
body.logged-in .hide-if-logged-in {
	display: none!important;
}

.hidden-item {
	height: 1px;
	overflow: hidden;
	position: absolute;
	width: 1px;
}

.header-item .display-mobile.contact-number {
    align-items: center;
    display: flex;
}

.header-item  .display-mobile {
	display: inline-block;
}

.header-item .display-desktop,
.header-item .display-desktop.contact-number {
	display: none;
}

.btn.full {
	display: block;
	width: 100%;
}

/* Main Header */

#main-header {
	background-color: #ffffff;	
    border-bottom: solid 1px #E3E3E3;
    -webkit-box-shadow: 0px 4px 12px #0F3D6A1A;
    box-shadow: 0px 4px 12px #0F3D6A1A;
	position: fixed;
	width: 100%;
	z-index: 1000;
}

#main-header:before {
    top: 0;
}

#main-header:after {
    bottom: 0;
}

#main-header .et_pb_row,
.et-db #et-boc .et-l #main-header .et_pb_row {
	max-width: 100%;
	width: 100%;
}

#main-header-elements {
    padding: 0 5%;
}

/* Top Header */

#top-header {
    align-items: center;
	background-color: #ffffff;
	border-bottom: solid 1px #E3E3E3;
	display: none;
	justify-content: center;
	padding: 5px 25px;
	text-align: center;
}

body.et_fixed_nav #page-container .et-fixed-header#top-header,
.et_secondary_nav_enabled #page-container #top-header.full-bg {
	background-color: #ffffff !important;
}

#top-header .header-wrapper {
    align-items: center;
}

.fancy-header #top-header .header-wrapper {
	padding: 5px 0;
}

body.logged-in #top-header .header-item .widget_nav_menu {
    display: block;
}

#top-header .menu {
    display: flex;
	list-style: none;
	margin-right: -5px;
}

#top-header .menu li {
	display: inline-block;
	margin: 0 7px 0 0;
	padding: 0 7px 0 0;
	position: relative;
}

#top-header .menu li:not(:last-of-type) {
	border-right: solid 2px #D6D6D6;
}

#top-header .menu li:last-of-type,
#top-header .menu li.hide-if-logged-in:nth-of-type(2) {
	margin-right: 0;
	padding-right: 0;
}

#top-header .menu li:last-of-type::after,
#top-header .menu li.hide-if-logged-in:nth-of-type(2)::after {
	display: none;
}

#top-header .menu li a, 
.et-db #top-header #et-boc .et-l .menu li a {
	display: block;
	color: #2E3B48;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.78px;
	padding: 3px 5px;
}

#top-header .menu li.fal {
	font-size: 1rem;
}

#top-header .menu li a:hover, #top-header .menu li a:focus,
#top-header #et-boc .et-l .menu li a:hover, #top-header #et-boc .et-l .menu li a:focus {
    color: #57C7E2;
}

.topbar-divider {
    color: #C4CDD9;
	line-height: 0.9;
    margin: 0 5px;
    vertical-align: top;
}

/* Topbar Search Bar */


#nav-search #searchform > div {
    display: flex;
    position: relative;
}

#nav-search input[type="text"] {
	background-color: #DAE0E7;
	border: none;
	border-radius: 0;
	color: #000000;
	height: 40px;
	outline-offset: -2px;
	padding: 0.7em;
	width: 350px;
}

#nav-search input[type="text"]::placeholder {
	color: #000000;
}

#nav-search input[type="text"]::-ms-input-placeholder {
	color: #000000;
}

#nav-search input[type="submit"] {
    background-color: #000000;
    border: none;
    border-radius: 0;
    color: #ffffff;
	font-family: 'ETModules';
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0;
    padding: 0;
    position: relative;
	transform: rotate(270deg);
    width: 40px;
}

#nav-search input[type="submit"]:hover, #nav-search input[type="submit"]:focus {
	background-color: #2d3b48;
}

/* Top Header Phone Number */

.header-wrapper .contact-number .fa-phone-alt:before {
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}

.header-wrapper .contact-number span:not(.hidden-item) {
	color: #2d3b48;
	display: none;
	font-family: 'Poppins', sans-serif;
	font-size: 1rem;
	font-weight: bold;
	letter-spacing: 1px;
    padding-top: 1px;
	text-transform: uppercase;
}

.header-wrapper .contact-number .fa-phone-alt {
	background-color: #57C7E2;
	border-radius: 50%;
	color: #ffffff;
	display: block;
	font-size: 1rem;
	height: 30px;
	position: relative;
	width: 30px;
}

/* Primary Navigation */

.fancy-header #primary-navigation .header-wrapper {
	padding: 0 20px;
}

/* Nav Logo */

#nav-logo {
	margin: 0 20px;
    padding: 10px 0;
    width: 175px;
}

#nav-logo a {
	display: inline-flex;
}

#nav-logo a:hover,
#nav-logo a:focus {
	opacity: 0.7;
}

#nav-logo img {
	height: 55px;
	object-fit: contain;
	object-position: left center;
    width: 100%;
}

/* Nav CTA */

#nav-cta {
	display: none;
}

/* Nav Menu */

#nav-menu {
	background-color: #ffffff;
	border-bottom: 5px solid #000000;
	border-top: 5px solid #000000;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	left: 100%;
	opacity: 0;
	overflow: scroll;
	padding: 0;
	position: absolute;
	top: 100%;
	transition: all 0.3s ease 0s;
	visibility: hidden;
	width: 100%;
	z-index: 90000000;
}

#nav-menu.open,
#nav-menu .menu li.menu-item-has-children.et-show-dropdown > .sub-menu {
	opacity: 1;
	visibility: visible;
}

#nav-menu.open {
	left: 0;
}

#nav-menu > div {
    border-bottom: solid 1px #000000;
	padding: 20px;
}

#nav-menu > div:last-of-type {
	border-bottom: none;
}

#nav-menu .menu {
    justify-content: center;
	padding: 0;
}

#nav-menu .et_pb_widget {
	margin: 0;
	width: 100%;
}

#nav-menu .menu li, .et-db #et-boc .et-l #main-header .et_pb_widget li {
	border-bottom: solid 1px #CBCBCB;
	display: block;
	line-height: 0;margin: 0;
	padding: 0;
}

#nav-menu .menu li:last-of-type, .et-db #et-boc .et-l #main-header .et_pb_widget li:last-of-type {
	border-bottom: 0;
}

.header-item, 
#nav-menu .menu li a, 
.header-item #secondary-nav ul.menu, 
.header-item #welcome-msg {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    line-height: 1;
    text-transform: uppercase;
}

.header-item, 
.header-item #secondary-nav ul.menu, 
.header-item #welcome-msg {
	font-size: 1rem;
	letter-spacing: 1.6px;
}

#nav-menu .menu li a, 
.et-db #main-header #et-boc .et-l .et_pb_widget .menu a {
	color: #2E3B48;
	display: block;
    margin: 5px 0;
    padding: 10px;
}

#nav-menu .menu li a {
	font-size: 0.75rem;
	letter-spacing: 1.04px;
}

#nav-menu .menu li.current-menu-item > a, 
#nav-menu .menu li.current-menu-ancestor > a, 
.et-db #et-boc .et-l #main-header .et_pb_widget li.current-menu-item a, 
.et-db #et-boc .et-l #main-header .et_pb_widget li.current-menu-ancestor > a {
    color: #57C7E2;
}

#nav-menu .menu li a,
#nav-menu .menu li.menu-item-has-children {
	position: relative;
}

#nav-menu .menu li a:hover, 
#nav-menu .menu li a:focus {
    color: #2d3b48;
}

#nav-menu .menu li.menu-item-has-children > a:first-child:after, 
#main-header.et-fixed-header #nav-menu .menu li.menu-item-has-children > a:first-child:after {
	content: "3";
	font-family: 'ETmodules';
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}

#nav-menu .sub-menu {
	border-top: solid 1px transparent;
	max-height: 0;
	opacity: 0;
	padding: 0;
	transition: all 0.3s ease 0s;
	visibility: hidden;
}

#nav-menu .menu li.menu-item-has-children.et-show-dropdown > .sub-menu {
	background-color: #f7f7f7;
	border-color: #CBCBCB;
	max-height: 500px;
	padding: 5px 0;
}

#nav-menu .sub-menu li {
	padding: 0;
}

#nav-menu .sub-menu li a, .et-db #et-boc .et-l #main-header .et_pb_widget .sub-menu li a {
	padding: 10px;
	width: auto;
}

#nav-menu .sub-menu li:nth-of-type(2) a {
	margin-top: 0;
}

#nav-menu .sub-menu li:last-of-type a {
	margin-bottom: 0;
}

#nav-menu .menu li.close-submenu {
	background: #f7f7f7;
	border-left: solid 1px #CBCBCB;
	border-right: solid 1px #CBCBCB;
	height: 43px;
	letter-spacing: 0;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: -5px;
	z-index: 10;
}

#nav-menu .menu li.close-submenu a {
	color: transparent!important;
	height: 43px;
	margin: 0!important;
	padding: 16px!important;
	text-align: center;
	width: 43px!important;
}

#nav-menu .menu li li.close-submenu a:after {
	color: #b92525!important;
	content: '\4d';
	font-family: 'ETmodules';
	font-size: 43px;
	position: absolute;
	right: 50%;
	top: 50%;
	transform: translate(50%, -50%);
}

/* Mobile Menu Toggle */

#mobile-call-icon, 
#mobile-nav-icon {
	width: 30px; 
}

#mobile-call-icon,
#mobile-nav-icon {
	align-self: center;
}

#mobile-nav-icon {
	cursor: pointer;
	display: block;
    height: 22px;
    position: relative;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
}

#mobile-nav-icon span:not(.hidden-item){
	background-color: #000000;
	border-radius: 9px;
	display: block;
	height: 3px;
	left: 0;
	opacity: 1;
	position: absolute;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
	width: 100%;
}

#mobile-nav-icon span:nth-child(1) {
	top: 0px;
}

#mobile-nav-icon span:nth-child(2), #mobile-nav-icon span:nth-child(3) {
	background-color: #000000;
	top: 10px;
}

#mobile-nav-icon span:nth-child(4) {
	top: 20px;
}

#mobile-nav-icon.open span:nth-child(1) {
	left: 50%;
	top: 15px;
	width: 0%;
}

#mobile-nav-icon.open span:nth-child(2), #mobile-nav-icon.open span:nth-child(3){
	background-color: #000000;
}

#mobile-nav-icon.open span:nth-child(2) {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

#mobile-nav-icon.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#mobile-nav-icon.open span:nth-child(4) {
	left: 50%;
	top: 15px;
	width: 0%;
}

@media screen and (min-width: 981px) {

	#main-header-elements {
		padding: 0 calc(5% - 15px);
	}

}

@media screen and (min-width: 981px) {
	
	.header-item  .display-mobile,
	.header-item .display-mobile.contact-number  {
		display: none;
	}

	.header-item .display-desktop {
		display: inline-block;
	}
	
	.header-item .display-desktop.contact-number,
	.et-db #et-boc .et-l .header-item .display-desktop.contact-number {
		align-items: center;
		display: flex;
	}
	
	.fancy-header #top-header .header-wrapper,
	.fancy-header #primary-navigation .header-wrapper {
		padding: 0;
	}
	
	#nav-logo  {
		padding-left: 20px;
	}
	
	/* Phone Icon Link */
	
	.header-wrapper .contact-number .fa-phone-alt {
		font-size: .75rem;
		height: 25px;
		margin-right: 15px;
		width: 25px;
	}

	.header-wrapper .contact-number span:not(.hidden-item) {
		display: block;
	}

	/* Top Header */
	
	#top-header { 
		display: block;
	}
	
	/* Main Header */
	
	#main-header-elements {
		padding: 0;
	}
	
	#main-header-elements > .header-item:not(#nav-menu) {
		width: calc(50% - 130px);
	}
	
	/* Nav Logo */
	
	#nav-logo {
		margin: 0;
		text-align: left;
	}
	
	/* Nav CTA */
	
	#nav-cta {
		align-items: center;
		display: flex;
		justify-content: flex-end;
		padding-right: 25px;
		text-align: right;
	}
	
	#nav-cta .btn {
		align-items: center;
		border-radius: 26px;
		font-size: 0.75rem;
		letter-spacing: 0.78px;
		line-height: 1;
		justify-content: center;
		padding: 18px 45px;
		text-transform: uppercase;
	}
	
	/* Nav Menu */
	
	#nav-menu,
	#nav-menu .menu {
        display: flex!important;
		justify-content: center;
		padding: 0;
	}
	
    #nav-menu {
        background: transparent;
        border: 0;
		flex-direction: row;
		height: auto!important;
		opacity: 1!important;
    	overflow: visible;
        position: static;
		top: 0!important;
        transform: none;
		visibility: visible!important;
    }
	
	#nav-menu .menu {
		align-items: center;
	}
	
	#nav-menu > div {
		border-bottom: none!important;
		padding: 0;
	}
	
	#nav-menu div,
    #nav-menu .menu {
        height: 100%;
    }
	 
	#nav-menu .menu li, .et-db #et-boc .et-l #main-header .et_pb_widget li {
		border: 0;
		display: inline-block;
		margin: 0 5px 0 0;
		padding: 0;
		text-align: center;
	}

	#nav-menu .menu li a {
		font-size: 0.875rem;
	}
	
	#nav-menu .menu li a:before {
		background: #E3E3E3;
		bottom: 0;
		color: transparent;
		content: '.';
		display: block;
		height: 1px;
		left: 0;
		margin: auto;
		opacity: 0;
		position: absolute;
		right: 0;
		top: 0;
		visibility: hidden;
		width: 100%;
		z-index: -1;
	}
	
	#nav-menu .menu li a:hover::before, #nav-menu .menu li a:focus::before {
		height: 100%;
		opacity: 1;
		visibility: visible;
	}
	
	#nav-menu .menu li a, .et-db #main-header #et-boc .et-l .et_pb_widget .menu a {
		margin: 0;
	}
	
	#nav-menu .menu li:last-of-type {
		margin-right: 0;
	}
	
	#nav-menu .menu li.menu-item-has-children > a:first-child:after, 
	#main-header.et-fixed-header #nav-menu .menu li.menu-item-has-children > a:first-child:after {
		line-height: 0;
		position: relative;	
		right: 0;
	}
	
	#nav-menu .menu li.menu-item-has-children>a:first-child, 
	#et-secondary-nav .menu-item-has-children>a:first-child {
		padding-right: 6px;
	}
	
	#nav-menu .menu li.menu-item-has-children>a:first-child:after, 
	#et-secondary-nav .menu-item-has-children>a:first-child:after {
		font-size: 14px;
	}
	
	#nav-menu .sub-menu {
		background-color: #ffffff;
		border-top: 5px solid #2d3b48;
		bottom: -10px;
		box-shadow: 2px 2px 5px rgb(0 0 0 / 15%);
		display: block;
		left: 0;
		max-height: unset;
		padding: 0;
		position: absolute;
		text-align: left;
		transform: translateY(100%);
		transition: all .2s ease 0s;
    }
	
	#nav-menu .menu li:hover > .sub-menu, #nav-menu .menu li:focus-within > .sub-menu,
	#nav-menu .menu li.menu-item-has-children.et-show-dropdown > .sub-menu {
		background-color: #ffffff;
		border-color: #2d3b48;
		opacity: 1;
		padding: 0;
		visibility: visible;
	}

	#nav-menu .sub-menu:before {
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-bottom: 10px solid #2d3b48;
		content: "";
		height: 0;
		left: 20%;
		position: absolute;
		top: -4px;
		transform: translateY(-100%);
		transition: all .2s ease 0s;
		width: 0;
    }

    #nav-menu .sub-menu li, .et-db #et-boc .et-l #main-header .et_pb_widget .sub-menu li {
        display: block;
		margin: 0;
        padding: 0;
		text-align: left;
    }
	
	#nav-menu .sub-menu li:not(:last-of-type), .et-db #et-boc .et-l #main-header .et_pb_widget .sub-menu li:not(:last-of-type) {
		border-bottom: solid 2px #000000;
	}
    
    #nav-menu .sub-menu li a, .et-db #et-boc .et-l #main-header .et_pb_widget .sub-menu li a {
        padding: 10px;
		width: 200px; 
    }
	
	#nav-menu .menu li a:hover, 
	#nav-menu .menu li a:focus {
		color: #2E3B48!important;
	}
	
	#mobile-nav-icon,
	#nav-menu .menu li.close-submenu,
	.mobile-menu-container {
		display: none!important;
	}
	
}