/* CSS structurel historique de l'accueil Ludorum */
/* ==========================================================
   ACCUEIL LUDORUM V2 — COMPACT, LISIBLE, AVEC ANCRES
   ========================================================== */

.lud-accueil-v2 {
  --home2-nuit: #071a33;
  --home2-bleu: #0b4dbb;
  --home2-bleu-clair: #1967d2;
  --home2-jaune: #f2a900;
  --home2-rouge: #cf1f1f;
  --home2-ivoire: #fffaf0;
  --home2-texte: #2a394f;
  --home2-gris: #697386;
  --home2-bordure: rgba(7, 26, 51, 0.12);

  width: min(1120px, 92%);
  margin: 0 auto;
  padding: 38px 0 64px;

  color: var(--home2-texte);
}

.lud-accueil-v2,
.lud-accueil-v2 * {
  box-sizing: border-box;
}


/* ==========================================================
   ÉLÉMENTS COMMUNS
   ========================================================== */

.lud-accueil-v2-badge,
.lud-accueil-v2-sur-titre {
  display: inline-flex;
  align-items: center;

  color: var(--home2-bleu);

  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.lud-accueil-v2-badge {
  padding: 7px 13px;

  color: var(--home2-nuit);

  background: linear-gradient(145deg, var(--home2-jaune), #ffc83d);
  border-radius: 999px;
}

.lud-accueil-v2 h2 {
  margin: 6px 0 7px;

  color: var(--home2-nuit);

  font-size: clamp(27px, 3.4vw, 38px);
  font-weight: 850;
  line-height: 1.13;
  letter-spacing: -0.03em;
}


/* ==========================================================
   HERO PLUS PETIT
   ========================================================== */

.lud-accueil-v2-hero {
  position: relative;

  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(210px, 0.65fr);

  gap: clamp(24px, 5vw, 54px);
  align-items: center;

  min-height: 330px;

  padding: clamp(30px, 4.5vw, 48px) clamp(22px, 5vw, 54px);

  overflow: hidden;

  background:
    radial-gradient(circle at 8% 10%, rgba(242, 169, 0, 0.17), transparent 24%),
    radial-gradient(circle at 94% 86%, rgba(207, 31, 31, 0.12), transparent 22%),
    linear-gradient(135deg, var(--home2-nuit), #0a3f85);

  border-radius: 22px;

  box-shadow: 0 18px 42px rgba(7, 26, 51, 0.18);
}

.lud-accueil-v2-hero::before {
  content: "";

  position: absolute;
  top: -120px;
  left: -85px;

  width: 210px;
  height: 210px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 50%;

  box-shadow:
    0 0 0 32px rgba(255, 255, 255, 0.016),
    0 0 0 64px rgba(255, 255, 255, 0.011);
}

.lud-accueil-v2-hero > * {
  position: relative;
  z-index: 2;
}

.lud-accueil-v2-hero h1 {
  max-width: 720px;

  margin: 16px 0 0;

  color: #ffffff;

  font-size: clamp(34px, 4.6vw, 52px);
  font-weight: 850;
  line-height: 1.06;
  letter-spacing: -0.045em;
}

.lud-accueil-v2-trait {
  display: flex;

  width: 82px;
  height: 4px;

  margin: 17px 0 18px;

  overflow: hidden;
  border-radius: 999px;
}

.lud-accueil-v2-trait span {
  width: 33.333%;
}

.lud-accueil-v2-trait span:nth-child(1) {
  background: var(--home2-bleu-clair);
}

.lud-accueil-v2-trait span:nth-child(2) {
  background: var(--home2-jaune);
}

.lud-accueil-v2-trait span:nth-child(3) {
  background: var(--home2-rouge);
}

.lud-accueil-v2-hero-texte > p {
  max-width: 650px;
  margin: 0;

  color: rgba(255, 255, 255, 0.76);

  font-size: 15px;
  line-height: 1.65;
}

.lud-accueil-v2-actions {
  display: flex;
  flex-wrap: wrap;

  margin-top: 22px;

  gap: 10px;
}

.lud-accueil-v2-bouton {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 46px;

  padding: 11px 17px;

  font-size: 13px;
  font-weight: 850;
  text-decoration: none;

  border-radius: 10px;

  gap: 8px;

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background-color 0.2s ease;
}

.lud-accueil-v2-bouton-jaune {
  color: var(--home2-nuit);

  background: linear-gradient(145deg, var(--home2-jaune), #ffc83d);

  box-shadow: 0 10px 21px rgba(0, 0, 0, 0.16);
}

.lud-accueil-v2-bouton-transparent {
  color: #ffffff;

  background: rgba(255, 255, 255, 0.08);

  border: 1px solid rgba(255, 255, 255, 0.15);
}

.lud-accueil-v2-bouton:hover {
  transform: translateY(-2px);
}

.lud-accueil-v2-symbole {
  position: relative;

  min-height: 220px;
}

.lud-accueil-v2-symbole strong {
  position: absolute;
  top: 50%;
  left: 50%;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 104px;
  height: 104px;

  color: var(--home2-nuit);

  font-size: 52px;
  font-weight: 900;

  background: linear-gradient(145deg, var(--home2-jaune), #ffc83d);
  border-radius: 27px;

  box-shadow: 0 20px 38px rgba(0, 0, 0, 0.18);

  transform: translate(-50%, -50%) rotate(-4deg);
}

.lud-accueil-v2-symbole > span {
  position: absolute;

  display: block;

  border-radius: 50%;
}

.lud-accueil-v2-symbole-bleu {
  top: 24px;
  right: 35px;

  width: 26px;
  height: 26px;

  background: var(--home2-bleu-clair);
}

.lud-accueil-v2-symbole-jaune {
  right: 10px;
  bottom: 42px;

  width: 20px;
  height: 20px;

  background: var(--home2-jaune);
}

.lud-accueil-v2-symbole-rouge {
  bottom: 18px;
  left: 28px;

  width: 18px;
  height: 18px;

  background: var(--home2-rouge);
}


/* ==========================================================
   RACCOURCIS D’ANCRES
   ========================================================== */

.lud-accueil-v2-raccourcis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 10px;

  margin: 16px 0 48px;
}

.lud-accueil-v2-raccourcis a {
  display: flex;
  align-items: center;

  min-height: 54px;

  padding: 12px 15px;

  color: var(--home2-nuit);

  font-size: 13px;
  font-weight: 800;
  text-decoration: none;

  background: #ffffff;

  border: 1px solid var(--home2-bordure);
  border-radius: 12px;

  box-shadow: 0 8px 20px rgba(7, 26, 51, 0.05);

  gap: 10px;

  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.lud-accueil-v2-raccourcis a:hover {
  transform: translateY(-2px);

  border-color: rgba(11, 77, 187, 0.24);

  box-shadow: 0 11px 24px rgba(7, 26, 51, 0.09);
}

.lud-accueil-v2-raccourcis span {
  color: var(--home2-jaune);

  font-size: 10px;
  font-weight: 900;
}


/* ==========================================================
   CATÉGORIES PLUS SERRÉES
   ========================================================== */

.lud-accueil-v2-entete {
  max-width: 720px;

  margin: 0 auto 22px;

  text-align: center;
}

.lud-accueil-v2-entete p {
  margin: 0;

  color: var(--home2-gris);

  font-size: 14px;
  line-height: 1.6;
}

.lud-accueil-v2-grille-categories {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 14px;
}

.lud-accueil-v2-categorie {
  position: relative;

  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) 32px;

  gap: 13px;
  align-items: center;

  min-height: 132px;

  padding: 20px;

  overflow: hidden;

  background: linear-gradient(145deg, #ffffff, var(--home2-ivoire));

  border: 1px solid var(--home2-bordure);
  border-radius: 16px;

  box-shadow: 0 11px 26px rgba(7, 26, 51, 0.06);

  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease;
}

.lud-accueil-v2-categorie::before {
  content: "";

  position: absolute;
  top: 0;
  left: 0;

  width: 100%;
  height: 4px;
}

.lud-accueil-v2-cat-bleue::before {
  background: var(--home2-bleu);
}

.lud-accueil-v2-cat-jaune::before {
  background: var(--home2-jaune);
}

.lud-accueil-v2-cat-rouge::before {
  background: var(--home2-rouge);
}

.lud-accueil-v2-categorie:hover {
  transform: translateY(-3px);

  box-shadow: 0 15px 31px rgba(7, 26, 51, 0.10);
}

.lud-accueil-v2-icone {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 50px;
  height: 50px;

  border-radius: 14px;
}

.lud-accueil-v2-icone svg {
  width: 24px;
  height: 24px;

  fill: currentColor;
}

.lud-accueil-v2-cat-bleue .lud-accueil-v2-icone {
  color: var(--home2-bleu);
  background: rgba(11, 77, 187, 0.09);
}

.lud-accueil-v2-cat-jaune .lud-accueil-v2-icone {
  color: #ad7700;
  background: rgba(242, 169, 0, 0.13);
}

.lud-accueil-v2-cat-rouge .lud-accueil-v2-icone {
  color: var(--home2-rouge);
  background: rgba(207, 31, 31, 0.09);
}

.lud-accueil-v2-categorie-texte > span {
  display: block;

  margin-bottom: 4px;

  color: var(--home2-jaune);

  font-size: 9px;
  font-weight: 900;
  letter-spacing: 0.1em;
}

.lud-accueil-v2-categorie h3 {
  margin: 0 0 5px;

  color: var(--home2-nuit);

  font-size: 18px;
  font-weight: 850;
  line-height: 1.2;
}

.lud-accueil-v2-categorie p {
  margin: 0;

  color: var(--home2-gris);

  font-size: 12px;
  line-height: 1.5;
}

.lud-accueil-v2-categorie > a {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 32px;
  height: 32px;

  color: #ffffff;

  font-size: 18px;
  font-weight: 800;
  text-decoration: none;

  background: var(--home2-nuit);
  border-radius: 9px;
}


/* ==========================================================
   SECTIONS PRODUITS
   ========================================================== */

.lud-accueil-v2-produits {
  margin-top: 50px;

  scroll-margin-top: 125px;
}

.lud-accueil-v2-entete-ligne {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  margin-bottom: 18px;

  gap: 20px;
}

.lud-accueil-v2-entete-ligne p {
  margin: 0;

  color: var(--home2-gris);

  font-size: 13.5px;
  line-height: 1.6;
}

.lud-accueil-v2-entete-ligne > a {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;

  min-height: 40px;

  padding: 9px 14px;

  color: var(--home2-bleu);

  font-size: 12px;
  font-weight: 800;
  text-decoration: none;

  background: rgba(11, 77, 187, 0.07);

  border: 1px solid rgba(11, 77, 187, 0.15);
  border-radius: 9px;

  gap: 7px;
}

.lud-accueil-v2-zone-promo {
  padding: 26px;

  background:
    radial-gradient(circle at 95% 5%, rgba(242, 169, 0, 0.13), transparent 27%),
    linear-gradient(145deg, #ffffff, var(--home2-ivoire));

  border: 1px solid var(--home2-bordure);
  border-radius: 18px;

  box-shadow: 0 13px 32px rgba(7, 26, 51, 0.06);
}

.lud-accueil-v2-pastille-promo {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 38px;

  padding: 9px 13px;

  color: #ffffff;

  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;

  background: var(--home2-rouge);
  border-radius: 9px;
}


/* ==========================================================
   CARTES PRODUITS COMPACTES
   ========================================================== */

.lud-accueil-v2-grille-produits ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;

  width: 100% !important;

  margin: 0 !important;

  gap: 14px !important;
}

.lud-accueil-v2-grille-produits ul.products::before,
.lud-accueil-v2-grille-produits ul.products::after {
  display: none !important;
}

.lud-accueil-v2-grille-produits ul.products li.product {
  position: relative !important;

  display: flex !important;
  float: none !important;
  flex-direction: column !important;

  width: auto !important;
  min-width: 0 !important;
  height: 100% !important;

  margin: 0 !important;
  padding: 10px 10px 12px !important;

  overflow: hidden;

  background: #ffffff;

  border: 1px solid var(--home2-bordure) !important;
  border-radius: 14px !important;

  box-shadow: 0 8px 22px rgba(7, 26, 51, 0.05);

  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease;
}

.lud-accueil-v2-grille-produits ul.products li.product:hover {
  transform: translateY(-3px);

  box-shadow: 0 13px 28px rgba(7, 26, 51, 0.10);
}

.lud-accueil-v2-grille-produits li.product > a.woocommerce-LoopProduct-link {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;

  color: inherit;
  text-decoration: none;
}

.lud-accueil-v2-grille-produits li.product img {
  display: block;

  width: 100% !important;
  height: 180px !important;

  margin: 0 0 10px !important;
  padding: 5px;

  object-fit: contain;

  background: #ffffff;
  border-radius: 10px;
}

.lud-accueil-v2-grille-produits span.onsale {
  top: 15px !important;
  right: 15px !important;
  left: auto !important;
  z-index: 3;

  min-width: 0 !important;
  min-height: 0 !important;

  margin: 0 !important;
  padding: 5px 7px !important;

  color: #ffffff !important;

  font-size: 9px !important;
  font-weight: 850 !important;
  line-height: 1 !important;

  background: var(--home2-rouge) !important;
  border-radius: 999px !important;
}

.lud-accueil-v2-grille-produits .woocommerce-loop-product__title {
  margin: 0 1px 6px !important;
  padding: 0 !important;

  color: var(--home2-nuit) !important;

  font-size: 13.5px !important;
  font-weight: 800 !important;
  line-height: 1.32 !important;
  text-align: left !important;
}

.lud-accueil-v2-grille-produits .star-rating {
  margin: 0 1px 7px !important;

  color: var(--home2-jaune) !important;

  font-size: 11px !important;
}

.lud-accueil-v2-grille-produits .price {
  display: flex !important;
  flex-wrap: wrap;
  align-items: baseline;

  min-height: 25px;

  margin: auto 1px 8px !important;

  color: var(--home2-bleu) !important;

  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;

  gap: 4px;
}

.lud-accueil-v2-grille-produits .price del {
  color: #9299a2 !important;

  font-size: 10.5px !important;
  opacity: 1 !important;
}

.lud-accueil-v2-grille-produits .price ins {
  color: var(--home2-rouge) !important;

  font-weight: 850 !important;
  text-decoration: none !important;
}

.lud-accueil-v2-grille-produits li.product .button,
.lud-accueil-v2-grille-produits li.product a.added_to_cart {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  min-height: 38px !important;

  margin: 0 !important;
  padding: 8px 7px !important;

  color: #ffffff !important;

  font-size: 10.5px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  text-decoration: none !important;

  background: linear-gradient(120deg, var(--home2-nuit), var(--home2-bleu)) !important;

  border: 0 !important;
  border-radius: 8px !important;
}


/* ==========================================================
   PRÉSENTATION COURTE
   ========================================================== */

.lud-accueil-v2-presentation {
  display: grid;
  grid-template-columns: 0.75fr 1.25fr;

  gap: 34px;
  align-items: center;

  margin-top: 52px;
  padding: 26px;

  background: #ffffff;

  border: 1px solid var(--home2-bordure);
  border-radius: 18px;

  box-shadow: 0 12px 30px rgba(7, 26, 51, 0.06);
}

.lud-accueil-v2-presentation-marque {
  min-height: 190px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  padding: 22px;

  background:
    radial-gradient(circle at 15% 15%, rgba(242, 169, 0, 0.19), transparent 28%),
    linear-gradient(135deg, var(--home2-nuit), #0a3e82);

  border-radius: 14px;
}

.lud-accueil-v2-presentation-marque strong {
  color: #ffffff;

  font-size: clamp(29px, 4vw, 43px);
  font-weight: 900;
  letter-spacing: -0.04em;
}

.lud-accueil-v2-presentation-marque > div {
  display: flex;

  width: 115px;
  height: 5px;

  margin-top: 11px;

  overflow: hidden;
  border-radius: 999px;
}

.lud-accueil-v2-presentation-marque span {
  width: 33.333%;
}

.lud-accueil-v2-presentation-marque span:nth-child(1) {
  background: var(--home2-bleu-clair);
}

.lud-accueil-v2-presentation-marque span:nth-child(2) {
  background: var(--home2-jaune);
}

.lud-accueil-v2-presentation-marque span:nth-child(3) {
  background: var(--home2-rouge);
}

.lud-accueil-v2-presentation-texte p {
  margin: 0 0 18px;

  color: var(--home2-gris);

  font-size: 14px;
  line-height: 1.65;
}

.lud-accueil-v2-presentation-texte > a {
  display: inline-flex;
  align-items: center;

  min-height: 42px;

  padding: 9px 14px;

  color: #ffffff;

  font-size: 12px;
  font-weight: 850;
  text-decoration: none;

  background: linear-gradient(120deg, var(--home2-nuit), var(--home2-bleu));
  border-radius: 9px;

  gap: 7px;
}


/* ==========================================================
   BLOC FINAL
   ========================================================== */

.lud-accueil-v2-final {
  position: relative;

  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;

  gap: 24px;
  align-items: center;

  margin-top: 24px;
  padding: 27px 32px;

  overflow: hidden;

  color: #ffffff;

  background:
    radial-gradient(circle at 92% 10%, rgba(242, 169, 0, 0.20), transparent 28%),
    linear-gradient(135deg, var(--home2-nuit), #0a3e82);

  border-radius: 17px;

  box-shadow: 0 14px 34px rgba(7, 26, 51, 0.15);
}

.lud-accueil-v2-final-decoration {
  position: absolute;
  top: 0;
  left: 0;

  display: flex;

  width: 100%;
  height: 4px;
}

.lud-accueil-v2-final-decoration span {
  width: 33.333%;
}

.lud-accueil-v2-final-decoration span:nth-child(1) {
  background: var(--home2-bleu-clair);
}

.lud-accueil-v2-final-decoration span:nth-child(2) {
  background: var(--home2-jaune);
}

.lud-accueil-v2-final-decoration span:nth-child(3) {
  background: var(--home2-rouge);
}

.lud-accueil-v2-final .lud-accueil-v2-sur-titre {
  color: var(--home2-jaune);
}

.lud-accueil-v2-final h2 {
  color: #ffffff;
}

.lud-accueil-v2-final p {
  margin: 0;

  color: rgba(255, 255, 255, 0.72);

  font-size: 13px;
  line-height: 1.6;
}

.lud-accueil-v2-final > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-width: 155px;
  min-height: 46px;

  padding: 11px 16px;

  color: var(--home2-nuit);

  font-size: 13px;
  font-weight: 850;
  text-decoration: none;

  background: linear-gradient(145deg, var(--home2-jaune), #ffc83d);
  border-radius: 10px;

  gap: 8px;
}


/* ==========================================================
   TABLETTE
   ========================================================== */

@media screen and (max-width: 950px) {

  .lud-accueil-v2-hero {
    grid-template-columns: 1fr;
  }

  .lud-accueil-v2-symbole {
    min-height: 180px;
  }

  .lud-accueil-v2-grille-categories {
    grid-template-columns: 1fr;
  }

  .lud-accueil-v2-grille-produits ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media screen and (max-width: 767px) {

  .lud-accueil-v2 {
    width: 90%;
    padding: 28px 0 48px;
  }

  .lud-accueil-v2-hero {
    min-height: 0;

    padding: 29px 18px;

    border-radius: 17px;
  }

  .lud-accueil-v2-hero-texte {
    text-align: center;
  }

  .lud-accueil-v2-hero h1 {
    font-size: 31px;
  }

  .lud-accueil-v2-trait {
    margin-right: auto;
    margin-left: auto;
  }

  .lud-accueil-v2-actions {
    flex-direction: column;
  }

  .lud-accueil-v2-bouton {
    width: 100%;
  }

  .lud-accueil-v2-symbole {
    min-height: 145px;
  }

  .lud-accueil-v2-symbole strong {
    width: 84px;
    height: 84px;

    font-size: 42px;
    border-radius: 22px;
  }

  .lud-accueil-v2-raccourcis {
    grid-template-columns: 1fr;

    margin-bottom: 39px;
  }

  .lud-accueil-v2-categorie {
    grid-template-columns: 46px minmax(0, 1fr) 30px;

    min-height: 116px;

    padding: 16px;

    gap: 11px;
  }

  .lud-accueil-v2-icone {
    width: 46px;
    height: 46px;
  }

  .lud-accueil-v2-entete-ligne {
    display: block;
  }

  .lud-accueil-v2-entete-ligne > a,
  .lud-accueil-v2-pastille-promo {
    width: 100%;

    margin-top: 12px;
  }

  .lud-accueil-v2-zone-promo {
    padding: 18px 14px;

    border-radius: 15px;
  }

  .lud-accueil-v2-grille-produits ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

    gap: 9px !important;
  }

  .lud-accueil-v2-grille-produits ul.products li.product {
    padding: 8px 8px 10px !important;
  }

  .lud-accueil-v2-grille-produits li.product img {
    height: 135px !important;
  }

  .lud-accueil-v2-grille-produits .woocommerce-loop-product__title {
    font-size: 12px !important;
  }

  .lud-accueil-v2-grille-produits .price {
    font-size: 14px !important;
  }

  .lud-accueil-v2-presentation {
    grid-template-columns: 1fr;

    gap: 20px;

    margin-top: 42px;
    padding: 18px;

    border-radius: 15px;
  }

  .lud-accueil-v2-presentation-marque {
    min-height: 145px;
  }

  .lud-accueil-v2-final {
    grid-template-columns: 1fr;

    padding: 25px 19px;

    border-radius: 15px;
  }

  .lud-accueil-v2-final > a {
    width: 100%;
  }
}


/* ==========================================================
   TRÈS PETITS ÉCRANS
   ========================================================== */

@media screen and (max-width: 360px) {

  .lud-accueil-v2-grille-produits ul.products {
    grid-template-columns: 1fr !important;
  }

  .lud-accueil-v2-grille-produits li.product img {
    height: 215px !important;
  }
}


/* ==========================================================
   ACCESSIBILITÉ
   ========================================================== */

@media (prefers-reduced-motion: reduce) {

  .lud-accueil-v2-bouton,
  .lud-accueil-v2-raccourcis a,
  .lud-accueil-v2-categorie,
  .lud-accueil-v2-grille-produits ul.products li.product {
    transition: none;
  }

  .lud-accueil-v2-bouton:hover,
  .lud-accueil-v2-raccourcis a:hover,
  .lud-accueil-v2-categorie:hover,
  .lud-accueil-v2-grille-produits ul.products li.product:hover {
    transform: none;
  }
}


/* ==========================================================
   PERSONNALISATION PRODUITS — LUDORUM
   Règles demandées :
   - titres produits noirs
   - boutons Ajouter au panier bleus
   - disponibilité verte / indisponibilité rouge
   - promotions rouges
   - meilleures ventes jaunes
   - prix normaux bleus / prix promo rouges
   ========================================================== */


/* Titres des produits en noir */
.lud-accueil-v2-grille-produits .woocommerce-loop-product__title,
.lud-accueil-v2-grille-produits li.product .woocommerce-loop-product__title {
  color: #111111 !important;
}


/* Prix normaux en bleu */
.lud-accueil-v2-grille-produits .price,
.lud-accueil-v2-grille-produits .price > span,
.lud-accueil-v2-grille-produits .price .woocommerce-Price-amount {
  color: var(--home2-bleu) !important;
}


/* Ancien prix barré d'une promotion */
.lud-accueil-v2-grille-produits .price del,
.lud-accueil-v2-grille-produits .price del .woocommerce-Price-amount {
  color: #8d96a3 !important;
}


/* Prix promotionnel en rouge */
.lud-accueil-v2-grille-produits .price ins,
.lud-accueil-v2-grille-produits .price ins .woocommerce-Price-amount {
  color: var(--home2-rouge) !important;

  font-weight: 900 !important;
  text-decoration: none !important;
}


/* Bouton Ajouter au panier clairement bleu */
.lud-accueil-v2-grille-produits li.product .button,
.lud-accueil-v2-grille-produits li.product a.added_to_cart {
  order: 3 !important;

  color: #ffffff !important;

  background:
    linear-gradient(
      135deg,
      var(--home2-bleu),
      var(--home2-bleu-clair)
    ) !important;

  box-shadow:
    0 9px 20px rgba(11, 77, 187, 0.22) !important;
}

.lud-accueil-v2-grille-produits li.product .button:hover,
.lud-accueil-v2-grille-produits li.product a.added_to_cart:hover {
  background:
    linear-gradient(
      135deg,
      #083f9b,
      var(--home2-bleu)
    ) !important;

  box-shadow:
    0 13px 25px rgba(11, 77, 187, 0.30) !important;
}


/* Statut de stock sous les informations produit et avant le bouton */
.lud-accueil-v2-grille-produits ul.products li.product::after {
  order: 2 !important;

  display: flex;
  align-items: center;

  min-height: 24px;

  margin: 0 1px 9px !important;

  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;

  gap: 6px;
}


/* Produit disponible */
.lud-accueil-v2-grille-produits ul.products li.product.instock::after {
  content: "Disponible";

  color: #18833a;
}

.lud-accueil-v2-grille-produits ul.products li.product.instock::before {
  content: "";
}


/* Produit indisponible */
.lud-accueil-v2-grille-produits ul.products li.product.outofstock::after {
  content: "Indisponible";

  color: var(--home2-rouge);
}


/* Produit en réapprovisionnement */
.lud-accueil-v2-grille-produits ul.products li.product.onbackorder::after {
  content: "Disponible sur commande";

  color: #b36f00;
}


/* Petit point coloré devant le statut */
.lud-accueil-v2-grille-produits ul.products li.product.instock::after,
.lud-accueil-v2-grille-produits ul.products li.product.outofstock::after,
.lud-accueil-v2-grille-produits ul.products li.product.onbackorder::after {
  padding-left: 14px;

  background-repeat: no-repeat;
  background-position: left center;
  background-size: 7px 7px;
}

.lud-accueil-v2-grille-produits ul.products li.product.instock::after {
  background-image:
    radial-gradient(circle, #22a447 0 65%, transparent 67%);
}

.lud-accueil-v2-grille-produits ul.products li.product.outofstock::after {
  background-image:
    radial-gradient(circle, var(--home2-rouge) 0 65%, transparent 67%);
}

.lud-accueil-v2-grille-produits ul.products li.product.onbackorder::after {
  background-image:
    radial-gradient(circle, #d58a00 0 65%, transparent 67%);
}


/* Le badge Promo reste rouge */
.lud-accueil-v2-grille-produits span.onsale {
  color: #ffffff !important;

  background: var(--home2-rouge) !important;
}


/* Le mot Promotions en rouge */
#promotions .lud-accueil-v2-sur-titre,
#promotions h2,
.lud-accueil-v2-pastille-promo {
  color: var(--home2-rouge) !important;
}

.lud-accueil-v2-pastille-promo {
  color: #ffffff !important;

  background: var(--home2-rouge) !important;
}


/* Le mot Meilleures ventes en jaune */
#meilleuresventes h2,
#meilleuresventes .lud-accueil-v2-sur-titre {
  color: #d89400 !important;
}


/* Raccourci Meilleures ventes sous le hero */
.lud-accueil-v2-raccourcis a:nth-child(3) {
  color: #b97800 !important;
}

.lud-accueil-v2-raccourcis a:nth-child(3) span {
  color: var(--home2-jaune) !important;
}


/* Raccourci Promotions sous le hero */
.lud-accueil-v2-raccourcis a:nth-child(2) {
  color: var(--home2-rouge) !important;
}

.lud-accueil-v2-raccourcis a:nth-child(2) span {
  color: var(--home2-rouge) !important;
}


/* Mobile : statut bien lisible */
@media screen and (max-width: 767px) {

  .lud-accueil-v2-grille-produits ul.products li.product::after {
    min-height: 21px;

    margin-bottom: 7px !important;

    font-size: 10px;
  }
}


/* ==========================================================
   CORRECTION FINALE — TITRES PRODUITS TOUJOURS NOIRS
   Les couleurs rouge et jaune concernent uniquement les titres
   de section, jamais les noms des produits.
   ========================================================== */

#promotions .lud-accueil-v2-grille-produits li.product a,
#promotions .lud-accueil-v2-grille-produits li.product a:visited,
#promotions .lud-accueil-v2-grille-produits .woocommerce-loop-product__title,
#meilleuresventes .lud-accueil-v2-grille-produits li.product a,
#meilleuresventes .lud-accueil-v2-grille-produits li.product a:visited,
#meilleuresventes .lud-accueil-v2-grille-produits .woocommerce-loop-product__title,
#nouveautes .lud-accueil-v2-grille-produits li.product a,
#nouveautes .lud-accueil-v2-grille-produits li.product a:visited,
#nouveautes .lud-accueil-v2-grille-produits .woocommerce-loop-product__title {
  color: #111111 !important;
}

/* Les prix gardent leurs propres couleurs */
#promotions .lud-accueil-v2-grille-produits .price,
#promotions .lud-accueil-v2-grille-produits .price *,
#meilleuresventes .lud-accueil-v2-grille-produits .price,
#meilleuresventes .lud-accueil-v2-grille-produits .price *,
#nouveautes .lud-accueil-v2-grille-produits .price,
#nouveautes .lud-accueil-v2-grille-produits .price * {
  color: var(--home2-bleu) !important;
}

/* Prix remisé toujours rouge */
#promotions .lud-accueil-v2-grille-produits .price ins,
#promotions .lud-accueil-v2-grille-produits .price ins *,
#meilleuresventes .lud-accueil-v2-grille-produits .price ins,
#meilleuresventes .lud-accueil-v2-grille-produits .price ins *,
#nouveautes .lud-accueil-v2-grille-produits .price ins,
#nouveautes .lud-accueil-v2-grille-produits .price ins * {
  color: var(--home2-rouge) !important;
}

/* Ancien prix barré gris */
#promotions .lud-accueil-v2-grille-produits .price del,
#promotions .lud-accueil-v2-grille-produits .price del *,
#meilleuresventes .lud-accueil-v2-grille-produits .price del,
#meilleuresventes .lud-accueil-v2-grille-produits .price del *,
#nouveautes .lud-accueil-v2-grille-produits .price del,
#nouveautes .lud-accueil-v2-grille-produits .price del * {
  color: #8d96a3 !important;
}


/* ==========================================================
   AJUSTEMENTS FINAUX — TITRES DE SECTIONS ET WISHLIST
   ========================================================== */


/* ----------------------------------------------------------
   1. NOMS DES PRODUITS : TOUJOURS NOIRS
   ---------------------------------------------------------- */

#nouveautes .woocommerce-loop-product__title,
#promotions .woocommerce-loop-product__title,
#meilleuresventes .woocommerce-loop-product__title,
#nouveautes li.product a.woocommerce-LoopProduct-link,
#promotions li.product a.woocommerce-LoopProduct-link,
#meilleuresventes li.product a.woocommerce-LoopProduct-link,
#nouveautes li.product a.woocommerce-LoopProduct-link:visited,
#promotions li.product a.woocommerce-LoopProduct-link:visited,
#meilleuresventes li.product a.woocommerce-LoopProduct-link:visited {
  color: #111111 !important;
}


/* ----------------------------------------------------------
   2. COULEURS DES TITRES DE SECTIONS UNIQUEMENT
   ---------------------------------------------------------- */

/* Nouveautés en jaune */
#nouveautes > .lud-accueil-v2-entete-ligne h2,
#nouveautes > .lud-accueil-v2-entete-ligne .lud-accueil-v2-sur-titre {
  color: #d89a00 !important;
}

/* Promotions en rouge */
#promotions > .lud-accueil-v2-entete-ligne h2,
#promotions > .lud-accueil-v2-entete-ligne .lud-accueil-v2-sur-titre {
  color: var(--home2-rouge) !important;
}

/* Meilleures ventes en orange */
#meilleuresventes > .lud-accueil-v2-entete-ligne h2,
#meilleuresventes > .lud-accueil-v2-entete-ligne .lud-accueil-v2-sur-titre {
  color: #e47a00 !important;
}


