.elementor-418 .elementor-element.elementor-element-bcedb9c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 24px;--row-gap:0px;--column-gap:24px;}.elementor-418 .elementor-element.elementor-element-b47885c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-418 .elementor-element.elementor-element-882b310{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--gap:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-418 .elementor-element.elementor-element-882b310.e-con{--align-self:center;}.woocommerce .elementor-418 .elementor-element.elementor-element-53b76c9 .star-rating{color:var( --e-global-color-primary );}.woocommerce .elementor-418 .elementor-element.elementor-element-53b76c9 .star-rating::before{color:var( --e-global-color-06fef82 );}.elementor-418 .elementor-element.elementor-element-673fb96{text-align:start;}.woocommerce .elementor-418 .elementor-element.elementor-element-673fb96 .price{color:var( --e-global-color-primary );}body:not(.rtl) .elementor-418 .elementor-element.elementor-element-673fb96:not(.elementor-product-price-block-yes) del{margin-right:9px;}body.rtl .elementor-418 .elementor-element.elementor-element-673fb96:not(.elementor-product-price-block-yes) del{margin-left:9px;}.elementor-418 .elementor-element.elementor-element-673fb96.elementor-product-price-block-yes del{margin-bottom:9px;}.woocommerce .elementor-418 .elementor-element.elementor-element-8d57c98 .woocommerce-product-details__short-description{color:var( --e-global-color-primary );}.elementor-418 .elementor-element.elementor-element-aa0c29e .cart button, .elementor-418 .elementor-element.elementor-element-aa0c29e .cart .button{color:var( --e-global-color-primary );transition:all 0.2s;}.elementor-418 .elementor-element.elementor-element-aa0c29e .added_to_cart{color:var( --e-global-color-primary );}.elementor-418 .elementor-element.elementor-element-aa0c29e .quantity .qty{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );border-style:none;color:var( --e-global-color-primary );transition:all 0.2s;}.woocommerce .elementor-418 .elementor-element.elementor-element-aa0c29e form.cart table.variations label{color:var( --e-global-color-06fef82 );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.woocommerce .elementor-418 .elementor-element.elementor-element-aa0c29e form.cart table.variations td.value select{color:var( --e-global-color-primary );}.elementor-418 .elementor-element.elementor-element-f727819 .elementor-icon-box-wrapper{align-items:center;gap:40px;}.elementor-418 .elementor-element.elementor-element-f727819.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-418 .elementor-element.elementor-element-f727819.elementor-view-framed .elementor-icon, .elementor-418 .elementor-element.elementor-element-f727819.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-418 .elementor-element.elementor-element-f727819 .elementor-icon-box-title, .elementor-418 .elementor-element.elementor-element-f727819 .elementor-icon-box-title a{font-size:22px;}.elementor-418 .elementor-element.elementor-element-a1595df{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:10px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:var( --e-global-color-primary );}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:var( --e-global-color-primary );}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products ul.products li.product .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products ul.products li.product .price ins{color:var( --e-global-color-primary );}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products ul.products li.product .price ins .amount{color:var( --e-global-color-primary );}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products ul.products li.product span.onsale{display:block;}@media(min-width:768px){.elementor-418 .elementor-element.elementor-element-b47885c{--width:45%;}.elementor-418 .elementor-element.elementor-element-882b310{--width:55%;}}@media(max-width:1024px){.elementor-418 .elementor-element.elementor-element-aa0c29e .quantity .qty{font-size:var( --e-global-typography-primary-font-size );}.woocommerce .elementor-418 .elementor-element.elementor-element-aa0c29e form.cart table.variations label{font-size:var( --e-global-typography-primary-font-size );}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products ul.products li.product .price{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-418 .elementor-element.elementor-element-aa0c29e .quantity .qty{font-size:var( --e-global-typography-primary-font-size );}.woocommerce .elementor-418 .elementor-element.elementor-element-aa0c29e form.cart table.variations label{font-size:var( --e-global-typography-primary-font-size );}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-418 .elementor-element.elementor-element-7ae6032.elementor-wc-products ul.products li.product .price{font-size:var( --e-global-typography-primary-font-size );}}/* Start custom CSS for woocommerce-product-images, class: .elementor-element-0e7a3dc *//* Carte blanche autour de la galerie */
.elementor-418 .elementor-element.elementor-element-0e7a3dc{
  background:#fff;
  border-radius:16px;
  padding:14px;
  box-shadow: 0 10px 24px rgba(13,27,62,.06);
}

/* Image principale */
.elementor-418 .elementor-element.elementor-element-0e7a3dc .woocommerce-product-gallery__wrapper{
  border-radius:14px;
  overflow:hidden;
}

.elementor-418 .elementor-element.elementor-element-0e7a3dc .woocommerce-product-gallery__wrapper img{
  border-radius:14px;
}

/* Miniatures */
.elementor-418 .elementor-element.elementor-element-0e7a3dc .flex-control-thumbs{
  margin-top:12px !important;
  display:flex !important;
  gap:10px !important;
}

.elementor-418 .elementor-element.elementor-element-0e7a3dc .flex-control-thumbs li{
  width:72px !important;
}

.elementor-418 .elementor-element.elementor-element-0e7a3dc .flex-control-thumbs img{
  border-radius:12px !important;
  border:1px solid #e6ecfb !important;
  background:#fff !important;
  padding:6px !important;
}

/* Optionnel : limite la hauteur si images trop grandes */
@media (min-width: 992px){
  .elementor-418 .elementor-element.elementor-element-0e7a3dc .woocommerce-product-gallery__wrapper img{
    max-height: 420px;
    object-fit: contain;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b47885c *//* ========== SINGLE PRODUCT LAYOUT ========== */
.ts-single-wrap{
  background:#f3f6ff;
  border-radius:16px;
  padding:26px;
}

/* Gallery block */
.ts-product-gallery .woocommerce-product-gallery__wrapper{
  border-radius:16px;
  overflow:hidden;
  background:#ffffff;
}

/* Main image spacing */
.ts-product-gallery .woocommerce-product-gallery__image img{
  border-radius:16px;
}

/* Thumbnails row */
.ts-product-gallery .flex-control-thumbs{
  margin-top:14px !important;
  display:flex !important;
  gap:10px !important;
}
.ts-product-gallery .flex-control-thumbs li{
  width:70px !important;
}
.ts-product-gallery .flex-control-thumbs img{
  border-radius:12px !important;
  background:#fff;
  border:1px solid #e6ecfb;
  padding:6px;
}

/* Right side text */
.ts-product-info .product_title{
  font-weight:900;
  color:#0b1b3a;
  margin-bottom:10px;
}
.ts-product-info .woocommerce-product-rating{
  margin-bottom:10px;
}
.ts-product-info .price{
  font-size:18px;
  font-weight:900;
  color:#102a5c;
  margin: 10px 0 14px;
}
.ts-product-info .woocommerce-product-details__short-description{
  color:#5f6b85;
  line-height:1.6;
  margin-bottom:18px;
}

/* WhatsApp button */
.ts-whatsapp-btn .elementor-button{
  background:#22c55e !important;
  border-radius:999px !important;
  padding:14px 22px !important;
  font-weight:900 !important;
}
.ts-whatsapp-btn .elementor-button:hover{
  filter: brightness(.95);
}

/* Badges */
.ts-badges{
  display:flex;
  gap:22px;
  margin-top:18px;
  flex-wrap:wrap;
}
.ts-badges .elementor-icon-box-wrapper{
  display:flex;
  gap:10px;
  align-items:center;
}
.ts-badges .elementor-icon{
  color:#102a5c;
}
.ts-badges .elementor-icon-box-title{
  margin:0;
  font-weight:800;
  color:#0b1b3a;
}

/* Related products section */
.ts-related{
  margin-top:28px;
}
.ts-related h2,
.ts-related .elementor-heading-title{
  font-weight:900;
  color:#0b1b3a;
  margin-bottom:14px;
}

/* Responsive */
@media(max-width:1024px){
  .ts-single-wrap{ padding:18px; }
}
@media(max-width:767px){
  .ts-badges{ gap:14px; }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-title, class: .elementor-element-615675f */.elementor-418 .elementor-element.elementor-element-615675f{
  font-size: 40px;
  font-weight: 900;
  color:#0b1b3a;
  line-height: 1.05;
  margin: 0 0 10px 0;
}

/* Responsive */
@media (max-width: 767px){
  .elementor-418 .elementor-element.elementor-element-615675f{
    font-size: 30px;
  }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-rating, class: .elementor-element-53b76c9 */.elementor-418 .elementor-element.elementor-element-53b76c9{
  margin: 6px 0 10px 0;
}

.elementor-418 .elementor-element.elementor-element-53b76c9 .star-rating{
  font-size: 16px;          /* taille des étoiles */
}

.elementor-418 .elementor-element.elementor-element-53b76c9 .star-rating span::before{
  color: #f5b301;           /* jaune étoiles */
}

/* Cache le texte "X avis" si tu veux clean (optionnel) */
/* .elementor-418 .elementor-element.elementor-element-53b76c9 .woocommerce-review-link{ display:none; } *//* End custom CSS */
/* Start custom CSS for woocommerce-product-price, class: .elementor-element-673fb96 */.elementor-418 .elementor-element.elementor-element-673fb96{
  margin: 8px 0 14px 0;
}

.elementor-418 .elementor-element.elementor-element-673fb96 .price{
  font-size: 18px;
  font-weight: 900;
  color:#102a5c;
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-short-description, class: .elementor-element-8d57c98 */.elementor-418 .elementor-element.elementor-element-8d57c98{
  color:#5f6b85;
  line-height: 1.7;
  font-size: 14px;
  margin: 0 0 18px 0;
  max-width: 520px;
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-aa0c29e *//* Texte stock */
.elementor-418 .elementor-element.elementor-element-aa0c29e .stock{
  font-size:14px;
  font-weight:800;
  color:#102a5c; /* bleu TechnoSoluce */
  margin-bottom:10px;
}


/* Champ quantité */
.elementor-418 .elementor-element.elementor-element-aa0c29e .quantity input.qty{
  width:64px;
  height:44px;
  border-radius:10px;
  border:1px solid #dbe2f0;
  font-weight:800;
  text-align:center;
  margin-right:12px;
}

/* Bouton ajouter au panier */
.elementor-418 .elementor-element.elementor-element-aa0c29e button.single_add_to_cart_button{
  background:#102a5c !important;
  color:#fff !important;
  border-radius:999px !important;
  padding:14px 26px !important;
  font-weight:900 !important;
  border:0 !important;
  transition:.2s ease;
}

.elementor-418 .elementor-element.elementor-element-aa0c29e button.single_add_to_cart_button:hover{
  background:#0b1b3a !important;
  transform: translateY(-1px);
}

/* Aligne quantité + bouton */
.elementor-418 .elementor-element.elementor-element-aa0c29e form.cart{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}
/* Masquer le texte stock */
.elementor-418 .elementor-element.elementor-element-aa0c29e .stock{
  display:none !important;
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-content, class: .elementor-element-ad60327 *//* Carte blanche sous le bloc bleu */
.elementor-418 .elementor-element.elementor-element-ad60327{
  margin-top: 18px;
}

.elementor-418 .elementor-element.elementor-element-ad60327 .woocommerce-tabs{
  background:#fff;
  border-radius:16px;
  padding:18px;
  box-shadow: 0 10px 24px rgba(13,27,62,.06);
}

/* Onglets */
.elementor-418 .elementor-element.elementor-element-ad60327 .woocommerce-tabs ul.tabs{
  margin:0 0 14px 0 !important;
  padding:0 !important;
  border:0 !important;
}

.elementor-418 .elementor-element.elementor-element-ad60327 .woocommerce-tabs ul.tabs li{
  border:0 !important;
  background:transparent !important;
  margin:0 10px 0 0 !important;
  padding:0 !important;
}

.elementor-418 .elementor-element.elementor-element-ad60327 .woocommerce-tabs ul.tabs li a{
  display:inline-flex;
  padding:10px 14px;
  border-radius:999px;
  background:#eef3fb;
  color:#0b1b3a;
  font-weight:800;
  text-decoration:none;
}

.elementor-418 .elementor-element.elementor-element-ad60327 .woocommerce-tabs ul.tabs li.active a{
  background:#102a5c;
  color:#fff;
}

/* Contenu */
.elementor-418 .elementor-element.elementor-element-ad60327 .woocommerce-tabs .panel{
  margin: 0 !important;
}

.elementor-418 .elementor-element.elementor-element-ad60327 .woocommerce-tabs .panel p{
  color:#5f6b85;
  line-height:1.7;
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-f727819 */.elementor-418 .elementor-element.elementor-element-f727819{
  background:#fff;
  border-radius:14px;
  padding:12px 14px;
  box-shadow: 0 10px 24px rgba(13,27,62,.06);
  display:flex;
  align-items:center;
  gap:10px;
}

.elementor-418 .elementor-element.elementor-element-f727819 .elementor-icon{
  color:#102a5c;
}

.elementor-418 .elementor-element.elementor-element-f727819 .elementor-icon-box-title{
  margin:0;
  font-weight:800;
  color:#0b1b3a;
  font-size: 14px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcedb9c */.elementor-418 .elementor-element.elementor-element-bcedb9c{
  background:#f3f6ff;
  border-radius:18px;
  padding:26px;
  box-shadow: 0 10px 26px rgba(13,27,62,.06);
}

/* Responsive */
@media (max-width: 767px){
  .elementor-418 .elementor-element.elementor-element-bcedb9c{
    padding:18px;
    border-radius:16px;
  }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-related, class: .elementor-element-7ae6032 *//* ===== SECTION TITLE ===== */
.elementor-418 .elementor-element.elementor-element-7ae6032{
  margin-top: 26px;
}

.elementor-418 .elementor-element.elementor-element-7ae6032 > h2{
  font-weight: 900;
  color:#0b1b3a;
  margin: 0 0 14px 0;
}

/* ===== GRID ===== */
.elementor-418 .elementor-element.elementor-element-7ae6032 ul.products{
  display:grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
  margin: 0 !important;
  padding: 0 !important;
}

@media (max-width: 1024px){
  .elementor-418 .elementor-element.elementor-element-7ae6032 ul.products{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px){
  .elementor-418 .elementor-element.elementor-element-7ae6032 ul.products{
    grid-template-columns: 1fr;
  }
}

/* ===== CARD ===== */
.elementor-418 .elementor-element.elementor-element-7ae6032 ul.products li.product{
  background:#fff;
  border:1px solid #eef1f7;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(13,27,62,.06);
  padding: 14px;
  transition:.2s ease;
}

.elementor-418 .elementor-element.elementor-element-7ae6032/* End custom CSS */
/* Start custom CSS *//* Conteneur du message */
.woocommerce-message {
  position: relative;
  background: #f4f8ff !important;
  border: none !important;
  color: #0b2a5b !important;
  font-size: 14px;
  padding: 14px 48px 14px 18px !important;
  border-radius: 10px;
  margin-bottom: 20px;
  box-shadow: 0 8px 22px rgba(11,42,91,.08);
}

/* Icône WooCommerce (check) */
.woocommerce-message::before {
  color: #0b2a5b !important;
}

/* Bouton "Voir le panier" */
.woocommerce-message a.button {
  background: #0b2a5b !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  font-weight: 600;
}

/* Croix de fermeture */
.woocommerce-message .close-notice {
  position: absolute;
  top: 10px;
  right: 14px;
  font-size: 18px;
  font-weight: 700;
  cursor: pointer;
  color: #0b2a5b;
  line-height: 1;
}

.woocommerce-message .close-notice:hover {
  opacity: 0.6;
}

.woocommerce-notices-wrapper {
  max-width: 1200px;
  margin: 0 auto;
}

/* Supprimer toute trace de vert */
.woocommerce-message {
  border-left: none !important;
  border-top: none !important;
  background: #f4f8ff !important;
  color: #0b2a5b;
}

/* Icône check */
.woocommerce-message::before {
  color: #0b2a5b !important;
}/* End custom CSS */