/* Foxbow Layout Styles - Fond brique */

/* Application du fond brique au wrapper principal */
#wrapper {
  background-image: url('../img/fond-brique-foxbow.jpg') !important;
  background-repeat: repeat !important;
  background-attachment: fixed !important;
  background-position: top left !important;
  background-size: auto !important;
  background-color: #f6f6f6 !important; /* Fallback si l'image ne charge pas */
}

/* S'assurer que le contenu est lisible sur le fond brique */
main#main {
  position: relative;
}

/* Optionnel: ajouter une légère transparence au contenu pour mieux voir le fond */
.container {
  position: relative;
}

/* Breadcrumb Styles - Custom Foxbow */
.breadcrumb-wrapper {
  background: #ffffff;
  position: relative;
  box-shadow: inset 0 4px 6px 3px rgba(0, 0, 0, 0.01), 0 0px 6px 0 #6E6867;
  padding: 0;
  margin-bottom: 0;
}

.breadcrumb-wrapper .container {
  max-width: 1500px;
  margin: 0 auto;
  padding: 0 15px;
}

.breadcrumb-wrapper nav.breadcrumb {
  background: transparent;
  padding: 10px 0;
  margin: 0;
  box-shadow: none;
}

.breadcrumb-wrapper nav.breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 0.875rem;
}

.breadcrumb-wrapper nav.breadcrumb ol li {
  display: inline-flex;
  align-items: center;
  color: #71b02c;
  font-size: 0.875rem;
}

.breadcrumb-wrapper nav.breadcrumb ol li a {
  color: #71b02c;
  text-decoration: none;
  transition: all 0.2s ease;
}

.breadcrumb-wrapper nav.breadcrumb ol li a:hover {
  text-decoration: underline;
  color: #71b02c;
}

.breadcrumb-wrapper nav.breadcrumb ol li span {
  color: #71b02c;
}

/* Separator with "/" */
.breadcrumb-wrapper nav.breadcrumb ol li:not(:last-child)::after {
  content: "/";
  margin: 0 8px;
  color: #71b02c;
  font-weight: normal;
}

/* Remove default breadcrumb styles */
.breadcrumb-wrapper nav.breadcrumb ol li::before {
  display: none;
}

/* Category Block Title Styles */
.block-category h1 {
  margin-bottom: 1rem;
  font-size: 1.5rem;
  position: relative;
}

.block-category h1:after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  border-bottom: solid 3px #000;
  margin-top: 10px;
}

.block-category .block-category-inner {
  gap: 20px;
}

/* Products Selection - Custom Layout without Bootstrap Grid */
#js-product-list-top.products-selection {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 10px 0;
  background: white;
}

#js-product-list-top .total-products {
  width: 100%;
  padding-left: 20px;
  padding-top: 0px;
}

#js-product-list-top .total-products p {
  margin: 0;
  color: #000;
}

#js-product-list-top .sort-filter-wrapper {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  padding-right: 10px;
}

#js-product-list-top .sort-by-container {
  display: flex;
  align-items: center;
  gap: 15px;
  width: 100%;
}

#js-product-list-top .sort-by-label {
  white-space: nowrap;
  color: #000;
}

#js-product-list-top span {
  color: #000;
}

#js-product-list-top p {
  color: #000;
}

#js-product-list-top .products-sort-order {
  flex: 1 1 auto;
}

/* Override select-list hover colors with Foxbow green */
.brands-sort .select-list:hover,
.products-sort-order .select-list:hover,
.suppliers-sort .select-list:hover {
  color: #fff;
  text-decoration: none;
  background: #71b02c;
}

/* Pagination styles */
nav.pagination {
  color: #000;
}

nav.pagination * {
  color: #000;
}

.pagination .current a {
  font-size: 1.25rem;
  color: #71b02c;
  text-decoration: none;
}

/* Override hover colors with Foxbow green */
#subcategories ul li .subcategory-name:hover,
.block-categories .arrows .arrow-down:hover,
.block-categories .arrows .arrow-right:hover,
.block-categories .collapse-icons .add:hover,
.block-categories .collapse-icons .remove:hover,
.cart-grid-body a.label:hover {
  color: #71b02c;
}

