/* =============================================
   MAGIC DARK THEME — PrestaShop 8
   Variables & Reset
============================================= */
:root {
  --magic-black:      #0a0a0f;
  --magic-dark:       #12121a;
  --magic-card:       #16162a;
  --magic-card2:      #1e1e35;
  --magic-gold:       #c9a84c;
  --magic-gold-light: #e8c97e;
  --magic-purple:     #6a0dad;
  --magic-purple-light: #9b59b6;
  --magic-text:       #e8e8f0;
  --magic-text-muted: #9090a8;
  --magic-border:     #2a2a40;
  --font-main:        'Cinzel', 'Georgia', serif;
  --font-body:        'Raleway', 'Helvetica Neue', sans-serif;
}

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Raleway:wght@300;400;500;600&display=swap');

/* =============================================
   ÉLARGISSEMENT DU SITE — Conteneur principal
============================================= */

/* Conteneur Bootstrap principal */
.container,
#wrapper .container,
#main .container,
#content .container {
  max-width: 1480px !important;
  width: 100% !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* Header */
#header .container,
#header .header-top .container {
  max-width: 1480px !important;
}

/* Footer */
#footer .container {
  max-width: 1480px !important;
}




/* ============================================
   BASE GLOBALE
============================================= */
*, *::before, *::after { box-sizing: border-box; }

html, body,
#main, #wrapper, main,
.container, #content,
.page-content, #content-wrapper,
.page-wrapper, #left-column,
#right-column, aside,
.block-categories,
.block_content {
  background-color: var(--magic-black) !important;
  color: var(--magic-text) !important;
  font-family: var(--font-body) !important;
  line-height: 1.7;
}

a {
  color: var(--magic-gold) !important;
  text-decoration: none;
  transition: color 0.3s ease;
}
a:hover {
  color: var(--magic-gold-light) !important;
  text-shadow: 0 0 8px rgba(201,168,76,0.6);
}

.modal-body .product-cover-modal, .product-cover img {
    background: transparent !important;
}
.quickview .images-container .product-images>li.thumb-container .thumb {
    background: transparent !important;
}
/* =============================================
   HEADER
============================================= */
#header,
.header-nav,
.header-top {
  background: #000000 !important;
  border-bottom: 1px solid var(--magic-gold) !important;
  box-shadow: 0 2px 20px rgba(201,168,76,0.15) !important;
}

#top-menu > li > a,
.top-menu a {
  color: var(--magic-text) !important;
  font-family: var(--font-main) !important;
  font-size: 0.85rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 15px 18px !important;
  transition: all 0.3s ease;
}
#top-menu > li > a:hover, .top-menu a:hover {
  color: var(--magic-gold) !important;
  background: rgba(201,168,76,0.05) !important;
}

#top-menu .sub-menu, .top-menu .sub-menu ul {
  background: var(--magic-dark) !important;
  border: 1px solid var(--magic-gold) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.8) !important;
}
#top-menu .sub-menu a { color: var(--magic-text-muted) !important; }
#top-menu .sub-menu a:hover { color: var(--magic-gold) !important; }

#search_widget input {
  background: var(--magic-card) !important;
  border: 1px solid var(--magic-border) !important;
  color: var(--magic-text) !important;
  border-radius: 4px !important;
  /* padding: 8px 14px !important;*/
}
#search_widget input:focus {
  border-color: var(--magic-gold) !important;
  box-shadow: 0 0 10px rgba(201,168,76,0.2) !important;
  outline: none;
}
#search_widget input::placeholder { color: var(--magic-text-muted) !important; }

.blockcart .cart-products-count {
  background: var(--magic-gold) !important;
  color: var(--magic-black) !important;
  font-weight: 700;
  border-radius: 50%;
}

/* =============================================
   COLONNE GAUCHE CATEGORIES — CORRECTION BLANCHE
============================================= */
#left-column,
#left-column > *,
.block-categories,
.block-categories *,
.block_content,
.block_content *,
#search_filters,
#search_filters *,
.category-sub-menu,
.category-sub-menu li,
.blockcategories_extra,
nav.js-top-menu-link {
  background-color: var(--magic-black) !important;
  color: var(--magic-text) !important;
}

/* Titre bloc catégorie */
#left-column .h6,
#left-column h6,
#left-column .title_block,
.block-categories .h6,
.block-categories .title,
.block-categories > p,
.block-categories > .title_block {
  font-family: var(--font-main) !important;
  color: var(--magic-gold) !important;
  font-size: 0.85rem !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid rgba(201,168,76,0.3) !important;
  padding-bottom: 12px !important;
  margin-bottom: 15px !important;
  background: transparent !important;
}

/* Liens catégories */
.block-categories a,
.block-categories li a,
.category-sub-menu a,
#left-column a {
  color: var(--magic-text-muted) !important;
  font-size: 0.88rem !important;
  line-height: 2.2 !important;
  display: block;
  padding: 2px 0 !important;
  transition: color 0.2s, padding-left 0.2s !important;
  background: transparent !important;
}
.block-categories a:hover,
.category-sub-menu a:hover,
#left-column a:hover {
  color: var(--magic-gold) !important;
  padding-left: 6px !important;
}

/* Catégorie active */
.block-categories .current > a,
.block-categories li.current > a,
.category-sub-menu li.current > a {
  color: var(--magic-gold) !important;
  font-weight: 600 !important;
}

/* Compteur produits dans catégories */
.block-categories .count,
.category-sub-menu .count {
  color: var(--magic-text-muted) !important;
  font-size: 0.75rem !important;
  background: transparent !important;
}

/* Flèches/icônes expand */
.block-categories .collapse-icons,
.block-categories .navbar-toggler,
.block-categories [data-action] {
  color: var(--magic-text-muted) !important;
  background: transparent !important;
}

/* Bloc encadré colonne gauche */
#left-column .block {
  background: var(--magic-card) !important;
  border: 1px solid var(--magic-border) !important;
  border-radius: 8px !important;
  padding: 20px !important;
  margin-bottom: 20px !important;
}

/* Banner catégorie — zone blanche au-dessus des produits */
#category .page-header,
#category .page-header *,
.category-cover,
.category-image {
  background: var(--magic-black) !important;
}

#category .page-header h1,
#search .page-header h1 {
  font-family: var(--font-main) !important;
  color: var(--magic-gold) !important;
  letter-spacing: 3px;
  border-bottom: 1px solid rgba(201,168,76,0.3);
  padding-bottom: 15px;
}

/* Zone blanche description catégorie */
#category #js-product-list-top,
#category .category-cover + *,
#category .category-description,
#category .category-description * {
  background: var(--magic-black) !important;
  color: var(--magic-text-muted) !important;
}

/* =============================================
   CARTES PRODUITS
============================================= */

