﻿
/*
--fs-primary-heading: Primary Heading - Page Title - H1
--fs-secondary-heading Secondary Heading - H2
--fs-sub-heading: Sub Heading - H3
--fs-nav: Nav 
--fs-body: Body
--fs-button: Buttons
*/

:root {
    --ff-primary: "Roboto", sans-serif;
    --ff-secondary: "Roboto", sans-serif;
    --ff-heading: var(--ff-primary);
    --ff-body: var(--ff-secondary);
    --fw-regular: 400;
    --fw-semi-bold: 600;
    --fw-bold: 700;
    --fs-300: 0.875rem;
    --fs-400: 1rem;
    --fs-500: 1.25rem;
    --fs-550: 1.5rem;
    --fs-600: 2rem;
    --fs-700: 2.5rem;
    --fs-800: 3rem;
    --fs-primary-heading: var(--fs-700);
    --fs-secondary-heading: var(--fs-600);
    --fs-sub-heading: var(--fs-550);
    --fs-nav: var(--fs-500);
    --fs-body: var(--fs-400);
    --fs-button: var(--fs-300);
}

/* Large - Screens */
@media (min-width: 768px) {
    :root {
        --fs-primary-heading: var(--fs-800);
        --fs-secondary-heading: var(--fs-700);
        --fs-sub-heading: var(--fs-550);
        --fs-nav: var(--fs-500);
        --fs-body: var(--fs-400);
        --fs-button: var(--fs-300);
    }
}


/***********************************************
    GENERAL STYLING
***********************************************/

.lazy-background .container.container {
    background-color: transparent;
}

.am-hero-slideshow .btn,
.infinite-list-load-more.btn,
.view-all-inventory .btn, 
.am-cta-slideshow .btn {
    letter-spacing: .15rem;
}

@media (min-width: 1400px) {
    .container {
        min-width: 1400px;
    }
}

/***********************************************
    TYPOGRAPHY
***********************************************/
    html {
        font-size: 16px;
    }

    body {
        font-family: var(--ff-body);
        font-size: var(--fs-body);
        line-height: 1.5;
    }

    h1, h2, h3,
    h4, h5, h6 {
        font-family: var(--ff-heading) !important;
        margin-top: 8px;
        margin-bottom: 8px;
        line-height: 1.2;
        text-wrap: balance;
        text-align: center;
    }

    h1 {
        font-size: var(--fs-primary-heading) !important;
        font-weight: var(--fw-bold) !important;
    }

    h2, h3, h4 {
        font-size: var(--fs-secondary-heading) !important;
        font-weight: var(--fw-bold) !important;
        line-height: 1.2;
    }

    h5, h6 {
        font-size: var(--fs-secondary-heading) !important;
        font-weight: var(--fw-bold) !important;
        line-height: 1.2;
    }

    a {
        text-decoration: none;
        font-size: var(--fs-body);
    }

    a:focus, a:hover {
        color: inherit;
    }

    input {
        cursor: text !important;
    }

    .sub-heading {
        font-size: var(--fs-sub-heading);
        font-weight: var(--fw-semi-bold);
        line-height: 1.2;
    }

    .element-heading {
        padding-top: 0px;
        padding-bottom: 8px;
    }

.form-control {
    font-size: 16px;
}

.pageid-ivd h1.pagetitle {
    font-size: var(--fs-secondary-heading) !important;
}

/***********************************************
    BANNER
***********************************************/

.banner-container {
    padding: 8px 0px;
}

a.banner-link {
    font-size: var(--fs-body);
}

.banner-links-bar {
    padding: 0px;
}

.banner-links-bar-wrapper .social-media-links,
.banner-links-bar-wrapper .address-link,
.banner-links-bar-wrapper .phonenumber-link {
    padding: 8px 0px;
}

/* Social Media links */
.media-icon,
.media-icon-small {
    box-shadow: none !important;
}


