﻿@charset "UTF-8";


/* RESET 
------------------------------------------------*/
* { 
    margin: 0;  
    padding: 0;  
    border: 0;  
    outline: 0;  
    background: transparent;  
}

ol, ul {}
blockquote, q {quotes: none;}  
blockquote:before, blockquote:after, q:before, q:after {content: '';}  
	

/* GLOBAL SITE FRAMEWORK
------------------------------------------------*/
body {
	font-size:100%; font-family:Arial, Helvetica, sans-serif;}

/* SELECTION */	
::selection {color:#fff; background:#011dfd;}
::-moz-selection {color:#fff; background:#011dfd;}


/* 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:40px; line-height:1; text-transform:uppercase; font-weight:900;}
h1 span {font-size:20px; line-height:1; font-style:normal; font-weight:300;}
h2 {font-size:26px; font-weight:800; text-transform:uppercase;}

h3 {font-size:26px; font-weight:800;}
h4 {font-size:14px; font-weight:normal;}
h5 {font-size:20px; font-weight:800;}
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:inherit; text-decoration:none;}
a:hover, a:active {color:#095deb; 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;}


.blue {color:#095deb;}
.mid-gray {color:#3F3F3F;}
.red {font-weight:700; color:#de1f27;}



/* ALIGNMENT */
.left {float:left;}
.right {float:right;}
.center {text-align:center;}






.site-container {max-width:1250px; margin:0 auto;}

.headline-text {font-weight:900; text-transform:uppercase;}




/* HEADER
------------------------------------------------*/	
.home-header {position:absolute; z-index:999999999; width:100%; top:10%; left:0; right:0; transition: all 2s ease;}	


.home-header.sticky {
	width:100%;
	z-index:999999999;
	position:absolute;
}




/* LOGO
------------------------------------------------*/	
.logo-home {position:relative; z-index:5; max-width:740px; margin:0 auto -8.5% auto; padding:0; transition:.5s ease;}
.logo-home img {width:100%; max-width:740px; margin:0 auto; }


.home-header.sticky .logo-home {max-width:420px;}


.logo {max-width:382px; /*margin:12px auto 27px auto;*/ margin:0 auto -80px auto; padding:0;}
.logo img {width:100%; margin:0 auto;}


.logo-sub {max-width:320px; margin:0 auto; padding:20px 2.5%;}
.logo-sub img {width:100%;}


/*  HERO
------------------------------------------------*/	
.hero {position:relative; z-index:1; background:#0c0c0c;}


.hero-background {position:relative; z-index:1;}
.hero-background img{width:100%; opacity:0.2;} 


header {
background-color: #040404;
background-image: url("data:image/svg+xml,%3Csvg width='84' height='48' viewBox='0 0 84 48' xmlns='https://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h12v6H0V0zm28 8h12v6H28V8zm14-8h12v6H42V0zm14 0h12v6H56V0zm0 8h12v6H56V8zM42 8h12v6H42V8zm0 16h12v6H42v-6zm14-8h12v6H56v-6zm14 0h12v6H70v-6zm0-16h12v6H70V0zM28 32h12v6H28v-6zM14 16h12v6H14v-6zM0 24h12v6H0v-6zm0 8h12v6H0v-6zm14 0h12v6H14v-6zm14 8h12v6H28v-6zm-14 0h12v6H14v-6zm28 0h12v6H42v-6zm14-8h12v6H56v-6zm0-8h12v6H56v-6zm14 8h12v6H70v-6zm0 8h12v6H70v-6zM14 24h12v6H14v-6zm14-8h12v6H28v-6zM14 8h12v6H14V8zM0 8h12v6H0V8z' fill='%231c1c1c' fill-opacity='0.4' fill-rule='evenodd'/%3E%3C/svg%3E");
}

/*  MAIN
------------------------------------------------*/	
.main {max-width:1250px; margin:0 auto; padding:3.5%; background:#fff;}

.main-inv {margin:0 auto; padding:4% 0 !important;}


/*  NAVIGATION
------------------------------------------------*/
#menu-button{display: none;}
nav.mobile {display:none;}

nav.primary {
	z-index:500; position:relative; width:100%; margin:0 auto; padding:0;
	
	background: rgb(0,0,254); background: linear-gradient(180deg, rgba(0,0,254,1) 0%, rgba(2,96,254,1) 100%);
}

nav.primary ul {display:flex; flex-flow:row wrap; align-items:center; justify-content:center; margin:0; padding:0;}
nav.primary ul li {margin:0; padding:0; list-style-type:none;}
				
nav.primary ul li a {
	display:block; margin:0; padding:20px; font-size:1.25em; line-height:1.25em; font-weight:900; text-transform:uppercase; text-decoration:none; color:#f0f0f0;
	-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:#f1f1f1; background: rgb(0,0,0,0.3);}

/*  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;}













/*  ARTICLE
------------------------------------------------*/
article {/*width:52%; margin:0 0 0 4.5%;*/ text-align:center; font-size:1.125em; line-height:1.5;}
article h1 {}
article hr {width:80%; max-width:650px; margin:16px auto 8px auto; padding:0 0 8px 0; border-top:#e2e2e2 double; border-bottom:0;}
article p {}

.hours-highlight {width:80%; max-width:550px; margin:30px auto; padding:30px 0; text-align:center; background:#ececec;}

h3.service-highlight {margin:45px 0; padding:30px; text-align:center; color:#de0419; border:1px #de0419 solid;}


/*  INTRO CONTACT
------------------------------------------------*/
.intro-contact {
	display:flex; flex-flow:row wrap; align-items:flex-start; justify-content:center;
	margin:1.25em 0 0 0; font-size:1.125em; line-height:1.5; font-weight:500; color:#3e3e3e; 
}
.intro-contact h5 {width:100%; margin:0 0 10px 0; text-align:center;}
.intro-contact a {text-decoration:none;}
.intro-contact .location {margin:0 3.5% 0 0;}
.intro-contact .location .fas {margin:0 0 0 -20px; color:#095deb;}
.intro-contact .numbers {text-align:right;}




/*  ASIDE
------------------------------------------------*/
aside {display:flex; flex-flow:row wrap; align-items:center; justify-content:center; margin:45px 0 0 0;}

.button-link {width:49%; padding:16px 0 24px 0; text-align:center; /*border-bottom:2px #404040 solid;*/}
.button-link a {display:block; padding:8px 0 12px 0; font-size:28px; line-height:14px; text-transform:uppercase; text-decoration:none; color:#fff; font-weight:900;}
.button-link a span {font-size:14px; line-height:36px; text-align:left; font-weight:600;}

.blue-button {margin:0 2% 0 0; background:#095deb;}
.blue-button:hover {background:#0000fe;}

.red-button {background:#de0419;}
.red-button:hover {background:#a60c11;}






 

.page-text {width:90%; margin:1.5em auto;}






/* SITE FORM
------------------------------------------------*/
.site-form {width:100%; margin:35px 0 0 0; padding:0;}
.site-form h6 {font-size:1.1em; font-weight:700;}
.site-form .three-cells {width:32.3%; *width: 32%; box-sizing: border-box;}
.site-form .full-cell {width:99% !important;}
.site-form .last {margin-right:0 !important;}

.short-textbox {height:100px !important;}

.site-form .instructions {font-size:14px; color:#777; margin:6px 0 6px 0; text-transform: capitalize;}
.site-form .note {font-size:12px; font-style:italic; color:#777; text-align:center; margin:8px 0 0 0;}

.site-form input[type="text"], .site-form input[type="email"], .site-form input[type="number"], .site-form input[type="time"], .site-form input[type="date"], .site-form select {
	margin:6px .8% 9px 0;
    padding:14px 0;
    font-size: 14px;
    background-color:#fff;
	border:1px #e8e8e8 solid;
	text-indent:12px;
	box-sizing: border-box; 
}

.site-form input[type="text"]:focus, .site-form input[type="email"]:focus, .site-form input[type="number"]:focus, .site-form input[type="time"]:focus, .site-form input[type="date"]:focus, .site-form select:focus {border: 1px #095deb solid; background-color:#fff;}

.site-form textarea {
	width:100%; height:150px; margin:2px 0; padding: 4px 8px; font-size: 14px; border:1px #e8e8e8 solid;
    background-color: #fff;
	box-sizing: border-box; -webkit-border-radius:0; border-radius:0;
}

.site-form textarea:focus {border: 1px #095deb solid;}

.site-form input[type="submit"] {height: 46px; padding:0 20px; margin:10px 0 0 0; font-size:14px; border: none; color: #fff; background: #095deb;
	transition: all .2s ease-in-out; -moz-transition: all .2s ease-in-out; -webkit-transition: all .2s ease-in-out;
	text-transform: uppercase; font-weight:300; 
	-webkit-appearance: none;}

.site-form input[type="submit"]:hover {color:#fff; background:#202020; -webkit-animation: shadow-pop-bl 0.3s cubic-bezier(0.470, 0.000, 0.745, 0.715) both;
	        animation: shadow-pop-bl 0.3s cubic-bezier(0.470, 0.000, 0.745, 0.715) both; -webkit-appearance: none;}


.CaptchaImagePanel {text-align:center;}
.CaptchaImagePanel img {width:182px; margin:0 auto;}
.CaptchaAnswerPanel input {padding:8px 8px; border:1px #e6e6e6 solid; background-color:#fff;}








/*  SCROLLING INVENTORY
------------------------------------------------*/
.scrolling-wrap {width:100%; height:90px; overflow:hidden; margin:20px 0 0 0;}
.scrolling{width:100%; height:90px;}





/*  BANNER
------------------------------------------------*/
.sales-banner {
	display:flex; flex-flow:row wrap; align-items:center; justify-content:center; padding:1.5em 0;
	color:#fff; background:#2e2e2e;
}
.sales-text {width:33%; min-width:330px;}

.services-banner {display:flex; flex-flow:row wrap; align-items:flex-start; justify-content:center; justify-content: space-around; padding:1em 0; color:#fff; background:#272435;}
.services-banner .banner-text {width:25%; min-width:250px; margin:1em 0;}

.banner-image {width:30%;}
.banner-image img {width:100%;}

.banner-text {text-align:center;}

.banner-text .line-size-1 {font-size:45px; line-height:45px;}
.banner-text .line-size-2 {font-size:26px; line-height:26px;}
.banner-text .line-size-3 {font-size:20px; line-height:20px;}
.banner-text .line-size-4 {font-size:16px; line-height:16px;}
.banner-text .line-size-5 {font-size:13px; line-height:13px;}

.alt-text {padding:.5em 0; color:#de2127; background:#fff;}





.location-map {line-height:0;}
.location-map iframe{width:100%; height:350px;}


/*  FOOTER
------------------------------------------------*/
.site-footer {padding:35px 0; background:#020202;}

/*  Stylized Footer
------------------------------------------------*/
.divfooter {max-width:575px; color:#fff; margin:0 auto; padding:0 5%; font-size:0.825em; line-height:1.3; text-align:center;}
a.footerlink:link, a.footerlink:visited, a.footerlink:active{color:#fff; text-decoration:underline;}
a.footerlink:hover {color:#fff; text-decoration:none;}



/************************************************ Responsive Styles **/
@media screen and (max-width: 1450px) {
	.logo-home {max-width:540px;}
	.home-header.sticky .logo-home {max-width:350px;}
}

@media screen and (max-width: 1200px) {
	.logo-home {max-width:450px;}
	.home-header.sticky .logo-home {max-width:300px;}
	nav.primary ul li a {font-size:1em; line-height:1em;}
}

@media screen and (max-width: 1100px) {
	
	article {width:90%; margin:0 5%;}
	article p {font-size:1em; line-height:1.25em;}
	aside {width:90%; margin:5% auto 0 auto;}
	.sales-banner .sales-text {order:1; width:100%; min-width:330px; margin:0 0 3.5% 0;}
	.banner-image {width:47.75%;}
	.sales-banner .banner-image:nth-of-type(1) {order:2;}
	.sales-banner .banner-image:last-of-type {order:3; margin:0 0 0 4.5%;}
}

@media screen and (max-width: 1024px) {
	nav.primary{display:none;}
	#menu-button{
		display: block; margin:0 auto; padding:15px 10px; font-size:1.25em; line-height:1.25em; position: relative; z-index: 400; background: #3401cc;
		background: rgb(0,0,254); background: linear-gradient(180deg, rgba(0,0,254,1) 0%, rgba(2,96,254,1) 100%);
	}
	#menu-button a{color:#fff; text-decoration: none; padding:0 1em; text-transform:uppercase; font-weight:700; cursor:pointer;}
	
	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:22px 0 0 0;}

	nav.mobile {
		display:block;
		position: fixed;
		top: 0;
		left: -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:right;
		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 #3401cc 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:#555; position:relative; text-align:center; font-size:14px; line-height:14px; padding:15px 0;}
	
	
	
	.site-form .three-cells {width:100%; *width:100%;}
}

@media screen and (max-width: 900px) {
	.logo-home {max-width:300px;}
	.home-header.sticky .logo-home {max-width:220px;}
}

@media screen and (max-width: 650px) {
	.button-link {width:100%; padding:16px 0 24px 0; text-align:center; /*border-bottom:2px #404040 solid;*/}
	.blue-button {margin:0 0 10px 0;}
}

@media screen and (max-width: 550px) {
	.logo-home {max-width:240px;}
	.home-header.sticky .logo-home {max-width:200px;}
	.intro-contact {flex-flow:column; justify-content:center; margin:1.25em 0;}
	.intro-contact .location {margin:0 auto; text-align:center;}
	.intro-contact .numbers {margin:0 auto; text-align:center;}	
}

@media screen and (max-width: 450px){
	.logo-home {max-width:175px;}
	.home-header.sticky .logo-home {max-width:150px;}
	.button-link a {display:block; min-width:0; padding:0 0 8px 0; font-size:22px; line-height:14px;}
	.sales-text {min-width:250px;}
	.sales-text .banner-text .line-size-5 {font-size:10px; line-height:10px;}
}