
body {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    color: #000;
}

@media (max-width: 767px) {
    body {
        position: relative;
        z-index: 1;
    }
    #outer-wrapper:after {
        content: "";
        position: fixed;
        top: 0;
        height: 100vh;
        left: 0;
        right: 0;
        z-index: -1;
        background: #cccccc url(https://psmfirestorm.blob.core.windows.net/e636edbf-afb6-4ccf-999a-fe6ee29d78b7/background-new.jpg) no-repeat center center;
        background-size: cover;
    }
}

@media (min-width: 768px) {
    body {
        background: #cccccc url(https://psmfirestorm.blob.core.windows.net/e636edbf-afb6-4ccf-999a-fe6ee29d78b7/background-new.jpg) no-repeat center center;
        background-attachment: fixed;
        background-size: cover;
    }
}

a {
    color: #253c7c;
    transition: .3s;
}

a:focus, a:hover {
    color: #000000;
    text-decoration: none;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
    text-transform: uppercase;
}

.featuredSection {
    background-color: rgb(255 255 255 / 65%);
    padding: 45px 0;
}

.reviewsSection {
    background-color: white;
    padding: 60px 0;
    margin-top: 0!important;
}

.videoSection {
    padding: 30px 0;
    background-color: white;
    margin-top: 0!important;
}

.videoSection .container {
    width: 1470px;
}

@media (min-width: 1500px) {
#main-nav .container {
    width: 1470px;
}
}

.page-background > div, 
#calendar-page, 
#employees-team-page, 
#promotions-page, 
#inventory-page, 
#vdp-container, 
#thankyou-page, 
#showroom {
    background-color: rgb(255 255 255 / 90%);
    padding: 15px;
    box-shadow: 0 0 10px rgb(0 0 0 / 80%);
}

#content-container {
    padding-bottom: 25px;
}

#home-page {
    margin-bottom: -25px;
}







/* HEADER */

header.body {
    background-color: white;
}

.headerContainer {
    width: 1180px;
    margin: auto;
    display: flex;
    justify-content: space-between;
    padding: 10px;
    text-transform: uppercase;
    align-items: center;
}

.headerContainer a {
    color: black;
}

.headerLogo {
    flex: 0 0 25%;
}

.headerMiddleBtm .dealer-address {
    margin-right: 11px;
    position: relative;
}

.headerMiddleBtm .dealer-address:after {
    content: '';
    width: 1px;
    height: 100%;
    background-color: #cecece;
    position: absolute;
    right: -6px;
}

.headerMiddleTop {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.headerMiddleTop .phone-text {
    font-weight: 700;
    color: #253c7c;
}

.headerMiddleTop .dealer-phone {
    font-size: 30px;
}

.siteSearch {
    display: flex;
    width: 300px;
}

.siteSearch .btn-primary {
    margin: 0;
    border-radius: 0;
}

.siteSearch .form-control {
    border: 2px solid #253c7c;
    border-radius: 0;
    padding: 17px 10px;
    box-shadow: none;
    margin: 0;
}

.headerMiddleTop .btn-primary {
    color: white;
}

.headerMiddle {
    order: 3;
}

.headerContainer a.dealer-facebook {
    font-size: 27px;
    order: 4;
    margin-left: 5px;
}






/* NAVIGATION */

#main-nav {
    background-color: #ececec;
}

.navbar-nav>li>a {
    font-weight: 700;
    text-transform: uppercase;
    color: black;
    padding: 20px 6px;
    font-size: 14px;
}

