/** Shopify CDN: Minification failed

Line 563:0 Expected "}" to go with "{"

**/
/**
 * PERSONNALISATIONS CSS POUR JM LEGAZEL
 * ====================================
 * Ce fichier contient toutes les personnalisations CSS
 * pour la boutique Shopify JM Legazel.
 * Dernière mise à jour : 08 mai 2025
 */

/**
 * MENU MOBILE
 * ----------
 * Améliorations du menu mobile pour une meilleure expérience utilisateur.
 */
.mobile-nav__item {
  padding: 12px 15px;
  font-size: 16px;
  border-bottom: 1px solid #f0f0f0;
}

.mobile-nav__item a[href="/account"],
.mobile-nav__link--account {
  font-size: 18px;
  font-weight: 600;
  color: #5c3f8b; /* Couleur pourpre adaptée au thème */
  padding: 15px;
  text-transform: uppercase;
  border-bottom: 2px solid #5c3f8b;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.mobile-nav__link--account:after {
  content: "\f007"; /* Code FontAwesome pour l'icône utilisateur */
  font-family: "FontAwesome";
  margin-left: 10px;
}

.mobile-nav__item--secondary {
  font-size: 15px;
  padding: 10px 15px;
}

.social-icons {
  display: flex;
  justify-content: space-around;
  padding: 15px 0;
}

.social-icons__link {
  font-size: 24px;
  margin: 0 5px;
}

/**
 * FILTRES DE COLLECTION "FINS DE SÉRIES"
 * -------------------------------------
 * Styles pour améliorer l'aspect visuel des filtres dans les collections.
 */

/* Taille de police améliorée pour les options de taille */
.taille-filter .filter-group__item,
#FilterTaille .filter-group__item,
.taille-group .filter-group__item,
div[data-section="taille"] .filter-group__item,
.filter-group__item,
.tag-list .tag,
.taille-option,
[aria-label*="taille"] .filter-group__item,
#filter-taille .filter-group__item,
.collection-sidebar .tag-list .tag,
.collection-sidebar label,
.sidebar-block label {
  font-size: 14.5px !important; 
  padding: 1px 0 !important;
  margin: 2px 0 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.3px !important;
}

/* Style pour les options avec barres obliques - espacement plus serré */
.filter-group__item span:contains("/"),
.tag__text:contains("/") {
  letter-spacing: -0.4px !important;
}

/* Réduction de la marge horizontale pour rendre les éléments plus compacts */
.filter-group__list,
.tag-list,
.filter-options,
.filter-items {
  padding-left: 5px !important;
  padding-right: 5px !important;
  margin-top: 3px !important;
  margin-bottom: 3px !important;
}

/* Titre du groupe TAILLE en majuscules et plus visible */
.taille-heading,
div[data-group="taille"] .filter-group__header,
#filter-taille .filter-group__header,
div[data-section="taille"] h3,
.collection-sidebar h3:contains("TAILLE") {
  text-transform: uppercase !important;
  font-weight: 600 !important;
  color: #482c54 !important;
  border-bottom: 1px solid rgba(72, 44, 84, 0.2) !important;
  padding-bottom: 6px !important;
  margin-bottom: 4px !important;
}

/* Style pour les options sélectionnées et le filtre "en stock" */
.filter-group__item--active span,
.tag--active .tag__text,
span:contains("en stock"),
.active-filter .tag__text,
.active-filters .tag__text {
  color: #482c54 !important;
  font-weight: 600 !important;
}

/**
 * CORRECTIONS POUR LES FILTRES EN TÊTE DE PAGE
 * ------------------------------------------
 * Résolution du problème d'empilement des filtres
 */

/* Conteneur principal des filtres actifs */
.active-filters,
.active-filter-tags,
.active-tags,
.selected-tags,
.selected-filters {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  position: relative !important;
  top: 0 !important;
  left: 0 !important;
}

