/* ===============================
   RESET & BASE
================================= */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Segoe UI', sans-serif;
  background-color: #121212;
  color: #f5f5f5;
  line-height: 1.6;
}

/* ===============================
   TYPOGRAPHY
================================= */
h1, h2, h3, h4, h5, h6 {
  font-weight: 600;
  margin-bottom: 1rem;
  color: #ffffff;
}

p {
  margin-bottom: 1rem;
  color: #ccc;
}

/* ===============================
   LAYOUT
================================= */
.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}

/* ===============================
   NAVIGATION
================================= */
nav {
  background-color: #1e1e1e;
  padding: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

nav a {
  color: #f5f5f5;
  text-decoration: none;
  margin-right: 1rem;
  transition: color 0.3s ease;
}

nav a:hover {
  color: #e50914;
}

/* ===============================
   BUTTONS
================================= */
button, .btn {
  background-color: #e50914;
  color: white;
  padding: 0.6rem 1.2rem;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

button:hover, .btn:hover {
  background-color: #b00610;
}

/* ===============================
   PRODUCT CARD
================================= */
.product-card {
  background-color: #1e1e1e;
  border: 1px solid #333;
  border-radius: 8px;
  padding: 1rem;
  margin-bottom: 2rem;
  transition: transform 0.3s ease;
}

.product-card:hover {
  transform: scale(1.02);
}

.product-card img {
  max-width: 100%;
  border-radius: 4px;
}

.product-card h3 {
  color: #fff;
  margin-top: 1rem;
}

.product-card p {
  color: #ccc;
}

/* ===============================
   FORMS
================================= */
input, textarea, select {
  width: 100%;
  padding: 0.5rem;
  margin-bottom: 1rem;
  background-color: #1e1e1e;
  color: #f5f5f5;
  border: 1px solid #333;
  border-radius: 4px;
}

input:focus, textarea:focus, select:focus {
  outline: none;
  border-color: #e50914;
}

/* ===============================
   FOOTER
================================= */
footer {
  background-color: #1e1e1e;
  color: #ccc;
  text-align: center;
  padding: 2rem 0;
  margin-top: 4rem;
  border-top: 1px solid #333;
}
/* === HEADER TOP RACING === */
.header-top {
  background-color: #1e1e1e;
  color: #f5f5f5;
  padding: 10px 0;
  border-bottom: 1px solid #333;
  font-family: 'Segoe UI', sans-serif;
}

.header-top a {
  color: #f5f5f5;
  text-decoration: none;
  transition: color 0.3s ease;
}

.header-top a:hover {
  color: #e50914;
}

.contact-link span {
  font-weight: bold;
  color: #e50914;
}

.header-block__icon {
  font-size: 20px;
  margin-right: 5px;
  color: #f5f5f5;
  transition: color 0.3s ease;
}

.header-block__action-btn:hover .header-block__icon {
  color: #e50914;
}

.header-block__title {
  font-weight: 500;
  font-size: 14px;
}

.header-block__badge {
  background-color: #e50914;
  color: #fff;
  font-size: 12px;
  padding: 2px 6px;
  border-radius: 12px;
  margin-left: 5px;
}
.header-block__title {
  color: #ffffff !important;
}
.header-top {
  background-image: url('/themes/child_hummingbird/assets/texturevoilecarbone5.PNG');
  background-repeat: repeat;
  background-size: cover;
  color: #f5f5f5;
  padding: 10px 0;
  border-bottom: 1px solid #333;
  font-family: 'Segoe UI', sans-serif;
}

.header-top a {
  color: #ffffff;
  text-decoration: none;
  transition: color 0.3s ease;
}

.header-top a:hover {
  color: #e50914;
}

.contact-link span {
  font-weight: bold;
  color: #e50914;
}

.header-block__icon {
  font-size: 20px;
  margin-right: 5px;
  color: #f5f5f5;
  transition: color 0.3s ease;
}

.header-block__action-btn:hover .header-block__icon {
  color: #e50914;
}

.header-block__title {
  color: #ffffff !important;
  font-weight: 500;
  font-size: 14px;
}

.header-block__badge {
  background-color: #e50914;
  color: #fff;
  font-size: 12px;
  padding: 2px 6px;
  border-radius: 12px;
  margin-left: 5px;
}
.block-social {
  background-image: url('/themes/child_hummingbird/assets/texturevoilecarbone5.PNG');
  background-repeat: repeat;
  background-size: cover;
  padding: 20px;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
  color: #ffffff;
}

.block-social a {
  color: #ffffff;
  transition: color 0.3s ease, transform 0.3s ease;
}

.block-social a:hover {
  color: #e50914;
  transform: scale(1.1);
}

.block-social svg {
  width: 32px;
  height: 32px;
  fill: currentColor;
}
.email-subscription {
  background-image: url('/themes/child_hummingbird/assets/texturevoilecarbone5.PNG');
  background-repeat: repeat;
  background-size: cover;
  padding: 30px 0;
  color: #ffffff;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
}

.email-subscription__label {
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
}

.email-subscription__content__inputs input[type="email"] {
  background-color: rgba(0, 0, 0, 0.6);
  border: 1px solid #555;
  color: #fff;
  padding: 10px;
  margin-right: 10px;
  width: 60%;
}

.email-subscription__content__inputs input[type="email"]::placeholder {
  color: #ccc;
}

.email-subscription__content__inputs input[type="submit"] {
  background-color: #e50914;
  border: none;
  color: #fff;
  padding: 10px 20px;
  font-weight: bold;
  transition: background-color 0.3s ease;
}

.email-subscription__content__inputs input[type="submit"]:hover {
  background-color: #ff2a2a;
}

.email-subscription__content__infos p {
  font-size: 13px;
  color: #ddd;
  margin-top: 10px;
}
}
.product-miniature__title {
  color: #1a1a1a; /* gris très foncé, presque noir */
}
.product-miniature__title {
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.product-miniature__title {
  font-family: 'Orbitron', sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
  color: #1a1a1a;
}
.category-tree__item__link {
  color: #ffffff !important; /* blanc par défaut */
  transition: color 0.3s ease;
}

.category-tree__item__link:hover {
  color: #ff0000 !important; /* rouge au survol */
}
.left-block__title__link {
  color: #ffffff !important; /* blanc par défaut */
  transition: color 0.3s ease;
}

.left-block__title__link:hover {
  color: #ff0000 !important; /* rouge au survol */
}
.main-menu__tree__link {
  color: #000000 !important; /* noir par défaut */
  transition: color 0.3s ease;
}

.main-menu__tree__link:hover {
  color: #ff0000 !important; /* rouge au survol */
}
.footer__block__content-list {
  text-align: left;
  padding-left: 0;
  list-style-position: inside;
}
.footer__block__content-contact {
  text-align: left;
}

.contact__infos,
.contact__phone,
.contact__email {
  text-align: left;
  display: block;
  margin-bottom: 8px;
}
@media (max-width: 768px) {
  .footer__block__content {
    flex-direction: column;
    text-align: left;
  }

  .contact__phone,
  .contact__email {
    font-size: 16px;
  }
}
.header-block__icon {
  display: inline-block;
  font-size: 24px;
  color: #000; /* ou une autre couleur visible */
  cursor: pointer;
}
.menu__link {
  color: #fff !important;
}
.main-menu__title {
  color: red !important;
}
.email-subscription {
  border-bottom: 5px solid #e60000; /* rouge vif, épaisseur augmentée */
  margin-bottom: 0;
  padding-bottom: 1rem;
}

.block-social {
  padding-top: 1.5rem;
}
.page-footer {
  display: none !important;
}
.input-group .form-control,
.input-group .btn {
  height: 48px; /* ou la hauteur exacte des boutons */
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  box-sizing: border-box;
}
.quantity-selector {
  display: flex;
  align-items: center;
  gap: 8px;
}

.input-group.flex-nowrap {
  display: flex;
  align-items: center;
  height: 48px;
}

.input-group.flex-nowrap .btn {
  width: 48px;
  height: 48px;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5rem;
}

.input-group.flex-nowrap .form-control {
  height: 48px;
  text-align: center;
  font-size: 1.2rem;
  padding: 0 0.5rem;
  box-sizing: border-box;
}
.quantity-button .input-group {
  display: flex;
  align-items: center;
  gap: 0;
  height: 48px;
}

.quantity-button .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 48px;
  padding: 0;
  border-radius: 0;
}

.quantity-button .form-control {
  height: 100%;
  text-align: center;
  font-size: 1rem;
  padding: 0;
  margin: 0;
  border-radius: 0;
}

.quantity-button .material-icons {
  font-size: 24px;
  line-height: 1;
  margin: auto;
}

.quantity-button .spinner-border {
  width: 16px;
  height: 16px;
  margin: auto;
}
.email-subscription__label {
  color: #fff !important;
}
.section-title {
  color: #ffffff;             /* Texte blanc */
  font-size: 2rem;            /* Taille du titre */
  font-weight: normal;        /* Texte non gras */
  margin-bottom: 20px;        /* Espacement en bas */
  transition: color 0.3s ease;/* Animation fluide */
}

.section-title:hover {
  color: #b30000;             /* Rouge foncé au survol */
  cursor: pointer;            /* Curseur en main */
}

.logo {
  max-width: 100%;       /* S'adapte à la largeur du conteneur */
  height: auto;          /* Garde les proportions */
  margin-top: 5px;      /* Décale le logo vers le bas */
  margin-bottom: 5px;
}

/* ✅ Ajustement pour les petits écrans */
@media (max-width: 768px) {
  .logo {
    width: 200px;         /* Réduction de la taille */
    margin-top: 10px;     /* Plus d'espace en haut */
  }
}
.main-menu__tree__link {
  position: relative;
  display: inline-block;
  color: #ffffff;
  background-color: #000000;
  padding: 10px 20px;
  text-decoration: none;
  font-weight: bold;
  border: 2px solid #ff0000;
  overflow: hidden;
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* Effet racing : ligne rouge qui file à droite */
.main-menu__tree__link::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, #ff0000, transparent);
  transition: left 0.4s ease;
  z-index: 0;
}

/* Texte au-dessus de l'effet */
.main-menu__tree__link span {
  position: relative;
  z-index: 1;
}

/* Animation au survol */
.main-menu__tree__link:hover::before {
  left: 100%;
}

.main-menu__tree__link:hover {
  background-color: #ff0000;
  color: #ffffff;
}
/* Liens principaux du menu */
.main-menu__tree__link {
  color: #ffffff;
  background-color: transparent;
  text-decoration: none;
  font-size: 1rem;
  font-weight: normal;
  padding: 10px 15px;
  transition: color 0.3s ease;
  border: none;                /* Supprime toute bordure */
  box-shadow: none;            /* Supprime les ombres */
}

/* Survol : texte blanc, sans fond ni bordure */
.main-menu__tree__link:hover,
.main-menu__tree__link:focus {
  color: #ffffff;
  background-color: transparent;
  border: none;
  box-shadow: none;
}

/* Conteneur du sous-menu */
.menu-container {
  background-color: #111111;
  padding: 15px;
  border: none;                /* Supprime les bordures */
  box-shadow: none;            /* Supprime les ombres */
}

/* Liens du sous-menu */
.main-menu__tree__link.dropdown-item {
  color: #cccccc;
  background-color: transparent;
  padding: 8px 12px;
  display: block;
  transition: color 0.3s ease;
  border: none;
  box-shadow: none;
}

/* Survol sous-menu : texte blanc, sans fond ni cadre */
.main-menu__tree__link.dropdown-item:hover {
  color: #ffffff;
  background-color: transparent;
  border: none;
  box-shadow: none;
}
body.product-id-21 .product__col {
  background-color: #ffffff;
  color: #000000;
  padding: 20px;
  border-radius: 8px;
}
body.product-id-21 .product__col * {
  color: #000000;
}
body.product-id-20 .col-sm-6 {
  background-color: #ffffff; /* Fond blanc */
  color: #000000; /* Texte noir */
  padding: 20px; /* Optionnel : ajoute un peu d'espace intérieur */
  border-radius: 8px; /* Optionnel : coins arrondis pour un look plus doux */
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05); /* Optionnel : légère ombre */
}