.product-miniature .thumbnail-container {
   /* background: transparent !important; */
        background: radial-gradient(circle at center, #2a2a2a 0%, #000 80%);
    border-radius: 8px;
    padding: 10px;
}

.product-miniature,
.js-product-miniature {
  background: transparent !important;
  /* border: none !important; */
  border: 1px solid rgba(201, 168, 76, 0.25) !important;
  border-radius: 8px !important;
}

.product-miniature article {
  background: var(--magic-card) !important;
  border: 1px solid var(--magic-border) !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  transition: border-color 0.3s, box-shadow 0.3s, transform 0.3s !important;
}
.product-miniature article:hover {
  border-color: var(--magic-gold) !important;
  box-shadow: 0 8px 30px rgba(201,168,76,0.2) !important;
  transform: translateY(-4px) !important;
}

.product-miniature .product-thumbnail img {
  transition: transform 0.5s ease !important;
  filter: brightness(0.9);
}
.product-miniature:hover .product-thumbnail img {
  transform: scale(1.05) !important;
  filter: brightness(1.05);
}

.product-miniature .product-description {
  background: var(--magic-card) !important;
  padding: 15px 15px 20px !important;
  flex-grow: 1;
}

.product-miniature .product-title a {
  color: var(--magic-text) !important;
  font-family: var(--font-main) !important;
  font-size: 0.88rem;
  letter-spacing: 0.5px;
  line-height: 1.4;
}
.product-miniature .product-title a:hover { color: var(--magic-gold) !important; }

.product-miniature .price,
.product-price, .price {
  color: var(--magic-gold) !important;
  font-size: 1.1rem;
  font-weight: 600;
  font-family: var(--font-main) !important;
}

.product-miniature .highlighted-informations,
.product-miniature .product-price-and-shipping {
  background: var(--magic-card) !important;
}

.products .product-miniature,
#products .product-miniature,
.featured-products .product-miniature {
  margin-bottom: 30px !important;
  padding: 0 10px !important;
}
/* .products.row, #products.row { row-gap: 30px !important; } */

.dropdown .expand-more {
    color: #c9a84c;
}

.dropdown-menu {
    background-color: transparent;
}

/* =============================================
   FICHE PRODUIT — CORRECTION TEXTE NOIR SUR BLEU
============================================= */
#product,
#product #main,
#product #wrapper,
#product .page-content,
#product #content-wrapper,
#product .product-container,
#product .row {
  background: var(--magic-black) !important;
}

/* Forcer héritage couleur sur TOUT le contenu produit */
#product .product-information,
#product .product-information *:not(button):not(.btn) {
  color: var(--magic-text) !important;
}

/* Titre H1 */
#product h1,
.product-name {
  font-family: var(--font-main) !important;
  color: var(--magic-gold) !important;
  font-size: 1.6rem !important;
  line-height: 1.3 !important;
  margin-bottom: 20px !important;
  text-shadow: 0 0 15px rgba(201,168,76,0.25) !important;
}

/* Bloc infos droite */
#product .product-information {
  background: var(--magic-card) !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 12px !important;
  padding: 30px 35px !important;
}

/* Prix */
#product .product-prices,
.current-price, .current-price span, span.price {
  color: var(--magic-gold) !important;
  font-size: 1.8rem !important;
  font-family: var(--font-main) !important;
  font-weight: 600 !important;
}
#product .product-prices {
  border-bottom: 1px solid rgba(201,168,76,0.2) !important;
  padding-bottom: 15px !important;
  margin-bottom: 20px !important;
  background: transparent !important;
}

/* Description courte — BLANC sur fond bleu foncé */
#product-description-short,
#product-description-short *,
.product-description-short,
.product-description-short *,
#product .product-description,
#product .product-description * {
  color: #ffffff !important;
  font-size: 1rem !important;
  line-height: 2 !important;
  font-family: var(--font-body) !important;
  background: transparent !important;
}

/* Zone image gauche */
#product .images-container,
#product .product-cover,
#product .product-cover img {
  background: #0f0f1a !important;
  border: 1px solid rgba(201,168,76,0.2) !important;
  border-radius: 12px !important;
}

/* Correction fond blanc dans la miniature produit */
.product-miniature .thumbnail-top,
.product-miniature .thumbnail-top a,
.product-miniature .thumbnail-top picture,
.product-miniature .thumbnail-top img,
.product-miniature .product-thumbnail {
  background-color: transparent !important;
  background: radial-gradient(circle at center, #2a2a2a 0%, #000 80%) !important;
  border-radius: 8px 8px 0 0 !important; /* arrondi seulement en haut */
}

#product .product-thumb,
.thumb-container {
  background: #0f0f1a !important;
  border: 1px solid var(--magic-border) !important;
  border-radius: 6px !important;
  overflow: hidden !important;
}
#product .product-thumb.selected,
#product .product-thumb:hover {
  border-color: var(--magic-gold) !important;
}

/* Onglets */
#product .tabs .nav-tabs {
  background: transparent !important;
  border-bottom: 2px solid rgba(201,168,76,0.3) !important;
}
#product .tabs .nav-tabs .nav-link {
  color: var(--magic-text-muted) !important;
  font-family: var(--font-main) !important;
  font-size: 0.85rem !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  background: transparent !important;
  padding: 10px 20px !important;
  transition: all 0.3s !important;
}
#product .tabs .nav-tabs .nav-link.active {
  color: var(--magic-gold) !important;
  border-bottom: 2px solid var(--magic-gold) !important;
  background: transparent !important;
}

#product .tabs .tab-content,
#product .tabs .tab-pane {
  background: var(--magic-card) !important;
  # border: 1px solid rgba(201,168,76,0.15) !important;
  border-top: none !important;
  border-radius: 0 0 12px 12px !important;
  padding: 30px !important;
}

.wishlist-button-add {
    background-color: #cb1d1d !important;
}

.wishlist-button-add i {
    color: #fff !important;
}

#product .tabs .tab-content *,
#product .tabs .tab-pane * {
  color: #e0e0f0 !important;
  font-size: 0.95rem !important;
  line-height: 1.9 !important;
}

/* Reassurance */
.product-reassurance {
  background: transparent !important;
  border: 1px solid var(--magic-border) !important;
  border-radius: 8px !important;
  padding: 5px 15px !important;
  margin-top: 20px !important;
}
.product-reassurance li,
.product-reassurance li * {
  color: #8888aa !important;
  font-size: 0.82rem !important;
  padding: 8px 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
  background: transparent !important;
}
.product-reassurance li:last-child { border-bottom: none !important; }

/* Bouton ADD TO CART */
#add-to-cart-or-refresh button.add-to-cart,
button[data-button-action="add-to-cart"] {
  background: linear-gradient(135deg, var(--magic-gold) 0%, #8a6020 100%) !important;
  border: none !important;
  color: #000000 !important;
  font-family: var(--font-main) !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 14px 35px !important;
  border-radius: 6px !important;
  box-shadow: 0 4px 20px rgba(201,168,76,0.35) !important;
  transition: all 0.3s ease !important;
}
#add-to-cart-or-refresh button.add-to-cart:hover {
  background: linear-gradient(135deg, var(--magic-gold-light) 0%, var(--magic-gold) 100%) !important;
  box-shadow: 0 6px 30px rgba(201,168,76,0.55) !important;
  transform: translateY(-2px) !important;
}

/* Ajoute ça pour mobile uniquement (PrestaShop classic utilise souvent max-width: 767px) */
@media (max-width: 767px) {
  #add-to-cart-or-refresh button.add-to-cart,
  button[data-button-action="add-to-cart"] {
    padding: 8px 16px !important;  /* Plus petit : hauteur ~8px, largeur ~16px */
    font-size: 0.75rem !important; /* Texte un peu plus petit */
    letter-spacing: 1px !important; /* Espacement réduit */
  }
}

/* 2 produits par ligne + tailles réduites sur mobile uniquement */
@media (max-width: 767px) {
  .products .js-product {
    width: 50% !important;
  }
  
  .products .products.row {
    margin: 0 -5px !important;
  }
  
  .products .js-product {
    padding: 0 5px !important;
    margin-bottom: 20px !important;
  }
  
  /* Titre réduit */
  .product-title {
    font-size: 0.85rem !important;
    line-height: 1.2 !important;
    margin-bottom: 4px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important; /* max 2 lignes */
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }
  
  /* Prix réduit */
  .product-price-and-shipping .price {
    font-size: 1rem !important;
    font-weight: 700 !important;
  }
  
  /* Étoiles reviews plus petites */
  .grade-stars {
    transform: scale(0.8) !important;
  }
}