/************************************
    NAVBAR
**************************************/
@media (max-width: 767.98px) {
    .navbar-header a.navbar-brand img {
        max-width: 255px!important;
    }
}

@media (min-width: 768px) {
    .navbar-nav {

        margin-block-start: 1em;
        margin-block-end: 1em;
        margin-inline-start: 0px;
        margin-inline-end: 0px;
        padding-inline-start: 40px;
    }

    .navbar-collapse {
        padding-left: 0px;
        padding-right: 0px;
    }

    .navbar-nav,
    a.navbar-brand:has(.fa-home) {
        margin-block-start: 1em;
        margin-block-end: 1em;
        margin-inline-start: 0px;
        margin-inline-end: 0px;
        padding-inline-start: 40px;
        padding-right: 15px;
    }

}




/***********************************************
    HERO SECTION
***********************************************/
.hero-row .container {
    padding: 40px 0px;
}

.hero-row .row {
    max-width: 100%;
    margin: 0;
}

/***********************************************
    SLIDESHOW
***********************************************/

.am-hero-slideshow .slideshow-overlay-center {
    width: 100%;
}

.am-hero-slideshow .carousel-inner,
.am-hero-slideshow .item span {
    border-radius: 8px;
}
.carousel-control.right,
.carousel-control.left {
    border-radius: 4px;
}


.slideshow-overlayvert-bottom {
    bottom: 10px !important;
}

.am-slide-text {
    font-size: 24px;
    text-transform: uppercase;
    font-weight: 400;
    letter-spacing: .25rem;
    line-height: 2;
    display: none;
}

.am-hero-slideshow .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 32px;
    min-height: 40px;
    text-transform: uppercase;
    border-radius: 0;
    font-weight: 600;
    font-size: 16px;
    max-width: max-content;
    margin-inline: auto;
}

@media (min-width: 768px) {
    .slideshow-overlayvert-bottom {
        bottom: 20px !important;
    }
}

@media (min-width: 1200px) {
    .am-slide-text {
        display: block;
    }
}

.am-cta-slideshow .am-slide-text2 {
    font-size: 48px;
    text-transform: uppercase;
    font-weight: var(--fw-bold) !important;
    line-height: 1.2;

} 

.am-slide-wrap {
    display: flex;
    flex-direction:column;
    align-items:center;
    justify-content: center;
}

.am-cta-slideshow .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 32px;
    min-height: 40px;
    text-transform: uppercase;
    border-radius: 0;
    font-weight: 600;
    font-size: 16px;
    max-width: max-content;
    margin-inline: auto;
}

.am-slide-wrap .stars {
    font-size: 24px;
}

