﻿.cs-header{    
	padding: 0 calc(25px + 2vw) 0 0;
    display: flex;
    justify-content: flex-start;
    box-sizing: unset;
	min-height: 115px;
}
body:not(.home) .cs-header{
    align-items: center;
}
.cs-header-contact{
	justify-content: flex-end;
	margin-left: auto;
    display: flex;
    text-align: right;
    gap: 30px;
	align-items: center;
}
.clear{clear:both;}

/***** Start of primary nav ******/
#menu-button{display: none;}
nav.mobile { display:none;}

nav.primary {
	padding:0;
	display:inline-block;
	margin:0;
	position:relative;
	font-family: 'Paralucent', sans-serif;
	}
	nav.primary ul {
		margin:0; 
		padding:0;
		}
	nav.primary > ul {
		display: flex;
		justify-content: space-around;
		align-items: center;
		}
		nav.primary ul li {
			display:inline-block;
			margin:0;
			list-style-type:none; 
			width:auto;
			}
			nav.primary ul li a {
				color:#fff;
				font-size:16px;
				line-height:60px;
				text-decoration:none;
				display:block;
				margin:0;
				text-align:center;
				-webkit-transition:.2s ease-in;  
				-moz-transition:.2s ease-in;  
				-o-transition:.2s ease-in;  
				transition:.2s ease-in;	
				font-weight:500;
				text-transform: uppercase;
				padding:0 18px;
				}	
			nav.primary ul li a:hover {
				color: #ff2d3d;
				}
			/* Appearance of the sub-level links */
			nav.primary ul li li a { 
				font-size:16px;
				line-height:16px;
				padding:10px 15px;
				color:#fff;
				background: #000;
				text-align:left;
				border-right:none;
				border-left:none;
			}
			nav.primary ul li li:first-of-type a { 
				padding:20px 15px 10px;
			}
			nav.primary ul li li:last-of-type a { 
				padding:10px 15px 20px;
			}
			/* Appearance of the sub-level links on hover */
			nav.primary ul li li a:hover { 
				color: #ff2d3d;
			}
/* This controls the Primary nav dropdowns for sublinks. Should not have to edit this too muuch */
nav.primary ul ul {
    display: none;
    position: absolute; box-shadow: 0 0 12px 0 rgba(0,0,0,0.2);
	overflow: hidden;
	border-radius: 3px;
}
nav.primary ul ul ul {
    position: absolute; 
    left: 100%;
    top:0; 
}
nav.primary ul li:hover > ul {  
    display: block;
    line-height:18px; 
    z-index: 100;
}
nav.primary ul ul li {
    float: none; 
	width: 300px;
    position: relative;
    margin:0;
	display: block;
}


@media screen and (max-width: 1840px)  {
	
	nav.primary ul li a{
		padding: 0 10px;
		font-size: 16px;
	}
}
@media screen and (max-width: 1640px)  {
	
	nav.primary ul li a{
		padding: 0 10px;
		font-size: 16px;
	}
	.cs-header-contact .heading-lg{
		font-size: 24px;
	}
	.cs-header-contact img{
		width: 150px;
	}
}


/******** End of primary Nav ***************/

@media screen and (min-width: 1440px)  {
		
	.menu-toggle.exit-click{
		display: none !important;
	}
	
	.cs-header-contact{
		padding-left: 2vw;
	}
	
	.cs-header > div:nth-of-type(1){
		width: 400px;
        margin-bottom: -100px;
        margin-right: 100px;
	}
	.cs-header > div:nth-of-type(2){
		width: 480px;
	}


.cs-header .cs-logo {
	padding: 25px 30px;
    max-width: 260px;
	margin-bottom: -100px;
	display: block;
    width: 100%;
    z-index: 10;
    position: relative;
}
.cs-header .cs-logo:before {
	content: '';
	background: #000;
	position: absolute;
	left:-30px;
	right: 0;
	top: 0;
	bottom: 0;
	transform: skewX(-10deg);
}
.cs-header .cs-logo img {
	position: relative;
}
	.show-mobile{
		display: none !important;
	}
}