/* ===== BADGE NOUVEAU COMPLET - Moderne Magique + Baguette 🪄 ===== */
.product-flags .product-flag.new {
  background: linear-gradient(135deg, #FFD700, #B8860B) !important;
  color: #1a1a1a !important;
  font-size: 0.7rem !important;
  font-weight: 800 !important;
  padding: 3px 10px !important;  /* +2px pour baguette */
  border-radius: 20px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  line-height: 1 !important;
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 54px !important;    /* Ajusté pour 🪄 */
  height: 22px !important;
  border: 1px solid rgba(255,255,255,0.3) !important;
  
  /* Glow DISCRET */
  box-shadow: 
    0 2px 6px rgba(255, 215, 0, 0.25),
    0 0 12px rgba(255, 215, 0, 0.15),
    inset 0 1px 0 rgba(255,255,255,0.3) !important;
  
  /* Animation subtile */
  animation: glowSubtle 3s ease-in-out infinite alternate !important;
}

@keyframes glowSubtle {
  0% { 
    box-shadow: 0 2px 6px rgba(255,215,0,0.25), 0 0 12px rgba(255,215,0,0.15); 
  }
  100% { 
    box-shadow: 0 3px 8px rgba(255,215,0,0.35), 0 0 18px rgba(255,215,0,0.25); 
  }
}

/* BAGUETTE MAGIQUE 🪄 */
.product-flags .product-flag.new::before {
  content: '🪄' !important;
  margin-right: 1px !important;
  font-size: 0.75rem !important;
}

.product-flags .product-flag.new:hover {
  animation-play-state: paused !important;
  transform: scale(1.05) !important;
  box-shadow: 
    0 4px 12px rgba(255,215,0,0.4), 
    0 0 20px rgba(255,215,0,0.3) !important;
}

/* MOBILE - Ultra compact */
@media (max-width: 767px) {
  .product-flags .product-flag.new {
    font-size: 0.6rem !important;
    padding: 1px 6px !important;
    min-width: 44px !important;
    height: 16px !important;
    box-shadow: 
      0 1px 4px rgba(255,215,0,0.2),
      0 0 8px rgba(255,215,0,0.1) !important;
  }
  
  .product-flags .product-flag.new::before {
    font-size: 0.65rem !important;
  }
}



/* Quantité */
.product-quantity #quantity_wanted,
.product-quantity .qty input {
  background: var(--magic-black) !important;
  border: 1px solid var(--magic-border) !important;
  color: var(--magic-text) !important;
  border-radius: 4px !important;
  text-align: center !important;
}
.product-quantity .btn-touchspin,
.product-quantity .input-group-btn .btn {
  background: var(--magic-card) !important;
  border: 1px solid var(--magic-border) !important;
  color: var(--magic-text) !important;
}
.product-quantity .btn-touchspin:hover {
  background: var(--magic-gold) !important;
  color: var(--magic-black) !important;
}

/* Partage social */
.social-sharing ul {
  display: flex !important;
  gap: 10px !important;
  list-style: none !important;
  padding: 0 !important;
  background: transparent !important;
}
.social-sharing li a,
.social-sharing span {
  background: var(--magic-card) !important;
  border: 1px solid var(--magic-border) !important;
  border-radius: 50% !important;
  color: var(--magic-text-muted) !important;
  transition: all 0.3s !important;
}
.social-sharing li a:hover {
  border-color: var(--magic-gold) !important;
  color: var(--magic-gold) !important;
}

/* =============================================
   PAGE CATÉGORIE
============================================= */
#category { background: var(--magic-black) !important; }

#search_filters {
  background: var(--magic-card) !important;
  border: 1px solid var(--magic-border) !important;
  border-radius: 8px;
  padding: 20px;
}
#search_filters .facet-title {
  color: var(--magic-gold) !important;
  font-family: var(--font-main) !important;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-size: 0.85rem;
}
#search_filters .facet-label a { color: var(--magic-text-muted) !important; }
#search_filters .facet-label a:hover { color: var(--magic-gold) !important; }

.products-sort-order .select-title,
.form-control-select {
  background: var(--magic-card) !important;
  border: 1px solid var(--magic-border) !important;
  color: var(--magic-text) !important;
}

.pagination .page-item .page-link {
  background: var(--magic-card) !important;
  border: 1px solid var(--magic-border) !important;
  color: var(--magic-text-muted) !important;
}
.pagination .page-item.active .page-link,
.pagination .page-item .page-link:hover {
  background: var(--magic-gold) !important;
  border-color: var(--magic-gold) !important;
  color: var(--magic-black) !important;
}

/* =============================================
   BREADCRUMB
============================================= */
.breadcrumb,
nav.breadcrumb,
.breadcrumb-wrapper,
#wrapper .breadcrumb {
  background: var(--magic-dark) !important;
  padding: 10px 15px !important;
  border-bottom: 1px solid var(--magic-border) !important;
  margin-bottom: 20px !important;
}
.breadcrumb-item a {
  color: var(--magic-text-muted) !important;
  font-size: 0.8rem;
}
.breadcrumb-item.active { color: var(--magic-gold) !important; }
.breadcrumb-item + .breadcrumb-item::before {
  color: var(--magic-border) !important;
  content: "›";
}

/* =============================================
   FORMULAIRES
============================================= */
.form-control,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
textarea, select {
  background: var(--magic-card) !important;
  border: 1px solid var(--magic-border) !important;
  color: var(--magic-text) !important;
  border-radius: 4px !important;
}
.form-control:focus, input:focus, textarea:focus, select:focus {
  border-color: var(--magic-gold) !important;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.15) !important;
  color: var(--magic-text) !important;
  outline: none !important;
}
label { color: var(--magic-text) !important; font-size: 0.85rem; }

/* =============================================
   ALERTES
============================================= */
.alert-success {
  background: rgba(201,168,76,0.1) !important;
  border: 1px solid var(--magic-gold) !important;
  color: var(--magic-gold) !important;
}
.alert-danger, .alert-warning {
  background: rgba(106,13,173,0.15) !important;
  border: 1px solid var(--magic-purple-light) !important;
  color: var(--magic-purple-light) !important;
}

/* =============================================
   PANIER
============================================= */
#cart, #order { background: var(--magic-black) !important; }
.cart-grid-body, .cart-container {
  background: var(--magic-card) !important;
  border: 1px solid var(--magic-border) !important;
  border-radius: 8px;
}
.cart-item { border-bottom: 1px solid var(--magic-border) !important; padding: 20px 0; }
.cart-item .product-name a {
  color: var(--magic-text) !important;
  font-family: var(--font-main) !important;
}
.cart-summary-line .label { color: var(--magic-text-muted) !important; }
.cart-summary-line .value { color: var(--magic-text) !important; font-weight: 600; }
.cart-summary-line.cart-total .label,
.cart-summary-line.cart-total .value {
  color: var(--magic-gold) !important;
  font-family: var(--font-main) !important;
}

/* Boutons principaux */
.btn-primary,
.checkout a,
#cart .checkout .btn {
  background: linear-gradient(135deg, var(--magic-gold) 0%, #a07030 100%) !important;
  border: none !important;
  color: var(--magic-black) !important;
  font-family: var(--font-main) !important;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  border-radius: 4px !important;
  transition: all 0.3s ease !important;
}

/* =============================================
   SECTIONS ACCUEIL
============================================= */
.carousel, #index .carousel-inner {
  border-bottom: 2px solid var(--magic-gold);
}
#index section, .featured-products, .home-section {
  background: var(--magic-black) !important;
}
section .h2, section h2,
.products-section-title, .section-title {
  font-family: var(--font-main) !important;
  color: var(--magic-gold) !important;
  font-size: 1.8rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  text-align: center;
  padding-bottom: 16px;
  margin-bottom: 40px;
}
section .h2::after, .section-title::after {
  content: '';
  display: block;
  width: 80px;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--magic-gold), transparent);
  margin: 12px auto 0;
}

