.elementor-24391 .elementor-element.elementor-element-b6d9e35{border-style:none;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-24391 .elementor-element.elementor-element-b6d9e35 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-24391 .elementor-element.elementor-element-e115e17{--e-filter-direction:row;--e-filter-white-space:nowrap;--e-filter-justify-content:center;--e-filter-item-width:initial;--e-filter-item-flex-grow:0;--e-filter-wrap:wrap;--e-filter-overflow-x:initial;}.elementor-24391 .elementor-element.elementor-element-e115e17 .e-filter-item{font-family:"Grandstander", Sans-serif;font-size:20px;}.elementor-24391 .elementor-element.elementor-element-2ddab72{--grid-columns:4;}.elementor-24391 .elementor-element.elementor-element-2ddab72 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-24391 .elementor-element.elementor-element-2ddab72 .e-loop-item > .elementor-section, .elementor-24391 .elementor-element.elementor-element-2ddab72 .e-loop-item > .elementor-section > .elementor-container, .elementor-24391 .elementor-element.elementor-element-2ddab72 .e-loop-item > .e-con, .elementor-24391 .elementor-element.elementor-element-2ddab72 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-24391 .elementor-element.elementor-element-2ddab72 .elementor-pagination{text-align:center;}body:not(.rtl) .elementor-24391 .elementor-element.elementor-element-2ddab72 .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 10px/2 );}body:not(.rtl) .elementor-24391 .elementor-element.elementor-element-2ddab72 .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 10px/2 );}body.rtl .elementor-24391 .elementor-element.elementor-element-2ddab72 .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 10px/2 );}body.rtl .elementor-24391 .elementor-element.elementor-element-2ddab72 .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 10px/2 );}@media(max-width:1024px){.elementor-24391 .elementor-element.elementor-element-2ddab72{--grid-columns:2;}}@media(max-width:767px){.elementor-24391 .elementor-element.elementor-element-e115e17 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-24391 .elementor-element.elementor-element-e115e17 .e-filter-item{font-size:12px;}.elementor-24391 .elementor-element.elementor-element-2ddab72{--grid-columns:1;}}/* Start custom CSS for html, class: .elementor-element-8b8a7a1 */.classh1{
  font-weight:800;
  letter-spacing:-0.4px;
  line-height:1.1;
  font-size:25px;
  background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 45%, #3b82f6 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;

  margin-bottom:24px;
}