/* Style des boutons de filtre actifs */
.active-filters .tag,
.active-filter-tags .tag,
.active-tags .tag,
.selected-tags .tag,
.selected-filters .tag {
  background-color: #482c54 !important;
  color: white !important;
  border-radius: 4px !important;
  padding: 4px 6px !important;
  margin: 2px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  line-height: 1.2 !important;
  font-size: 13px !important; /* AJUSTÉ: Taille réduite pour tenir sur une ligne */
  position: relative !important;
  top: 0 !important;
  left: 0 !important;
  float: none !important;
  border: none !important;
  overflow: visible !important;
  white-space: nowrap !important; /* AJOUTÉ: Empêche le retour à la ligne */
}

/* Texte des filtres actifs */
.active-filters .tag__text,
.active-filter-tags .tag__text,
.active-tags .tag__text,
.selected-tags .tag__text,
.selected-filters .tag__text {
  color: white !important;
  font-weight: normal !important;
  margin-right: 4px !important;
  letter-spacing: -1px !important; /* AJUSTÉ: Espacement très resserré pour les grandes tailles */
  display: inline-block !important;
  line-height: 1 !important;
  position: relative !important;
  top: 0 !important;
  font-size: 13px !important; /* AJOUTÉ: Taille légèrement réduite */
}

/* Style spécifique pour les grandes tailles dans les filtres actifs */
.active-filters .tag:contains("EU: 42") .tag__text,
.active-filters .tag:contains("EU: 43") .tag__text,
.active-filters .tag:contains("EU: 44") .tag__text,
.active-filters .tag:contains("EU: 45") .tag__text,
.active-filters .tag:contains("EU: 46") .tag__text,
.active-filters .tag:contains("EU: 47") .tag__text,
.active-filter-tags .tag:contains("EU: 42") .tag__text,
.active-filter-tags .tag:contains("EU: 43") .tag__text,
.active-filter-tags .tag:contains("EU: 44") .tag__text,
.active-filter-tags .tag:contains("EU: 45") .tag__text,
.active-filter-tags .tag:contains("EU: 46") .tag__text,
.active-filter-tags .tag:contains("EU: 47") .tag__text {
  letter-spacing: -1.2px !important; /* AJOUTÉ: Encore plus resserré pour les très grandes tailles */
  font-size: 12.5px !important; /* AJOUTÉ: Taille encore plus réduite pour les grandes tailles */
}

/* Bouton de suppression (croix) */
.active-filters .tag__remove,
.active-filter-tags .tag__remove,
.active-tags .tag__remove,
.selected-tags .tag__remove,
.selected-filters .tag__remove {
  background: none !important;
  border: none !important;
  color: white !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  height: 16px !important;
  position: relative !important;
  opacity: 0.8 !important;
  align-self: center !important;
}

/* Symbole X pour la croix - centré verticalement */
.active-filters .tag__remove:before,
.active-filter-tags .tag__remove:before,
.active-tags .tag__remove:before,
.selected-tags .tag__remove:before,
.selected-filters .tag__remove:before {
  content: "×" !important;
  font-size: 16px !important;
  line-height: 1 !important;
  display: inline-block !important;
  position: relative !important;
  top: -1px !important;
  text-align: center !important;
  width: 100% !important;
}

/* Solution alternative pour le centrage vertical de la croix */
.active-filters .tag,
.active-filter-tags .tag,
.active-tags .tag,
.selected-tags .tag,
.selected-filters .tag {
  display: inline-flex !important;
  align-items: center !important;
}

/* Masquer tout autre élément qui pourrait causer des problèmes */
.active-filters .tag__remove svg,
.active-filter-tags .tag__remove svg,
.active-tags .tag__remove svg,
.selected-tags .tag__remove svg,
.selected-filters .tag__remove svg {
  display: none !important;
}

/**
 * AJUSTEMENTS POUR CASES À COCHER ET MISE EN PAGE
 * --------------------------------------------
 */

/* Assurer que les cases à cocher sont visibles et bien alignées */
input[type="checkbox"] {
  margin-right: 5px !important;
  transform: scale(0.95) !important;
  vertical-align: middle !important;
  display: inline-block !important;
  position: relative !important;
}