/* =============================================
   FOOTER
============================================= */
#footer {
  background: linear-gradient(0deg, #000000 0%, var(--magic-dark) 100%) !important;
  border-top: 1px solid var(--magic-gold) !important;
  padding-top: 50px;
}
#footer h3, #footer h4,
.footer-container h3, .footer-container h4 {
  font-family: var(--font-main) !important;
  color: var(--magic-gold) !important;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 0.9rem;
  margin-bottom: 20px;
}
#footer ul li a, .footer-container ul li a {
  color: var(--magic-text-muted) !important;
  font-size: 0.85rem;
  line-height: 2;
  transition: color 0.3s;
}
#footer ul li a:hover { color: var(--magic-gold) !important; padding-left: 5px; }
.footer-bottom {
  border-top: 1px solid var(--magic-border) !important;
  color: var(--magic-text-muted) !important;
  font-size: 0.8rem;
  padding: 20px 0;
}

/* =============================================
   EFFETS MAGIE
============================================= */
body::before {
  content: '';
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background-image:
    radial-gradient(circle, rgba(201,168,76,0.03) 1px, transparent 1px),
    radial-gradient(circle, rgba(138,0,255,0.02) 1px, transparent 1px);
  background-size: 60px 60px, 120px 120px;
  pointer-events: none;
  z-index: 0;
}

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--magic-dark); }
::-webkit-scrollbar-thumb { background: var(--magic-border); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--magic-gold); }

/* =============================================
   MOBILE
============================================= */
@media (max-width: 768px) {
  #mobile_top_menu_wrapper {
    background: var(--magic-dark) !important;
    border-right: 2px solid var(--magic-gold) !important;
  }
  #mobile_top_menu_wrapper .top-menu a {
    color: var(--magic-text) !important;
    border-bottom: 1px solid var(--magic-border) !important;
    padding: 14px 20px !important;
    font-family: var(--font-main) !important;
  }
}
/* =============================================
   QUICK VIEW — basé sur HTML réel
   Classe : .quickview sur .modal
============================================= */

/* Fond principal */
.quickview .modal-content {
  background-color: #16162a !important;
  color: #e8e8f0 !important;
  border: 1px solid rgba(201, 168, 76, 0.3) !important;
  border-radius: 12px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.8) !important;
}

/* Header */
.quickview .modal-header {
  background-color: #0f0f1a !important;
  border-bottom: 1px solid rgba(201,168,76,0.2) !important;
  border-radius: 12px 12px 0 0 !important;
  padding: 10px 20px !important;
}

/* Bouton × */
.quickview .modal-header .close {
  color: #9090a8 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
.quickview .modal-header .close:hover {
  color: #c9a84c !important;
}

/* Body */
.quickview .modal-body {
  background-color: #16162a !important;
  padding: 25px !important;
}

/* Footer */
.quickview .modal-footer {
  background-color: #0f0f1a !important;
  border-top: 1px solid rgba(201,168,76,0.2) !important;
  border-radius: 0 0 12px 12px !important;
}

/* Zone image gauche */
.quickview .images-container,
.quickview .product-cover {
  background-color: #0f0f1a !important;
  border-radius: 10px !important;
  border: 1px solid rgba(201,168,76,0.15) !important;
}

/* Vignettes */
.quickview .thumb-container {
  background-color: #0f0f1a !important;
  border: 1px solid #2a2a4a !important;
  border-radius: 6px !important;
}
.quickview .thumb.selected,
.quickview .thumb:hover {
  border-color: #c9a84c !important;
}

/* Titre h1 */
.quickview h1.h1 {
  color: #c9a84c !important;
  font-size: 1.2rem !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  margin-bottom: 15px !important;
}

/* Prix */
.quickview .current-price-value {
  color: #c9a84c !important;
  font-size: 1.6rem !important;
  font-weight: 700 !important;
}

/* Zone prix */
.quickview .product-prices {
  background: transparent !important;
  border-bottom: 1px solid rgba(201,168,76,0.2) !important;
  padding-bottom: 12px !important;
  margin-bottom: 15px !important;
}

/* Description */
.quickview #product-description-short {
  color: #c8c8e0 !important;
  font-size: 0.9rem !important;
  line-height: 1.8 !important;
  margin: 15px 0 !important;
}

/* Label Quantity */
.quickview .control-label {
  color: #9090a8 !important;
  font-size: 0.8rem !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

/* Input quantité */
.quickview #quantity_wanted {
  background-color: #0f0f1a !important;
  border: 1px solid #2a2a4a !important;
  color: #e8e8f0 !important;
  text-align: center !important;
}

/* Boutons +/- touchspin */
.quickview .btn-touchspin {
  background-color: #0f0f1a !important;
  border: 1px solid #2a2a4a !important;
  color: #9090a8 !important;
}
.quickview .btn-touchspin:hover {
  background-color: #c9a84c !important;
  color: #000 !important;
}

/* Bouton ADD TO CART */
.quickview button.add-to-cart {
  background: linear-gradient(135deg, #c9a84c 0%, #8a6020 100%) !important;
  border: none !important;
  color: #000000 !important;
  font-weight: 700 !important;
  font-size: 0.82rem !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  padding: 12px 20px !important;
  box-shadow: 0 4px 15px rgba(201,168,76,0.3) !important;
  transition: all 0.3s ease !important;
}
.quickview button.add-to-cart:hover {
  box-shadow: 0 6px 25px rgba(201,168,76,0.5) !important;
  transform: translateY(-1px) !important;
}

/* Icône panier dans le bouton */
.quickview button.add-to-cart .material-icons {
  font-size: 1rem !important;
  vertical-align: middle !important;
  margin-right: 6px !important;
}

/* Partage réseaux sociaux */
.quickview .social-sharing span {
  color: #9090a8 !important;
  font-size: 0.8rem !important;
  letter-spacing: 1px !important;
}
.quickview .social-sharing ul li a {
  background-color: #1e1e38 !important;
  border: 1px solid #2a2a4a !important;
  border-radius: 50% !important;
  transition: all 0.3s !important;
}
.quickview .social-sharing ul li a:hover {
  border-color: #c9a84c !important;
}
/* =============================================
   FICHE PRODUIT — ONGLETS Description / Details
============================================= */

/* Conteneur onglets */
.tabs {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.2) !important;
  border-radius: 10px !important;
  padding: 0 !important;
  margin-top: 20px !important;
}

/* Barre des onglets */
.tabs .nav-tabs {
  background-color: #0f0f1a !important;
  border-bottom: 1px solid rgba(201,168,76,0.2) !important;
  border-radius: 10px 10px 0 0 !important;
  padding: 0 15px !important;
}

/* Chaque onglet */
.tabs .nav-tabs .nav-item .nav-link {
  background-color: transparent !important;
  color: #9090a8 !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  padding: 14px 20px !important;
  font-size: 0.82rem !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  transition: all 0.3s !important;
}

/* Onglet hover */
.tabs .nav-tabs .nav-item .nav-link:hover {
  color: #c9a84c !important;
  border-bottom-color: rgba(201,168,76,0.4) !important;
}

/* Onglet actif */
.tabs .nav-tabs .nav-item .nav-link.active {
  background-color: transparent !important;
  color: #c9a84c !important;
  border-bottom: 2px solid #c9a84c !important;
}

/* Contenu des onglets */
.tabs .tab-content {
  background-color: #16162a !important;
  padding: 25px !important;
  border-radius: 0 0 10px 10px !important;
}

/* Texte description */
.tabs .product-description,
.tabs .product-description p,
.tabs .product-description b,
.tabs .product-description i {
  color: #c8c8e0 !important;
  font-size: 0.95rem !important;
  line-height: 1.9 !important;
  background: transparent !important;
}

/* Onglet Product Details — labels */
.tabs .label {
  color: #9090a8 !important;
  font-size: 0.8rem !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  margin-right: 8px !important;
}

/* Onglet Product Details — valeurs */
.tabs .product-manufacturer span,
.tabs .product-reference span,
.tabs .product-quantities span {
  color: #e8e8f0 !important;
  font-size: 0.9rem !important;
}

/* Lien marque */
.tabs .product-manufacturer a {
  color: #c9a84c !important;
  text-decoration: none !important;
  transition: color 0.3s !important;
}
.tabs .product-manufacturer a:hover {
  color: #e0c070 !important;
}

