:root {
--clr-purple: #612D91;
--clr-green: #68A437;
--clr-orange: #f0ad4e;
--clr-gray: #F4F4F4;
--clr-txt: #4D4D4D;
}
html {
  scroll-behavior: smooth!important;
}

body {
    color: var(--clr-txt);
    background-color: var(--clr-gray);
}

.table-overflow {
    overflow-x: scroll;
}

@media(min-width: 768px) {
.table-overflow {
    overflow-x: hidden;
}
}

/**************************************************************
    CONTACT FORM FIX
**************************************************************/
.row-contact .container {
    margin-top: -200px;
    padding-top: 200px;
    padding-bottom: 20px;
}

/**************************************************************
    FLEET MANAGEMENT
**************************************************************/
div#row-1dc076f24b944547a09eacb402952d23 {
    margin-top: -100px;
    padding: 100px;
}

.youtube-video-container {
  position: relative;
  overflow: hidden;
  width: 100%;
}

.youtube-video-container::after {
  display: block;
  content: "";
  padding-top: 56.25%;
}

.youtube-video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/**************************************************************
    MEDIA PAGE
**************************************************************/
.pageid-dsd .col-sm-12:has(h3) {
    background: white;
    padding: 0px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
    overflow: hidden;
    border-radius: 10px;
}

.pageid-dsd .col-sm-12 h3,
.pageid-dsd .col-sm-12 p {
    padding: 0px 15px;
}
a.readMore {
    margin: 15px;
    max-width: -webkit-fill-available;
}

/**************************************************************
    HOMEPAGE TABS
**************************************************************/
.hom-row-tab {
.nav-tabs {
    display: flex;
    justify-content: center;
    gap: 20px;
        border-bottom: 7px solid var(--clr-green);
        margin: 0px -15px;
background: #fff;
}
.nav-tabs>li>a {
    margin-right: 0;
    height: 100%;
    line-height: 1;
    border-radius: 8px 8px 0px 0px;
font-weight: 700;
        background: #fff;
}

.nav-tabs>li {
    margin-bottom: 0px;
}
.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover {
    color: #fff;
    background-color: var(--clr-purple);
    border: none;
}
.nav>li>a:focus, .nav>li>a:hover {
    text-decoration: none;
    background-color: #ebdbf9;
    color: var(--clr-txt);
}
.tab-content .container {
    background-color: var(--clr-gray);
    padding-bottom: 80px;
}
}

.checklist-item {
    display: flex;
    flex-direction: row;
    gap: 20px;
    margin-bottom: 30px;
}

.checklist-item-txt {
    font-size: 18px;
}

@media(min-width: 768px) {
.second-column:has(.checklist-item) {
    padding-left: 40px;
}
.d-mt-50 {
    margin-top: 50px;
}
.nav-tabs>li>a {
    font-size: 20px;
    padding: 20px;
}
}

/**************************************************************
    HERO
**************************************************************/