/* ----------------------------------------------------------
   3. BADGE PROMO ROUGE
   ---------------------------------------------------------- */

.lud-accueil-v2-grille-produits span.onsale,
#promotions .lud-accueil-v2-pastille-promo {
  color: #ffffff !important;
  background: var(--home2-rouge) !important;
}


/* ----------------------------------------------------------
   4. PRIX
   - prix normal bleu
   - ancien prix gris
   - prix remisé rouge
   ---------------------------------------------------------- */

#nouveautes .price,
#nouveautes .price .woocommerce-Price-amount,
#promotions .price,
#promotions .price .woocommerce-Price-amount,
#meilleuresventes .price,
#meilleuresventes .price .woocommerce-Price-amount {
  color: var(--home2-bleu) !important;
}

#nouveautes .price del,
#nouveautes .price del .woocommerce-Price-amount,
#promotions .price del,
#promotions .price del .woocommerce-Price-amount,
#meilleuresventes .price del,
#meilleuresventes .price del .woocommerce-Price-amount {
  color: #8d96a3 !important;
}

#nouveautes .price ins,
#nouveautes .price ins .woocommerce-Price-amount,
#promotions .price ins,
#promotions .price ins .woocommerce-Price-amount,
#meilleuresventes .price ins,
#meilleuresventes .price ins .woocommerce-Price-amount {
  color: var(--home2-rouge) !important;
}