/* Lignes séparatrices entre infos */
.tabs .product-manufacturer,
.tabs .product-reference,
.tabs .product-quantities {
  padding: 8px 0 !important;
  border-bottom: 1px solid rgba(201,168,76,0.1) !important;
}
.tabs .product-quantities {
  border-bottom: none !important;
}
/* =============================================
   AVIS PRODUITS — productcomments
============================================= */

/* Conteneur section avis */
#product-comments-list-header,
.product-comments-additional-info,
.product-comment-list,
#product-comments-list,
.comments-pagination,
#comment-form,
.grade-stars,
.product-comment-list-item {
  background-color: #16162a !important;
  color: #c8c8e0 !important;
}

/* Message "No customer reviews" */
#empty-product-comment {
  background-color: #16162a !important;
  color: #9090a8 !important;
  font-style: italic !important;
  font-size: 0.9rem !important;
  padding: 20px !important;
  text-align: center !important;
  border: 1px dashed rgba(201,168,76,0.2) !important;
  border-radius: 8px !important;
}

/* Titre "Reviews" */
#product-comments-list-header h3,
.product-comments-additional-info h3,
section.product-comments h2,
section.product-comments h3 {
  color: #c9a84c !important;
  font-size: 1rem !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid rgba(201,168,76,0.2) !important;
  padding-bottom: 10px !important;
}

/* Bouton "Write a review" */
.product-comments-additional-info .btn,
#product-comments-list-header .btn {
  background: linear-gradient(135deg, #c9a84c 0%, #8a6020 100%) !important;
  border: none !important;
  color: #000 !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  padding: 10px 20px !important;
}

/* Chaque avis */
.product-comment-list-item {
  border-bottom: 1px solid rgba(201,168,76,0.1) !important;
  padding: 15px 0 !important;
}

/* =============================================
   MINI-PANIER — header haut à droite
============================================= */

/* Icône + texte Cart */
.blockcart .header {
  background: transparent !important;
  color: #c8c8e0 !important;
  cursor: pointer !important;
  transition: color 0.3s !important;
}
.blockcart .header:hover {
  color: #c9a84c !important;
}
.blockcart .header i.shopping-cart {
  color: #c9a84c !important;
}
.blockcart .header .cart-products-count {
  color: #9090a8 !important;
  font-size: 0.85rem !important;
}

/* Dropdown du panier (quand actif) */
.blockcart .cart-preview.active .dropdown-content,
.blockcart .popover,
.cart-preview .cart-detailed-totals,
.cart-preview .cart-content,
.cart-preview .cart-content-btn {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  border-radius: 10px !important;
  color: #e8e8f0 !important;
}

/* Produits dans le dropdown panier */
.cart-preview .product-name,
.cart-preview .product-price,
.cart-preview .cart-products-count {
  color: #e8e8f0 !important;
}

/* Sous-total */
.cart-preview .cart-subtotals,
.cart-preview .cart-totals {
  background: transparent !important;
  border-top: 1px solid rgba(201,168,76,0.2) !important;
  color: #c9a84c !important;
}

/* Bouton Checkout dans le dropdown */
.cart-preview .cart-content-btn .btn-primary,
.cart-preview .btn-primary {
  background: linear-gradient(135deg, #c9a84c 0%, #8a6020 100%) !important;
  border: none !important;
  color: #000 !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  width: 100% !important;
}

/* Bouton "View cart" */
.cart-preview .cart-content-btn .btn-secondary {
  background: transparent !important;
  border: 1px solid rgba(201,168,76,0.4) !important;
  color: #c9a84c !important;
  font-weight: 600 !important;
  letter-spacing: 1px !important;
  border-radius: 6px !important;
  width: 100% !important;
  margin-bottom: 8px !important;
}
.cart-preview .cart-content-btn .btn-secondary:hover {
  background: rgba(201,168,76,0.1) !important;
}
/* Panier en haut à droite */
#_desktop_cart .blockcart {
  background: transparent !important;
}

/* Alignement propre du mini-panier */
#_desktop_cart .blockcart .header {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;              /* espace entre icône et texte */
  padding: 0 0 0 4px !important;    /* pas de padding vertical */
  line-height: 1 !important;
}

/* Icône panier */
#_desktop_cart .blockcart .header i.shopping-cart {
  font-size: 18px !important;
  line-height: 1 !important;
}

/* Texte "Cart" et compteur sur la même ligne */
#_desktop_cart .blockcart .header .hidden-sm-down,
#_desktop_cart .blockcart .header .cart-products-count {
  display: inline-block !important;
  line-height: 1 !important;
  margin-left: 2px !important;
}

/* Hover */
#_desktop_cart .blockcart .header:hover {
  background: #16162a !important;
  color: #f4e4a0 !important;
}
/* Message "No customer reviews for the moment." */
#empty-product-comment {
  background: #16162a !important;
  color: #9090a8 !important;
  border: 1px dashed rgba(201,168,76,0.3) !important;
  border-radius: 8px !important;
  padding: 20px !important;
  text-align: center !important;
}
/* =============================================
   MODALE "Product added to cart"
   (id : #blockcart-modal)
============================================= */

/* Fond + bordures */
#blockcart-modal .modal-content {
  background-color: #16162a !important;
  color: #e8e8f0 !important;
  border-radius: 12px !important;
  border: 1px solid rgba(201,168,76,0.35) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.85) !important;
}

/* Header */
#blockcart-modal .modal-header {
  background-color: #0f0f1a !important;
  border-bottom: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 12px 12px 0 0 !important;
  padding: 12px 24px !important;
}

/* Titre */
#blockcart-modal .modal-header .modal-title {
  color: #c9a84c !important;
  font-size: 0.9rem !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

/* Icône check + bouton fermer */
#blockcart-modal .modal-header .material-icons,
#blockcart-modal .modal-header .close {
  color: #c9a84c !important;
}
#blockcart-modal .modal-header .close {
  opacity: 1 !important;
  text-shadow: none !important;
}

/* Body */
#blockcart-modal .modal-body {
  background-color: #16162a !important;
  padding: 24px 24px 20px !important;
}

/* Colonne gauche produit */
#blockcart-modal .divide-right {
  border-right: 1px solid rgba(201,168,76,0.15) !important;
}
#blockcart-modal .product-image {
  background-color: #0f0f1a !important;
  border-radius: 10px !important;
}

/* Nom produit + prix */
#blockcart-modal .product-name {
  color: #c9a84c !important;
  font-size: 1.05rem !important;
  line-height: 1.4 !important;
}
#blockcart-modal .product-price {
  color: #c9a84c !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
}

/* Texte quantité */
#blockcart-modal .product-quantity {
  color: #c8c8e0 !important;
}

/* Colonne droite (récap panier) */
#blockcart-modal .cart-content {
  background-color: #11111f !important;
  border-radius: 10px !important;
  padding: 18px 20px !important;
}

/* Lignes de total */
#blockcart-modal .cart-products-count,
#blockcart-modal .cart-content p {
  color: #c8c8e0 !important;
}
#blockcart-modal .cart-content .label {
  color: #9090a8 !important;
  text-transform: uppercase !important;
  font-size: 0.8rem !important;
  letter-spacing: 1px !important;
}
#blockcart-modal .cart-content .value,
#blockcart-modal .cart-content .subtotal,
#blockcart-modal .cart-content .shipping,
#blockcart-modal .cart-content .product-total {
  color: #e8e8f0 !important;
}

/* Total (tax incl.) mis en avant */
#blockcart-modal .product-total {
  background-color: #16162a !important;
  border-radius: 6px !important;
  padding: 8px 10px !important;
  margin-top: 8px !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
}

/* Taxes */
#blockcart-modal .product-tax {
  color: #9090a8 !important;
  font-size: 0.85rem !important;
}