/* underline accent */
.classh1::after{
  content:"";
  display:block;
  margin-top:12px;
  width:64px;
  height:4px;
  border-radius:999px;
  background: linear-gradient(90deg, #3b82f6, #2563eb);
  box-shadow: 0 4px 10px rgba(37,99,235,.35);
}

/* mobile tuning */
@media (max-width: 768px){
  .classh1{
    font-size:20px;
    margin-bottom:18px;
  }

.classh1::after{
    width:48px;
    height:3px;
    margin-top:10px;
  }
}/* End custom CSS */
/* Start custom CSS for taxonomy-filter, class: .elementor-element-e115e17 *//* Container */
.elementor-24391 .elementor-element.elementor-element-e115e17{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:stretch;
    justify-content: center;
}


/* Compact buttons */
.elementor-24391 .elementor-element.elementor-element-e115e17 a,
.elementor-24391 .elementor-element.elementor-element-e115e17 button{
  flex: 1 1 200px;
  max-width: 260px;
  min-height: 34px;              /* ⬅️ hauteur réduite */
  padding: 6px 10px;             /* ⬅️ padding réduit */
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;

  white-space: normal;
  line-height:1.05;
  font-weight:600;
   /*font-size:13px;  */              /* ⬅️ texte légèrement plus petit */

  border-radius:999px;
  border:1px solid rgba(59,130,246,.35);
  background:
    linear-gradient(135deg, rgba(59,130,246,.12), rgba(37,99,235,.08));
  color:#0b2a6b;

  box-shadow: 0 4px 10px rgba(37,99,235,.12);
  transition: all .18s ease;
}

/* Hover */
.elementor-24391 .elementor-element.elementor-element-e115e17 a:hover,
.elementor-24391 .elementor-element.elementor-element-e115e17 button:hover{
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(37,99,235,.18);
}

/* Active state */
.elementor-24391 .elementor-element.elementor-element-e115e17 .is-active a,
.elementor-24391 .elementor-element.elementor-element-e115e17 .is-active button,
.elementor-24391 .elementor-element.elementor-element-e115e17 a[aria-current="true"],
.elementor-24391 .elementor-element.elementor-element-e115e17 a[aria-selected="true"],
.elementor-24391 .elementor-element.elementor-element-e115e17 button[aria-pressed="true"],
.elementor-24391 .elementor-element.elementor-element-e115e17 .active a,
.elementor-24391 .elementor-element.elementor-element-e115e17 .active button{
  background: linear-gradient(135deg, #3b82f6, #2563eb);
  color:#fff !important;
  border-color: rgba(37,99,235,.9);
  box-shadow: 0 6px 16px rgba(37,99,235,.35);
}


@media (max-width: 768px){

.elementor-24391 .elementor-element.elementor-element-e115e17{
    --e-filter-space-between: 10px;
  }

  .elementor-24391 .elementor-element.elementor-element-e115e17 .e-filter{
    justify-content: center;
    flex-wrap: wrap;
  }

  /* Forçage 3 par ligne */
 .elementor-24391 .elementor-element.elementor-element-e115e17 .e-filter a,
  .elementor-24391 .elementor-element.elementor-element-e115e17 .e-filter button{
    flex: 0 0 calc(28% - 3px) !important;
    max-width: calc(28% - 3px) !important;
    width: calc(28% - 3px) !important;
    
     padding: 2px 2px;   /* réduit la hauteur */
    margin: 0 !important;
    /*font-size: 14px;*/
    line-height: 1.1;
    border-radius: 8px;
    margin: 0 !important;   /* supprime marges parasites */
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0133e2c */.candy-categories-box{
  background: #f9fbff;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 14px;
  padding: 22px 24px;
  max-width: 980px;
  margin: 0 auto 30px;
}

.candy-categories-box .intro,
.candy-categories-box .outro{
  font-size: 15px;
  line-height: 1.6;
  color: #1f2933;
  margin-bottom: 16px;
}

/* Grid des titres */
.candy-tags{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px 20px;
  margin: 10px 0 18px;
}

/* H2 sobres */
.candy-categories-box .candy-tags h2{
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: #1e40af;
  line-height: 1.3;
  position: relative;
  padding-left: 14px;
}

/* Petit accent visuel discret (optionnel) */
.candy-tags h2::before{
  content: "";
  position: absolute;
  left: 0;
  top: .4em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #3b82f6;
}

/* Mobile */
@media (max-width: 768px){
  .candy-categories-box{
    padding: 18px 16px;
  }

  .candy-tags{
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 14px;
  }

  .candy-tags h2{
    font-size: 15px;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-472fa49 */@media (max-width: 768px){

  /* 1) Force la Loop Grid en 2 colonnes */
  .elementor-loop-container{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important; /* espace entre cartes */
  }

  /* 2) Cartes plus compactes */
  .elementor-loop-item,
  .e-loop-item{
    padding: 0 !important; /* si ton thème ajoute du padding */
  }

  /* Réduit les espacements internes des widgets dans la carte */
  .elementor-loop-item .elementor-widget-container{
    margin-bottom: 8px !important;
  }

  /* Titres produits plus petits */
  .elementor-loop-item .woocommerce-loop-product__title,
  .elementor-loop-item .product-title,
  .elementor-loop-item h2,
  .elementor-loop-item h3{
    font-size: 13px !important;
    line-height: 1.2 !important;
    margin: 0 0 6px !important;
  }

  /* Prix plus compact */
  .elementor-loop-item .price{
    font-size: 13px !important;
    margin: 0 0 6px !important;
  }

  /* Bouton ajouter au panier plus petit */
  .elementor-loop-item a.add_to_cart_button,
  .elementor-loop-item .button{
    padding: 7px 10px !important;
    font-size: 12px !important;
  }

  /* Bloc quantité plus compact (si présent) */
  .elementor-loop-item .quantity input.qty{
    width: 44px !important;
    height: 30px !important;
  }
}/* End custom CSS */