.navbar-nav {
    float: none;
    margin: 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.nav>li>a:focus, .nav>li>a:hover {
    background-color: transparent;
    color: #284185;
}

.social-media-icons {
    display: none;
}






/* CONTENT */

.btnContainer {
    display: flex;
    justify-content: space-between;
    margin: 100px 0 150px;
}

.btnContainer a {
    background-color: white;
    flex: 0 0 49%;
    padding: 25px;
    /* background: linear-gradient(135deg, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 80%,#efefef 80%,#efefef 100%); */
    position: relative;
    overflow: hidden;
}

.btnContainer a:before {
    content: '';
    position: absolute;
    border: rgb(0 0 0 / 6%) solid 4px;
    top: 4px;
    left: 4px;
    right: 4px;
    bottom: 4px;
    z-index: 3;
}

.btnContainer a:after {
    content: '';
    width: 135px;
    height: 135px;
    background-color: #efefef;
    position: absolute;
    right: -68px;
    transform: rotate(45deg);
    bottom: -70px;
    z-index: 1;
    transition: .5s;
}

.btnContainer a:hover {
    box-shadow: 0 0 10px black;
}

.btnContainer a:hover:after {
    width: 100%;
    height: 100%;
    transform: rotate(0deg);
    right: 0%;
    bottom: 0;
}

.btnContainer h3 {
    margin-top: 0;
    margin-bottom: 8px;
    font-size: 30px;
}

.btnContainer h5 {
    margin: 0;
    color: black;
    font-size: 16px;
}

.btnContainer div {
    position: relative;
    z-index: 4;
}


.p-header {
    position: relative;
    height: 300px;
    margin-bottom: 30px;
}

.p-header img {
    width: 100%;
    object-fit: cover;
}

.p-header h1 {
    margin: 0;
    position: absolute;
    bottom: 15px;
    background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
    width: 100%;
    font-size: 48px;
    padding: 5px 20px;
}

.maptext .dealer-name {
    margin-top: 0;
    font-size: 29px;
}

.mapWrapper {
    position: relative;
    padding-bottom: 105%;
    min-height: 150px;
}

.mapWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.mapandhourstbl td:first-child {
    padding-right: 10px;
    font-weight: 600;
}

.homeSlider .carousel-indicators li {
    background-color: rgb(34 61 127);
    border: 1px solid #223d7f;
}

.homeSlider .carousel-indicators {
    bottom: -37px;
}

.oemContainer {
    width: 90%;
    margin: 0 auto 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.oemContainer a {
    padding: 15px;
}

.oemContainer img {
    max-height: 100px;
}

.oemContainer a:hover {
    transform: scale(.95);
}





/* FEATURED INVENTORY */

.img-container.vw img {
    height: 100%;
}

.single-item-slider .slider-outer {
    height: 295px;
}

.single-item-slider .img-container {
    height: 155px;
}

.single-item-slider .slider-inner .item {
    width: 260px;
}

.single-item-slider .item {
    background-color: white;
    border: none;
}

.single-item-slider .item-detail .price {
    font-size: 21px;
    padding: 0 6px;
    text-transform: uppercase;
    font-weight: 700;
    bottom: 4px;
    text-align: center;
}

.single-item-slider .item-detail .name {
    color: black;
    text-transform: uppercase;
    text-align: left;
    line-height: 20px;
}

.featuredInventory h2 {
    color: #253c7c;
    text-align: center;
    font-size: 50px;
    letter-spacing: 2px;
    text-shadow: 3px 3px 0 #ffffff;
}

.single-item-slider .item .item-inner {
    border-radius: 0px;
    border-bottom: 3px solid #091b91;
}





/* INVENTORY */

.inventory-container .vehicle .savings {
    margin-top: 0;
    position: absolute;
    top: 6px;
    left: 6px;
}

#FilterQuickSearch {
    margin: 0;
    border: 1px solid #cccccc;
}

.panel-default>.panel-heading {
    color: #000;
    background-color: #e6e6e6;
    border-color: #ddd;
    text-transform: uppercase;
}

.specs-panel.panel-body {
    background-color: #fff;
    color: #000;
}

.k-pager-wrap {
    margin-top: 9px;
}

#filters-box .panel-body li {
    color: #000;
}

.inventory-container .vehicle .price {
    text-align: center;
    position: absolute;
    white-space: nowrap;
    font-size: 19px;
    padding: 3px 8px;
    bottom: 3px;
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
    background-color: #0c235b;
    text-transform: uppercase;
    background: linear-gradient(to bottom, rgb(40 65 133) 0%,#02164b 100%);
    font-weight: 800;
    border: 3px solid black;
}

#vehicleList > div {
    margin: 0;
    padding: 10px;
}

.vehicle-box {
    border: 3px solid black;
}

.inventory-container .vehicle {
    transition: .4s ease;
}

.inventory-container .vehicle:hover {
    transition: .4s ease;
    box-shadow: 0 0 10px rgb(0 0 0 / 45%);
}

.vehiclemodel {
    text-transform: uppercase;
    font-size: 20px;
    line-height: 21px;
    min-height: 43px;
}