body.product-id-20 .col-sm-6 * {
  color: #000000;
}
body.product-id-20 .product__col {
  background-color: #ffffff; /* Fond blanc */
  color: #000000; /* Texte noir */
  padding: 20px; /* Optionnel : espace intérieur */
  border-radius: 8px; /* Optionnel : coins arrondis */
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05); /* Optionnel : ombre douce */
}

body.product-id-20 .product__col * {
  color: #000000;
}
body.product-id-20 .img-fluid {
  background-color: #ffffff; /* Fond blanc derrière l’image */
  padding: 10px; /* Optionnel : espace autour de l’image */
  border-radius: 8px; /* Optionnel : coins arrondis */
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05); /* Optionnel : ombre douce */
}
body.product-id-20 #product-details-collapse {
  background-color: #f5f5f5; /* Gris clair */
  padding: 20px; /* Optionnel : espace intérieur */
  border-radius: 8px; /* Optionnel : coins arrondis */
}
body.product-id-20 #product-details-collapse {
  background-color: #2c2c2c; /* Gris très foncé */
  padding: 20px;
  border-radius: 8px;
  color: #ffffff; /* Texte blanc pour contraste */
}

body.product-id-20 #product-details-collapse .detail__title,
body.product-id-20 #product-details-collapse .detail__right span {
  color: #ffffff;
}
body.product-id-20 .product__details {
  background-color: #1f1f1f; /* Gris très foncé */
  padding: 20px;
  border-radius: 8px;
  color: #ffffff; /* Texte blanc pour contraste */
  list-style: none; /* Supprime les puces */
  margin: 0;
}