/* ----------------------------------------------------------
   5. WISHLIST : GARDER UNIQUEMENT LE CŒUR
   ---------------------------------------------------------- */

.lud-accueil-v2-grille-produits .tinv-wraper.tinv-wishlist {
  position: relative !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;

  width: 38px !important;
  min-width: 38px !important;
  max-width: 38px !important;

  margin: 8px 0 0 !important;
  padding: 0 !important;
}

.lud-accueil-v2-grille-produits .tinvwl_add_to_wishlist_button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;

  height: 36px !important;
  min-height: 36px !important;

  margin: 0 !important;
  padding: 0 !important;

  color: var(--home2-rouge) !important;

  font-size: 0 !important;
  line-height: 1 !important;
  text-indent: 0 !important;
  text-decoration: none !important;

  background: rgba(207, 31, 31, 0.07) !important;

  border: 1px solid rgba(207, 31, 31, 0.14) !important;
  border-radius: 50% !important;

  box-shadow: none !important;
}

.lud-accueil-v2-grille-produits .tinvwl_add_to_wishlist_button:hover {
  color: #ffffff !important;
  background: var(--home2-rouge) !important;
}

/* Masque les textes éventuels du plugin */
.lud-accueil-v2-grille-produits
.tinvwl_add_to_wishlist_button
.tinvwl_add_to_wishlist-text,
.lud-accueil-v2-grille-produits
.tinvwl_add_to_wishlist_button
span:not(.tinvwl-icon) {
  display: none !important;
}