/* Boutons */
#blockcart-modal .cart-content-btn {
  margin-top: 18px !important;
  text-align: right !important;
}

#blockcart-modal .cart-content-btn .btn-secondary {
  background: transparent !important;
  border: 1px solid rgba(201,168,76,0.4) !important;
  color: #c9a84c !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  padding: 10px 18px !important;
  margin-right: 8px !important;
}
#blockcart-modal .cart-content-btn .btn-secondary:hover {
  background: rgba(201,168,76,0.12) !important;
}

#blockcart-modal .cart-content-btn .btn-primary {
  background: linear-gradient(135deg, #c9a84c 0%, #8a6020 100%) !important;
  border: none !important;
  color: #000 !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  padding: 10px 24px !important;
  box-shadow: 0 4px 16px rgba(201,168,76,0.35) !important;
}
#blockcart-modal .cart-content-btn .btn-primary .material-icons {
  font-size: 1rem !important;
  margin-right: 6px !important;
}
/* =============================================
   PAGE PANIER / CART
============================================= */

/* Carte principale de gauche */
.cart-grid-body .cart-container {
  background-color: #16162a !important;
  border-radius: 10px !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  color: #e8e8f0 !important;
}

/* Titre "Shopping Cart" */
.cart-grid-body .cart-container h1.h1 {
  color: #c9a84c !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}

/* Ligne produit */
.cart-items .cart-item {
  border-bottom: 1px solid rgba(201,168,76,0.15) !important;
}
.cart-items .product-line-info .label,
.cart-items .product-price .price,
.cart-items .product-price strong {
  color: #e8e8f0 !important;
}

/* Input quantité dans le panier */
.cart-items .bootstrap-touchspin .form-control {
  background-color: #0f0f1a !important;
  border: 1px solid #2a2a4a !important;
  color: #e8e8f0 !important;
}
.cart-items .btn-touchspin {
  background-color: #0f0f1a !important;
  border: 1px solid #2a2a4a !important;
  color: #9090a8 !important;
}

/* Lien "Continue shopping" */
.cart-grid-body a.label {
  color: #c9a84c !important;
}

/* -------- Colonne droite : résumé panier -------- */
.cart-grid-right .cart-summary {
  background-color: #16162a !important;
  border-radius: 10px !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #e8e8f0 !important;
}

/* Sous-totaux */
.cart-summary .cart-detailed-subtotals {
  background: transparent !important;
}
.cart-summary .cart-summary-line .label {
  color: #9090a8 !important;
  text-transform: uppercase !important;
  font-size: 0.8rem !important;
  letter-spacing: 1px !important;
}
.cart-summary .cart-summary-line .value {
  color: #e8e8f0 !important;
}

/* Total mis en avant */
.cart-summary-totals .cart-total .label,
.cart-summary-totals .cart-total .value {
  color: #c9a84c !important;
  font-weight: 700 !important;
}

/* Taxes */
.cart-summary-totals .cart-summary-line span.label.sub {
  color: #9090a8 !important;
}

/* Bouton "Proceed to checkout" */
.cart-grid-right .checkout .btn-primary {
  background: linear-gradient(135deg, #c9a84c 0%, #8a6020 100%) !important;
  border: none !important;
  color: #000 !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  width: 100% !important;
  box-shadow: 0 4px 16px rgba(201,168,76,0.35) !important;
}

/* Bloc reassurance sous le panier */
.blockreassurance_product,
.blockreassurance_product .block-title,
.blockreassurance_product p {
  background: transparent !important;
  color: #c8c8e0 !important;
}
/* =============================================
   FOOTER complet
============================================= */

/* Fond global du footer */
#footer,
#footer .footer-container,
#footer .container {
  background-color: #05050b !important;
  color: #e8e8f0 !important;
}

/* Bande newsletter en haut du footer */
#footer .block_newsletter {
  background-color: #16162a !important;
  border-radius: 10px !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  padding: 18px 22px !important;
  margin-bottom: 25px !important;
}
#footer #block-newsletter-label {
  color: #c9a84c !important;
  font-weight: 600 !important;
}
#footer .block_newsletter input[type="email"] {
  background-color: #0f0f1a !important;
  border: 1px solid #2a2a4a !important;
  color: #e8e8f0 !important;
}
#footer .block_newsletter input[type="email"]::placeholder {
  color: #707090 !important;
}

/* Boutons newsletter */
#footer .block_newsletter .btn.btn-primary {
  background: linear-gradient(135deg, #c9a84c 0%, #8a6020 100%) !important;
  border: none !important;
  color: #000 !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
}

/* Colonnes de liens */
#footer .links .wrapper,
#footer .block-contact,
#footer #block_myaccount_infos {
  background: transparent !important;
  color: #e8e8f0 !important;
}

/* Titres colonnes */
#footer .links .h3,
#footer .block-contact-title,
#footer #block_myaccount_infos .h3 {
  color: #c9a84c !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  font-size: 0.9rem !important;
}

/* Liens footer */
#footer a,
#footer .links a,
#footer .account-list a,
#footer .block-contact a {
  color: #c8c8e0 !important;
  text-decoration: none !important;
}
#footer a:hover {
  color: #f0d88a !important;
}

/* Texte info boutique */
#footer .block-contact,
#footer #contact-infos {
  color: #c8c8e0 !important;
}

/* Ligne copyright tout en bas */
#footer p.text-sm-center {
  color: #707090 !important;
}
#footer p.text-sm-center a {
  color: #707090 !important;
}
#footer p.text-sm-center a:hover {
  color: #c9a84c !important;
}

/* Modales wishlist (dans le footer) */
.wishlist-modal .modal-content {
  background-color: #16162a !important;
  color: #e8e8f0 !important;
  border-radius: 10px !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
}
.wishlist-modal .modal-header {
  background-color: #0f0f1a !important;
  border-bottom: 1px solid rgba(201,168,76,0.25) !important;
}
.wishlist-modal .modal-title {
  color: #c9a84c !important;
}
.wishlist-modal .btn-primary {
  background: linear-gradient(135deg, #c9a84c 0%, #8a6020 100%) !important;
  border: none !important;
  color: #000 !important;
}
.wishlist-modal .btn-secondary {
  background: transparent !important;
  border: 1px solid rgba(201,168,76,0.4) !important;
  color: #c9a84c !important;
}
/* =============================================
   PAGE CATÉGORIE — header + sous-catégories (version complète)
============================================= */

/* Header catégorie */
#js-product-list-header .block-category {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 10px !important;
  margin-bottom: 20px !important;
}

/* Titre catégorie */
.block-category .h1 {
  color: #c9a84c !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  font-size: 1.6rem !important;
}

/* Description catégorie */
.block-category #category-description {
  color: #c8c8e0 !important;
  background: transparent !important;
}

/* Image cover catégorie */
.block-category .category-cover {
  background-color: #0f0f1a !important;
  border-radius: 8px !important;
  border: 1px solid rgba(201,168,76,0.15) !important;
}

/* Sous-catégories */
#subcategories {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 10px !important;
  margin-bottom: 25px !important;
}

/* Titre "Subcategories" */
.subcategory-heading {
  color: #c9a84c !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  font-size: 1.1rem !important;
  margin-bottom: 18px !important;
}

/* Chaque élément sous-catégorie */
.subcategories-list li {
  background-color: #0f0f1a !important;
  border: 1px solid rgba(201,168,76,0.15) !important;
  border-radius: 8px !important;
  padding: 15px !important;
  margin-bottom: 15px !important;
  transition: all 0.3s !important;
}
.subcategories-list li:hover {
  border-color: #c9a84c !important;
  box-shadow: 0 6px 20px rgba(201,168,76,0.2) !important;
}

/* Image sous-catégorie */
.subcategory-image .img {
  background-color: transparent !important;
}
.subcategory-image img {
  border-radius: 6px !important;
}