/* Style pour le bloc des détails du produit */
body.product-id-20 #product-details-collapse {
  background-color: #1f1f1f; /* Fond sombre */
  border-radius: 16px; /* Coins bien arrondis */
  border: 2px solid #ffffff; /* Bordure blanche */
  padding: 20px;
  color: #ffffff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); /* Ombre douce */
  overflow: hidden;
}

/* Style des lignes internes */
body.product-id-20 #product-details-collapse .detail {
  border-bottom: 1px solid #444444;
  padding: 10px 0;
}

/* Style des titres et valeurs */
body.product-id-20 #product-details-collapse .detail__title,
body.product-id-20 #product-details-collapse .detail__right span {
  color: #ffffff;
}

/* Si le titre "Détails du produit" est en dehors du bloc, on peut aussi l'arrondir */
body.product-id-20 h3.product-details-title {
  border-radius: 16px;
  background-color: #1f1f1f;
  color: #ffffff;
  padding: 10px 20px;
  display: inline-block;
}
.material-icons.zoom-in {
  color: #000000; /* Couleur noire */
}
p.h3 {
  color: #000000; /* Texte noir */
}
.product__current-price {
  color: #000000; /* Texte noir */
}
.product__tax-label {
  color: #000000; /* Texte noir */
}
p {
  color: #000000; /* Texte noir */
}
#product-availability {
  color: #000000; /* Texte noir */
}
.custom-text__content.rich-text,
.custom-text__content.rich-text p,
.custom-text__content.rich-text strong {
  color: #ffffff; /* Texte blanc */
}
#category-description,
#category-description p,
#category-description strong,
#category-description em,
#category-description h3 {
  color: #ffffff; /* Texte blanc */
}
p {
  color: #ffffff; /* Texte blanc */
}
.thumbnails__container
.thumbnail.active img {
  border: 2px solid #ff0000; /* Rouge vif à la place du bleu #0d6efd */
}