.inventory-container .vehicle .title {
    padding: 0 5px 28px;
}

.inventory-container .vehicle .title a {
    color: black;
}

.info {
    font-size: 12px;
    color: #7b7b7b;
    text-align: right;
}








/* FORMS */

.btn-primary {
    color: #fff;
    background-color: #284185;
    border: 2px solid #284185;
    transition: .3s;
    margin: 10px 0;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 0;
}

.btn-sec {
    display: block;
    width: max-content;
    margin: 15px auto;
    font-size: 20px;
}

.btn-primary:hover,
.btn-primary.active.focus, .btn-primary.active:focus, .btn-primary.active:hover, .btn-primary:active.focus, .btn-primary:active:focus, .btn-primary:active:hover, .open>.dropdown-toggle.btn-primary.focus, .open>.dropdown-toggle.btn-primary:focus, .open>.dropdown-toggle.btn-primary:hover,
.btn-primary.active, .btn-primary:active, .open>.dropdown-toggle.btn-primary,
.btn-primary.focus, .btn-primary:focus {
    color: #fff;
    background-color: #011549;
    border-color: #284185;
}

.mainform {
    height: max-content;
}

.mainform > div {
    background-color: #ffffff;
    padding: 10px;
    background-size: cover;
    color: black;
    border: 2px solid #284185;
}

.form-header-text {
    text-transform: uppercase;
    font-size: 27px;
    margin-bottom: 2px;
    font-weight: 800;
    text-align: center;
}

.form-control {
    border-radius: 0;
    font-size: 14px!important;
    margin: 5px 0;
    border: 1px solid #efefef;
    box-shadow: none;
    transition: .3s;
    background-color: #efefef;
    color: black;
}

.form-control:hover {
    border-color: #bbbbbb;
}

.field-validation-valid,
.field-validation-error {
    position: absolute;
    right: 12px;
    top: 5px;
}

.forms-title-section {
    text-align: center;
    margin-bottom: 10px;
}

.inquiryformcontainer, 
.locationBox {
    background-color: #ffffff;
    color: black;
    font-size: 15px;
    border: 2px solid #284185;
}

.customForm [placeholder="First Name"], 
.customForm [placeholder="Last Name"],
.customForm [placeholder="Phone"],
.customForm [placeholder="Zip Code"] {
    width: 49.37%;
}

.customForm [placeholder="Email"] {
    width: 100%;
}

.customForm input, 
.customForm textarea, 
.customForm select {
    font-size: 14px!important;
    border: none;
    margin: 5px 0;
    padding: 10px;
    color: black;
    background-color: #efefef;
}

.customForm textarea {
    width: 100%;
}





/* FOOTER */

footer.body .outer-wrapper {
    background-color: #253c7c;
    color: #e3e3e3;
    padding: 15px;
    text-align: center;
}

footer.body .outer-wrapper a, footer.body .outer-wrapper a:visited, footer.body .outer-wrapper a:active {
    color: #fff;
    font-weight: 600;
}

.footerBack {
    background-color: #ececec;
    border-top: 2px solid #253c7c;
}

.footerContainer {
    background-color: #ececec;
    display: flex;
    text-transform: uppercase;
    width: 100%;
    margin: auto;
    color: black;
}

.footerWrapper {
    display: flex;
    flex-flow: column;
    flex: 0 0 30%;
    line-height: 27px;
}

.footerMap {
    position: relative;
    flex: 0 0 70%;
    padding-bottom: 150px;
}

.footerMap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.footerBlock {
    padding: 4% 7%;
}

.footerBlock .dealer-address {
    display: block;
}

.footerBlock .dealer-phone {
    display: block;
    font-weight: 700;
    font-size: 30px;
    margin-top: 5px;
    margin-bottom: 13px;
}

.footerBlock table td:first-child {
    text-align: left;
}

.footerBlock table td:last-child {
    padding-left: 15px;
    text-align: right;
}

.footerBlock ul {
    padding: 0;
}

.footerBlock li {
    list-style: none;
    position: relative;
    padding: 0 15px;
}

.footerBlock li:before {
    content: '\f0da';
    font-family: fontawesome;
    transform: rotate(90deg);
    position: absolute;
    left: 0;
    color: #474747;
    transition: .4s;
}