@media screen and (max-width: 1439px)  {
	

.cs-header > div:nth-of-type(1) {display: flex;
	padding: 0 30px;
	justify-content: center;
	gap: 6vw;
	width: 100%;
	align-items: center;
	box-sizing: border-box;
	height: 100%;
}
.cs-header > div:nth-of-type(1) img {
	width: 200px;
}
	
	.hide-mobile{
		display: none !important;
	}
	.cs-header{
		padding-left: 15px;
		padding-right: 15px;
		height: 128px;
	}
	.cs-header-contact{
		flex-wrap: wrap;
		gap: 0px;
	}
	.cs-header-contact .heading-md{
		width: 100%;
		font-size: 16px !important;
	}
	.mobile + .menu-toggle.exit-click{
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		z-index: 499;
		pointer-events: none;
		
		background: rgba(36,32,33,0.33);
				opacity: 0;	
		transition: ease opacity 0.3s;
	}
	.mobile.open + .menu-toggle.exit-click{
		pointer-events: auto;
		opacity: 1;
	 	cursor: pointer;
	}
	
	
	
/*==============================
	Mobile Nav Styles			
================================*/	
nav.primary{display:none;}
#menu-button{ width: 100%;
	display: flex;
        justify-content: space-between;
	font-size: 21px;
	padding: 0 15px;
	box-sizing: border-box;
	position: relative;
        line-height: 48px;
	z-index: 1; /* needs to be lower than nav.mobile, adjust as needed */
	text-align: center;
	font-family: paralucent, sans-serif;
	}
	#menu-button a{
		 color:#fff !important;
		 text-decoration: none;
		 padding: 0 10px; 
		 font-weight:normal;
		display: block;
		cursor: pointer;
	  }
	#menu-button a.menu-toggle i{
		padding: 0;
	  }
nav.mobile {
	font-family: paralucent, sans-serif;
	display:block;
	position: fixed;
	top: 0;
	right: -375px;
	width: 375px;
	height: 100%;
	background: #fff;
	z-index: 500; /* needs to be higher than #menu-button, adjust as needed */
	overflow:auto;
	padding: 0 30px;
	box-sizing: border-box;
}
/* MENU HEADER SOCIAL MEDIA */
	nav.mobile .social-media {
		position: relative;
		text-decoration: none;
		display: inline-block;
		font-size:16px;
		word-spacing:13px;
		padding:0 0 0 15px;
		color: #ccc !important;
	}
	
	nav.mobile .social-media a:link, nav.mobile .social-media a:visited {color:#ccc; text-decoration:none;}
	nav.mobile .social-media a:hover, nav.mobile .social-media a:active {color:#fff; text-decoration:underline;}

/* MENU HEADER STYLES */
nav.mobile .mobile_top {
	position: relative;
	display:block;
	padding: 0;
	margin:100px 0 10px 0;
	color: #000;
	font-size: 18px;
	font-weight: 400;
}
	nav.mobile .social-icons{
	}
	nav.mobile .social-icons a{
		font-size: 16px;
		padding: 0 10px;
		width: 48px;
		height: 48px;
		line-height: 48px;
		color: #fff !important;
		box-shadow: none !important;
		background: none !important;
	}
/* MENU CLOSE 'X' BUTTON */
nav.mobile .menu-toggle:not(.exit-click) {
	position: absolute;
	padding: 3px 0 3px;
	font-family: Arial, sans-serif;
	font-size:24px;
	font-weight: bold;
	line-height: 1;
	color: #333;
	text-decoration: none;
	top:-40px;
	right:0;
	 	cursor: pointer;
}
nav.mobile .menu-toggle:not(.exit-click):hover { /* Menu close button on hoveer */
	color: #000;
}

/* MENU LIST STYLE */
nav.mobile ul {
	list-style: none;
	font-weight: 300;
	margin:0;
	padding:0;
}
nav.mobile ul li {
	position:relative;
}

/* FIRST LEVEL */
nav.mobile ul li a {
	position: relative;
	display: block;
	font-size:16px;
	padding: 10px 0;
	color: #000;
	text-decoration: none;
	text-align: left;
	font-weight: 500;
}
nav.mobile ul li a:hover {
	color: #1d1d1d; 
	text-decoration: underline;
}

/* SECOND LEVEL */
nav.mobile ul li li:last-child {border:none;}
	nav.mobile ul > li > ul{
		
		padding: 10px 0px 10px;
		background: #f5f5f5;
		border-radius: 5px;
	}
nav.mobile ul li li a {
	position: relative;
	display: block;
	padding: 10px 20px 10px 20px;
	color: #000;
	text-decoration: none;
}

/* THIRD LEVEL */
nav.mobile ul li li li:last-child {border:none;}
nav.mobile ul li li li a {
	background: #555;
	position: relative;
	display: block;
	padding: 20px 20px 20px 30px;
	color: #ccc;
	text-decoration: none;
}

nav.mobile ul li .click i{/* dropdown menu idicator arrow be sure to include this image with your image files */ 
	position:absolute;
	display:block;
	cursor:pointer;
	z-index: 12399994;
	top:0;
	right:0;
	width:auto;
	height:auto;
	padding: 15px 0 15px 15px;

}
nav.mobile ul li .click.open i:before{
    content: "\f068";
}
	
.nav-footer {color:#1B1B1B; position:relative; text-align:center; font-size:14px; line-height:16px; padding:15px 0;}

/* FONT AWESOME ICONS */
nav.mobile ul li a .fa{
	width:25px;
	font-weight:100;
	padding:8px 3px;
	margin:0 6px 0 0;
	text-align:center;
	background:#292929;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
}


nav.mobile ul li .fa-chevron-down {color:#999;}
}
