/*** GLOBAL  ***/
* {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box} /* Set non-IE browsers' box models to be like IE */
body { background: #000; color: #fff}
ul, dl, ol { font-size: inherit; }
.row { max-width: none;}
.container, h1, h2, h3, h4, #CalcPayment label, #Div1 label { color:#fff }
.last { text-align:right }
.container {padding: 0}
section{padding-top: 20px}
#CalcPayment .form, .paymentCalcItem .form{border:none !important}
a.button:visited{color:#fff}

.html_item ul{list-style:none;}

/*** Margins ***/
.centered {margin: 0 auto }
.leftMargin {margin-left: 40px }
.rightMargin {margin-right: 40px }
.bottomMargin {margin-bottom: 40px }
.noMargin{margin:0}

/*** HEADER ***/
.backpage-header {
    border-bottom: 2px solid #600;
    border-top: 2px solid #600;
    padding: 10px 0;
    background: #181818; /* Old browsers */
    background: -moz-linear-gradient(top,  #333333 1%, #151515 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(1%,#333333), color-stop(100%,#151515)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top,  #333333 1%,#151515 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top,  #333333 1%,#151515 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top,  #333333 1%,#151515 100%); /* IE10+ */
    background: linear-gradient(to bottom,  #333333 1%,#151515 100%); /* W3C */
    height: 162px;
    margin-bottom: 20px;
}
.backpage-header .inner, section, .ftr-inner {
    max-width: 1200px;
    margin: 0 auto;
    width: 94%;
  z-index: 2;
  position: relative;
}
.hdrBkg {
    background: url('../images/bkg-hdr.png') no-repeat center top;
    height: 158px;
    position: absolute;
    top: 2px;
    width: 100%;
    left: 0;
  z-index: 1;
}
.dealerLogo {
    margin-top: 10px;
}
.hdrContact a {
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
}
.hdrContact .phone {
    font-size: 24px;
    font-size: 2.4rem;
  line-height: 1.1;
}
.socials {
    float: right;
    margin: 10px 0;
}
.socials li {
    float: left;
    margin: 0 0 0 8px;
}
.kbb img{margin-top: 35px}

/* CHANGE COLORS HERE */
#nav-container{
  background: #cc0000;
  background: -moz-linear-gradient(top,  #bb0000 0%, #990000 44%, #660000 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#bb0000), color-stop(44%,#990000), color-stop(100%,#660000));
  background: -webkit-linear-gradient(top,  #bb0000 0%,#990000 44%,#660000 100%);
  background: -o-linear-gradient(top,  #bb0000 0%,#990000 44%,#660000 100%);
  background: -ms-linear-gradient(top,  #bb0000 0%,#990000 44%,#660000 100%);
  background: linear-gradient(to bottom,  #bb0000 0%,#990000 44%,#660000 100%);
}
#nav-container > li a {color: #FFF; border-right: 1px solid #000}
#nav-container > li:last-child a{border:none}
#nav-container a:hover, li.sfhover, #nav-container li.sfhover > a {background:#fff; color: #C00}
#nav-container li ul {border-width: 0 1px 1px}
#nav-container li ul li {border-width: 0 0 1px}
#nav-container li ul li a {
  background: #eeeeee;
  background: -moz-linear-gradient(top,  #eeeeee 0%, #cccccc 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#eeeeee), color-stop(100%,#cccccc));
  background: -webkit-linear-gradient(top,  #eeeeee 0%,#cccccc 100%);
  background: -o-linear-gradient(top,  #eeeeee 0%,#cccccc 100%);
  background: -ms-linear-gradient(top,  #eeeeee 0%,#cccccc 100%);
  background: linear-gradient(to bottom,  #eeeeee 0%,#cccccc 100%);
  color: #242424;
}
#nav-container li ul li a:hover {
   background:#fff;
   background: -moz-linear-gradient(top,  #ffffff 0%, #e5e5e5 100%); /* FF3.6+ */
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#e5e5e5)); /* Chrome,Safari4+ */
   background: -webkit-linear-gradient(top,  #ffffff 0%,#e5e5e5 100%); /* Chrome10+,Safari5.1+ */
   background: -o-linear-gradient(top,  #ffffff 0%,#e5e5e5 100%); /* Opera 11.10+ */
   background: -ms-linear-gradient(top,  #ffffff 0%,#e5e5e5 100%); /* IE10+ */
   background: linear-gradient(to bottom,  #ffffff 0%,#e5e5e5 100%); /* W3C */
   color: #C00;
}

/* NAV STRUCTURE AND LAYOUT */
#nav-container .flyoutNav{
    display:none;
    background: #000;
    text-align: center;
    border: 1px solid #ccc;
    margin-left: 2px;
}
.nav{
     clear: both;
     margin: 0 auto -2px;
     text-align: center;
     position: relative;
     z-index: 100;
}
ul#nav-container{
  display: inline-block;
  border-radius: 4px;
  margin: 10px auto;
}
#nav-container, #nav-container ul {
     margin: 0 auto;
     z-index: 100;
     position: relative;
     font-weight: bold;
}
#nav-container a {
     display: block;
     padding: 0 16px;
}
#nav-container li {
     display: inline-block;
     position: relative;
     margin: 0;
}
#nav-container > li a{
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 2;
}
#nav-container > li:last-child > a:hover, #nav-container > li:last-child {border-radius: 0 4px 4px 0;}
#nav-container > li:nth-child(2) a:hover, #nav-container > li:nth-child(2) {border-radius: 4px 0 0 4px;}
#nav-container li ul {
     z-index: 5;
     line-height: normal;
     position: absolute;
     width: 200px;
     display: none;
     margin: 0;
     box-shadow: 0 4px 12px rgba(0,0,0,.5);
}
#nav-container li ul li {width: 100%;}
#nav-container li ul li:last-child { border-bottom: none; }
#nav-container li ul li a {
     font-weight:normal;
     text-align: left;
     padding-left: 8px;
     font-size: 14px;
     font-size: 1.4rem;
     text-decoration: none;
     line-height:2;
}

/* Positioning for Third-level navigation */
#nav-container li ul ul {left: 0px; margin: -28px 0 0 150px;}
#nav-container li:hover ul ul, #nav-container li:hover ul ul ul, #nav-container li:hover ul ul ul ul { xdisplay:none; }
#nav-container li:hover ul, #nav-container li li:hover ul, #nav-container li li li:hover ul, #nav-container li li li li:hover ul { display:block; }
.mobileQuickMenu { display:none}

/* Int. Explorer 7 fixes */
.ie7 #SiteContainer .nav .columns{position:absolute}
.ie7 #nav-container{ margin-left:15%;}
.ie7 .nav{height:30px}
.ie7 #nav-container li {zoom: 1; vertical-align:top; display: block; float:left;}
.ie7 nav .row .columns{z-index:5}

/*** FOOTER ***/
footer {
    background: #333;
    padding: 30px 0;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
}
footer ul {width: 25%;}
footer li {margin: 0;}
footer a, footer a:visited, footer h4{color: #fff}
footer h4{font-size: 24px; font-size: 2.4rem}


/*==============
  FORM STYLES  
==============*/

/* ===== COLORS ===== */
.formContainer form{
  background: #eaeaea; /* also color of even rows */
  border: 1px solid #bbb;
}
form li {border-bottom: 1px solid #ccc;}
form li:nth-child(2n+1) {background: #FFF;}
form > ul li:last-child{background:none}
input[type="submit"] {background: #c00; color: #fff; -webkit-appearance: none;}
label + input[data-val="true"], label + textarea[data-val="true"] {border: 1px solid #C00; /* Border on required fields */}
.field-validation-error { /* Validation error msgs */
  background: #ffebf0;
  color: #C00;
  border-color:#f99;
}
form li ul {
   border: 1px solid #ccc;
   margin: 0 10px;
}
/* ===== STRUCTURE ===== */
.formContainer form {
    box-shadow: 0px 6px 8px rgba(0, 0, 0, 0.25);
    margin: 0 auto 20px;
    max-width: 600px;
    width: 96%;
    padding:0;
}

/* Put the input fields on the same line as their labels */
form label {
    font-weight: normal;
    line-height: 24px;
    display: inline;
     font-family: inherit;
}
form li {
    clear: left;
    height: auto;
    overflow:hidden;
    margin: 0;
    padding: 6px;
}
form li:last-child{border-bottom:none}
input, select{float:right;}

/* Style the submit button */
input[type="submit"] {
    border: none;
    border-radius: 6px;
    box-shadow: 3px 3px 1px rgba(0, 0, 0, 0.25);
    clear: both;
    cursor: pointer;
    font-size: 18px;
    margin: 20px 20% 0;
    padding: 10px 30px;
    text-shadow: 0 2px 2px rgba(0, 0, 0, 0.75);
    width: 60%;
    font-family: inherit;
}
label + select, label + input[type="text"], label + input[type="email"], label + input[type="password"], label + input[type="checkbox"] {width: 50%;}
label + textarea {
  width: 100%;
  height:100px;
}

/* Validation errors */
.field-validation-error {
    float: left;
    clear: both;
    width: 100%;
    text-align: center;
    line-height: 2;
    border-style: solid;
    border-width:1px;
}

/* Reset for Secure Disclaimer */
.formContainer {
    background: none;
    border: none;
}
.formDisclaimer {
    background-color: transparent;
    background-position: 0 0;
    padding: 0;
    text-indent: 20px;
}

/* Reset for map form inputs */
dl.form input {float: none;}

/* Reset for Inv. Listings page */
#InvContainer form, #InvContainer li {
    background: none;
    border: none;
    box-shadow: none;
}
#InvContainer input, #InvContainer select {display: block; float:none}

/* Reset for Inv. Details Page form */
#Profilefrm {margin: 0; float: none;}
#Profilefrm input {display: inline;}
#Profilefrm li {clear: none; padding: 0;}

/*==============
  END OF FORM  
==============*/



/*** DOMINION LOGO ***/
div.ddsLogoProvider, .ddsLogoProvider a {
   text-align: right;
   margin: 10px 0;
   color: #333;
   text-decoration: none;
   font-size: 10px;
   font-size: 1.0rem;
   color: #ccc;
}
span.ddsLogoProvider {
   float: right;
   vertical-align: middle;
   position: relative;
   top: -3px;
   margin-left: 5px;
   width: 71px;
   height: 21px;
   background: url(https://s3.amazonaws.com/dom-cms/GlobalImages/dds-logo-lt.png) no-repeat 0 0;
}

@media only screen and (max-width: 900px){
  #nav-container > li a{font-size: 1.4rem; padding: 0 14px}
}

@media only screen and (max-width: 767px){
  header {padding-top: 30px; } 
  .backpage-header{height: auto; margin-bottom: 10px; padding-bottom: 0}
  footer{text-align: center}
  footer ul{margin-top: 20px; width: 50%; font-size: 1.4rem}
  .dealerLogo {
    width: 60% !important;
    float: left !important;
  }
  .dealerLogo img{width:90%; max-width:349px;}
  .hdrContact {
    width: 40% !important;
    float: right !important;
  }
  .topTemplateButtons .six.columns {
    clear: none !important;
    float: left;
    margin: 0 5%;
    width: 36% !important;
  }
  .topTemplateButtons .six.text-right{width: 44% !important}

  .hdrBkg, #nav-container li ul, .mobileQuickMenu .phoneIcon{display:none}
  .mobileQuickMenu, .mobileQuickMenu a, #nav-container .flyoutNav, #nav-container li{display:block}
  .sideShowing #SiteContainer, #nav-container li ul{position:relative}
 
  /* Navigation Quick Bar */
  .mobileQuickMenu {position:fixed; text-align:center; margin: 0 auto; padding: 2px 0; background: #000; z-index: 9999; width: 100%;}
  .mobileQuickMenu li {display: inline-block; width: 32.66667%; margin:0; background: #ccc;}
  .mobileQuickMenu a{
    background: #e2e2e2; /* Old browsers */
    background: -moz-linear-gradient(top, #e2e2e2 0%, #dbdbdb 50%, #d1d1d1 51%, #fefefe 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #e2e2e2), color-stop(50%, #dbdbdb), color-stop(51%, #d1d1d1), color-stop(100%, #fefefe)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #e2e2e2 0%, #dbdbdb 50%, #d1d1d1 51%, #fefefe 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #e2e2e2 0%, #dbdbdb 50%, #d1d1d1 51%, #fefefe 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #e2e2e2 0%, #dbdbdb 50%, #d1d1d1 51%, #fefefe 100%); /* IE10+ */
    background: linear-gradient(to bottom, #e2e2e2 0%, #dbdbdb 50%, #d1d1d1 51%, #fefefe 100%); /* W3C */
    font-size: 1.4rem;
    line-height: 2;
    text-align: center;
    margin: 1px;
    color: #666;
    font-weight: bold;
    padding: 2px 4px;
  }
  .mobileQuickMenu a span {color: inherit; font-size: inherit;}
  .mobileQuickMenu img {float: left;}
  .sideShowing #SiteContainer {left: 266px;}
 
  /* Slide-out Menu */
  nav{top: 2px; left:-268px; position: absolute}
  .nav{height:auto; border:none;}
  #nav-container {height: auto; top: 2px; left: 0; padding: 0; text-align: left; width: 262px; z-index: 55; background:#333; position: absolute}
  #nav-container li{border-bottom: 1px solid #151515}
  #nav-container > li a {color: #fff; font-size: 1.6rem; font-weight: bold; line-height: 2;}
  #nav-container a:hover, li.sfhover, #nav-container li.sfhover > a {background: none; text-decoration: none; color: #fff;}
  #nav-container li ul {width: 96%; margin: 0 auto; box-shadow: none;}
  #nav-container li ul li {border-color: #333;}
  #nav-container li ul li a{font-size:1.6rem;}

    .formcontainer form{box-shadow:none;margin-left:0}
    form input{display:block;float:none;width:100%}
    label + select{float:none}
}
@media only screen and (max-width: 520px){
  header {padding-top: 32px;} 
  .dealerLogo, .hdrContact{width:100% !important; text-align: center}
  .socials {
    float: none;
    margin: 10px auto 0;
  }
  .socials li {
    display: inline;
    float: none;
  } 
  .mobileQuickMenu .phoneIcon{display:inline-block}
  .mobileQuickMenu li{width:24%}
  .mobileQuickMenu a{line-height: 1}
  .formContainer form {box-shadow: none; margin: 0 auto 20px;  width: 100%;}
  input[type="submit"]{width:90%; margin: 10px auto 0;}
}
@media only screen and (max-width: 420px){
  header {padding-top: 40px;} 
  .topTemplateButtons .six.columns {width: 100% !important; margin: 0 0 6px !important; text-align: center}
}
@media only screen and (max-width: 360px) {
  .mobileQuickMenu li{width:23%}
  footer ul, .mobileQuickMenu a span { display: none; }
  .mobileQuickMenu img { float: none; }
}