/* Amélioration de la zone des filtres */
.sidebar-block,
.collection-sidebar__group,
.collection-filters__wrapper,
.filter-group {
  margin-bottom: 15px !important;
  width: 100% !important;
  max-width: none !important;
  position: relative !important;
}

/* Réinitialisation des styles potentiellement problématiques */
.filter-group__item,
.tag-list .tag,
.filter-item {
  position: relative !important;
  display: block !important;
  margin: 2px 0 !important;
  padding: 2px 0 !important;
  width: 100% !important;
  clear: both !important;
  float: none !important;
  white-space: normal !important;
  overflow: visible !important;
}

/**
 * STYLE POUR EN STOCK
 * -----------------
 */

/* Style spécifique pour le filtre "en stock" dans la liste */
.filter-group__item span:contains("en stock"),
.tag__text:contains("en stock"),
.filter-item:contains("en stock"),
label:contains("en stock") {
  color: #482c54 !important;
  font-weight: 600 !important;
}

/**
 * OPTIMISATIONS SUPPLÉMENTAIRES POUR LES LISTES DE TAILLES
 * ------------------------------------------------------
 */

/* Compact les listes d'options */
.filter-group__list,
.tag-list {
  line-height: 1.1 !important;
}

/* Optimisation des parenthèses dans les tailles */
.filter-group__item span:contains("("),
.tag__text:contains("(") {
  letter-spacing: -0.5px !important;
}

/**
 * OPTIMISATIONS SPÉCIFIQUES POUR MOBILE
 * ------------------------------------
 * Styles pour garantir un affichage compact sur les petits écrans
 */

