/*
 * Custom code goes here.
 * A template should always ship with an empty custom.css
 * Put your custom css here for foxbow theme
 */

/* Import Google Font Scada */
@import url('https://fonts.googleapis.com/css2?family=Scada:wght@400;700&display=swap');

/* Import Google Font Oswald pour les titres */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@300;400;500;600;700&display=swap');

/* Import Font Awesome 4 */
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css');

/* ============================================
   TYPOGRAPHIE - POLICE OSWALD POUR TITRES
   ============================================ */

/* Application de la police Oswald à tous les titres du thème */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: 'Oswald', sans-serif;
}

/* Titres dans les sections spécifiques du thème */
.page-header h1,
.page-header h2,
.page-header h3,
.page-header h4,
#js-product-list-header,
.block-category h1,
.product-title h1,
.modal-title,
.card-title,
.block-title,
.section-title,
.featured-products h2,
.product-accessories h2,
.product-tabs-full-width .product-description h2,
.product-tabs-full-width .product-description h3,
/* Classes additionnelles du thème classic */
.sitemap-title,
.facet-title,
.subcategory-heading,
.product-discounts-title,
.page-heading,
.page-title,
#search_filters .facet-title,
.block-categories .category-title,
.products-section-title,
.contact-form h3,
.contact-rich h4,
.content-rich h4,
#foxbow-delivery-block .block-title span {
  font-family: 'Oswald', sans-serif;
  position: relative;
  display: inline-block;
  padding-bottom: 10px;
}

#foxbow-delivery-block .block-title span::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 30px;
  border-bottom: solid 3px #EA591F;
}

/* Carousel customization */
.carousel-inner > .carousel-item {
  text-align: center;
}

/* ============================================
   PRODUCT PAGE CUSTOMIZATION (Foxbow)
   ============================================ */

/* Conteneur principal de la page produit avec fond blanc */
#main .product-container {
  background-color: #ffffff;
  padding: 2rem;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  float: left;
  width: 100%;
}

/* Référence produit */
.product-reference {
  font-size: 0.9rem;
  color: #666;
  margin-bottom: 10px;
}

.product-reference .label {
  font-weight: 600;
  color: #333;
}

/* Description courte avec listes stylisées et coches vertes */
.product-description-short ul {
  list-style: none;
  padding-left: 0;
  margin: 1rem 0;
}

.product-description-short ul li {
  position: relative;
  padding-left: 2rem;
  margin-bottom: 0.75rem;
  line-height: 1.6;
}

.product-description-short ul li:before {
  content: "\f00c";
  font-family: "FontAwesome";
  position: absolute;
  left: 0;
  top: 0;
  color: #71b02c;
  font-size: 1.1rem;
  font-weight: bold;
}

/* Balises strong en orange dans les descriptions */
.product-description-short strong {
  color: #EA591F;
}

/* Prix TTC et HT - PAGE PRODUIT */
.product-prices .current-price-value,
.product-prices .price-value-ttc {
  font-size: 2rem;
  font-weight: 700;
  color: #333;
}

.foxbow-quickview-prices-ht,
.product-prices .price-value-ht {
  font-size: 25px;
  color: #EA591F;
  margin-top: 0.5rem;
  font-weight: 700;
}

/* Labels HT/TTC - PAGE PRODUIT */
.ht-label,
.tax-shipping-delivery-label {
  font-size: .8125rem;
  font-weight: 700;
}

/* Onglets en pleine largeur */
.product-tabs-full-width {
  width: 100%;
  background-color: #ffffff;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  padding: 0px;
}

/* Style des onglets */
.product-tabs-full-width .nav-tabs {
  border-bottom: 2px solid #e9ecef;
  margin-bottom: 0px;
}

.product-tabs-full-width .nav-tabs .nav-link {
  border: none;
  border-bottom: 3px solid transparent;
  color: #666;
  font-weight: 500;
  padding: 1rem 1.5rem;
  margin-bottom: -2px;
  transition: all 0.3s ease;
}

.product-tabs-full-width .nav-tabs .nav-link:hover {
  border-bottom-color: #71b02c;
  color: #333;
}

.product-tabs-full-width .nav-tabs .nav-link.active {
  border-bottom-color: #71b02c;
  color: #71b02c;
  font-weight: 600;
  background-color: transparent;
}

/* Contenu des onglets */
.product-tabs-full-width .tab-content {
  padding: 1rem;
}

/* Suppression du padding pour les tab-panes */
.tabs .tab-pane {
  padding: 0px;
}