.am-slide-wrap .fa-solid.fa-star-sharp:before {
    color: transparent;
    position: relative;
    background-clip: text;
    -webkit-background-clip: text;
    background-image: linear-gradient(to bottom, #F9F9F9 0%, #c2c2c2 100%);
    text-shadow: none;
}

.am-slide-wrap p {
    max-width: 700px;
    text-align: center;
    font-weight: 400;
    font-size: 18px;
    display: none;
}

.am-cta-slideshow .slideshow-overlayvert-center {
    top: 20% !important;
    left: 10% !important;
}

@media (min-width: 768px) {
    .am-slide-wrap p {
        display: block;
    }
}
/***********************************************
    QUICKLINKS
***********************************************/
.element-heading.element-heading-quicklinkbuttons {
    padding-bottom: 0px;
}

.quicklinkbuttons-vertical {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

    .quicklinkbuttons-vertical a.quicklinkbutton {
        margin: 4px 0;
    }

a.quicklinkbutton.quicklinkbutton {
    height: auto !important;
    line-height: 1 !important;
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    outline: none;
    transition: all 300ms cubic-bezier(.23, 1, 0.32, 1);
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    width: 100%;
    will-change: transform;
}

    a.quicklinkbutton.quicklinkbutton:hover {
        box-shadow: rgba(0, 0, 0, 0.25) 0 8px 15px;
        transform: translateY(-2px);
    }
    a.quicklinkbutton.quicklinkbutton:active {
        box-shadow: none;
        transform: translateY(0);
    }


.buttonanim-bigicon .quicklinkbutton-bigicon {
    position: static;
    margin-top: 0 !important;
    font-size: 24px !important;
}


.buttonanim-bigicon.buttonanim-bigicon {
    margin-top: 0px !important;
}

.buttonanim-bigicon .quicklinkbutton-anim {
    position: relative !important;
    margin-top: 0px !important;
}

.quicklinkbutton-anim {
    display: none;
}

a.quicklinkbutton {
    padding: 12px 24px;
}

.quicklinkbutton-bigicon {
    display: inline-block;
}

.quicklinkbutton-label {
    width: auto;
}

@media (min-width: 768px) {
    .star-heading-wrap {
        flex-direction: row;
    }
}

@media (min-width: 1200px) {
    a.quicklinkbutton {
        padding: 24px 16px;
    }
}

@media (min-width: 1400px) {

    a.quicklinkbutton.quicklinkbutton {
        flex-direction: column;
    }

    .quicklinkbuttons-vertical {
        gap: 20px;
    }
}

/************************************
quicklinks icon
**************************************/
.fa-automobile:before, .fa-car:before {
    content: "\f85b"!important;
}

.fa.fa-check-square-o:before {
    content: "\e1d9" !important;
}

.fa-phone-square:before, .fa-square-phone:before {
    content: "\e472" !important;
}

.fa-phone-square:before, .fa-square-phone:before {
    content: "\f086" !important;
}

/************************************
    STAR HEADING
**************************************/

.star-heading-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-size: var(--fs-500);
}

.stars-a {
    display: none;
}


.stars-a-1 {
    display: flex;
    gap: 8px;
}

.s-hidden {
    display: none;
}

.am-slide-wrap .stars {
    padding-bottom: 8px;
}

.am-slide-wrap p {
    padding-bottom: 8px;
}


@media (min-width: 768px) {
    .star-heading-wrap {
        flex-direction: row;
    }

    .stars-a {
        display: flex;
        gap: 8px;
    }
}
}

/************************************
    INVENTORY LIST GALLERY
**************************************/
.gallery-view .inventory-header.vehicles-found-header {
        display: none;
    }

.view-all-inventory a.btn,
.btn.infinite-list-load-more {
    padding: 12px 16px;
    width: 100%;
    max-width: 700px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-inline: auto;
    font-size: 16px;
    transition: all 300ms cubic-bezier(.23, 1, 0.32, 1) !important;
    border-radius: 0;
    text-transform: uppercase;
}

.btn.infinite-list-load-more {
    margin-bottom: 8px;
}

.view-all-inventory .inventory {
    padding: 15px;
}

.inventory-price-container .pricevalue1,
.inventory-price-container .phonenumber {
    font-size: 28px !important;
}


.gallery-view {
    .inventory-header.vehicles-found-header {
    display: none;
    }
}

.inventory-photo-column {
    padding: 0px;
}

.inventory-photo-column.palette-bg1 {
    background-color: transparent;
}

.inventory-photo-column .image {

}

    .inventory-photo-column .col-xs-12:has(.image) {
        padding:0px !important;
    }

.am-inv-row-1 {
    border-radius: 8px 8px 0px 0px;
    overflow: hidden;
}

.am-inv-row-1 .clearfix {
    padding: 4px 16px!important;
}

.am-inv-row-2 {
    padding: 8px 16px;
}

.am-inv-row-3 {
    border-radius: 0px 0px 8px 8px;
}

    .am-inv-row-3 .inventory-price-column {
        margin: 0px!important;
    }

.inventory-details {
    display: flex;
    flex-direction: row;
    gap: 16px;
    flex-wrap: wrap;
    min-height: 24px;
}