/* Conserve l'icône cœur */
.lud-accueil-v2-grille-produits
.tinvwl_add_to_wishlist_button::before,
.lud-accueil-v2-grille-produits
.tinvwl_add_to_wishlist_button
.tinvwl-icon,
.lud-accueil-v2-grille-produits
.tinvwl_add_to_wishlist_button
i {
  display: inline-block !important;

  margin: 0 !important;

  color: inherit !important;

  font-size: 19px !important;
  line-height: 1 !important;
}


/* ----------------------------------------------------------
   6. INFO-BULLE SIMPLE AU SURVOL
   ---------------------------------------------------------- */

.lud-accueil-v2-grille-produits .tinvwl-tooltip {
  display: none !important;
}


/* ----------------------------------------------------------
   7. PETITE CONFIRMATION APRÈS AJOUT AUX FAVORIS
   - près du cœur
   - sans fond couvrant tout l'écran
   - disparition rapide
   ---------------------------------------------------------- */

.lud-accueil-v2-grille-produits
.tinv-wraper.tinv-wishlist
.tinvwl_added_to_wishlist.tinv-modal {
  position: absolute !important;
  top: auto !important;
  right: auto !important;
  bottom: 44px !important;
  left: 18px !important;
  z-index: 9999 !important;

  display: block !important;

  width: max-content !important;
  min-width: 0 !important;
  max-width: 210px !important;

  height: auto !important;
  min-height: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  overflow: visible !important;

  background: transparent !important;

  transform: translateX(-18%) !important;

  animation:
    ludWishlistPetitMessage 1.9s ease forwards !important;

  pointer-events: none !important;
}

/* Supprime l'overlay plein écran */
.lud-accueil-v2-grille-produits
.tinvwl_added_to_wishlist
.tinv-overlay {
  display: none !important;
}

/* Neutralise la structure de tableau du modal */
.lud-accueil-v2-grille-produits
.tinvwl_added_to_wishlist
.tinv-table,
.lud-accueil-v2-grille-produits
.tinvwl_added_to_wishlist
.tinv-cell {
  display: block !important;

  width: auto !important;
  height: auto !important;
  min-height: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
}

/* Petite bulle */
.lud-accueil-v2-grille-produits
.tinvwl_added_to_wishlist
.tinv-modal-inner {
  display: flex !important;
  align-items: center !important;

  width: max-content !important;
  min-width: 0 !important;
  max-width: 210px !important;

  margin: 0 !important;
  padding: 9px 11px !important;

  color: #ffffff !important;

  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;

  background: var(--home2-nuit) !important;

  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 9px !important;

  box-shadow:
    0 10px 24px rgba(7, 26, 51, 0.22) !important;

  gap: 7px !important;
}

