/************ // Imports // ************/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap%27');

/************ // General HTML Tags // ************/
*{outline: none !important;}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
}
p, li, a, span, div {
    font-family: 'Montserrat', sans-serif;
}

.woof_products_top_panel li span, .woof_products_top_panel2 li span {
    background: url(https://sandbox2.rokkitdev.co.za/wp-content/plugins/woocommerce-products-filter/img/delete.png);
    background-size: 14px 14px;
    background-repeat: no-repeat;
    background-position: right;
    font-size: 14px;
}

/************ // Site Structure // ************/
.entry {
    margin-bottom: 0;
    padding: 0;
}
 
.site-inner,
.wrap {
    margin: 0 auto;
    max-width: unset;
    width: 100%;
    padding: 0;
}

.entry {
    background-color: #ffffff;
    margin-bottom: 0;
    padding: 0;
}

.textCenter {
    text-align: center;
}

.limitWidth {
    margin: 0 auto;
    max-width: 1400px;
    padding: 20px;
}

.site-header .wrap {
    display: flex;
    max-width: unset;
    align-items: center;
    width: 100%;
    flex-direction: row-reverse;
    margin: 0 auto;
    justify-content: space-between;
}

.site-header .widget {
    margin-bottom: 0;
}

html {
    scroll-behavior: smooth;
}

.upper{
    text-transform: uppercase;
}

.txtCenter{
    text-align: center;
}

/************ // Header // ************/
.site-header {
    background-color: #000000;
}

section.widget.widget_nav_menu {
    margin: 0;
}

.genesis-nav-menu {
    text-align: left;
}

.genesis-nav-menu a {
    color: #fff;
    /* text-decoration: none; */
    display: block;
    padding: 32px 10px;
}

/* .genesis-nav-menu .sub-menu {
    border-top: 1px solid #eee;
    left: auto;
    opacity: 0;
    position: absolute;
    -webkit-transition: opacity .4s ease-in-out;
    -moz-transition: opacity .4s ease-in-out;
    -ms-transition: opacity .4s ease-in-out;
    -o-transition: opacity .4s ease-in-out;
    transition: opacity .4s ease-in-out;
    width: 180px;
    z-index: 99;
} */

.genesis-nav-menu .sub-menu a {
    background-color: #000;
    border: 1px solid #eee;
    border-top: 0;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 20px;
    position: relative;
    width: 200px;
    word-wrap: break-word;
}
.genesis-nav-menu a:hover, .genesis-nav-menu a:focus, .genesis-nav-menu .current-menu-item > a, .genesis-nav-menu .sub-menu .current-menu-item > a:hover, .genesis-nav-menu .sub-menu .current-menu-item > a:focus {
    color: white;
}

h1.entry-title {
    display: none;
}

.header-image .site-title > a {
    background-position: center !important;
    background-size: 200px!important;
    float: left;
    min-height: 80px;
    width: 100%;
}

.site-header > .wrap {
    padding: 0px 0;
}

.header-full-width .title-area {
    display: none;
}

.site-header .widget-area {
    float: right;
    text-align: right;
    width: auto;
}

.title-area {
    display: none;
}
.logos {
    display: flex;
    align-items: center;
    gap: 20px;
    margin: 20px 0;
}

.logos img {
    width: 140px;
}

.logos a:first-child img {
    height: 48px;
    width: auto;
}

/************ // Menu // ************/

/************ // Utility Classes // ************/
.align-center{
    text-align: center;
}

.pt-25{
    padding-top: 25px;
}

/************ // Content // ************/
.page-content{
    max-width: 1200px;  /* 1600px */
    margin: 0 auto;
}
.container {
    margin: 0;
}

.homeAboutUs{
    font-size: 16px;
    font-family: 'Montserrat', sans-serif;
}

.section {
    display: grid;
    grid-template-columns: 1fr 1fr;
    /* column-gap: 20px;  */
    /* align-items: center; */
}

.image-container img {
    width: 100%;
    height: auto;
}

.section.contactDealersSection.limitWidth img {
    max-width: none;
}

.image-container {
    font-size: 0;
}

.text-container {
    padding: 20px 40px;
    align-self: center;
}

.text-container p {
    font-size: 16px;
}

.exemption{
    text-align: center;
}

/* Responsive stacking for mobile */
@media (max-width: 768px) {
    .section {
        grid-template-columns: 1fr;
        text-align: center;
    }
}


h1 {
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 26px;
    margin-bottom: 10px;
    list-style-position: inside;
}

.entry-content ol, .entry-content ul {
    margin-bottom: 15px;
    margin-left: 20px;
}

.entry-content ul > li {
    list-style-type: disc;
    font-size: 16px;
}

ul.myUL {
  display: inline-block;
  text-align: left;
}

.link-button{
    font-weight: 700;
    color: #0f500f;
    font-size: 14px;
    gap: 6px;
    line-height: 18px;
    margin-top: 20px;
    text-decoration-line: none;
}

.contact-center{
    border-top: 1px solid #d8d8d8;
    font-style: normal;
    font-weight: 400;
    margin-top: 40px;
    padding: 40px;
    text-align: center;
    /* width: calc(100vw - 48px); */
}

.module-name{
    color: #000;
    font-family: var(--lp-desc-font-family-MontserratSemiBold);
    font-size: 16px;
    font-weight: 600;
    line-height: 19px;
    margin-bottom: 0;
}

.weekday{
    color: #222;
    font-size: 16px;
    line-height: 22px;
    margin-top: 12px;
    margin-bottom: 0;
}

.online-phone a{
    color: #326432;
    font-size: 20px;
    line-height: 27px;
    margin-top: 4px;
    margin-bottom: 0;
}

.perating-hours, .support-time{
    color: #222;
    font-family: var(--lp-desc-font-family);
    font-size: 16px;
    line-height: 22px;
    margin-bottom: 0;
}

.perating-hours{
    margin-top: 8px;
}

.support-time {
    font-weight: 700;
    margin-top: 20px;
}

.short-separator {
    width: 40px;         
    height: 2px;        
    background: #ccc;    
    margin: 15px auto;   
    border-radius: 10px; 
}

 

/************ // FORM // ************/
.form-container{
    margin: 50px auto;
}

.form-header{
    background-color: #000;
    color: #fff;
    padding: 40px 52px;
    font-weight: 600;
    line-height: 1.45;
}

.form-header h1{
    font-size: 32px;
}

.form-header p{
    font-size: large;
}

.form-section {
    padding: 20px 52px;
    box-shadow: 0 4px 4px rgba(87, 100, 126, .21);
}
/************ // WooCommerce // ************/


/************ // Footer // ************/
.site-footer {
    background-color: #000;
    border-top: 1px solid #eee;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1;
    padding: 24px 0;
    text-align: center;
}
.footer {
    background-color: #000;
    color: #fff;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 42px;
}

.footer > div {
    flex: 1;              
}

.footer-text{
    color: #fff;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 19px;
    text-decoration: none;
    align-self: center;
    text-align: left;
}

.footer-logo{
    display: flex;
    justify-content: center;
    align-items: center;
}

.footer-icons {
    display: flex;
    justify-content: end;
    align-items: center;
    padding: 10px 0;
    align-self: center;
}

.footer-icons a {
  margin: 0 8px;
  font-size: 22px;
  color: #ffffff; 
  text-decoration: none;
}

.footer-icons a:hover {
  color: #ccc;
}

.dealership-location {
    display: flex;
    margin-bottom: 20px;
}

.footer-logo img{
    width: 145px;
    height: auto;
}

.dealership-location:nth-child(even) {
    flex-direction: row-reverse;
}

.dealership-image {
    font-size: 0;
    width: 60%;
}

.contact-details p {
    margin: 0;
}

.dealership-info {
    width: 100%;
    padding: 40px;
    background-color: #e9e9e9;
    color: #4f4f4f;
}

.contact-details a {
    color: #307fe2;
    text-decoration: none;
}

h2.dealership-name {
    color: #000;
    font-size: 50px;
}

/************ // Contact us // ************/

.contactDealersHolder {
    display: flex;
    gap: 10px;
}

.contactDealersHolder > div{
    flex: 1;
}

.eachDealerBox {
    display: flex;
}

.dealerInfoSmall {
    font-size: 15px;
}

span.dealereachinfo {
    display: block;
}

span.dealereachinfo a {
    color: #326432;
}

.dealerContactinfo {
    padding: 10px;
}

.dealerImageHolder img {
    width: 240px !important;
    height: 100%;
}

.contactDealersHolder {
    display: flex;
    gap: 20px;
    justify-content: space-between;
    flex-wrap: wrap;
}

h2.contactFormHeading {
    padding: 40px 0;
}


.page-id-225 .quform-popup-link,
.siteButton {
    margin: unset;
}

.page-id-139 .quform-popup-link,
.siteButton {
    margin: 5px auto;
}

.quform-popup-link, .siteButton {
    display: block;
    background: #000;
    max-width: 200px;
    color: #fff;
    /* margin: 5px auto; */
    font-size: 18px;
    font-weight: 200;
    /* border-right: 10px solid #487f70; */
    transition-duration: 0.2s;
    text-align: center;
    text-decoration: none;
}

.quform-3 .quform-button-submit button, .quform-3 .quform-element-submit.quform-button-style-theme .quform-button-submit button {
    background-color: #487f70;
    width: 200px;
}

.quform-3 .quform-button-submit button:hover, .quform-3 .quform-element-submit.quform-button-style-theme .quform-button-submit button:hover {
    background-color: #487f70;
}

p.formConfirmation {
    font-size: 12px;
}

/************* // New Specials // *************/

.smallWidth {
    max-width: 1200px;
    margin: 0 auto;
}

.specialsReturnHolder {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}


.specialsReturnHolder .specialeVehicleHolder {
    width: 47%;
    margin: auto;
    margin-top: 25px;
    padding: 20px;
}

a.newRedButton {
    background-color: #000;
    color: #fff;
    text-decoration: none;
    display: block;
    font-size: 28px;
    margin: 0 auto;
}

span.archiveOfferHeading {
    font-size: 24px;
}

.special-heading{
    font-size: 36px;
    font-weight: 600;
    margin-bottom: 0 0 10px;
    line-height: 1.2;
}

.welcomeHolder {
    background-size: cover;
    background-repeat: no-repeat;
}

.welcomeSectionInner {
    padding-top: 40px;
    color: #000;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.welcomeSectionTextHolder {
    text-align: center;
    max-width: 1300px;
    padding: 20px;
}

.welcomeSectionTextHolder h1{
    font-size: 36px;
}

.welcomeSectionTextHolder p{
    font-size: 16px;
}




/************ // MEET THE TEAM // ************/
.meat-team-list-container {
    display: flex;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
}

.each-member {
    width: 48%;
}

.name {
    color: #333;
    font-size: 36px;
    font-weight: 600;
}

.position {
    color: #333;
    font-size: 24px;
    font-weight: 600;
}

.contact-info {
    color: #333;
    font-size: 24px;
    font-weight: 600;
}

.email a, .cell a{
    color: #326432;
}
/************ // Responsive // ************/

@media screen and (max-width: 1200px) { /* Laptop */
    .genesis-nav-menu {
        clear: both;
        font-size: 12px;
        font-weight: 600;
        line-height: 1;
        width: 100%;
    }

    .genesis-nav-menu a {
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 32px 10px;
}
}

@media screen and (max-width: 1024px) { /* Older Desktop */

}

@media screen and (max-width: 768px) { /* iPad */

}

@media screen and (max-width: 480px) { /* iPhone 6 Plus, Landscape Display */

}

@media screen and (max-width: 320px) { /* iPhone 4,5, Portrait Display */

}

/* ---------- Mobile Responsiveness ---------- */

@media (max-width: 768px) {
    .site-header .wrap {
    display: flex;
    max-width: unset;
    align-items: center;
    width: 100%;
    flex-direction: column-reverse;
    margin: 0 auto;
    justify-content: space-between;
}

.site-header .widget-area {
    float: right;
    text-align: right;
    width: 100%;
    margin-right: 0;
}

.js .nav-primary .genesis-nav-menu .menu-item, .js .site-header .genesis-nav-menu .menu-item {
    display: block;
    float: none;
    margin: 1px 0;
    padding: 5px 0;
    position: relative;
    text-align: left;
    border-bottom: 1px solid #fff;
}

.js .nav-primary .genesis-nav-menu .menu-item a, .js .site-header .genesis-nav-menu .menu-item a {
    border: none;
    padding: 14px 12px;
    width: 100%;
}

.site-footer {
    background-color: #000;
    border-top: 1px solid #eee;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1;
    padding: 20px 0;
    text-align: center;
}

.footer {
    flex-direction: column;   
    text-align: center;
    gap: 20px;              
}

.footer-tetx,
.footer-logo{
    flex: unset;              
    width: 100%;              
    text-align: center;       
}

.footer-icons {
    flex: unset;              
    width: 100%;
    padding: 0;              
    justify-content: center;             
}

.quform-popup-link, .siteButton {
    display: block;
    background: #000;
    max-width: 200px;
    color: #fff;
    /* margin: 5px auto; */
    font-size: 16px;
    font-weight: 200;
    /* border-right: 10px solid #487f70; */
    transition-duration: 0.2s;
    text-align: center;
    text-decoration: none;
}

.specialsReturnHolder .specialeVehicleHolder {
    width: 100%;
    margin: auto;
    margin-top: 25px;
    padding: 20px;
}

.eachDealerBox {
    display: flex;
    flex-wrap: wrap;
}

.dealerImageHolder img {
    width: 100%;
    height: 100%;
}
}