/**
 * Main Template CSS Stylesheet
 * 
 * BOOTSTRAP v3.4.0
 *
 */
.clearBoth {
   clear: both;
}
.forward {
    float: right;
}
.back {
    float: left;
}

/* This is used to re-size images */
img {
    max-width: 100%;
    height: auto;
    border: 0;
}

.qmix > br {
    display: none;
}

.normalprice, .productSpecialPriceSale {
    text-decoration: line-through;
}

#back-to-top {
    position: fixed;
    bottom: 5rem;
    right: 1rem;
    z-index: 1;
    text-align: center;
    cursor: pointer;
    transition: opacity 0.2s ease-out;
    opacity: 0;
}

#back-to-top.show {
    opacity: 1;
    z-index: 1;
}

/* set height of scrollable area in mobile menu */
div#navbarSupportedContent {
    max-height:90vh;
    overflow-y:auto;
}

.zca-banner {
    text-align: center;
}

.ot-title {
    text-align: right;
}
.ot-text,
.totalCell {
    text-align: right;
}

.centeredContent {
    text-align: center;
    padding: 1rem;
}

table.tabTable td {
    padding: 0.5rem;
}
#indexProductList-cat-wrap {
    margin-bottom: 1rem;
}
#productsListing-bottomRow {
    margin-top: 1rem;
}

.sideBoxContent select {
    margin-bottom: 1rem;
}
#navCatTabs a,
#navCatTabs a:hover {
    border: 0.125rem solid #007faf;
}

/* These CSS media queries control how many columns of cards display on the login, checkout_shipping, checkout_payment & checkout_confirmation pages */
/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) { 
.card-columns {
  -webkit-column-count: 1;
  -moz-column-count: 1;
  column-count: 1;
}
}

/*  Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
.card-columns {
  -webkit-column-count: 1;
  -moz-column-count: 1;
  column-count: 1;
}
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
.card-columns {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
}
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) { 
.card-columns {
  -webkit-column-count: 2;
  -moz-column-count:2;
  column-count: 2;
}
}

.productSpecialPriceSale {
  display: none !important;
}

/* FOOTER OVERRIDES */

#footer-menu {
  background: #2b2b2b;
  padding: 10px 0;
}

/* Each column card area */
#footer-menu .ffm-card {
  background: transparent;
}

/* Remove Bootstrap list group white backgrounds */
#footer-menu .list-group,
#footer-menu .list-group-item {
  background: transparent;
  border: 0;
}

/* Link colors */
#footer-menu a {
  color: #ffffff;
  text-decoration: none;
}

#footer-menu a:hover,
#footer-menu a:focus {
  color: #ffd24a;
  text-decoration: none;
}

/* Optional header text color */
#footer-menu .ffm-header,
#footer-menu .ffm-header-link {
  background-color: #3a3a3a !important;
  color: #ffffff;
}

/* Hide digital download box in product pages */
#productAttributes { display: none; }

/* MAIN product image: disable modal/link click */
#productMainImage a,
#productMainImage [onclick*="openModal"],
#productMainImage [data-bs-toggle="modal"]{
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}

/* HIDE the "larger image" / "click to enlarge" link text */
#productMainImage a:not(:has(img)){
  display: none !important;
}

/* If the text is not a link (plain text), this hides it */
#productMainImage{
  font-size: 0;
  line-height: 0;
}

/* make sure the image still displays normally */
#productMainImage img{
  cursor: default;
}

/* Remove Max 1 text from product pages and listings */
.qmax { display: none; }

/* clamp listing description to 3 lines */
.productListingDescription,
.listingDescription,
.productListing-data .listingDescription {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

#headerWrapper {
  background-color: #232323 !important;
}

.banner-carousel,
.banner-carousel .carousel-inner,
.banner-carousel .carousel-item {
  background-color: #232323 !important;
}

/* Add space below the top header nav bar */
#headerWrapper .navbar,
.header_navbar,
.navbar-header-top {
  margin-bottom: 8px !important;
}

body { padding-top: 15px !important; }

/* Remove underline from Header Category Tabs links */
#navCatTabs a,
#navCatTabs a:visited,
#navCatTabs a:hover,
#navCatTabs a:focus,
#navCatTabs a:active {
  text-decoration: none !important;
}

/* Remove underline from Header Nav Bar links (ZCA Bootstrap template) */
#navMainWrapper #navMain a,
#navMainWrapper #navMain a:visited,
#navMainWrapper #navMain a:hover,
#navMainWrapper #navMain a:focus,
#navMainWrapper #navMain a:active {
  text-decoration: none !important;
}

/* Header search button color + hover (upper right nav bar) */
#search-header .btn,
#navMainSearch .btn,
form[name="quick_find_header"] .btn {
  background-color: #232323 !important;
  border-color: #232323 !important;
  color: #fff !important;
}

#search-header .btn:hover,
#search-header .btn:focus,
#navMainSearch .btn:hover,
#navMainSearch .btn:focus,
form[name="quick_find_header"] .btn:hover,
form[name="quick_find_header"] .btn:focus {
  background-color: #444 !important;
  border-color: #444 !important;
  color: #fff !important;
}