/* Description du produit dans les onglets */
.product-tabs-full-width .product-description h2,
.product-tabs-full-width .product-description h3 {
  color: #333;
  margin-top: 1.5rem;
  margin-bottom: 1rem;
}

/* Balises strong en orange dans la description complète */
.product-description strong {
  color: #EA591F;
}

/* Détails du produit */
.product-tabs-full-width .product-features {
  margin-top: 1.5rem;
}

.product-tabs-full-width .data-sheet {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 0.75rem;
}

.product-tabs-full-width .data-sheet dt {
  font-weight: 600;
  color: #666;
}

.product-tabs-full-width .data-sheet dd {
  color: #333;
  margin-bottom: 0;
}

/* Documents joints */
.product-attachments .attachment {
  border: 1px solid #e9ecef;
  padding: 1rem;
  margin-bottom: 1rem;
}

.product-attachments .attachment h4 {
  margin-bottom: 0.5rem;
  font-size: 1.1rem;
}

.product-attachments .attachment a {
  color: #71b02c;
  text-decoration: none;
}

.product-attachments .attachment a:hover {
  text-decoration: underline;
}

/* Bouton Ajouter au panier (btn-primary en vert) */
.btn-primary,
.add-to-cart {
  background-color: #71b02c !important;
  border-color: #71b02c !important;
  color: #ffffff !important;
  font-weight: 600;
  padding: 0.75rem 2rem;
  transition: all 0.3s ease;
}

.btn-primary:hover,
.add-to-cart:hover {
  background-color: #6fa02d !important;
  border-color: #6fa02d !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(127, 180, 52, 0.3);
}

/* Zone de vente croisée */
.product-accessories,
#product-footer-hooks {
  margin-top: 3rem;
  padding: 2rem;
  background-color: #ffffff;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.product-accessories .h5 {
  font-weight: 600;
  margin-bottom: 1.5rem;
  color: #333;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  #main .product-container {
    padding: 1rem;
  }

  .product-tabs-full-width {
    padding: 1rem;
  }

  .product-tabs-full-width .nav-tabs .nav-link {
    padding: 0.75rem 1rem;
    font-size: 0.9rem;
  }
}

/* ============================================
   REMPLACEMENT COULEUR #f39d72 PAR #e05917
   ============================================ */

/* Prix avec réduction */
.has-discount .page-content.page-cms ul,
.has-discount p,
.has-discount.product-price,
.page-content.page-cms .has-discount ul {
  color: #e05917 !important;
}

.has-discount .discount {
  background: #e05917 !important;
}

/* Product flags */
.product-flags li.product-flag.discount,
.product-flags li.product-flag.discount-amount,
.product-flags li.product-flag.discount-percentage {
  background-color: #e05917 !important;
}

.product-flags li.product-flag.on-sale {
  background: #e05917 !important;
}

/* Block promo */
.block-promo .promo-name,
.block-promo .cart-summary-line .label {
  color: #e05917 !important;
}

.block-promo .promo-name .cart-summary-line span {
  color: #e05917 !important;
}

.block-promo .promo-input {
  height: 48px;
}

/* Cart summary */
.cart-grid-right .promo-discounts .cart-summary-line .label .code {
  color: #e05917 !important;
}

/* ============================================
   QUICKVIEW ADJUSTMENTS
   ============================================ */

/* Retirer le margin-left du social-sharing dans quickview */
.quickview .social-sharing {
  margin-left: 0 !important;
}

/* Centrer le contenu du footer quickview */
.modal-footer.foxbow-quickview-footer {
  padding: 0px 30px !important;
  text-align: center !important;
  justify-content: center !important;
}

/* Agrandir les icônes de réseaux sociaux de 6px dans quickview */
.quickview .social-sharing li {
  width: calc(2.5rem + 6px) !important;
  height: calc(2.5rem + 6px) !important;
}

/* Augmenter le gap entre les icônes sociales dans quickview */
.quickview .social-sharing ul {
  gap: 0.75rem !important;
}

/* Ajouter margin-bottom à la disponibilité dans quickview */
.quickview .foxbow-quickview-availability.in-stock {
  margin-bottom: 10px !important;
}

/* Balises strong en orange dans la description quickview */
.foxbow-quickview-description strong {
  color: #EA591F;
}

.livraison-p p, .livraison-p strong {
  font-size: 12px!important;
}

.foxbow-price-ttc-second .regular-price {
  text-decoration: line-through;
}

#mondialrelay_summary {
  margin: 20px 0px;
  float:right;
}
#mondialrelay_change-relay {
  margin-top: 10px;
}
#mondialrelay_save-container {
  margin-right: 20px;
}
/* ============================================
   CHECKOUT PAGE ADJUSTMENTS
   ============================================ */