/* Icône dans la bulle */
.lud-accueil-v2-grille-produits
.tinvwl_added_to_wishlist
.tinv-modal-inner
> i {
  flex: 0 0 auto !important;

  color: var(--home2-jaune) !important;

  font-size: 14px !important;
}

/* Texte de confirmation */
.lud-accueil-v2-grille-produits
.tinvwl_added_to_wishlist
.tinv-txt {
  color: #ffffff !important;

  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

/* Cache les boutons Voir / Fermer dans cette petite bulle */
.lud-accueil-v2-grille-produits
.tinvwl_added_to_wishlist
.tinvwl-buttons-group,
.lud-accueil-v2-grille-produits
.tinvwl_added_to_wishlist
.tinv-wishlist-clear {
  display: none !important;
}

@keyframes ludWishlistPetitMessage {
  0% {
    opacity: 0;
    transform: translate(-18%, 6px) scale(0.96);
  }

  15% {
    opacity: 1;
    transform: translate(-18%, 0) scale(1);
  }

  72% {
    opacity: 1;
    transform: translate(-18%, 0) scale(1);
  }

  100% {
    opacity: 0;
    visibility: hidden;
    transform: translate(-18%, -4px) scale(0.98);
  }
}


/* ----------------------------------------------------------
   8. MOBILE
   ---------------------------------------------------------- */

@media screen and (max-width: 767px) {

  .lud-accueil-v2-grille-produits
  .tinv-wraper.tinv-wishlist
  .tinvwl_added_to_wishlist.tinv-modal {
    left: 8px !important;

    max-width: 170px !important;

    transform: none !important;
  }

  .lud-accueil-v2-grille-produits
  .tinvwl_added_to_wishlist
  .tinv-modal-inner {
    max-width: 170px !important;

    padding: 8px 9px !important;

    font-size: 10px !important;
  }

  .lud-accueil-v2-grille-produits
  .tinvwl_added_to_wishlist
  .tinv-txt {
    font-size: 10px !important;
  }

  @keyframes ludWishlistPetitMessage {
    0% {
      opacity: 0;
      transform: translateY(6px) scale(0.96);
    }

    15% {
      opacity: 1;
      transform: translateY(0) scale(1);
    }

    72% {
      opacity: 1;
      transform: translateY(0) scale(1);
    }

    100% {
      opacity: 0;
      visibility: hidden;
      transform: translateY(-4px) scale(0.98);
    }
  }
}


/* ==========================================================
   CORRECTION — MEILLEURES VENTES EN ORANGE PARTOUT
   Le raccourci sous le bandeau utilise exactement la même
   couleur que le grand titre de la section.
   ========================================================== */

#meilleuresventes > .lud-accueil-v2-entete-ligne h2,
#meilleuresventes > .lud-accueil-v2-entete-ligne .lud-accueil-v2-sur-titre,
.lud-accueil-v2-raccourcis a:nth-child(3),
.lud-accueil-v2-raccourcis a:nth-child(3) span {
  color: #e47a00 !important;
}

/* Léger fond orange au survol du petit raccourci */
.lud-accueil-v2-raccourcis a:nth-child(3):hover {
  color: #e47a00 !important;

  background: rgba(228, 122, 0, 0.08) !important;
  border-color: rgba(228, 122, 0, 0.24) !important;
}


/* ==========================================================
   CORRECTION — BOUTONS BLEU NUIT DÉGRADÉS
   - Ajouter au panier
   - Voir le panier après ajout
   - Découvrir notre histoire
   ========================================================== */


/* Tous les boutons produits en bleu nuit dégradé */
.lud-accueil-v2-grille-produits li.product .button,
.lud-accueil-v2-grille-produits li.product a.button,
.lud-accueil-v2-grille-produits li.product a.added_to_cart,
#nouveautes .lud-accueil-v2-grille-produits li.product .button,
#promotions .lud-accueil-v2-grille-produits li.product .button,
#meilleuresventes .lud-accueil-v2-grille-produits li.product .button {
  color: #ffffff !important;

  background:
    linear-gradient(
      120deg,
      var(--home2-nuit) 0%,
      #082f68 52%,
      var(--home2-bleu) 100%
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;

  box-shadow:
    0 9px 20px rgba(7, 26, 51, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
}


/* Survol des boutons produits */
.lud-accueil-v2-grille-produits li.product .button:hover,
.lud-accueil-v2-grille-produits li.product a.button:hover,
.lud-accueil-v2-grille-produits li.product a.added_to_cart:hover,
#nouveautes .lud-accueil-v2-grille-produits li.product .button:hover,
#promotions .lud-accueil-v2-grille-produits li.product .button:hover,
#meilleuresventes .lud-accueil-v2-grille-produits li.product .button:hover {
  color: #ffffff !important;

  background:
    linear-gradient(
      120deg,
      #041126 0%,
      var(--home2-nuit) 48%,
      #083f9b 100%
    ) !important;

  transform: translateY(-2px) !important;

  box-shadow:
    0 13px 25px rgba(7, 26, 51, 0.30),
    inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}


/* Bouton Découvrir notre histoire */
.lud-accueil-v2-presentation-texte > a,
.lud-accueil-v2-presentation-texte a {
  color: #ffffff !important;

  background:
    linear-gradient(
      120deg,
      var(--home2-nuit) 0%,
      #082f68 52%,
      var(--home2-bleu) 100%
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;

  box-shadow:
    0 10px 22px rgba(7, 26, 51, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background 0.2s ease !important;
}


/* Survol Découvrir notre histoire */
.lud-accueil-v2-presentation-texte > a:hover,
.lud-accueil-v2-presentation-texte a:hover {
  color: #ffffff !important;

  background:
    linear-gradient(
      120deg,
      #041126 0%,
      var(--home2-nuit) 48%,
      #083f9b 100%
    ) !important;

  transform: translateY(-2px) !important;

  box-shadow:
    0 14px 27px rgba(7, 26, 51, 0.30),
    inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}


/* ==========================================================
   CORRECTIONS V8
   - Le raccourci 01 Nouveautés est jaune
   - Le bouton final Voir la boutique est bleu nuit dégradé
   ========================================================== */


/* ----------------------------------------------------------
   1. RACCOURCI 01 NOUVEAUTÉS : JAUNE PARTOUT
   ---------------------------------------------------------- */

.lud-accueil-v2-raccourcis a:first-child,
.lud-accueil-v2-raccourcis a:first-child:link,
.lud-accueil-v2-raccourcis a:first-child:visited,
.lud-accueil-v2-raccourcis a:nth-child(1),
.lud-accueil-v2-raccourcis a:nth-child(1) span {
  color: #d89a00 !important;
}

.lud-accueil-v2-raccourcis a:first-child:hover,
.lud-accueil-v2-raccourcis a:nth-child(1):hover {
  color: #d89a00 !important;

  background: rgba(216, 154, 0, 0.08) !important;
  border-color: rgba(216, 154, 0, 0.24) !important;
}


/* ----------------------------------------------------------
   2. BOUTON FINAL VOIR LA BOUTIQUE : BLEU NUIT DÉGRADÉ
   ---------------------------------------------------------- */

.lud-accueil-v2-final > a,
.lud-accueil-v2-final > a:link,
.lud-accueil-v2-final > a:visited {
  color: #ffffff !important;

  background:
    linear-gradient(
      120deg,
      var(--home2-nuit) 0%,
      #082f68 52%,
      var(--home2-bleu) 100%
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;

  box-shadow:
    0 10px 22px rgba(7, 26, 51, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background 0.2s ease !important;
}

.lud-accueil-v2-final > a:hover,
.lud-accueil-v2-final > a:focus {
  color: #ffffff !important;

  background:
    linear-gradient(
      120deg,
      #041126 0%,
      var(--home2-nuit) 48%,
      #083f9b 100%
    ) !important;

  transform: translateY(-2px) !important;

  box-shadow:
    0 14px 28px rgba(7, 26, 51, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}


/* ==========================================================
   CORRECTION V9 — BOUTON FINAL VOIR LA BOUTIQUE EN JAUNE
   ========================================================== */

.lud-accueil-v2-final > a,
.lud-accueil-v2-final > a:link,
.lud-accueil-v2-final > a:visited {
  color: var(--home2-nuit) !important;

  background:
    linear-gradient(
      120deg,
      #f4c233 0%,
      var(--home2-jaune) 52%,
      #d89a00 100%
    ) !important;

  border: 1px solid rgba(216, 154, 0, 0.28) !important;

  box-shadow:
    0 10px 22px rgba(216, 154, 0, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.30) !important;
}

.lud-accueil-v2-final > a:hover,
.lud-accueil-v2-final > a:focus {
  color: var(--home2-nuit) !important;

  background:
    linear-gradient(
      120deg,
      var(--home2-jaune) 0%,
      #e7ad16 52%,
      #c98500 100%
    ) !important;

  transform: translateY(-2px) !important;

  box-shadow:
    0 14px 28px rgba(216, 154, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.24) !important;
}


/* ==========================================================
   VERSION V11 — BLOC D'ACCUEIL PLUS COMPACT
   Réduction de la hauteur, des espacements et des textes
   sans modifier les couleurs ni les boutons.
   ========================================================== */

.lud-accueil-v2-hero {
  grid-template-columns: minmax(0, 1.45fr) minmax(180px, 0.55fr) !important;

  min-height: 260px !important;

  padding: 24px 38px !important;

  gap: 28px !important;

  border-radius: 18px !important;
}

.lud-accueil-v2-hero h1 {
  max-width: 650px !important;

  margin-top: 10px !important;

  font-size: clamp(30px, 3.5vw, 42px) !important;
  line-height: 1.04 !important;
}

.lud-accueil-v2-badge {
  padding: 6px 11px !important;

  font-size: 10px !important;
}

.lud-accueil-v2-trait {
  width: 70px !important;
  height: 3px !important;

  margin: 12px 0 13px !important;
}

.lud-accueil-v2-hero-texte > p {
  max-width: 610px !important;

  font-size: 14px !important;
  line-height: 1.5 !important;
}

.lud-accueil-v2-actions {
  margin-top: 16px !important;

  gap: 8px !important;
}

.lud-accueil-v2-bouton {
  min-height: 40px !important;

  padding: 9px 14px !important;

  font-size: 12px !important;

  border-radius: 9px !important;
}

.lud-accueil-v2-symbole {
  min-height: 170px !important;
}

.lud-accueil-v2-symbole strong {
  width: 88px !important;
  height: 88px !important;

  font-size: 43px !important;

  border-radius: 23px !important;
}

.lud-accueil-v2-symbole-bleu {
  width: 21px !important;
  height: 21px !important;
}

.lud-accueil-v2-symbole-jaune {
  width: 17px !important;
  height: 17px !important;
}

.lud-accueil-v2-symbole-rouge {
  width: 15px !important;
  height: 15px !important;
}


/* Tablette */
@media screen and (max-width: 950px) {

  .lud-accueil-v2-hero {
    grid-template-columns: minmax(0, 1fr) 160px !important;

    min-height: 245px !important;

    padding: 23px 28px !important;
  }

  .lud-accueil-v2-symbole {
    min-height: 145px !important;
  }
}


/* Mobile */
@media screen and (max-width: 767px) {

  .lud-accueil-v2-hero {
    grid-template-columns: 1fr !important;

    min-height: 0 !important;

    padding: 22px 16px !important;

    gap: 14px !important;

    border-radius: 15px !important;
  }

  .lud-accueil-v2-hero h1 {
    margin-top: 9px !important;

    font-size: 27px !important;
    line-height: 1.06 !important;
  }

  .lud-accueil-v2-hero-texte > p {
    font-size: 13px !important;
    line-height: 1.48 !important;
  }

  .lud-accueil-v2-actions {
    margin-top: 14px !important;
  }

  .lud-accueil-v2-bouton {
    min-height: 39px !important;

    padding: 8px 12px !important;
  }

  .lud-accueil-v2-symbole {
    min-height: 105px !important;
  }

  .lud-accueil-v2-symbole strong {
    width: 68px !important;
    height: 68px !important;

    font-size: 34px !important;

    border-radius: 18px !important;
  }
}

/* Couche Accueil Premium native */

/* ==========================================================
   v1.0.6 — STABILITÉ + ANTI-FLASH SÛR
   Aucun JS précoce. Aucun masquage global. Aucun loader.
   ========================================================== */

body.home.lud-home-premium-ready {
  --lhome-blue:#0B4DBB;
  --lhome-red:#D72626;
  --lhome-yellow:#F5C518;
  --lhome-navy:#071A33;
  --lhome-text:#40556D;
  --lhome-muted:#748397;
  --lhome-line:#DFE7F1;
  --lhome-soft:#F7FAFE;
  --lhome-green:#16884B;
}

/* Les quatre grandes zones prennent immédiatement leur rythme final,
   même avant l'exécution du JS de finition. */
body.home #nouveautes,
body.home #promotions,
body.home #packs-ludorum,
body.home #meilleuresventes {
  margin-top:30px!important;
  margin-bottom:30px!important;
}

body.home #nouveautes > .lud-accueil-v2-entete-ligne,
body.home #promotions > .lud-accueil-v2-entete-ligne,
body.home #packs-ludorum > .lud-accueil-v2-entete-ligne,
body.home #meilleuresventes > .lud-accueil-v2-entete-ligne {
  min-height:54px;
  margin-bottom:10px!important;
}

body.home #nouveautes .lud-accueil-v2-grille-produits,
body.home #promotions .lud-accueil-v2-grille-produits,
body.home #packs-ludorum .lud-accueil-v2-grille-produits,
body.home #meilleuresventes .lud-accueil-v2-grille-produits {
  margin-top:0!important;
}

@media(max-width:767px) {
  body.home #nouveautes,
  body.home #promotions,
  body.home #packs-ludorum,
  body.home #meilleuresventes {
    margin-top:24px!important;
    margin-bottom:24px!important;
  }
}

/* ==========================================================
   LUDORUM — ACCUEIL PREMIUM v1.0.0
   Une couche de conversion au-dessus de l'accueil existant.
   ========================================================== */

body.lud-home-premium-ready {
  --lhome-blue:#0B4DBB;
  --lhome-red:#D72626;
  --lhome-yellow:#F5C518;
  --lhome-navy:#071A33;
  --lhome-text:#40556D;
  --lhome-muted:#748397;
  --lhome-line:#DFE7F1;
  --lhome-soft:#F7FAFE;
  --lhome-green:#16884B;
}

/* ----------------------------------------------------------
   HERO : le bouton Boutique reste primaire.
   LudoMatch devient le second choix évident.
   ---------------------------------------------------------- */

body.home .lud-home-premium-hero-actions {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-top:12px;
}

body.home .lud-home-premium-hero-actions .lud-bandeau-bouton {
  margin:0!important;
}

body.home .lud-home-premium-hero-match {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:40px;
  padding:9px 14px;
  border:1px solid rgba(11,77,187,.25);
  border-radius:9px;
  background:#fff;
  color:var(--lhome-blue)!important;
  box-shadow:0 5px 14px rgba(7,26,51,.05);
  font-size:10.5px;
  font-weight:900;
  text-decoration:none!important;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}

body.home .lud-home-premium-hero-match span {
  color:var(--lhome-red);
  font-size:11px;
}

body.home .lud-home-premium-hero-match:hover {
  transform:translateY(-1px);
  border-color:rgba(11,77,187,.48);
  box-shadow:0 8px 18px rgba(11,77,187,.10);
}

body.home .lud-home-premium-hero-helper {
  display:block;
  margin-top:7px;
  color:#6B7D91;
  font-size:8.5px;
  font-weight:700;
}

/* ----------------------------------------------------------
   LUDOMATCH : le vrai différenciateur Ludorum.
   ---------------------------------------------------------- */

.lud-home-premium-match,
.lud-home-premium-card-block,
.lud-home-premium-trust {
  width:100%;
  max-width:none;
  box-sizing:border-box;
}

.lud-home-premium-match {
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(390px,1.08fr);
  gap:22px;
  align-items:center;
  margin:27px 0 30px;
  padding:22px 23px;
  border:1px solid rgba(11,77,187,.13);
  border-radius:17px;
  background:
    radial-gradient(circle at 8% 20%,rgba(245,197,24,.12),transparent 28%),
    linear-gradient(135deg,#FFFFFF 0%,#F7FAFF 100%);
  box-shadow:0 9px 25px rgba(7,26,51,.055);
}

.lud-home-premium-match::before,
.lud-home-premium-card-block::before {
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:4px;
  background:linear-gradient(90deg,var(--lhome-blue) 0 33.33%,var(--lhome-yellow) 33.33% 66.66%,var(--lhome-red) 66.66% 100%);
}

.lud-home-premium-kicker {
  display:block;
  margin-bottom:5px;
  color:var(--lhome-blue);
  font-size:8px;
  font-weight:950;
  letter-spacing:.09em;
}

.lud-home-premium-match__copy h2,
.lud-home-premium-card-block__copy h2 {
  margin:0 0 6px!important;
  color:var(--lhome-navy)!important;
  font-size:clamp(23px,2.6vw,30px)!important;
  font-weight:950!important;
  line-height:1.08!important;
  letter-spacing:-.02em;
}

.lud-home-premium-match__copy>p,
.lud-home-premium-card-block__copy>p {
  max-width:620px;
  margin:0!important;
  color:var(--lhome-muted)!important;
  font-size:10.5px!important;
  line-height:1.5!important;
}

.lud-home-premium-match__proofs {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:13px;
}

.lud-home-premium-match__proofs span {
  display:inline-flex;
  align-items:center;
  gap:4px;
  min-height:25px;
  padding:5px 8px;
  border:1px solid #DFE7F1;
  border-radius:999px;
  background:#fff;
  color:#61738A;
  font-size:8.5px;
  font-weight:800;
}

.lud-home-premium-match__proofs b {
  color:var(--lhome-navy);
  font-weight:950;
}

.lud-home-premium-match__choices {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}

.lud-home-premium-match-card {
  position:relative;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 18px;
  gap:10px;
  align-items:center;
  min-width:0;
  min-height:94px;
  padding:12px;
  border:1px solid #DCE5F0;
  border-radius:13px;
  background:#fff;
  color:var(--lhome-navy)!important;
  box-shadow:0 6px 17px rgba(7,26,51,.045);
  text-decoration:none!important;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}

.lud-home-premium-match-card:hover {
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(7,26,51,.08);
}

.lud-home-premium-match-card.is-solo:hover {
  border-color:rgba(215,38,38,.35);
}

.lud-home-premium-match-card.is-group:hover {
  border-color:rgba(11,77,187,.38);
}

.lud-home-premium-match-card__icon {
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:11px;
  font-size:20px;
  font-weight:950;
  transform:rotate(-5deg);
}

.lud-home-premium-match-card.is-solo .lud-home-premium-match-card__icon {
  color:#fff;
  background:linear-gradient(135deg,#D72626,#EC4350);
}

.lud-home-premium-match-card.is-group .lud-home-premium-match-card__icon {
  color:#071A33;
  background:linear-gradient(135deg,#F5C518,#FFD84F);
}

.lud-home-premium-match-card div {
  min-width:0;
}

.lud-home-premium-match-card small {
  display:block;
  color:#7B899B;
  font-size:6.8px;
  font-weight:950;
  letter-spacing:.07em;
}

.lud-home-premium-match-card strong {
  display:block;
  margin:2px 0;
  color:var(--lhome-navy);
  font-size:12px;
  font-weight:950;
  line-height:1.2;
}

.lud-home-premium-match-card div>span {
  display:block;
  color:#718095;
  font-size:8.2px;
  line-height:1.35;
}

.lud-home-premium-match-card>b {
  color:var(--lhome-blue);
  font-size:14px;
  font-weight:950;
}

/* ----------------------------------------------------------
   SECTIONS PRODUITS : micro-harmonisation uniquement.
   ---------------------------------------------------------- */

body.home .lud-home-premium-product-section {
  margin-top:30px!important;
  margin-bottom:30px!important;
}

body.home .lud-home-premium-product-head {
  min-height:54px;
  margin-bottom:10px!important;
}

body.home .lud-home-premium-product-title {
  letter-spacing:-.018em;
}

body.home .lud-home-premium-product-grid {
  margin-top:0!important;
}

body.home .lud-home-premium-section-link,
body.home .lud-home-premium-chip {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  padding:6px 12px!important;
  border:1px solid #D8E3F0!important;
  border-radius:999px!important;
  background:#FFFFFF!important;
  font-size:8.9px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  box-shadow:0 3px 9px rgba(7,26,51,.035)!important;
  transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease;
}

body.home .lud-home-premium-section-link:hover,
body.home .lud-home-premium-chip:hover {
  transform:translateY(-1px);
  box-shadow:0 5px 12px rgba(7,26,51,.05)!important;
}

body.home #nouveautes .lud-home-premium-section-link,
body.home #nouveautes .lud-home-premium-chip,
body.home #nouveautes .lud-home-premium-newest-link {
  color:#C98E00!important;
  border-color:rgba(245,197,24,.34)!important;
  background:rgba(245,197,24,.10)!important;
}

body.home #promotions .lud-home-premium-section-link,
body.home #promotions .lud-home-premium-chip {
  color:var(--lhome-red)!important;
  border-color:rgba(215,38,38,.24)!important;
  background:rgba(215,38,38,.08)!important;
}

body.home #packs-ludorum .lud-home-premium-section-link,
body.home #packs-ludorum .lud-home-premium-chip,
body.home #packs-ludorum .lud-home-pack-link {
  color:var(--lhome-green)!important;
  border-color:rgba(22,136,75,.22)!important;
  background:rgba(22,136,75,.08)!important;
}

body.home #meilleuresventes .lud-home-premium-section-link,
body.home #meilleuresventes .lud-home-premium-chip {
  color:#D78600!important;
  border-color:rgba(245,197,24,.30)!important;
  background:rgba(245,197,24,.09)!important;
}

/* Séparateur léger entre grandes familles de contenu. */
body.home .lud-home-premium-product-section + .lud-home-premium-product-section {
  padding-top:3px;
}

/* Packs : le bénéfice doit être plus facile à lire sans grossir les cartes. */
body.home #packs-ludorum .lud-accueil-v2-packs-heading p strong {
  color:var(--lhome-green)!important;
  font-weight:950!important;
}