/* Media query pour les appareils mobiles */
@media screen and (max-width: 768px) {
  /* Réduction extrême de l'espacement vertical pour les options de taille */
  .taille-filter .filter-group__item,
  #FilterTaille .filter-group__item,
  .taille-group .filter-group__item,
  div[data-section="taille"] .filter-group__item,
  .filter-group__item,
  .tag-list .tag,
  .taille-option,
  [aria-label*="taille"] .filter-group__item,
  #filter-taille .filter-group__item,
  .collection-sidebar .tag-list .tag,
  .collection-sidebar label,
  .sidebar-block label {
    font-size: 13px !important;
    padding: 0 !important;
    margin: 0 0 1px 0 !important;
    line-height: 1.1 !important;
  }
  
  /* Espacement ultra-compact pour les listes de filtres */
  .filter-group__list,
  .tag-list,
  .filter-options,
  .filter-items {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  
  /* Réduction de l'espacement des titres */
  .taille-heading,
  div[data-group="taille"] .filter-group__header,
  #filter-taille .filter-group__header,
  div[data-section="taille"] h3,
  .collection-sidebar h3 {
    padding-bottom: 3px !important;
    margin-bottom: 2px !important;
    font-size: 14px !important;
  }
  
  /* Optimisation de l'espace entre les filtres */
  .sidebar-block,
  .collection-sidebar__group,
  .collection-filters__wrapper,
  .filter-group {
    margin-bottom: 10px !important;
    padding-bottom: 5px !important;
  }
  
  /* Optimisation des cases à cocher sur mobile */
  input[type="checkbox"] {
    margin-right: 3px !important;
    transform: scale(0.9) !important;
  }
  
  /* Affichage compact des filtres actifs en haut */
  .active-filters .tag,
  .active-filter-tags .tag,
  .active-tags .tag,
  .selected-tags .tag,
  .selected-filters .tag {
    padding: 3px 5px !important;
    margin: 1px !important;
    font-size: 12px !important;
  }
  
  /* Espacement réduit pour les textes avec parenthèses sur mobile */
  .filter-group__item span:contains("("),
  .tag__text:contains("(") {
    letter-spacing: -0.6px !important;
    font-size: 12px !important;
  }
  
  /* Optimisation extrême pour les descriptions de tailles */
  .eu-uk-us-size,
  .filter-group__item span:contains("/"),
  .tag__text:contains("/") {
    letter-spacing: -0.7px !important;
    font-size: 12px !important;
  }
  
  /* Réduire la hauteur du container de filtres */
  .collection-sidebar {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  
  /* Optimiser l'espacement des accords */
  .collection-sidebar .accordion-content {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}

/**
 * CORRECTION POUR LES FILTRES ACTIFS EN HAUT DE PAGE
 * -------------------------------------------------
 * Ce code cible UNIQUEMENT les filtres violets en haut de page
 */

/* Cible spécifiquement les filtres violets en haut de page */
.active-filters-wrapper .tag,
.active-filter-tags .tag,
.active-tags-wrapper .tag,
.filter-tag--active,
.collection-filters__active-filter,
div[data-section="activeFilters"] .tag,
.tag[data-tag-active="true"],
.active-filter-tag,
.selected-filter,
button.tag.tag--remove {
  background-color: #482c54 !important;
  color: white !important;
  border-radius: 4px !important;
  padding: 3px 5px !important;
  margin: 2px !important;
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
  overflow: visible !important;
  font-size: 12px !important;
  transform: scale(0.95) !important;
}

/* Texte des filtres actifs en haut - espacement ultra-compressé */
.active-filters-wrapper .tag__text,
.active-filter-tags .tag__text,
.active-tags-wrapper .tag__text,
.filter-tag--active .tag__text,
.collection-filters__active-filter .tag__text,
div[data-section="activeFilters"] .tag__text,
.tag[data-tag-active="true"] .tag__text,
.active-filter-tag .tag__text,
.selected-filter .tag__text,
button.tag.tag--remove .tag__text {
  letter-spacing: -2px !important;
  font-size: 11px !important;
  word-spacing: -2px !important;
  color: white !important;
}

/* Bouton croix pour les filtres en haut */
.active-filters-wrapper .tag__remove,
.active-filter-tags .tag__remove,
.active-tags-wrapper .tag__remove,
.filter-tag--active .tag__remove,
.collection-filters__active-filter .tag__remove,
div[data-section="activeFilters"] .tag__remove,
.tag[data-tag-active="true"] .tag__remove,
.active-filter-tag .tag__remove,
.selected-filter .tag__remove,
button.tag.tag--remove .tag__remove {
  width: 12px !important;
  height: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 16px !important;
  margin-left: 2px !important;
}

/* Version spécifique pour mobile */
@media screen and (max-width: 768px) {
  /* Filtres en haut encore plus compressés sur mobile */
  .active-filters-wrapper .tag,
  .active-filter-tags .tag,
  .active-tags-wrapper .tag,
  .filter-tag--active,
  .collection-filters__active-filter,
  div[data-section="activeFilters"] .tag,
  .tag[data-tag-active="true"],
  .active-filter-tag,
  .selected-filter,
  button.tag.tag--remove {
    padding: 2px 4px !important;
    margin: 1px !important;
    transform: scale(0.9) !important;
  }
  
  /* Texte des filtres encore plus compressé sur mobile */
  .active-filters-wrapper .tag__text,
  .active-filter-tags .tag__text,
  .active-tags-wrapper .tag__text,
  .filter-tag--active .tag__text,
  .collection-filters__active-filter .tag__text,
  div[data-section="activeFilters"] .tag__text,
  .tag[data-tag-active="true"] .tag__text,
  .active-filter-tag .tag__text,
  .selected-filter .tag__text,
  button.tag.tag--remove .tag__text {
    letter-spacing: -2.5px !important;
    font-size: 10px !important;
    word-spacing: -3px !important;
  }
}

@media only screen and (max-width: 768px) {
  [data-type_product_capitalize=true] .grid-product__title {
    letter-spacing: 0.1em !important;  /* Réduit de moitié */
  }

/**
 * PERSONNALISATIONS FUTURES
 * -----------------------
 * Espace réservé pour les futurs styles CSS personnalisés.
 * 
 * Sections potentielles:
 * - Mise en page des pages produits
 * - Styles du programme de fidélité
 * - Améliorations des pages de collection
 */