/* Retirer le padding du footer sur la page checkout */
body#checkout #footer {
  padding: 0 !important;
}

/* Masquer le breadcrumb sur la page checkout et panier */
body#checkout .breadcrumb,
body#checkout nav[data-depth],
body#cart .breadcrumb,
body#cart nav[data-depth] {
  display: none !important;
}

/* Remplacer le vert par le vert Foxbow sur les step-numbers */
body#checkout section.checkout-step.-reachable.-current .step-number {
  background-color: #71b02c !important;
}

/* ============================================
   CART & CHECKOUT - PRIX À 1REM
   ============================================ */

/* Prix dans le panier */
body#cart .product-line-info.product-price .price,
body#cart .product-price .price,
body#cart .cart-summary-line .value {
  font-size: 1rem !important;
  font-weight: 700 !important;
}

/* Prix dans le checkout */
body#checkout .product-price,
body#checkout .cart-summary-line .value,
body#checkout #order-items .product-price {
  font-size: 1rem !important;
  font-weight: 700 !important;
}

/* Bloc rappel livraison gratuite (gris plus visible) */
.cart-free-shipping-reminder {
  background-color: #e6e6e6 !important;
  border-color: #d8d8d8 !important;
  color: #212529 !important;
}
.cart-free-shipping-reminder .cart-free-shipping-main {
  font-weight: 700;
}

/* Prix dans le dropdown du panier */
#foxbow-blockcart-wrapper .cart-total .value,
#foxbow-blockcart-wrapper .cart-subtotals .value {
  font-size: 1rem !important;
  font-weight: 700 !important;
}

/* ============================================
   PRODUCT PAGE & QUICKVIEW - MASQUER LE LAYER MODAL
   ============================================ */

/* Masquer le layer de zoom modal sur les pages produit et quickview */
.product-cover .layer,
.quickview .product-cover .layer {
  display: none !important;
}

/* ============================================
   PRODUCT ACCESSORIES TITLE
   ============================================ */

/* Titre des accessoires produits - Style Foxbow Carousel */
.foxbow-accessories-title {
  font-family: 'Scada', sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  color: #212529;
  text-transform: none;
  margin: 0 0 30px 0;
  position: relative;
  display: inline-block;
  padding-bottom: 10px;
  text-align: left;
}

.foxbow-accessories-title::after {
  content: "";
  position: absolute;
  bottom: -1.5px;
  left: 0;
  display: block;
  width: 30px;
  height: 1px;
  border-bottom: solid 3px #ec6a33;
}

/* Responsive */
@media (max-width: 768px) {
  .foxbow-accessories-title {
    font-size: 1.125rem;
  }
}

/* ============================================
   TARIF PALETTE IMAGE
   ============================================ */

/* Margin bottom pour l'image tarif palette */
.tarif-palette-image {
  margin-bottom: 10px;
}

/* ============================================
   CATEGORY DESCRIPTION
   ============================================ */

/* Style pour la description de catégorie */
#category-description,
#category-description p {
  font-size: 13px !important;
  text-transform: none !important;
}

/* ============================================
   CATEGORY MENU
   ============================================ */

/* Padding-right pour les liens de catégories de niveau 0 */
.block-categories .category-sub-menu li[data-depth="0"] > a {
  padding-right: 35px;
}

/* ============================================
   PRODUCT MINIATURES - UNIFORM IMAGE SIZES
   ============================================ */

/* Hauteur uniforme pour toutes les miniatures */
.product-miniature {
  height: 100%;
  display: flex;
}

.product-miniature .product {
  height: 100%;
  display: flex;
  flex-direction: column;
}