.contact__phone a:hover {
  color: #ff0000 !important;              /* Rouge vif au survol */
  
}
a[href^="mailto:"]:hover {
  color: #ff0000 !important;              /* Rouge vif au survol */
  
}
a[href^="mailto:"],
a[href^="tel:"] {
  position: relative;
  color: #000; /* Couleur par défaut */
  text-decoration: none;
  transition: color 0.4s ease;
}

a[href^="mailto:"]::after,
a[href^="tel:"]::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 0%;
  height: 2px;
  background-color: #ff0000;
  transition: width 0.4s ease;
}

a[href^="mailto"]:hover,
a[href^="tel:"]:hover {
  color: #ff0000 !important;
}

a[href^="mailto:"]:hover::after,
a[href^="tel:"]:hover::after {
  width: 100%;
}

.footer__block__content-list a {
  position: relative;
  color: #000; /* Couleur par défaut */
  text-decoration: none;
  transition: color 0.4s ease;
}

.footer__block__content-list a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0%;
  height: 2px;
  background-color: #ff0000; /* Rouge racing */
  transition: width 0.4s ease;
}

.footer__block__content-list a:hover {
  color: #ff0000 !important; /* Texte rouge au survol */
}

.footer__block__content-list a:hover::after {
  width: 100%; /* Ligne rouge qui glisse depuis la gauche */
}

span {
  color: #000000; /* Noir pur */
}
.subcategory__name {
  color: #ffffff; /* Texte blanc */
  position: relative;
  overflow: hidden;
  display: inline-block;
  padding: 8px;
  border-radius: 4px;
  transition: color 0.3s ease;
  text-align: center;
  font-weight: bold;
}

/* Animation au survol */
.subcategory:hover .subcategory__name {
  color: #ff0000; /* Rouge racing */
}