.footerBlock ul li:hover:before {
    transform: rotate(0deg);
}

.footerBlock h3 {
    font-size: 26px;
    margin-top: 0;
}





/* BREAKPOINTS */

@media (max-width: 1499px) {
.videoSection .container {
    width: 1170px;
}
}




@media (max-width: 1199px) {
.headerContainer,
.videoSection .container {
    width: 970px;
}

.btnContainer h3 {
    font-size: 24px;
}

.single-item-slider .slider-inner .item {
    width: 285px;
}

.footerWrapper {
    flex: 0 0 33%;
}

.footerMap {
    flex: 0 0 67%;
}

.mapWrapper {
    padding-bottom: 127%;
}
}




@media (max-width: 991px) {
.headerContainer,
.videoSection .container {
    width: 740px;
}

.headerMiddleTop .dealer-phone {
    font-size: 25px;
    margin-right: 10px;
}

.headerMiddleBtm .dealer-address {
    margin-right: 0;
    display: block;
}

.headerMiddleBtm {
    text-align: center;
}

.headerMiddleBtm .dealer-address:after {
    display: none;
}

.header-right {
    margin: 0 15px;
    flex: 0 0 28%;
}

.headerMiddleTop .phone-text {
    font-weight: 700;
    color: #253c7c;
    font-size: 22px;
}

.btnContainer a {
    padding: 20px;
}

.btnContainer h3 {
    font-size: 19px;
}

.btnContainer a:after {
    bottom: -103px;
}

.btnContainer {
    margin: 70px 0 100px;
}

.single-item-slider .slider-inner .item {
    width: 324px;
}

.footerContainer {
    flex-flow: column;
    align-items: center;
}

.footerWrapper {
    align-items: center;
}

.footerMap {
    width: 100%;
    padding-bottom: 35%;
}

.p-header {
    height: 240px;
}

.p-header h1 {
    font-size: 40px;
}

.mapWrapper {
    padding-bottom: 50%;
    margin-top: 25px;
}

.footerBlock {
    padding: 4% 5%;
    flex: 0 0 100%;
    width: 100%;
}
}





@media (max-width: 767px) {
.headerContainer,
.videoSection .container {
    width: 100%;
}

#main-nav .navbar-brand.text {
    display: none!important;
}

.headerContainer {
    flex-wrap: wrap;
    justify-content: center;
    position: relative;
}

.headerLogo {
    flex: 0 0 45%;
    margin-bottom: 15px;
    order: 1;
}

.headerMiddleBtm,
.headerMiddleTop .btn-primary {
    display: none;
}

.headerMiddle {
    order: 0;
    position: absolute;
    bottom: -50px;
    left: 15px;
}

.header-right {
    flex: 0 0 100%;
    order: 3;
}

.headerContainer a.dealer-facebook {
    order: 1;
    margin-left: 25px;
}

.navbar-nav {
    display: block;
}

.btnContainer {
    flex-flow: column;
    margin: 15px 0 45px;
}

.btnContainer a {
    margin: 10px;
}

.btnContainer h3 {
    font-size: 5.5vw;
}

.featuredInventory h2 {
    font-size: 33px;
}

.single-item-slider .slider-inner .item {
    width: 214px;
}

.single-item-slider .item-detail .price {
    font-size: 18px;
}

.single-item-slider .slider-outer {
    height: 325px;
}

.page-background > div, 
#calendar-page, 
#employees-team-page, 
#promotions-page, 
#inventory-page, 
#vdp-container, 
#thankyou-page, 
#showroom {
    margin: 15px;
}

.inventory-container .vehicle .price.not-itemized {
    font-size: 22px;
}

.pagerTop .k-pager-wrap {
    width: 90%;
}

.p-header {
    height: 100%;
    margin-bottom: 0;
}

.p-header h1 {
    font-size: 7vw;
    bottom: 8%;
    padding: 3px 7px;
    text-shadow: 1px 1px 3px white;
}

.mapandhourstbl {
    margin: auto;
}

.mapWrapper {
    padding-bottom: 100%;
    margin-top: 0;
}

.reviewsSection {
    padding: 15px 0 60px;
}

.oemContainer {
    flex-wrap: wrap;
}

.oemContainer a {
    padding: 10px;
    flex: 0 0 48%;
}
}