/* Container uniforme pour les miniatures */
.product-miniature .thumbnail-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* Dimensions fixes pour la zone d'image */
.product-miniature .thumbnail-top {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1; /* Ratio carré pour uniformité */
  overflow: hidden;
  background-color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Description produit prend l'espace restant */
.product-miniature .product-description {
  display: flex;
  flex-direction: column;
  flex: 1;
  justify-content: space-between;
}

/* Image produit avec taille uniforme */
.product-miniature .product-thumbnail {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.product-miniature .product-thumbnail picture {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.product-miniature .product-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: contain; /* Garde les proportions sans déformation */
  object-position: center;
  max-width: 100%;
  max-height: 100%;
}

/* Responsive adjustments */
@media (max-width: 991px) {
  .product-miniature .thumbnail-top {
    aspect-ratio: 1 / 1;
  }
}

@media (max-width: 576px) {
  .product-miniature .thumbnail-top {
    aspect-ratio: 1 / 1;
  }
}

/* ============================================
   PRODUCT MINIATURES - PRIX HT/TTC À 18PX
   ============================================ */

/* Prix HT et TTC dans les miniatures - 18PX */
.foxbow-product-prices .price-value-ht,
.foxbow-product-prices .price-ht {
  font-size: 18px;
  font-weight: 700;
  color: #EA591F;
}

.foxbow-product-prices .price-value-ttc,
.foxbow-product-prices .price-ttc {
  font-size: 18px;
  font-weight: 700;
  color: #333;
}

/* Labels HT/TTC dans les miniatures - 18PX */
.foxbow-product-prices .price-label-ht,
.foxbow-product-prices .price-label-ttc {
  font-size: 18px;
  font-weight: 700;
  margin-left: 0.25rem;
}

/* ============================================
   DISABLE QUICKVIEW - DIRECT LINK TO PRODUCT
   ============================================ */

/* Masquer complètement le quickview overlay */
.foxbow-quick-view-overlay,
.quick-view,
.js-quick-view {
  display: none !important;
}

/* S'assurer que le clic sur l'image mène à la page produit */
.product-miniature .product-thumbnail {
  cursor: pointer;
  pointer-events: auto;
}

/* ============================================
   HIDE "ACCUEIL" CATEGORY NAME
   ============================================ */

/* Masquer le titre "Accueil" dans les listings de catégories */
body.category-id-2 #js-product-list-header,
body.category-id-2 .page-header h1 {
  display: none !important;
}

/* Masquer le lien "Accueil" dans le menu latéral des catégories */
.block-categories .category-top-menu > li:first-child {
  display: none !important;
}

/* Alternative : cibler directement le lien vers /2-accueil */
.block-categories a[href*="/2-accueil"],
.block-categories a[href*="2-accueil"] {
  display: none !important;
}

/* Masquer aussi le parent li si nécessaire */
.block-categories .category-top-menu > li:has(> a[href*="/2-accueil"]) {
  display: none !important;
}

/* ============================================
   CATEGORY TREE - FOXBOW CUSTOMIZATION
   ============================================ */

/* Liens de catégories de niveau 0 : MAJUSCULES et GRAS */
.block-categories .category-sub-menu li[data-depth="0"] > a.category-main-link {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 0.875rem;
  color: #232323;
  display: block;
  padding: 0.5rem 0;
  transition: color 0.2s ease;
}

.block-categories .category-sub-menu li[data-depth="0"] > a.category-main-link:hover {
  color: #EA591F;
}

/* Catégorie active (catégorie actuellement visitée) */
.block-categories .category-sub-menu li[data-depth="0"].current-category > a.category-main-link,
.block-categories .category-sub-menu li[data-depth="0"].has-active-child > a.category-main-link {
  color: #EA591F;
  position: relative;
}

/* Indicateur visuel : barre orange à gauche pour la catégorie active */
.block-categories .category-sub-menu li[data-depth="0"].current-category > a.category-main-link::before,
.block-categories .category-sub-menu li[data-depth="0"].has-active-child > a.category-main-link::before {
  content: '';
  position: absolute;
  left: -20px;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 100%;
  background-color: #EA591F;
  border-radius: 2px;
}

/* Sous-catégories actives */
.block-categories .category-sub-menu .category-sub-link.active {
  color: #EA591F;
  font-weight: 600;
  position: relative;
}

/* Puce orange devant la sous-catégorie active */
.block-categories .category-sub-menu .category-sub-link.active::before {
  content: '\2022'; /* Bullet point */
  color: #EA591F;
  font-size: 1.2rem;
  position: absolute;
  left: -20px;
  top: 50%;
  transform: translateY(-50%);
}

/* Style hover pour les sous-catégories */
.block-categories .category-sub-menu .category-sub-link:hover {
  color: #EA591F;
}

/* Amélioration de l'espacement des sous-menus */
.block-categories .category-sub-menu li[data-depth="1"] {
  padding-left: 1rem;
}

/* S'assurer que le collapse avec show s'affiche bien */
.block-categories .collapse.show {
  display: block !important;
}

/* ============================================
   BLOCKCART MODAL - TITLE CENTERED
   ============================================ */

/* Forcer le centrage du titre dans la modal panier */
#blockcart-modal .modal-title {
  display: block !important;
  width: 100%;
  text-align: center;
  padding-bottom: 0 !important;
}