/************************************
    FOOTER
**************************************/

.footer-container a.navbar-brand.navbar-brand img {
    max-width: 100%!important;
}
.footer-links-heading {
    font-size: var(--fs-body);
}

.footer-container .fa-brands {
    font-size: 24px;
}

.footer-container .media-icon {
    width: 40px;
    height: 40px;
    font-size: 8px;
}

.footer-container .social-media-links {
    margin-top: 12px;
}

/************************************
    PADDING FIX
**************************************/
.am-customhtml .container {
    padding: 40px 0px !important;
}

/************************************
    HOMEPAGE FLAG BANNER
**************************************/
.am-banner-row {
    position: absolute;
    left: 0;
    right: 0;
}

    .am-banner-row .container-fluid {
        background-color: transparent;
    }


/***************************
  VDP 5-12
***************************/
/******** HEADER ***********/
.vdp-25-1-header {
    display: none;
}

.vdp-25-1-header {
    .vehicle-links-container

{
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-top: 10px;
}

.vehicle-link .btn {
    max-width: max-content;
    padding: 10px 20px;
}

}

@media (min-width: 768px) {
    .vdp-25-1-header {
        display: block;
    }

        .vdp-25-1-header .vehicle-links-container {
            flex-direction: row;
        }
}


/******** QUICK CONTACT ***********/
.element-type-vdpquickcontactform.vdp-25-1 {
    border: 1px solid #DEDEDE;
    border-radius: 4px;
    padding: 20px;
    margin-bottom: 20px;
}

    .element-type-vdpquickcontactform.vdp-25-1 .btn {
        max-width: 100%;
    }

@media (max-width: 767.98px) {
    .element-type-vdpquickcontactform .btn-default {
        width: 100%;
        padding: 10px 20px;
    }
}

/******** BODY ***********/
/* mobile buttons */
.vdp-25-1-mobile .vehicle-link .btn {
    padding: 10px 20px;
}

.vdp-25-1-mobile .element-heading-vehiclelinks {
    padding: 0px;
}

.vdp-25-1-mobile .element-outer-container.element-type-vdpquickcontactform,
.vdp-25-1-mobile div.vehicle-link {
    padding-bottom: 10px;
}


.vdp-25-1 {
    .vdp-25-1-bg.element-outer-container

{
    border-radius: 4px;
    padding: 20px;
    margin-bottom: 20px;
    border: 1px solid;
}

.flex-container-features {
    gap: 10px;
}

.vehicle-links-container .vehicle-link {
    margin-bottom: 10px;
}

.flex-item-features {
    padding: 20px;
    border: 1px solid #E3E3E3;
    margin-bottom: 10px;
    border-radius: 4px;
}

.vehicle-link,
.vehicle-link .btn,
.element-type-vdpquickcontactform .btn {
    width: 100%;
}

    .vehicle-link .btn,
    .element-type-vdpquickcontactform .btn {
        padding: 10px 20px;
    }

.vehicle-link {
    padding-left: 15px;
    padding-right: 15px;
}

.element-type-price > div {
    text-align: right !important;
}

.element-heading {
    padding-left: 0px;
    padding-right: 0px;
}

.vehicle-link .btn {
    padding: 10px 20px;
}

}

@media (max-width: 767.98px) {
    .vdp-25-1 {
        .flex-container-features

{
    flex-direction: column;
    column-count: 1;
}

}
}

/******** BOTTOM NAV ***********/
.vdp-25-1-bottomnav {
    position: sticky;
    bottom: 0px;
    z-index: 1;
}

.vdp-25-1-bottomnav {
    position: sticky;
    bottom: 0px;
}

    .vdp-25-1-bottomnav .creditapp.btn-default {
        padding: 10px 20px;
    }


@media (min-width: 768px) {
    .vdp-25-1-bottomnav {
        display: none;
    }
}

/***************************
  VDP 5-12
***************************/
/******** HEADER ***********/
.vdp-25-1-header {
    display: none;
}