body.home #packs-ludorum .lud-home-pack-notice {
  opacity:.88;
}

/* ----------------------------------------------------------
   CARTE LUDORUM : rappel compact après les produits.
   ---------------------------------------------------------- */

.lud-home-premium-card-block {
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:74px minmax(190px,.8fr) minmax(350px,1.4fr) auto;
  gap:17px;
  align-items:center;
  margin:33px 0 15px;
  padding:18px 20px;
  border:1px solid rgba(11,77,187,.14);
  border-radius:16px;
  background:
    radial-gradient(circle at 12% 50%,rgba(11,77,187,.10),transparent 26%),
    #fff;
  box-shadow:0 8px 23px rgba(7,26,51,.05);
}

.lud-home-premium-card-block__brand {
  display:grid;
  place-items:center;
  width:60px;
  height:60px;
  border-radius:14px;
  background:linear-gradient(145deg,#071A33,#0B4DBB);
  box-shadow:0 7px 17px rgba(11,77,187,.18);
}

.lud-home-premium-card-block__brand span {
  color:var(--lhome-yellow);
  font-size:29px;
  font-weight:950;
  transform:rotate(-7deg);
}

.lud-home-premium-card-block__copy h2 {
  font-size:21px!important;
}

.lud-home-premium-card-block__benefits {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
}

.lud-home-premium-card-block__benefits>div {
  min-width:0;
  padding:9px;
  border:1px solid #E0E7F0;
  border-radius:9px;
  background:#FAFCFF;
}

.lud-home-premium-card-block__benefits>div.is-highlight {
  border-color:#F1D66E;
  background:#FFF9E3;
}

.lud-home-premium-card-block__benefits small {
  display:block;
  color:#7D899A;
  font-size:6.3px;
  font-weight:950;
  letter-spacing:.05em;
}

.lud-home-premium-card-block__benefits strong {
  display:block;
  overflow:hidden;
  margin:2px 0 1px;
  color:var(--lhome-navy);
  font-size:10.5px;
  font-weight:950;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.lud-home-premium-card-block__benefits .is-highlight strong {
  color:var(--lhome-blue);
}

.lud-home-premium-card-block__benefits span {
  display:block;
  color:#78879A;
  font-size:7px;
  line-height:1.3;
}

.lud-home-premium-card-block__cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:40px;
  padding:9px 13px;
  border-radius:9px;
  color:#fff!important;
  background:linear-gradient(120deg,#07336F,var(--lhome-blue));
  box-shadow:0 6px 14px rgba(11,77,187,.16);
  font-size:9.5px;
  font-weight:900;
  text-align:center;
  text-decoration:none!important;
  white-space:nowrap;
}

.lud-home-premium-card-block__cta:hover {
  color:#fff!important;
  transform:translateY(-1px);
}

/* ----------------------------------------------------------
   RASSURANCE : très compacte avant le footer.
   ---------------------------------------------------------- */

.lud-home-premium-trust {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin:0 0 25px;
}

.lud-home-premium-trust>div {
  display:flex;
  align-items:center;
  gap:9px;
  min-height:55px;
  padding:10px 12px;
  border:1px solid #E1E8F0;
  border-radius:10px;
  background:#FAFCFF;
}

.lud-home-premium-trust>div>span {
  display:grid;
  flex:0 0 auto;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:8px;
  color:var(--lhome-blue);
  background:#EAF2FF;
  font-size:11px;
  font-weight:950;
}

.lud-home-premium-trust>div:nth-child(2)>span {
  color:#7B5C00;
  background:#FFF3BC;
}

.lud-home-premium-trust>div:nth-child(3)>span {
  color:#fff;
  background:var(--lhome-red);
}

.lud-home-premium-trust p {
  margin:0!important;
}

.lud-home-premium-trust strong {
  display:block;
  color:var(--lhome-navy);
  font-size:8.8px;
  font-weight:900;
}

.lud-home-premium-trust small {
  display:block;
  margin-top:1px;
  color:#79889B;
  font-size:7.3px;
  line-height:1.3;
}

/* ----------------------------------------------------------
   TABLETTE
   ---------------------------------------------------------- */

@media(max-width:950px) {
  .lud-home-premium-match {
    grid-template-columns:1fr;
    gap:16px;
  }

  .lud-home-premium-card-block {
    grid-template-columns:60px minmax(0,1fr) auto;
  }

  .lud-home-premium-card-block__benefits {
    grid-column:1 / -1;
    grid-row:2;
  }
}

/* ----------------------------------------------------------
   TÉLÉPHONE
   ---------------------------------------------------------- */

@media(max-width:767px) {
  body.home .lud-home-premium-hero-actions {
    align-items:stretch;
    display:grid;
    grid-template-columns:1fr 1fr;
    width:100%;
  }

  body.home .lud-home-premium-hero-actions .lud-bandeau-bouton,
  body.home .lud-home-premium-hero-match {
    width:100%;
    min-width:0;
    padding-left:9px;
    padding-right:9px;
  }

  body.home .lud-home-premium-hero-helper {
    font-size:7.5px;
  }

  .lud-home-premium-match {
    margin:21px 0 24px;
    padding:17px 13px;
    border-radius:14px;
  }

  .lud-home-premium-match__choices {
    grid-template-columns:1fr;
  }

  .lud-home-premium-match-card {
    min-height:78px;
  }

  .lud-home-premium-match__proofs {
    gap:4px;
  }

  .lud-home-premium-match__proofs span {
    font-size:7.5px;
  }

  body.home .lud-home-premium-product-section {
    margin-top:24px!important;
    margin-bottom:24px!important;
  }

  .lud-home-premium-card-block {
    grid-template-columns:48px minmax(0,1fr);
    gap:12px;
    padding:15px 13px;
    border-radius:14px;
  }

  .lud-home-premium-card-block__brand {
    width:46px;
    height:46px;
    border-radius:11px;
  }

  .lud-home-premium-card-block__brand span {
    font-size:22px;
  }

  .lud-home-premium-card-block__benefits {
    grid-column:1 / -1;
    grid-template-columns:1fr 1fr;
  }

  .lud-home-premium-card-block__cta {
    grid-column:1 / -1;
    width:100%;
  }

  .lud-home-premium-trust {
    grid-template-columns:1fr;
    margin-bottom:20px;
  }

  .lud-home-premium-trust>div {
    min-height:48px;
  }
}

@media(max-width:420px) {
  body.home .lud-home-premium-hero-actions {
    grid-template-columns:1fr;
  }

  .lud-home-premium-card-block__benefits {
    grid-template-columns:1fr 1fr;
  }
}


/* ==========================================================
   LUDORUM — ACCUEIL PREMIUM v1.0.1
   - Carte membre active contextualisée
   - CTA Nouveautés explicite
   ========================================================== */

/* Le lien Nouveautés devient une vraie pastille d'action, dans l'esprit Packs. */
body.home #nouveautes .lud-home-premium-newest-link {
  display:inline-flex!important;
}

body.home #nouveautes .lud-home-premium-newest-link::after {
  content:"→";
  margin-left:5px;
  color:inherit;
  font-weight:950;
}