/* Nom sous-catégorie */
.subcategory-name {
  color: #e8e8f0 !important;
  font-weight: 600 !important;
  font-size: 1rem !important;
}
.subcategory-name:hover {
  color: #c9a84c !important;
}

/* Description sous-catégorie */
.cat_desc {
  color: #c8c8e0 !important;
  font-size: 0.88rem !important;
  line-height: 1.6 !important;
  margin-top: 8px !important;
}

/* Message "No products" */
.page-not-found h4 {
  color: #c9a84c !important;
  font-size: 1.3rem !important;
}
.page-not-found p {
  color: #c8c8e0 !important;
  font-size: 1rem !important;
}
/* Correction texte illisible catégorie */
.block-category-inner .text-muted {
  color: #c8c8e0 !important;
}

.block-category-inner .text-muted p {
  color: #c8c8e0 !important;
  font-size: 0.95rem !important;
  line-height: 1.8 !important;
}
.wishlist-button-add {
    background-color: #b32323;
}

/* =============================================
   ONGLETS — pleine largeur sous le bloc produit
============================================= */

/* Wrapper injecté par JS */
#tabs-moved {
  width: 100% !important;
  margin-top: 40px !important;
}

/* Barre des onglets centrée */
#tabs-moved .nav-tabs {
  display: flex !important;
  justify-content: center !important;
  border-bottom: 1px solid rgba(201,168,76,0.3) !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

#tabs-moved .nav-item {
  margin: 0 6px !important;
}

#tabs-moved .nav-link {
  display: block !important;
  background: transparent !important;
  border: 1px solid rgba(201,168,76,0.2) !important;
  border-bottom: none !important;
  color: #c8c8e0 !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.2px !important;
  padding: 12px 32px !important;
  border-radius: 8px 8px 0 0 !important;
  cursor: pointer !important;
  text-decoration: none !important;
  transition: all 0.3s !important;
}

#tabs-moved .nav-link.active {
  background-color: #16162a !important;
  border-color: #c9a84c !important;
  border-bottom-color: #16162a !important;
  color: #c9a84c !important;
}

#tabs-moved .nav-link:hover {
  color: #c9a84c !important;
  border-color: rgba(201,168,76,0.5) !important;
}

/* Contenu centré */
#tabs-moved .tab-content {
  max-width: 960px !important;
  margin: 0 auto 40px !important;
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-top: none !important;
  border-radius: 0 0 10px 10px !important;
  padding: 35px 40px !important;
}

#tabs-moved .product-description {
  color: #e8e8f0 !important;
  line-height: 1.9 !important;
}

#tabs-moved #product-details .product-reference,
#tabs-moved #product-details .product-quantities {
  display: flex !important;
  justify-content: center !important;
  gap: 10px !important;
  margin: 14px 0 !important;
}

#tabs-moved .label {
  color: #c9a84c !important;
  font-weight: 700 !important;
}

#tabs-moved span,
#tabs-moved a {
  color: #e8e8f0 !important;
}

/* Cacher les onglets à leur position d'origine */
.row.product-container .tabs {
  display: none !important;
}

/* =============================================
   PAGE COMMANDE — fond sombre + éléments
============================================= */

/* Fond général */
body#checkout,
body.page-order {
  background-color: #0a0a14 !important;
  color: #e8e8f0 !important;
}

/* Wrapper principal */
body#checkout #wrapper,
body#checkout .container {
  background-color: transparent !important;
}

/* Étapes de commande (cards blanches) */
body#checkout .checkout-step {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 10px !important;
  margin-bottom: 20px !important;
  padding: 20px !important;
}

/* Titre des étapes */
body#checkout .step-title {
  color: #c9a84c !important;
}

body#checkout .step-number {
  background-color: #c9a84c !important;
  color: #0a0a14 !important;
  border-radius: 50% !important;
  padding: 2px 8px !important;
}

/* Formulaires */
body#checkout .form-control {
  background-color: #0f0f1a !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #e8e8f0 !important;
  border-radius: 6px !important;
}

body#checkout .form-control:focus {
  border-color: #c9a84c !important;
  box-shadow: 0 0 0 2px rgba(201,168,76,0.2) !important;
  background-color: #0f0f1a !important;
}

body#checkout .form-control-label {
  color: #c8c8e0 !important;
}

/* Onglets "Invité / Connexion" */
body#checkout .nav-tabs {
  border-bottom: 1px solid rgba(201,168,76,0.3) !important;
}

body#checkout .nav-link {
  color: #c8c8e0 !important;
  background: transparent !important;
  border: 1px solid rgba(201,168,76,0.2) !important;
  border-bottom: none !important;
  border-radius: 8px 8px 0 0 !important;
}

body#checkout .nav-link.active {
  background-color: #16162a !important;
  color: #c9a84c !important;
  border-color: #c9a84c !important;
}

/* Résumé panier (colonne droite) */
body#checkout .cart-grid-right .card,
body#checkout #js-checkout-summary {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 10px !important;
  color: #e8e8f0 !important;
}

body#checkout .cart-summary-line .label,
body#checkout .cart-summary-line .value {
  color: #e8e8f0 !important;
}

body#checkout .cart-total .label,
body#checkout .cart-total .value {
  color: #c9a84c !important;
  font-weight: 700 !important;
}

/* Bouton Continuer */
body#checkout .btn-primary {
  background-color: #c9a84c !important;
  border-color: #c9a84c !important;
  color: #0a0a14 !important;
  font-weight: 700 !important;
}

body#checkout .btn-primary:hover {
  background-color: #e8c46a !important;
  border-color: #e8c46a !important;
}

/* Textes divers */
body#checkout .text-muted,
body#checkout p,
body#checkout label,
body#checkout span {
  color: #c8c8e0 !important;
}

body#checkout a {
  color: #c9a84c !important;
}

/* Checkboxes custom */
body#checkout .custom-checkbox span {
  border: 2px solid rgba(201,168,76,0.5) !important;
  background-color: #0f0f1a !important;
}

body#checkout .custom-radio span {
  border: 2px solid rgba(201,168,76,0.5) !important;
  background-color: #0f0f1a !important;
}

/* Barre de progression mot de passe */
body#checkout .progress {
  background-color: #0f0f1a !important;
}

.custom-checkbox input[type=checkbox]+span .checkbox-checked {
    color: #fff !important;
}

/* =============================================
   FILTRES ACTIFS + PAGINATION — fond sombre
============================================= */

/* Filtres actifs (barre blanche en haut) */
#js-active-search-filters {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 8px !important;
  padding: 15px 20px !important;
  margin-bottom: 20px !important;
}

#js-active-search-filters .active-filter-title {
  color: #c9a84c !important;
  font-weight: 700 !important;
}

#js-active-search-filters .filter-block {
  background-color: transparent !important;
  color: #e8e8f0 !important;
}

#js-active-search-filters a {
  color: #c9a84c !important;
}

/* Pagination (barre blanche en bas) */
.pagination {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 8px !important;
  padding: 15px 20px !important;
}

.pagination .page-list {
  background-color: transparent !important;
}

.pagination .page-list li {
  background-color: transparent !important;
}

.pagination .page-list a {
  color: #c8c8e0 !important;
  background-color: #0f0f1a !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  padding: 8px 12px !important;
  border-radius: 6px !important;
  margin: 0 2px !important;
}

.pagination .page-list a:hover {
  background-color: #16162a !important;
  border-color: #c9a84c !important;
  color: #c9a84c !important;
}

.pagination .page-list li.current a {
  background-color: #c9a84c !important;
  border-color: #c9a84c !important;
  color: #0a0a14 !important;
  font-weight: 700 !important;
}

.pagination .next,
.pagination .previous {
  color: #c8c8e0 !important;
}

/* Texte "Affichage 1-12 de 148" */
.pagination .showing {
  color: #c8c8e0 !important;
}

/* Conteneur général des listes produits */
#js-product-list-top,
#js-product-list-bottom {
  background-color: transparent !important;
}