/* Pseudo-élément pour l'effet de glissement */
.subcategory__name::before {
  content: '';
  position: absolute;
  left: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 0, 0, 0.2); /* Lueur rouge comme une voiture qui passe */
  transform: skewX(-20deg);
  transition: left 0.5s ease;
  z-index: 0;
}

/* Déclenche l'effet au survol */
.subcategory:hover .subcategory__name::before {
  left: 100%;
}

/* Pour que le texte reste au-dessus */
.subcategory__name {
  z-index: 1;
}
.block-title,
.block-title + p {
  color: #ffffff !important; /* Texte blanc */
}
.header-block__badge {
  display: flex;
  align-items: center;   /* Centre verticalement */
  justify-content: center; /* Centre horizontalement */
  width: 24px;            /* Taille fixe (à ajuster selon ton design) */
  height: 24px;
  border-radius: 50%;     /* Si c’est un badge rond */
  background-color: #ff0000; /* Optionnel : fond rouge */
  color: #ffffff;         /* Optionnel : texte blanc */
  font-weight: bold;
}
.block-category h1,
.block-category h2,
.block-category h3,
.block-category p,
.block-category li {
  color: white !important;
}

.align-middle {
  color: white !important;
}
/* Style du champ de recherche */
.js-search-input {
  width: 100%;
  max-width: 400px;
  padding: 12px 16px;
  font-size: 18px;
  color: #000; /* Texte en noir */
  background-color: #fff;
  border: 2px solid #ccc;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

.js-search-input::placeholder {
  color: #666; /* Placeholder en gris foncé */
  font-style: italic;
}

/* Style de l’icône loupe */
.js-search-icon {
  font-size: 28px;
  color: #000; /* Loupe en noir */
  vertical-align: middle;
  margin-right: 8px;
  cursor: pointer;
}

/* Effet au focus */
.js-search-input:focus {
  background-color: #fff;
  border-color: #0078d7;
  box-shadow: 0 0 8px rgba(0, 120, 215, 0.4);
  outline: none;
}
.img-fluid {
  background-color: #fff; /* Fond blanc */
  border-radius: 8px; /* Optionnel : coins arrondis */
  padding: 5px; /* Optionnel : espace intérieur */
}
.product__col {
  color: #fff; /* Texte en blanc */
}

/* Pour les titres */
.product__name,
.product__availability,
.product__current-price,
.product__tax-label,
.product__minimal-quantity,
.btn,
.wishlist-button-product,
.social-sharing span,
.social-sharing a {
  color: #fff !important;
}

/* Pour les icônes Material Icons */
.material-icons {
  color: #fff !important;
}
.prices__wrapper,
.product__current-price,
.product__tax-info,
.product__tax-label {
  color: #000 !important; /* Texte en noir */
}
#product-availability,
#product-availability .material-icons {
  color: #000 !important; /* Texte et icône en noir */
}
.product-page .product__name,
.product-page .product__current-price,
.product-page .product__tax-label,
.product-page .product__availability,
.product-page .btn,
.product-page .material-icons {
  color: #fff !important; /* Texte blanc dans la fiche produit */
}
.quick-view .product__name,
.quick-view .product__current-price,
.quick-view .product__tax-label,
.quick-view .product__availability {
  color: #000 !important; /* Texte noir dans l’aperçu rapide */
}
body.page-product .product__current-price {
  color: #fff !important;
}
body.page-product .product__tax-label {
  color: #fff !important;
}
body.page-product #product-availability,
body.page-product #product-availability .material-icons {
  color: #fff !important;
}
.material-icons.search {
  color: #000 !important; /* Noir */
}
.product__col {
  background-color: #121212 !important; /* gris ultra foncé */
  color: #fff !important;
  padding: 20px;
  border-radius: 8px;
}

/* Éléments internes */
.product__col h1,
.product__col h2,
.product__col h3,
.product__col p,
.product__col li,
.product__col span,
.product__col .product__current-price,
.product__col .product__tax-label,
.product__col .product__description-short,
.product__col .product__availability,
.product__col .product__minimal-quantity {
  color: #fff !important;
}

/* Bouton "Ajouter au panier" */
.product__col .btn-primary {
  background-color: #fff !important;
  color: #121212 !important;
  border: none;
}

/* Icônes et liens */
.product__col .material-icons,
.product__col .wishlist-button-product i,
.product__col .social-sharing span,
.product__col .social-sharing a {
  color: #fff !important;
}

.product__col .social-sharing li.icon-gray a {
  color: #ccc !important;
}