body.home #nouveautes .lud-home-premium-newest-link:hover {
  border-color:rgba(245,197,24,.50)!important;
  background:rgba(245,197,24,.16)!important;
}

/* Carte Ludorum déjà détenue : on ne revend plus l'abonnement. */
.lud-home-premium-card-block.is-member {
  border-color:rgba(11,77,187,.20);
  background:
    radial-gradient(circle at 12% 50%,rgba(11,77,187,.13),transparent 27%),
    linear-gradient(135deg,#FFFFFF 0%,#F4F8FF 100%);
}

.lud-home-premium-card-block__brand.is-member {
  background:linear-gradient(145deg,#071A33 0%,#0B4DBB 100%);
  box-shadow:0 7px 19px rgba(11,77,187,.22);
}

.lud-home-premium-card-block__benefits.is-member>div {
  background:#FFFFFF;
}

.lud-home-premium-card-block__benefits.is-member .is-highlight {
  border-color:#BFD4F3;
  background:#EEF5FF;
}

.lud-home-premium-card-block__member-actions {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:5px;
  min-width:145px;
}

.lud-home-premium-card-block__circle {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:6px 9px;
  border:1px solid #D5E0EE;
  border-radius:8px;
  background:#FFFFFF;
  color:var(--lhome-blue)!important;
  font-size:8px;
  font-weight:850;
  text-align:center;
  text-decoration:none!important;
}

.lud-home-premium-card-block__circle:hover {
  border-color:rgba(11,77,187,.38);
  background:#F6F9FF;
}

/* Tablette : les actions membre restent regroupées. */
@media(max-width:950px) {
  .lud-home-premium-card-block.is-member {
    grid-template-columns:60px minmax(0,1fr) auto;
  }

  .lud-home-premium-card-block.is-member .lud-home-premium-card-block__benefits {
    grid-column:1 / -1;
  }
}

/* Mobile : CTA Nouveautés lisible sans écraser les flèches. */
@media(max-width:767px) {
  body.home .lud-home-premium-section-link,
  body.home .lud-home-premium-chip,
  body.home #nouveautes .lud-home-premium-newest-link {
    min-height:29px!important;
    padding:5px 10px!important;
    font-size:8.1px!important;
  }

  .lud-home-premium-card-block__member-actions {
    grid-column:1 / -1;
    width:100%;
  }

  .lud-home-premium-card-block__member-actions .lud-home-premium-card-block__cta,
  .lud-home-premium-card-block__circle {
    width:100%;
  }
}


/* ==========================================================
   LUDORUM — ACCUEIL PREMIUM v1.0.4
   UNE SEULE BULLE PAR ACTION
   ========================================================== */

/* 1 bulle = 1 conteneur. Les enfants restent totalement neutres. */
body.home .lud-home-premium-chip > *,
body.home .lud-home-premium-section-link > *,
body.home #nouveautes .lud-home-premium-newest-link > * {
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  font:inherit!important;
}