.hero-section .container-fluid {
    padding: 90px 45px;
    background: linear-gradient(180deg, rgba(244, 244, 244, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

.bttns-wrap {
    display: flex;
    flex-direction: column;
    gap: 15px;
    justify-content: center;
    align-items: center;
        width: max-content;
        margin-inline: auto;
}

@media(min-width: 992px) {
.bttns-wrap {
    flex-direction: row;
    justify-content: center;
}
}

/**************************************************************
    GENERAL
**************************************************************/

.page-content .container-fluid {
    background-color: var(--clr-gray);
}

/**************************************************************
    TYPOGRAPHY
**************************************************************/
h1, h2, h3,
h4, h5, h6 {
    font-weight: 800;
}

h1 {
    font-size: 40px;
    text-align: center;
}

h2 {
    color: var(--clr-purple);
}

.heading2 {
    font-size: 22px;
    line-height: 33px;
    font-weight: 800;
}

.subheading {
    font-size: 24px;
    font-weight: 400;
    text-align: center;
}

@media(min-width: 768px) {
.heading2 {
    font-size: 32px;
    line-height: 47px;
}

h1 {
    font-size: 64px;
}

h1.smaller-txt {
    font-size: 48px;
}

.subheading {
    font-size: 28px;
}
}

/**************************************************************
    BUTTONS
**************************************************************/
.cus-bttn,
a.readMore {
  border-radius: 1.25rem;
  box-sizing: border-box;
  display: flex;
  font-size: 16px;
  justify-content: center;
  padding: 1rem 1.75rem;
  text-decoration: none;
  width: 100%;
  border: 0;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  transition: all .5s ease;
 font-weight: 700;
text-transform: uppercase;
    min-width: 200px;
}
.cus-bttn:hover, 
.cus-bttn:focus,
.cus-bttn:active {
  text-decoration: none;
}

.primbttn-green {
  background-image: linear-gradient(-180deg, #7EC644 0%, #73B63D 100%);
  color: #FFFFFF;
}
.primbttn-green:hover,
.primbttn-green:active,
.primbttn-green:focus {
  background-image: linear-gradient(-180deg, #73B63D 0%, #68A437 100%);
  color: #FFFFFF;
}

.primbttn-purple {
  background-image: linear-gradient(-180deg, #8240BF 0%, #6F34A6 100%);
  color: #FFFFFF;
}
.primbttn-purple:hover,
.primbttn-purple:active,
.primbttn-purple:focus {
  background-image: linear-gradient(-180deg, #6F34A6 0%, #612D91 100%);
  color: #FFFFFF;
}

.primbttn-orange,
a.readMore {
  background-image: linear-gradient(-180deg, #FFCE67 0%, #FFC446 100%);
  color: #333333;
}
.primbttn-orange:hover,
.primbttn-orange:active,
.primbttn-orange:focus,
a.readMore:hover {
  background-image: linear-gradient(-180deg, #FFC446 0%, #FCB92B 100%);
  color: #333333;
}

@media (min-width: 768px) {
  .cus-bttn {
        padding: 1.25rem 2.25rem;
        width: max-content;
  }
}

/**************************************************************
    FOOTER
**************************************************************/
.row-cont .container {
    padding-top: 40px!important;
    padding-bottom: 80px!important;
}
.row-cont2 .container {
    padding-right: 30px;
    padding-left: 30px
}

.row-cont3 .container .row {
    margin: 0px!important;
}

.footer-container.footer-container {
    padding-top: 0px;
    border-top: none;
    border-bottom: none;
    background-color: var(--clr-gray);
    color: var(--clr-txt);
    font-weight: 700;
    font-size: 16px;
}

div.page-bottom {
background-color: var(--clr-gray)!important;
}

.cus-social {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: var(--clr-purple);
    color: #fff;
    font-size: 20px;
}
.cus-social:hover,
.cus-social:focus,
.cus-social:active {
    color: #fff;
    text-decoration: none;
}

.cus-social-wrap {
    display: flex;
    flex-direction: row;
    gap: 15px;
}


/**** FOOTER GRID ****/

.grid-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
    gap: 15px;
}

.div5 {
    grid-column: span 2 / span 2;
}

@media(min-width: 768px) {
.grid-container {
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: repeat(1, 1fr);
}
.div5 {
    grid-column: span 1 / span 1;
}
}
        
/**** FOOTER UL ****/
        .footer-ul {
            list-style: none;
            padding: 0;
            margin: 0;
            display: flex;
            flex-direction: column;
        }

        .footer-ul li {
            margin: 0;
        }

        .footer-ul a {
            text-decoration: none;
            padding: 10px;
            display: block;
            color: var(--clr-txt);
    
        }

        /* Desktop styles */
        @media (min-width: 768px) {
            .footer-ul {
                flex-direction: row;
                justify-content: center;
            }

            .footer-ul li {
                display: flex;
                align-items: center; /* Vertically center the content */
                justify-content: center; /* Horizontally center the content */
            }

            .footer-vehicle-inventory::after,
            .footer-fleet-management::after {
        content: '';
        border-right: 2px solid gray;
        height: 30px;
        margin: 0 10px;
        display: inline-block;
            }
        .footer-ul a {
        font-size: 20px;
        line-height: 27px;
        font-weight: 700;
}
        }

        /* Mobile styles */
        @media (max-width: 767px) {
            .footer-ul {
                flex-direction: column;
                text-align: center;
            }

            .footer-vehicle-inventory:not(:last-child)::after,
            .footer-fleet-management:not(:last-child)::after {
display: none;
            }
        .footer-ul a {
        font-size: 18px;
        line-height: 24px;
        font-weight: 700;
}
}




        

/**************************************************************
    BANNER
**************************************************************/
.banner-links-bar {
    padding: 15px 30px!important;
}
@media(min-width: 1200px) {
.banner-links-bar {
    padding: 20px 100px!important;
}
}

div.banner-container {
    background: var(--clr-purple);
}

/**************************************************************
    HEADER
**************************************************************/
/**************** DISPLAY *********************/

.custom-menu .cus-header {
    display: none;
}

.cus-header .container-fluid {
    padding: 0px!important;
}

@media(min-width: 768px) {
.navbar .menu-container {
    display: none
}
.custom-menu .cus-header {
    display: block;
}
}

/**** PADDING / MARGIN ****/
@media(min-width: 768px) {
.cus-header .row {
    margin: 0px;
}

.cus-header .element-outer-container {
    padding: 0px;
}

nav.navbar.navbar-default {
    padding: 15px 30px!important;
}
}

@media(min-width: 1200px) {
nav.navbar.navbar-default {
    padding: 30px 100px!important;
}
.navbar-fixed-spacer {
    height: 118px;
}
}

@media(min-width: 1400px) {
.navbar-fixed-spacer {
    height: 130px;
}
}

/**************** DROPDOWN *********************/
.dropdown-menu > li > a {
    color: var(--clr-txt);
}

@media(min-width: 768px) {
.dropdown:hover .dropdown-menu {
    background: white !important;
    display: block;
    margin-top: 0; /* remove the gap so it doesn't close */
    padding: 12px;
    transform: translateX(-12px);
    text-transform: capitalize;
}
}

/**************** NAVBAR *********************/

a.navbar-brand {
    margin-top: 8px;
}

.cusnavbar-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.cus-ul {
list-style-type: none;
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: space-around;
    padding: 0px;
    margin: 0px;
}

.navbar-fixed-top.navbar-fixed-top {
    background-color: #fff;
}
.navbar-fixed-shadow {
    -webkit-box-shadow: 0 4px 2px 0 rgba(100, 100, 100, .1);
    -ms-box-shadow: 0 4px 2px 0 rgba(100, 100, 100, .1);
    box-shadow: 0 4px 2px 0 rgba(100, 100, 100, .1);
}

li.nav-parent:not(:last-child) {
    margin-right: 10px; 
}

.navbar-default .navbar-nav > li > a:hover, 
.navbar-default .navbar-nav > li > a:focus {
    background-color: var(--clr-purple)!important;
}

@media(min-width: 768px) {
.nav-parent.nav-parent,
a.menu-heading.menu-heading {
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    line-height: 25px;
    padding: 8px;
}
.nav-parent.nav-parent:hover,
a.menu-heading.menu-heading:hover,
a.cus-menu-link:hover {
    color: var(--clr-purple)!important;
    text-decoration: none;    
}

@media(min-width: 992px) {
.nav-parent.nav-parent,
a.menu-heading.menu-heading {
    font-size: 18px;
}
}
@media(min-width: 1200px) {
li.nav-parent:not(:last-child) {
    margin-right: 50px; 
}
}

@media (min-width: 1400px) {
.nav-parent.nav-parent,
a.menu-heading.menu-heading {
    font-size: 20px;
}
}

/**************** BRAND LOGO *********************/

@media (min-width: 768px) {
.cus-brand-img {
    width: 225px;
    max-width: 225px;
}
}

@media (min-width: 1200px) {
.cus-brand-img {;
    max-width: 350px;
    width: 350px;
}
}
@media (min-width: 1400px) {
.cus-brand-img {;
    max-width: 100%;
    width: 100%;
}
}

/**************************************************************
    ABOUT US - JUSTINE
**************************************************************/

.hero-section-about .container-fluid {
    padding: 70px 40px;
    background: linear-gradient(180deg, rgba(244, 244, 244, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

.aboutus .page-content .container {
    background: linear-gradient(180deg, rgba(244, 244, 244, 1) 0%, rgba(255, 255, 255, 1) 100%) !important;
}

.abouttabs .nav-tabs {
        display: flex;
        justify-content: center;
        gap: 20px;
        border-bottom: 7px solid var(--clr-green);
        margin: 0px -15px;
        background: #fff;
}


.ourgoal-about {
padding: 80px 0;
background-color:#612D91;
}

.where-aboutus .container {
background-color:#F4F4F4 !important;
}

.stlouis .container {
background-color:#F4F4F4 !important;
}

@media (min-width: 768px) {
    .stlouis .container {
        background-color: #F4F4F4 !important;
    }
}

/**************************************************************
    CAREERS- JUSTINE
**************************************************************/

.careers-page { 
    background-color: transparent;
    background: linear-gradient(180deg, #E4E4E4 0%, #FFFFFF00 100%) !important;
}

/**************************************************************
FORM - JUSTINE
**************************************************************/

button {
    /* position: absolute; */
   top: auto;
    /* transform: translateY(-50%); */
    background-color: rgba(255, 255, 255, 0.7);
    border: none;
    padding: 10px;
    cursor: pointer;
    font-size: 24px;
    border-radius: 50%;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
    font-family: Arial, sans-serif;
}

button.btn {
    position: relative!important;
    transform: none!important;
}

@media (max-width: 767.9px) {
button {
    position: relative!important;
    transform: none!important;
}
}


/**************************************************************
    MEDIA
**************************************************************/
/* Flexbox for the card container */
.pageid-dsd .page-content-element .element-outer-container .customhtml .col-sm-12 {
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* Aligns content to top and bottom */
    height: 100%; /* Ensures the card takes the full height */
}

/* Ensure the "Read More" button stays at the bottom */
.pageid-dsd .page-content-element .element-outer-container .customhtml .col-sm-12 .readMore {
    margin-top: auto; /* Pushes the button to the bottom of the card */
}


/**************************************************************
    RESOURCES
**************************************************************/

/* Flexbox for the card container */
.pageid-c47 .page-content-element .element-outer-container .customhtml .card-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* Aligns content to top and bottom */
    height: 100%; /* Ensures the card takes the full height */
    border: 2px solid #ddd;
    border-radius: 10px;
    padding: 0;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    margin: 15px;
    max-width: 350px;
    overflow: hidden;
}

/* Ensure the "Read More" button stays at the bottom */
.pageid-c47 .page-content-element .element-outer-container .customhtml .card-content .readMore {
    margin-top: auto; /* Pushes the button to the bottom of the card */
}

/* When the image fails to load, adjust the alignment */
.pageid-c47 .page-content-element .element-outer-container .customhtml .card-content.image-error h3 {
    align-self: flex-start; /* Align the H3 at the top */
}

/***Custom Page***/
#row-67cb80175d9d4a8dacd72cf53dffda2f {
    background: linear-gradient(to bottom, var(--soft), #fff);
}

.pageid-c03 div.footer-container, .pageid-c03 div.page-bottom, .pageid-c03 div.pagetitle-container .container, .pageid-c03 .pagetitle-container .container-fluid, .pageid-c03 .page-content .container, .pageid-c03 .page-content .container-fluid {
    background-color: transparent;
}

#row-eb9387e8b1234425887ffcc877648beb {
  background-color: #f7f7fb;
}

#row-dc8df8899c7c4c5da5447ac30c9b06ea {
    --tw-bg-opacity: 1;
    background-color: rgb(247 247 251 / var(--tw-bg-opacity, 1));
}

.pageid-c03 .tooltip {
    opacity: 1;
}

.page-content-row .testimonials .container {
    padding-top: 0;
}