.product__description {
  color: #000 !important; /* texte noir pour tout le bloc */
}

.product__description strong {
  color: #000 !important; /* texte en gras aussi en noir */
}

.product__description ul li p {
  color: #000 !important; /* texte dans les listes en noir */
}
.product__description,
.product__description p,
.product__description ul,
.product__description ul li,
.product__description ul li p,
.product__description strong,
.product__description em,
.product__description span {
  color: #000 !important;
}
.wishlist-button-product {
  background-color: #FF2E2E !important; /* rouge racing */
  border: none !important;
  border-radius: 50% !important;
  padding: 10px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 10px rgba(255, 46, 46, 0.5);
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 10;
  position: relative;
}

.wishlist-button-product i.material-icons {
  color: #fff !important;            /* icône blanche */
  font-size: 24px !important;
  line-height: 1;
}

/* Effet au survol */
.wishlist-button-product:hover {
  background-color: #B30000 !important;
  box-shadow: 0 0 12px rgba(255, 46, 46, 0.7);
}

.wishlist-button-product:hover i.material-icons {
  color: #fff !important;
}
.wishlist-button-add {
  background-color: #FF2E2E !important; /* rouge racing */
  border: none !important;
  border-radius: 50% !important;
  padding: 10px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 10px rgba(255, 46, 46, 0.5);
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  z-index: 10;
}

.wishlist-button-add i.material-icons {
  color: #fff !important;            /* icône blanche */
  font-size: 24px !important;
  line-height: 1;
}

/* Effet au survol */
.wishlist-button-add:hover {
  background-color: #B30000 !important; /* rouge foncé */
  box-shadow: 0 0 12px rgba(255, 46, 46, 0.7);
}

.wishlist-button-add:hover i.material-icons {
  color: #fff !important;
}
.product-line__title {
  color: #ffffff !important; /* texte blanc */
}
.price {
  color: #ffffff !important; /* texte blanc */
}
.form-text {
  color: #cccccc !important; /* gris clair */
  font-size: 14px;
  font-style: italic;
}
.nav-link {
  color: #ffffff !important;               /* texte blanc */
  background-color: #2A2A2A !important;     /* fond gris acier */
  border: 1px solid #FF2E2E !important;     /* bordure rouge racing */
  border-radius: 6px;
  padding: 10px 20px;
  font-weight: bold;
  text-transform: uppercase;
  transition: all 0.3s ease;
  box-shadow: 0 0 8px rgba(255, 46, 46, 0.3);
}

/* Effet au survol */
.nav-link:hover {
  background-color: #FF2E2E !important;     /* fond rouge racing */
  color: #000000 !important;                /* texte noir au survol */
  box-shadow: 0 0 12px rgba(255, 46, 46, 0.6);
}
label.form-label[for="field-id_gender"] {
  color: #ffffff !important; /* texte blanc */
}
label.form-label[for="field-firstname"] {
  color: #ffffff !important; /* texte blanc */
}
label.form-label[for="field-lastname"] {
  color: #ffffff !important; /* texte blanc */
}
label.form-label[for="field-email"] {
  color: #ffffff !important; /* texte blanc */
}
.text-muted.fst-italic {
  color: #ffffff !important; /* texte blanc */
}
label.form-label[for="field-birthday"] {
  color: #ffffff !important; /* texte blanc */
}
.fw-bold {
  color: #ffffff !important; /* texte blanc */
}
.nav-link.active {
  color: #ffffff !important;       /* texte blanc */
  font-weight: 400 !important;     /* poids normal (moins gras) */
}
.checkout__steps__text {
  color: #ffffff !important;       /* texte blanc */
  font-weight: 400 !important;     /* poids normal (non gras) */
  text-transform: none;
}
/* Labels */
.form-fields label.form-label,
.form-fields label.form-check-label {
  color: #ffffff !important; /* texte blanc */
  font-weight: 500;           /* semi-gras pour lisibilité */
}

/* Textes en gras */
.form-fields .fw-bold {
  color: #ffffff !important;
  font-weight: 500 !important;
}

/* Textes d’aide */
.form-fields .form-text {
  color: #cccccc !important; /* gris clair */
  font-style: italic;
  font-size: 14px;
}

/* Champs de formulaire */
.form-fields .form-control,
.form-fields .form-select {
  background-color: #1A1A1A;
  color: #ffffff;
  border: 1px solid #444;
}

