﻿@charset "UTF-8";

/* RESET 
------------------------------------------------*/
* {margin:0; padding: 0; border: 0; outline: 0; background: transparent;}
	

/* GLOBAL SITE FRAMEWORK
------------------------------------------------*/
body {/*margin:0; line-height:12px;*/ font-size:100%; font-family: 'Be Vietnam', sans-serif !important; background:#fff;}

/* SELECTION */	
::selection {color:#fff; background: #f30601;}
::-moz-selection {color:#fff; background: #f30601;}


/* CLEAR */
.clear {clear: both;}

/* HEADERS */
/*Remove or simplify font-weight and font-height */
h1, h2, h3, h4 ,h5 ,h6 {line-height: normal;}
h1 {font-size:26px; font-weight:normal;}
h2 {font-size:24px; font-weight:normal; color:#242424;}

h3 {font-size:1.625em; font-weight:600; color:#242424;}
h4 {font-size:1.375em; font-weight:600; color:#242424;}

h5 {font-size:16px; font-weight:normal;}
h6 {font-size:14px; font-weight:normal;}


/* PARAGRAPH/LIST/GENERAL TEXT */
/* LINKS */
a{-webkit-transition:.5s ease-in; -moz-transition:.5s ease-in; -o-transition:.5s ease-in; transition:.5s ease-in;}
a:link, a:visited {color:#202020; text-decoration:underline;}
a:hover, a:active {color:#f30601; text-decoration:none;}

a[href^="tel:"] {color:inherit;  text-decoration: none;}

/* IMAGES */
img {display:block;}

/* TEXT EMPHASIS */
em {font-style:italic;}
strong {font-weight: 700;}

/* TEXT STYLINGS */
.dark {color:#131313;}
.gray {color:#4F4F4F;}
.heavy {font-weight:800;}

/* ALIGNMENT */
.left {float:left;}
.right {float:right;}
.center {text-align:center;}







/* HEADER
------------------------------------------------*/	
.hd-contact {padding:12px 5%; text-align:right; background:#f6f6f6;}
.hd-contact a {margin:0 25px 0 4px; font-size:1.125em; text-decoration:none; color:#2d2d2d;}
.hd-contact a:last-of-type {margin:0;}
.hd-contact .fa-solid, .hd-contact .fa-brands {font-size:1.125em; color:#e0001a;}



/* SITE HEADER
------------------------------------------------*/	
.site-header {display:flex; flex-flow:row wrap; align-items:center; justify-content:space-between; margin:0 auto; padding:30px 5%; max-width: 1600px;}	
	
.header-logo{
	max-width: 240px;
	object-fit: contain;
}


/* LOGO
------------------------------------------------*/	
.logo {max-width:373px;}	
.logo img {width:100%; max-height: 150px; max-width: 132px;}

img.logo-manu {max-width:198px; margin:6px 0 0 auto;}




/*  NAVIGATION
------------------------------------------------*/
#menu-button{display:none;}
nav.mobile {display:none;}

nav.primary {display:flex; flex-flow:row wrap; justify-content:flex-end; z-index:500; position:relative; margin:0; padding:0;}

nav.primary ul {display:flex; flex-flow:row wrap; align-items:center; justify-content:flex-end; margin:0 15px 0 0; padding:0;}
nav.primary ul li {margin:0; padding:0; list-style-type:none;}
				
nav.primary ul li a {
	display:block; margin:0 10px; padding:12px 0;
    font-size:1.1em; font-weight:300; text-align:center; text-decoration:none; text-transform:uppercase; color:#191919;
	-webkit-transition:.5s ease-in; -moz-transition:.5s ease-in; -o-transition:.5s ease-in; transition:.5s ease-in;	
}	

nav.primary ul li a:hover {color:#e0001a; }


/*  SUB NAV
------------------------------------------------*/
nav.primary ul li li {width: 250px;}
nav.primary ul li li a:link, nav.primary ul li li a:visited{
	width: 250px; padding:15px 0; font-size:.94em; line-height:18px; text-indent:20px; text-align:left; color:#fff; border:0; background: #181818;
}

nav.primary ul li li a:hover,nav.primary ul li li a:active {line-height:18px; color:#fff; background:#058fce;}

/*  NAV DROPDOWNS
------------------------------------------------*/
nav.primary ul ul {display: none; position: absolute;} 
nav.primary ul ul ul {position: absolute; left: 100%; top:0;}
nav.primary ul li:hover > ul {display: block; line-height:18px; z-index: 500;}
nav.primary ul ul li {float: none; position: relative; margin:0;}




/* SEARCH FORM
------------------------------------------------*/
.search-form {display:flex; flex-flow:row wrap; align-items: center; justify-content:space-between; width:245px;  border:2px #e0001a solid;}

.search-form input[type="text"] {
	width:calc(100% - 90px) !important;
	height:49px; margin:0; padding:0 10px 3px 10px !important; font-size:14px !important; line-height:1 !important; text-transform:uppercase; color: #6e6e6e; box-sizing: border-box; border-radius:0; border:0 !important; background-color: #fff; font-family: 'Be Vietnam', sans-serif !important;
}

.search-form input[type="submit"] {
	 padding:12px !important; font-size:11px !important; line-height:1 !important; text-transform:uppercase; letter-spacing:1px; font-weight:700; border: none; color:#6e6e6e; border-radius:0; background:transparent;
	transition: all .2s ease-in-out; -moz-transition: all .2s ease-in-out; -webkit-transition: all .2s ease-in-out; -webkit-appearance: none;
}

.search-form input[type="submit"]:hover {color:#e0001a; background:#f6f6f6;}





/*  FOOTER
------------------------------------------------*/
.site-footer {
	padding:25px 10%; font-size:1em; font-weight:300; text-align:center; color:#fff;
	background: rgb(14,14,12); background: linear-gradient(71deg, rgba(14,14,12,1) 8%, rgba(180,0,15,1) 8%, rgba(180,0,15,1) 9%, rgba(218,0,18,1) 9%);
}
.site-footer a {color:#fff;}





/************************************************ Responsive Styles **/

@media screen and (max-width: 1650px) {
	.logo {max-width:340px;}
	nav.primary ul li a {margin:0 8px; font-size:1.05em;}	
	.search-form {width:215px;}
}

@media screen and (max-width: 1550px) {	
	.logo {max-width:285px;}
	nav.primary ul li a {font-size:.95em;}	
	.hero-logo {max-width:250px;}
}
	
@media screen and (max-width: 1400px) {	
	.search-form {display:none;}
}

@media screen and (max-width: 1300px) {
	.logo {max-width:373px;}	
	
	nav.primary{display:none;}
	#menu-button{display: block; font-size: 1.25em; line-height:60px; position: relative; z-index: 400;}
	#menu-button a{color:#191919; text-decoration: none; margin:12px 0 0 0; padding:0; font-weight:100; cursor:pointer;}
	
	.fa-bars {color:#e0001a;}
	
	nav.mobile ul li a .fa{
		width:25px;
		font-weight:100;
		padding:8px 3px;
		margin:0 0 0 5px;
		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 {position:absolute; right:10px; margin:18px 0 0 0;}

	nav.mobile {
		display:block;
		position: fixed;
		top: 0;
		right: -285px;
		width: 285px;
		height: 100%;
		z-index: 500;
		overflow:auto;
		background:#333;
	}
	
	/* MENU HEADER SOCIAL MEDIA */
	nav.mobile .social-media {
		position: absolute;
		text-decoration: none;
		vertical-align: top;
		z-index:9999;
		display: inline-block;
		
		top: 15px;
		left: 15px;
		font-size:16px;
		word-spacing:13px;
		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 h3 {	
		color: #ccc;
		padding: 23px 0;
		position: relative;
		font-size: 18px;
		background:#313131;
	}			
	nav.mobile .menu-title {position: absolute; vertical-align: top; top: 16px; right: 47px; text-transform:uppercase; font-size:12px; color: #ccc;}
		
	/* MENU CLOSE 'X' BUTTON */
	nav.mobile .menu-toggle {position: absolute; top: 8px; right: 10px; padding: 6px 9px 5px; display: inline-block; font-weight: 700; font-size: 18px; line-height: 1; color: #ccc; text-decoration: none; vertical-align: top; cursor:pointer; font-family: Arial, sans-serif;}
	nav.mobile .menu-toggle:hover {color: #fff;}
	
	/* MENU LIST STYLE */
	nav.mobile ul {list-style: none; font-weight: 300; margin:0; padding:0;}
	nav.mobile ul li {color: #999; font-size:15px; border-bottom: 1px solid #303030;}
	
	/* FIRST LEVEL */
	nav.mobile ul li a {
		color: #999;
		position: relative;
		display: block;
		font-size:15px;
		text-align:left;
		text-decoration: none;
		border-left:4px #333 solid;
		padding: 15px 35px 15px 20px;
		text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	}
	nav.mobile ul li a:hover {background:rgba(45,45,45,0.5); color: #fff; border-left:4px #e0001a solid;}
	
	/* SECOND LEVEL */
	nav.mobile ul li li:last-child {border:none;}
	nav.mobile ul li li a {color: #ccc; background: #444; border-left:4px #444 solid; padding: 15px 10px 15px 15px;}
	nav.mobile ul li li a:hover {background:rgba(65,65,65,0.5);}
	
	/* THIRD LEVEL */
	nav.mobile ul li li li:last-child {border:none;}
	nav.mobile ul li li li a {color: #ccc; background: #555; border-left:4px #555 solid;}
	nav.mobile ul li li li a:hover {background:rgba(85,85,85,0.5);}
	
	.nav-footer {color:#777; position:relative; text-align:center; font-size:14px; line-height:16px; padding:15px 0;}
}

@media screen and (max-width: 768px) {
	.hd-contact {padding:12px 2.5%; text-align:center; }
	.hd-contact a {margin:0 20px 0 4px; font-size:1em; text-decoration:none; color:#2d2d2d;}
	.hd-contact a span {display:none;}
}


@media screen and (max-width: 550px) {
	.site-header {flex-flow:column; justify-content:center;}	
	.logo {max-width:373px; width:auto;}	
	.logo img {width: 100%}
	img.logo-manu {max-width:165px; margin:6px auto 0 auto;}
}