@import url("https://use.typekit.net/plu6rra.css");
a, a:link, a:visited, a:hover, a img {
	outline: none;
	border: none;
	color: #fff;
}
.mobile, .mobileshowphone{ /* hidden elements, until mobile */
display:none;
}
html{
	margin:0;
	padding:0;
}
body{
background: url(../images/background.jpg) center top no-repeat #000 fixed;
background-size: 100%;
	margin:0;
	padding: 50px 0px 0px 0px;
font-family: "proxima-nova", arial, sans-serif;
}
:focus-visible,
a:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: 4px;
}
/* ********************************* Page, Header ********************************* */
#pagewrapper{
max-width: 1200px;
margin: 0 auto;
padding: 0;
}
#page{
margin: 0;
padding: 0;
}
#header{
margin: 0;
padding: 0;
}
/* ********************************* CSS Menu ********************************* */
#cssmenu{
position: relative;
z-index: 9999 !important;
margin: 0;
padding: 0;
}
#cssmenu ul{
margin:0;
padding:0;
list-style: none;
text-align: center;
}
#cssmenu li{
display: inline-block;
vertical-align: top;
margin: 0;
padding:0;
}
#cssmenu li.left{
}
#cssmenu li.right{
}
#cssmenu #logo{
width: auto;
height: auto;
margin: 0px 10px 0px 10px;
padding: 0px;
}
#cssmenu .left a,
#cssmenu .right a{
display: block;
width: 180px;
height: 41px;
padding-top: 82px;
background: url(../images/menu-hover.gif) center bottom no-repeat;
background-size: 0.5%;
text-transform: uppercase;
text-decoration: none;
text-align: center;
font-weight: 100;
font-size: 20px;
letter-spacing: 1px;
}
#cssmenu .left a:hover,
#cssmenu .left a:focus-visible,
#cssmenu .right a:hover,
#cssmenu .right a:focus-visible{
background: url(../images/menu-hover.gif) center top no-repeat;
background-size: 100%;
}
#cssmenu .left a{
}
#cssmenu .right a{
}
#cssmenu #logo img{
position: relative;
top: -15px;
margin: 0px;
padding: 0px;
}
#cssmenu #logo a{
margin: 0px;
padding: 0px;
}
/* ********************************* Slideshow ********************************* */
/* FOR SLICK SLIDESHOW CSS, SEE slick.css and slick-theme.css */
/* ********************************* Main, Page Title ********************************* */
#mainwrapper{
}
#main{
position: relative;
background: #2c2c2c;
border-radius: 10px;
padding-bottom: 35px;
margin-bottom: -10px;
}
#pagetitle{
padding: 22px 10px;
text-align: center;
border-bottom: 2px solid #fff;
}
#pagetitle img{
width: 100%;
max-width: 823px;
}
#contact #pagetitle{
min-height: 20px;
}
#services #pagetitle{
padding: 63px 10px 16px 10px;
}
#services #pagetitle img{
max-width: 695px;
}
#contact #pagetitle img{
display: none;
}
.car-gallery #pagetitle, #facility #pagetitle{
padding: 32px 0px 12px 0px;
font-weight: normal;
font-size: 36px;
text-align: left;
}
/* ********************************* Content ********************************* */
#content{
margin:0;
padding: 45px;
color: #fff;
line-height: 150%;
font-weight: 100;
}
#content b{
font-weight: 700;
}
#tagline{
float: left;
margin: 20px 65px 0px 0px;
}
#content p{
line-height: 160%;
font-size: 20px;
}
/* ********************************* Blocks ********************************* */
#blockswrapper{
text-align: center;
padding: 65px 45px 0px 45px;
}
#blocks{

}
.block{
position: relative;
display: inline-block;
margin-right: 8px;
}
#block1{

}
#block2{

}
#block3{
margin-right: 0px;
}
.block a{

}
.block img{

}
.blocksbutton{
}
.blocksbutton a{
position: relative;
top: -40px;
background: url(../images/button.png) center top no-repeat;
display: block;
width: 322px;
height: 29px;
margin: 0 auto;
padding: 19px;
text-decoration: none;
text-transform: uppercase;
text-align: center;
font-size: 20px;
letter-spacing: 1px;
}
.blocksbutton a:hover,
.blocksbutton a:focus-visible{
background: url(../images/button-hover.png) center bottom no-repeat;
}
/* ********************************* Photos ********************************* */
/* THESE ARE LIGHTBOX. For more control, see lightbox.css */
#photos{
margin: 0 0 0px 0;
padding:0;
text-align: center;
}
#photos a{
background: rgb(0,0,0);
background: -moz-linear-gradient(45deg, rgba(0,0,0,1) 0%, rgba(255,255,255,1) 50%, rgba(0,0,0,1) 100%);
background: -webkit-linear-gradient(45deg, rgba(0,0,0,1) 0%,rgba(255,255,255,1) 50%,rgba(0,0,0,1) 100%);
background: linear-gradient(45deg, rgba(0,0,0,1) 0%,rgba(255,255,255,1) 50%,rgba(0,0,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#000000',GradientType=1 );
display: inline-block;
margin: 0px 10px 65px 10px;
padding: 3px;
box-shadow: 0px 0px 7px 2px #000;
}
#photos img{
max-width: 350px;
	min-height: 199px;
	min-width:350px;
margin:0;
padding:0;
}
#gallery a{
text-decoration: none;
}
#gallery a .caption{
position: relative;
top: -30px;
background: url(../images/button.png) center top no-repeat;
display: block;
width: 322px;
height: 29px;
margin: 0 auto -67px auto;
padding: 22px 12px 16px 12px;
text-decoration: none;
text-transform: uppercase;
text-align: center;
font-size: 16px;
letter-spacing: 0px;
}
#gallery a:hover .caption,
#gallery a:focus-visible .caption{
background: url(../images/button-hover.png) center bottom no-repeat;
}
/* ********************************* Videos ********************************* */
#videos{
}
#videos #content{
}
.video{
    margin-top: 1.5%;
    padding: 1.5% 3px 3px 3px;
    position: relative;
    z-index: 1;
}
.video + .video{
    border-top: 1px solid #aaa;
}
.videowrapper, .videodetails{
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
}
.videowrapper{
	position: relative;
	width: 100%;
	padding-bottom: 57.5%;
	background: #444;
	border: 0
	/*box-shadow: 0px 0px 8px 2px #1b6fec;*/
}
.videowrapper:after{
	content: "";
	position: absolute;
	z-index: -1;
	top: -3px;
	right: -3px;
	bottom: -3px;
	left: -3px;
    background: rgb(0,0,0);
    background: -moz-linear-gradient(45deg, rgba(0,0,0,1) 0%, rgba(255,255,255,1) 50%, rgba(0,0,0,1) 100%);
    background: -webkit-linear-gradient(45deg, rgba(0,0,0,1) 0%,rgba(255,255,255,1) 50%,rgba(0,0,0,1) 100%);
    background: linear-gradient(45deg, rgba(0,0,0,1) 0%,rgba(255,255,255,1) 50%,rgba(0,0,0,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#000000',GradientType=1 );
}
.videowrapper.regular{
	width: 33%;
	padding-bottom: 19%;
}
.videowrapper.iframe{
	background-size: contain;
    -webkit-background-size: cover;
    background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-attachment: scroll;
}
/*.videowrapper.regular:hover{
	outline: 1px solid #cccccc;
}*/
.videowrapper.large{
	box-shadow: none;
	margin: 0px;
}
.videodetails{
	width: 67%;
    font-size: 18px;
}
.videowrapper.regular + .videodetails{
	padding: 0 1.5%;
}
.videowrapper.large + .videodetails{
	width: 100%;
}
#content .videodetails p{
    font-size: 1em;
	line-height: 1.3em;
    margin: 1em auto 0.75em auto;
}
#content .videodetails h3{
    font-size: 1.25em;
	line-height: 1.3em;
    margin: 0.5em auto 0.75em auto;
}
/* ********************************* Services ********************************* */
#services #content{
padding: 0px;
}
#services #content > div{
overflow: auto;
box-sizing: border-box;
width: 100%;
padding: 35px;
}
#services div#details{
}
#services div#restoration{
background: #172f40;
}
#services div#modern{
display: flex;
flex-direction: row-reverse;
justify-content: space-between;
}
#services div#viewwork{
background: url(../images/services-content-bkg.jpg) no-repeat;
background-size: cover;
padding: 12% 35px;
text-align: center;
}
#services #viewwork a{
background: url(../images/button.png) center top no-repeat;
display: block;
width: 322px;
height: 29px;
margin: 0 auto;
padding: 19px;
text-decoration: none;
text-transform: uppercase;
text-align: center;
font-size: 20px;
letter-spacing: 1px;
}
#services #viewwork a:hover,
#services #viewwork a:focus-visible{
background: url(../images/button-hover.png) center bottom no-repeat;
}
#services .side{
float: left;
display: inline-block;
width: 40%;
margin: 0px 35px 0px 0px;
}
#services #modern .side{
margin: 0px 0px 0px 35px;
padding: 10px 0px 0px 0px;
}
#services #modern > img{
align-self: flex-start;
}
#services #content > div > img{
float: right;
width: 50%;
max-width: 560px;
}
#services .sidetitle{
display: block;
}
#services .sidetitle img{
width: 100%;
max-width: 430px;
}
#services #modern .sidetitle img{
max-width: 329px;
}
#services .side ul{
list-style: none;
margin: 0px;
padding: 12px 0px 0px 0px;
}
#services .side li{
background: url(../images/li.png) left center no-repeat;
margin: 0px 0px 0px 30px;
padding: 10px 0px 10px 35px;
font-weight: 400;
font-size: 20px;
line-height: 114%;
color: #fff;
}
#services li .moreinfo{
font-weight: 300;
font-size: 15px;
font-style: italic;
color: #eee;
}
/* ********************************* Contact ********************************* */
#contact #leftcolumn, #contact #rightcolumn{
box-sizing: border-box;
font-family: "proxima-nova", arial, sans-serif;
}
#contact #leftcolumn{
background: #292929;
float: left;
max-width: 32%;
margin: -45px 0px 40px 0px;
padding: 40px 40px 90px 40px;
}
#contact #rightcolumn{
float: right;
width: 64%;
margin: -5px 0px 40px 0px;
}
#contact #leftcolumn span{
display: block;
margin-bottom: 20px;
font-size: 20px;
color: #fff;
}
#contact #leftcolumn span a{
text-decoration: none;
}
#contact #leftcolumn span#company{
font-size: 26px;
font-weight: bold;
}
#contact #leftcolumn span#location{
}
#contact #leftcolumn span.callus{
margin: 40px 0px 0px 0px;
padding: 0px 0px 10px 0px;
font-size: 24px;
font-weight: bold;
text-shadow: 3px 2px 1px #3780ef;
}
#contact #leftcolumn span.callus#two{
border-top: 1px dotted #444;
margin: 0px;
padding: 10px 0px 0px 0px;
}
#contact #leftcolumn span.hours{
margin-top: 40px;
}
#contact #leftcolumn span#openhours{
margin-bottom: 0px;
}
#contact #leftcolumn span#closedhours{
font-size: 14px;
color: #bbb;
}
#contact #rightcolumn h2{
margin-top:0px;
font-family: "proxima-nova", arial, sans-serif;
font-size: 28px;
text-align: center;
}
#thankyou{
min-height: 200px;
}
#thankyou p{
max-width: 350px;
margin: 20px;
font-size: 24px;
font-weight: 400;
}
#contact #map{
margin: 35px 0px 35px 0px;
}
/* **************** Begin Form **************** */
#contact #formwrapper{
background: rgb(0,0,0);
background: -moz-linear-gradient(45deg, rgba(0,0,0,1) 0%, rgba(255,255,255,1) 50%, rgba(0,0,0,1) 100%);
background: -webkit-linear-gradient(45deg, rgba(0,0,0,1) 0%,rgba(255,255,255,1) 50%,rgba(0,0,0,1) 100%);
background: linear-gradient(45deg, rgba(0,0,0,1) 0%,rgba(255,255,255,1) 50%,rgba(0,0,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#000000',GradientType=1 );
padding: 2px;
box-shadow: 0px 0px 7px 2px #000;
}
#contact #formbkg{
background: url(../images/background.jpg) center top no-repeat #000 fixed;
background-size: contain;
padding: 0px;
}
#contact form{
padding: 40px;
background: #3780ef;
background: rgba(55,128,239,0.5);
}
/*#contact form:hover, #contact form:focus,  #contact form:focus-within{
background: #285ead;
background: rgba(40,94,173,0.7);
}*/
#contact #formmessage{
float: right;
text-align: right;
font-size: 38px;
font-weight: 400;
line-height: 120%;
color: #fff;
}
#contact form input, #contact form textarea{
	background: #fff;
	background: rgba(255,255,255,0.9);
	width: 60%;
	margin: 0px 0px 10px 0px;
	padding: 8px;
	border: 2px solid #333;
	box-shadow: 1px 1px 2px #333;
	font-family: "proxima-nova", arial, sans-serif;
	font-size: 16px;
	font-weight: bold;
	color: #333;
	transform: scale(1.0);
}
#contact form input::placeholder, #contact form textarea::placeholder{
	font-weight: normal;
	color: #999;
	opacity: 1.0;
}
#contact form input{
}
#contact form textarea{
	margin: 14px 0px 10px 0px;
}
#contact form input:focus, #contact form textarea:focus{
	background: #fff;
	border: 2px solid #999;
	box-shadow: 1px 1px 10px 1px #1b6fec;
	transform: scale(1.02);
	transform: scale(1.02);
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
#contact form input.button, #contact #leftcolumn .button{
	display: block;
	background: #3780ef;
	width: auto;
	margin: 10px 0px 0px auto;
	padding: 10px 62px;
	border: 1px solid #333;
	font-size: 17px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #fff;
	transform: scale(1.0);
	cursor:pointer;
}
#contact #leftcolumn .button{
	margin: 40px -20px 0px -20px;
	padding: 10px 20px;
	font-size: 20px;
	letter-spacing: 0px;
}
#contact form .button:not([disabled]):hover, #contact form input.button:not([disabled]):focus{
	box-shadow: 1px 1px 10px 1px #1b6fec;
	transform: scale(1.06);
}
#contact form .button[disabled], #contact form input.button[disabled]:focus{
	cursor: not-allowed;
}
#contact #leftcolumn .button:hover, #contact #leftcolumn .button:focus{
	transform: scale(1.06);
}
/* ********************************* End Contact and Form ********************************* */
/* ********************************* Media ********************************* */
#mediawrapper{
text-align: center;
}
#mediawrapper #title{
display: block;
margin-bottom: 20px;
}
#media{
background: url(../images/media-bkg.gif) center center repeat-x;
}
#media a{
display: inline-block;
width: 20%;
min-width: 240px;
padding: 15px 0px;
text-decoration: none;
text-transform: uppercase;
letter-spacing: 1px;
font-size: 15px;
opacity: 0.85;
}
#media a:hover,
#media a:focus-visible{
opacity: 1.0;
}
#media img{
vertical-align: middle;
display: inline-block;
}
#media a > span{
padding-left: 8px;
}
/* ********************************* Award, Footer, Copyright ********************************* */
#footerwrapper{
width: 100%;
max-width: 1200px;
background: #000;
margin: 0px auto 0px auto;
}
#awardwrapper{
overflow: auto;
width: 100%;
margin: 0 auto;
padding: 20px 0 0 0;
}
.award{
display: inline-block;
float: right;
}
#award1{
float: left;
margin-left: 10px;
}
#award2{
margin-right: 30px;
}
#award3{
margin-right: 10px;
}
.award a{
	display: inline-block;
}
.award img{

}
#footer{
background: url(../images/footer.jpg) center top no-repeat;
width: 100%;
margin: -50px auto 0 auto;
padding: 160px 0 40px 0;
color: #fff;
}
#footer a{
text-decoration: none;
}
#footerinfo{
text-align: center;
}
#footer .column{
display: inline-block;
vertical-align: top;
width: 30%;
line-height: 130%;
}
#footer #one{
padding-left: 30px;
float: left;
text-align: left;
}
#footer #two{
}
#footer #three{
padding-right: 30px;
float: right;
text-align: right;
}
#footer #one span{
display: block;
margin-bottom: 20px;
}
#footer #two a{

}
#footer #two img{
width: 100%;
max-width: 317px;
margin-top: -60px;
}
#footer #three > span{
display: block;
margin-bottom: 20px;
line-height: 140%;
}
#footer #three .flow{
display: inline-block;
}
#footer #three a{
display: inline-block;
margin-top: 30px;
padding: 5px 10px;
background: #3780ef;
text-transform: uppercase;
}
#footer #three a:hover,
#footer #three a:focus-visible{
background: #285ead;
}
#copyright{
width: 100%;
border-top: 2px solid #fff;
margin: 0 auto;
padding: 12px 0;
text-transform: uppercase;
text-align: center;
font-size: 13px;
color: #777;
}
#copyright span{

}
#copyright span#bullet{
margin: 0 10px;
color: #555;
}