/* Placeholder */
.form-fields .form-control::placeholder {
  color: #999999;
}

/* Checkbox */
.form-fields .form-check-input {
  accent-color: #FF2E2E; /* rouge racing */
}
.payment__list,
.payment__list label,
.payment__list span,
.payment__list p,
.payment__list h2,
.payment__list dt,
.payment__list dd {
  color: #ffffff !important; /* texte blanc */
}

/* Optionnel : fond sombre pour les blocs de paiement */
.payment__option {
  background-color: #1A1A1A;
  padding: 15px;
  border-radius: 6px;
  margin-bottom: 10px;
  border: 1px solid #444;
}

/* Texte d'information additionnelle */
.payment__definitions {
  background-color: #121212;
  padding: 15px;
  border-radius: 6px;
  border: 1px solid #333;
}

/* Boutons masqués (si jamais visibles) */
.payment__list button {
  color: #ffffff !important;
  background-color: #FF2E2E;
  border: none;
  padding: 8px 16px;
  border-radius: 4px;
}
dl dt {
  color: #000000 !important; /* texte noir */
}
.payment__definitions dt {
  color: #000000 !important; /* texte noir */
}
.payment__definitions dd {
  color: #000000 !important; /* texte noir */
}
p.fw-bold.card-subtitle.text-muted {
  color: #000000 !important; /* texte noir */
}
.card-body,
.card-body p,
.card-body .fw-bold,
.card-body .card-subtitle,
.card-body .col-md-6 {
  color: #000000 !important; /* texte noir */
}
label.form-label[for="field-email"] {
  color: #000000 !important; /* texte noir */
}
label.form-label[for="field-email"] {
  color: #ffffff !important; /* texte blanc */
}
label.form-label[for="field-password"] {
  color: #ffffff !important; /* texte blanc */
}
span {
  color: #ffffff !important; /* texte blanc */
}
#js-checkout-summary,
#js-checkout-summary p,
#js-checkout-summary span,
#js-checkout-summary a,
#js-checkout-summary .cart-summary__label,
#js-checkout-summary .cart-summary__value,
#js-checkout-summary .product-name,
#js-checkout-summary .price,
#js-checkout-summary .unit-price-cart {
  color: #000000 !important; /* texte noir */
}
span.carrier-name {
  color: #000000 !important; /* texte noir */
}
span.carrier-name {
  color: #000000 !important; /* texte noir */
}
span.delivery-option__center {
  color: #000000 !important; /* texte noir */
}
span.delivery-option__right {
  color: #000000 !important; /* texte noir */
}
#myModalLabel {
  color: #000000 !important; /* texte noir */
}
.col-sm-8.col-md-7,
.col-sm-8.col-md-7 p,
.col-sm-8.col-md-7 .product-name,
.col-sm-8.col-md-7 .product-price,
.col-sm-8.col-md-7 .product-quantity,
.col-sm-8.col-md-7 strong {
  color: #000000 !important; /* texte noir */
}
.blockcart-modal__summery,
.blockcart-modal__summery p,
.blockcart-modal__summery .label,
.blockcart-modal__summery .value,
.blockcart-modal__summery .subtotals,
.blockcart-modal__summery .shipping {
  color: #000000 !important; /* texte noir */
}
span.product-miniature__price {
  color: #000000 !important; /* texte noir */
}
.cart-detailed__totals,
.cart-detailed__totals span,
.cart-detailed__totals .cart-summary__label,
.cart-detailed__totals .cart-summary__value,
.cart-detailed__totals .js-subtotal,
.cart-detailed__totals .value,
.cart-detailed__totals small {
  color: #000000 !important; /* texte noir */
}
.product__images__modal-opener i.material-icons.zoom-in {
  color: #000000 !important; /* icône noire */
}
.product-miniature__quickview_touch i.material-icons {
  color: #000000 !important; /* icône noire */
}
.header-block__action-btn .material-icons.header-block__icon {
  color: #000000 !important; /* icône noire */
}
.breadcrumb__wrapper,
.breadcrumb__wrapper a,
.breadcrumb__wrapper span,
.breadcrumb__wrapper .breadcrumb-link,
.breadcrumb__wrapper .breadcrumb-item {
  color: #000000 !important; /* texte noir */
}
.customer-link .link-item {
  color: #000 !important;
}