.vdp-25-1-header {
    .vehicle-links-container

{
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-top: 10px;
}

.vehicle-link .btn {
    max-width: max-content;
    padding: 10px 20px;
}

}

@media (min-width: 768px) {
    .vdp-25-1-header {
        display: block;
    }

        .vdp-25-1-header .vehicle-links-container {
            flex-direction: row;
        }
}


/******** QUICK CONTACT ***********/
.element-type-vdpquickcontactform.vdp-25-1 {
    border: 1px solid #DEDEDE;
    border-radius: 4px;
    padding: 20px;
    margin-bottom: 20px;
}

    .element-type-vdpquickcontactform.vdp-25-1 .btn {
        max-width: 100%;
    }

@media (max-width: 767.98px) {
    .element-type-vdpquickcontactform .btn-default {
        width: 100%;
        padding: 10px 20px;
    }
}

/******** BODY ***********/
/* mobile buttons */
.vdp-25-1-mobile .vehicle-link .btn {
    padding: 10px 20px;
}

.vdp-25-1-mobile .element-heading-vehiclelinks {
    padding: 0px;
}

.vdp-25-1-mobile .element-outer-container.element-type-vdpquickcontactform,
.vdp-25-1-mobile div.vehicle-link {
    padding-bottom: 10px;
}


.vdp-25-1 {
    .vdp-25-1-bg.element-outer-container

{
    border-radius: 4px;
    padding: 20px;
    margin-bottom: 20px;
}

.flex-container-features {
    gap: 10px;
}

.vehicle-links-container .vehicle-link {
    margin-bottom: 10px;
}

.flex-item-features {
    padding: 20px;
    border: 1px solid #E3E3E3;
    margin-bottom: 10px;
    border-radius: 4px;
}

.vehicle-link,
.vehicle-link .btn,
.element-type-vdpquickcontactform .btn {
    width: 100%;
}

    .vehicle-link .btn,
    .element-type-vdpquickcontactform .btn {
        padding: 10px 20px;
    }

.vehicle-link {
    padding-left: 15px;
    padding-right: 15px;
}

.element-type-price > div {
    text-align: right !important;
}

.element-heading {
    padding-left: 0px;
    padding-right: 0px;
}

.vehicle-link .btn {
    padding: 10px 20px;
}

}

@media (max-width: 767.98px) {
    .vdp-25-1 {
        .flex-container-features

{
    flex-direction: column;
    column-count: 1;
}

}
}

/******** BOTTOM NAV ***********/
.vdp-25-1-bottomnav {
    position: sticky;
    bottom: 0px;
    z-index: 1;
}

.vdp-25-1-bottomnav {
    position: sticky;
    bottom: 0px;
}

    .vdp-25-1-bottomnav .creditapp.btn-default {
        padding: 10px 20px;
    }


@media (min-width: 768px) {
    .vdp-25-1-bottomnav {
        display: none;
    }
}

/******** update ***********/
.vdp-25-1-bg .vehicle-link,
.vdp-25-1-bg a.btn {
    width: 100%;
}

.vdp-25-1-bg .vehicle-link {
    padding-bottom: 10px;
}

.element-type-vehiclelinks.vdp-25-1-bg {
    padding: 20px 35px;
    border-radius: 4px;
}

.vdp-25-1-bg .element-heading-vehiclelinks,
.vdp-25-1-bg .element-heading-vehiclehistory {
    padding: 0px;
}

h5 {
    font-size: var(--fs-sub-heading) !important;
}

.element-type-vehiclelinks.vdp-25-1-bg {
    border: 1px solid;
}

@media(min-width: 768px) {
    .specifics-label,
    .specifics-value {
        font-size: 14px;
        width: 100%;
    }

    .vdp-25-1-header .vehicle-links-container {
        flex-wrap: wrap;
    }

    div.vehicle-description {
        font-size: inherit;
    }
}