/* Aucune flèche décorative ajoutée dans la bulle Nouveautés. */
body.home #nouveautes .lud-home-premium-newest-link::after {
  content:none!important;
  display:none!important;
}

/* Packs : retire le petit point interne et le reflet animé.
   On garde UNE bulle verte translucide avec uniquement son texte. */
body.home #packs-ludorum .lud-home-pack-notice-dot {
  display:none!important;
}

body.home #packs-ludorum .lud-home-pack-notice::after {
  content:none!important;
  display:none!important;
  animation:none!important;
}

body.home #packs-ludorum .lud-home-pack-notice {
  gap:0!important;
  overflow:visible!important;
  color:var(--lhome-green)!important;
  border:1px solid rgba(22,136,75,.22)!important;
  background:rgba(22,136,75,.08)!important;
  box-shadow:0 3px 9px rgba(7,26,51,.035)!important;
}

/* Les flèches intégrées aux liens Packs disparaissent.
   Les flèches RONDES du carrousel sont volontairement conservées. */
body.home #packs-ludorum .lud-home-pack-link > span[aria-hidden="true"] {
  display:none!important;
}

/* Même finition simple/transparente pour les 4 galeries. */
body.home #nouveautes .lud-home-premium-chip,
body.home #nouveautes .lud-home-premium-newest-link {
  color:#C98E00!important;
  border-color:rgba(245,197,24,.36)!important;
  background:rgba(245,197,24,.10)!important;
}

body.home #promotions .lud-home-premium-chip {
  color:var(--lhome-red)!important;
  border-color:rgba(215,38,38,.25)!important;
  background:rgba(215,38,38,.08)!important;
}

body.home #packs-ludorum .lud-home-premium-chip,
body.home #packs-ludorum .lud-home-pack-link {
  color:var(--lhome-green)!important;
  border-color:rgba(22,136,75,.23)!important;
  background:rgba(22,136,75,.08)!important;
}

body.home #meilleuresventes .lud-home-premium-chip {
  color:#D78600!important;
  border-color:rgba(245,197,24,.32)!important;
  background:rgba(245,197,24,.09)!important;
}

/* Pas d'effet graphique supplémentaire à l'intérieur au hover. */
body.home .lud-home-premium-chip:hover > *,
body.home .lud-home-premium-section-link:hover > * {
  background:transparent!important;
  box-shadow:none!important;
}


/* ==========================================================
   LUDORUM — ACCUEIL PREMIUM v1.0.7
   CORRECTION DU DOUBLE HERO / FLASH ANCIEN ACCUEIL
   ========================================================== */

/*
 * La page WordPress contient encore l'ancien hero statique
 * .lud-accueil-v2-hero.
 *
 * L'extension Bandeau Accueil transforme ensuite ce même bloc
 * et y injecte .lud-bandeau-contenu.
 *
 * On conserve donc le bloc dans le DOM (aucun risque de casser
 * le script du bandeau), mais on masque visuellement l'ancienne
 * version jusqu'à ce que le contenu final soit réellement présent.
 *
 * :has() est pris en charge par les navigateurs modernes,
 * notamment Chrome utilisé pour Ludorum.
 */
@supports selector(.lud-accueil-v2-hero:has(.lud-bandeau-contenu)) {

  body.home.lud-home-premium-ready
  .lud-accueil-v2-hero:not(:has(.lud-bandeau-contenu)) {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body.home.lud-home-premium-ready
  .lud-accueil-v2-hero:has(.lud-bandeau-contenu) {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

/*
 * Important : aucune transition d'opacité ici.
 * Dès que le vrai bandeau est injecté, il apparaît directement
 * dans son état final au lieu de produire un troisième effet.
 */
body.home.lud-home-premium-ready .lud-accueil-v2-hero {
  transition: none !important;
}


/* ==========================================================
   LUDORUM — ACCUEIL PREMIUM REBUILD v2.0.0
   Correctifs de robustesse uniquement.
   ========================================================== */

/* Les numéros 01 / 02 / 03 ne sont plus affichés dans
   les cartes Jeux de société / Jeux de cartes / Accessoires. */
.lud-accueil-v2-categorie .lud-accueil-v2-categorie-texte > span:first-child {
  display: none !important;
}

/* Icônes LudoMatch : vrais pictos, plus de L ni de 3. */
.lud-home-premium-match-card__icon svg {
  display: block;
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Aucun bloc Premium ne peut dépasser du conteneur de l'accueil. */
.lud-accueil-v2 .lud-home-premium-match,
.lud-accueil-v2 .lud-home-premium-card-block,
.lud-accueil-v2 .lud-home-premium-trust {
  max-width: 100%;
}

/* Sécurité mobile : aucun SVG de catégorie ne peut devenir gigantesque. */
@media (max-width: 767px) {
  .lud-accueil-v2 .lud-accueil-v2-icone,
  .lud-accueil-v2 .lud-accueil-v2-icone svg {
    flex: 0 0 auto;
  }

  .lud-accueil-v2 .lud-accueil-v2-icone svg {
    width: 24px !important;
    height: 24px !important;
    max-width: 24px !important;
    max-height: 24px !important;
  }
}