/* Barre de tri (Trier par) */
.sort-by-row {
  background-color: #16162a !important;
  padding: 15px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
}

.sort-by-row .dropdown-menu {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  border-radius: 8px !important;
}

.sort-by-row .dropdown-menu a {
  color: #c8c8e0 !important;
}

.sort-by-row .dropdown-menu a:hover {
  background-color: #0f0f1a !important;
  color: #c9a84c !important;
}

/* Bouton "Filtrer" mobile */
#searchfiltertoggler {
  background-color: #0f0f1a !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #c8c8e0 !important;
}

/* =============================================
   PAGE CONTACT — éliminer tout le blanc
============================================= */

/* Contenu principal */
.page-contact #content,
.page-contact .page-content,
.page-contact .card,
.page-contact .card-block {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 10px !important;
  color: #e8e8f0 !important;
}

/* Colonne gauche (infos contact) */
.page-contact #left-column {
  background-color: transparent !important;
}

.page-contact .contact-rich {
  background-color: #0f0f1a !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 10px !important;
  padding: 25px !important;
  margin-bottom: 20px !important;
}

.page-contact .contact-rich h4 {
  color: #c9a84c !important;
  font-weight: 700 !important;
  margin-bottom: 20px !important;
}

.page-contact .contact-rich .block {
  color: #e8e8f0 !important;
}

.page-contact .contact-rich .icon i {
  color: #c9a84c !important;
}

.page-contact .contact-rich .data {
  color: #c8c8e0 !important;
}

.page-contact .contact-rich .email a {
  color: #c9a84c !important;
}

/* Formulaire contact */
.page-contact .form-group {
  background-color: transparent !important;
}

.page-contact .form-control-label {
  color: #c8c8e0 !important;
}

.page-contact .form-control,
.page-contact .form-control-select,
.page-contact textarea {
  background-color: #0f0f1a !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #e8e8f0 !important;
  border-radius: 6px !important;
}

.page-contact .form-control:focus,
.page-contact .form-control-select:focus,
.page-contact textarea:focus {
  border-color: #c9a84c !important;
  box-shadow: 0 0 0 2px rgba(201,168,76,0.2) !important;
  background-color: #0f0f1a !important;
}

/* Upload fichier */
.page-contact .bootstrap-filestyle {
  background-color: #0f0f1a !important;
}

.page-contact .bootstrap-filestyle .form-control {
  background-color: #0f0f1a !important;
  color: #c8c8e0 !important;
}

.page-contact .bootstrap-filestyle .btn-default {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #c8c8e0 !important;
}

/* Titre formulaire */
.page-contact h3 {
  color: #c9a84c !important;
  font-weight: 700 !important;
  margin-bottom: 25px !important;
}

/* Bouton envoyer */
.page-contact .btn-primary {
  background-color: #c9a84c !important;
  border-color: #c9a84c !important;
  color: #0a0a14 !important;
  font-weight: 700 !important;
  padding: 12px 30px !important;
  border-radius: 8px !important;
}

.page-contact .btn-primary:hover {
  background-color: #e8c46a !important;
  border-color: #e8c46a !important;
}

/* Footer page */
.page-contact .page-footer {
  background-color: transparent !important;
}

/* Corrections diverses */
.page-contact .form-control-comment {
  color: #a8a8c0 !important;
}

.page-contact .offset-md-3 {
  background-color: transparent !important;
}

.page-contact hr {
  border-color: rgba(201,168,76,0.3) !important;
}

/* =============================================
   PAGE CONTACT — bloc formulaire (spécificité max)
============================================= */

.page-content.card.card-block,
#contact-form .card.card-block,
.contact-form .card,
.contact-form .card-block,
.contact-form .page-content,
#contact-form .page-content,
.contact-form #content {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.25) !important;
  border-radius: 10px !important;
  padding: 30px !important;
  color: #e8e8f0 !important;
}

/* Section formulaire */
.contact-form {
  background-color: transparent !important;
}

/* Champs du formulaire */
.contact-form .form-group.row {
  background-color: transparent !important;
  margin-bottom: 20px !important;
}

.contact-form .form-group .col-md-9 {
  background-color: transparent !important;
}

/* Titre H3 */
.contact-form h3 {
  color: #c9a84c !important;
  font-weight: 700 !important;
  font-size: 1.8rem !important;
  margin-bottom: 25px !important;
  text-align: center !important;
}

/* Labels */
.contact-form .form-control-label {
  color: #c8c8e0 !important;
  font-weight: 600 !important;
}

/* Select + inputs + textarea */
.contact-form .form-control,
.contact-form .form-control-select,
.contact-form input[type="email"],
.contact-form textarea {
  background-color: #0f0f1a !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #e8e8f0 !important;
  border-radius: 8px !important;
  padding: 12px 15px !important;
  height: auto !important;
}

.contact-form .form-control:focus,
.contact-form .form-control-select:focus,
.contact-form input:focus,
.contact-form textarea:focus {
  border-color: #c9a84c !important;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.15) !important;
  background-color: #0f0f1a !important;
}

/* Upload fichier */
.contact-form .bootstrap-filestyle {
  background-color: transparent !important;
}

.contact-form .bootstrap-filestyle .form-control {
  background-color: #0f0f1a !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #c8c8e0 !important;
}

.contact-form .bootstrap-filestyle .btn-default {
  background-color: #16162a !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #c8c8e0 !important;
  border-radius: 6px !important;
}

.contact-form .glyphicon {
  color: #c9a84c !important;
}

/* Footer bouton */
.contact-form .form-footer {
  background-color: transparent !important;
  padding-top: 25px !important;
  border-top: 1px solid rgba(201,168,76,0.2) !important;
}

.contact-form .btn-primary {
  background-color: #c9a84c !important;
  border-color: #c9a84c !important;
  color: #0a0a14 !important;
  font-weight: 700 !important;
  padding: 14px 35px !important;
  border-radius: 8px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
}

.contact-form .btn-primary:hover {
  background-color: #e8c46a !important;
  border-color: #e8c46a !important;
  transform: translateY(-1px) !important;
}

/* Commentaire "optionnel" */
.contact-form .form-control-comment {
  color: #a8a8c0 !important;
}

/* Cache input url */
.contact-form input[name="url"] {
  display: none !important;
}

/* =============================================
   RUPTURE DE STOCK — Ruban diagonal coin droit
============================================= */

/* Le conteneur de l'image doit avoir overflow:hidden */
.product-miniature .thumbnail-container {
  overflow: hidden !important;
  position: relative !important;
}

/* Cacher la liste des flags par défaut */
.product-miniature .product-flags {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 10 !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none !important;
}

/* Badge "Nouveau" — conservé en haut à gauche */
.product-flag.new {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  background: #c9a84c !important;
  color: #1a1a2e !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  padding: 4px 10px !important;
  border-radius: 3px !important;
  pointer-events: auto !important;
}

/* ===== RUBAN DIAGONAL — Coin supérieur droit ===== */
.product-flag.out_of_stock {
  position: absolute !important;
  top: 5px !important;
  right: -18px !important;
  width: 100px !important;

  /* Rotation −45° = diagonale coin droit */
  transform: rotate(45deg) !important;
  transform-origin: center center !important;

  /* Style panneau rouge */
  background: #c0392b !important;
  color: #ffffff !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  letter-spacing: 0.8px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  padding: 5px 0 !important;
  line-height: 1.3 !important;

  /* Ombres pour l'effet panneau */
  box-shadow:
    0 2px 4px rgba(0,0,0,0.4),
    inset 0 1px 0 rgba(255,255,255,0.15),
    inset 0 -1px 0 rgba(0,0,0,0.2) !important;

  /* Bords blancs comme un vrai panneau */
  border-top: 1px solid rgba(255,255,255,0.3) !important;
  border-bottom: 1px solid rgba(0,0,0,0.3) !important;
}