.customer-link .material-icons {
  color: #000 !important;
}
.checkout__steps__step p {
  color: #000 !important;
}
p.mb-0 {
  color: #000 !important;
}
label.form-label {
  color: #fff !important;
}input[type="radio"].form-check-input {
  accent-color: #007bff; /* couleur bleue visible sur fond blanc */
  width: 18px;
  height: 18px;
  border: 2px solid #007bff;
  background-color: white;
  cursor: pointer;
}

input[type="radio"].form-check-input:checked {
  background-color: #007bff;
  box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.3);
}
.delivery-label {
  margin-left: 8px;
  font-weight: bold;
  color: #333;
}
.modal-body.text-center {
  background-color: #000; /* fond noir */
  color: #f5f5f5; /* texte clair pour contraste */
  padding: 20px;
}

.modal-body.text-center b {
  color: #ffffff; /* texte en gras bien visible */
}

.modal-body.text-center a {
  color: #00bfff; /* liens en bleu clair */
  text-decoration: underline;
}

.modal-body.text-center ul li {
  margin-bottom: 8px;
}
.discount.badge.discount {
  color: #000 !important; /* force le texte en noir */
}
.product__pack-price {
  color: white;
}
.badge.new {
  /* masque le texte original */
  color: transparent;
  position: relative;
}
.badge.new {
  position: relative;
  color: transparent;       /* masque le texte original "Neuf" */
  font-size: 14px;
  font-weight: bold;
  padding: 6px 20px;
  background-color: #007bff;
  border-radius: 12px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  text-align: center;
}

.badge.new::after {
  content: "Nouveau";       /* texte forcé */
  color: #fff;              /* couleur visible */
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); /* centre parfaitement */
}
/* ============================
/* Cache tout bouton wishlist, même s'il est réinjecté dynamiquement */
.wishlist-button-add,
.wishlist-button-product,
button[data-link-action="add-to-wishlist"],
button[class*="wishlist"] {
  /* invisibilité visuelle */
  display: inline-block !important;   /* évite les sauts de layout si le module attend l’élément */
  visibility: hidden !important;
  opacity: 0 !important;
  color: transparent !important;
  background: none !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;

  /* neutralisation d’interaction */
  pointer-events: none !important;
  cursor: default !important;

  /* neutralisation d’empreinte visuelle */
  width: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;

  /* planquer si le thème force une position */
  position: absolute !important;
  top: -9999px !important;
  left: -9999px !important;
}

/* Neutralise toute icône interne (Material Icons, SVG, pseudo-éléments) */
.wishlist-button-add i.material-icons,
.wishlist-button-product i.material-icons,
.wishlist-button-add svg,
.wishlist-button-product svg,
.wishlist-button-add::before,
.wishlist-button-add::after,
.wishlist-button-product::before,
.wishlist-button-product::after {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  content: none !important;
}

/* Cas où le thème met l’icône cœur via le texte (favorite / favorite_border) */
.wishlist-button-add i.material-icons,
.wishlist-button-product i.material-icons {
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
}

/* Si le bouton se trouve dans une zone dédiée (coin haut droit), on neutralise le conteneur */
.product-miniature .thumbnail-container .wishlist-button-add,
.product-miniature .thumbnail-container .wishlist-button-product {
  position: absolute !important;
  top: -9999px !important;
  left: -9999px !important;
}
/* Forcer la couleur et la visibilité de l’icône dans le header */
.header-block__icon.material-icons,
.header-block__icon.material-icons[aria-hidden="true"],
i.material-icons.header-block__icon {
  color: #ffffff !important;     /* blanc pur */
  fill: #ffffff !important;      /* si jamais c’est traité comme un SVG */
  opacity: 1 !important;
  visibility: visible !important;
  font-size: 24px !important;
  line-height: 1 !important;
}
/* Forcer l'icône header en blanc */
i.material-icons.header-block__icon[aria-hidden="true"] {
  color: #ffffff !important;   /* blanc pur */
  opacity: 1 !important;
  visibility: visible !important;
}

/* Si le thème applique un fill (cas rare) */
i.material-icons.header-block__icon[aria-hidden="true"]::before {
  color: #ffffff !important;
}
@@media (max-width: 767px) {
  .header-block__action-btn .header-block__title {
    display: inline-block !important;
    color: #000000 !important;         /* noir sur fond blanc */
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-shadow: none !important;
    text-indent: 0 !important;
    margin-left: 4px !important;       /* petit espace après l’icône */
  }

  .header-block__action-btn .header-block__icon {
    color: #000000 !important;
    font-size: 20px !important;
    opacity: 1 !important;
  }
}