/* Override search filters UI widget header with Foxbow green */
#search_filters .ui-widget-header {
  background: #71b02c;
}

/* Override checkbox checked color with Foxbow green */
.custom-checkbox input[type=checkbox]+span .checkbox-checked {
  display: none;
  margin: -.125rem;
  font-size: 1.25rem;
  color: #71b02c;
}

#js-product-list-top .filter-button {
  display: none;
}

#js-product-list-top .showing-mobile {
  display: none;
  width: 100%;
  text-align: center;
  padding: 10px 0;
}

/* Responsive */
@media (max-width: 991px) {
  #js-product-list-top.products-selection {
    flex-direction: column;
    align-items: stretch;
  }

  #js-product-list-top .sort-filter-wrapper {
    justify-content: space-between;
    padding-left: 10px;
  }

  #js-product-list-top .sort-by-container {
    width: 100%;
  }

  #js-product-list-top .products-sort-order {
    max-width: none;
  }

  #js-product-list-top .filter-button {
    display: block;
  }

  #js-product-list-top .showing-mobile {
    display: block;
  }
}

@media (max-width: 767px) {
  #js-product-list-top .total-products {
    display: none;
  }

  #js-product-list-top .sort-by-label {
    display: none;
  }
}

/* Page Header Titles */
.page-header h1,
.page-header h2,
.page-header h3,
.page-header h4,
#js-product-list-header {
  text-transform: uppercase;
  font-size: 1.5rem;
}

/* Category Header Block - Panel blanc */
.category-header-block {
  background: white;
  padding: 1.5rem;
  margin-bottom: 20px;
}

.category-header-block #js-product-list-header {
  margin-bottom: 0;
}

.category-header-block #js-product-list-header:after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  border-bottom: solid 3px #000;
  margin-top: 10px;
}

.category-header-block .category-description {
  margin-top: 1rem;
  color: #333;
  line-height: 1.6;
}

.category-header-block .category-description p:last-child {
  margin-bottom: 0;
}

#js-product-list-header {
  margin-bottom: 20px;
}

/* Contact Form Title */
.contact-form h3:after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  border-bottom: solid 3px #000;
  margin-top: 10px;
}

/* Content Rich */
.content-rich {
  background: white;
  padding: 1rem;
}

.content-rich .block .icon {
  width: 3rem;
}

.contact-rich .block .icon {
  width: 3rem;
}

.content-rich h4:after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  border-bottom: solid 3px #000;
  margin-top: 10px;
}

/* Contact Rich */
.contact-rich {
  background: white;
  padding: 1rem;
}

.contact-rich h4:after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  border-bottom: solid 3px #000;
  margin-top: 10px;
}

.contact-rich .block .data {
  font-size: 0;
}

.contact-rich .block:first-of-type .data {
  font-size: 1rem;
}

.contact-rich .block .data br {
  display: none;
}

.contact-rich .block:first-of-type .data br {
  display: block;
}

.contact-rich .block .data a {
  font-size: 1rem;
  display: inline-block;
}

.contact-rich .block .data.email {
  display: none;
}

.contact-rich .block a[href^="mailto:"] {
  font-size: 1rem;
  display: inline-block;
  margin-top: 0px;
}

/* Foxbow Delivery Block in Sidebar */
#foxbow-delivery-block {
  margin-top: 1.5rem;
  margin-bottom: 20px;
  background: white;
  border: 1px solid #dee2e6;
}

#foxbow-delivery-block .block-title {
  padding: 1.563rem 1.25rem;
}

#foxbow-delivery-block .block-title span {
  font-size: 1.5rem;
  text-transform: uppercase;
  font-weight: 500;
}

#foxbow-delivery-block .block-content {
  padding: 1rem;
}

#foxbow-delivery-block .block-content p {
  margin: 0;
}

#foxbow-delivery-block .block-content img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}