@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: "woodmart-font";
	src: url("//electro-sono.com/wp-content/themes/woodmart/fonts/woodmart-font-1-700.woff2?v=8.3.8") format("woff2");
}

@font-face {
	font-family: "star";
	font-weight: 400;
	font-style: normal;
	src: url("//electro-sono.com/wp-content/plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"), url("//electro-sono.com/wp-content/plugins/woocommerce/assets/fonts/star.woff") format("woff"), url("//electro-sono.com/wp-content/plugins/woocommerce/assets/fonts/star.ttf") format("truetype"), url("//electro-sono.com/wp-content/plugins/woocommerce/assets/fonts/star.svg#star") format("svg");
}

@font-face {
	font-family: "WooCommerce";
	font-weight: 400;
	font-style: normal;
	src: url("//electro-sono.com/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"), url("//electro-sono.com/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"), url("//electro-sono.com/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"), url("//electro-sono.com/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");
}

:root {
	--wd-text-font: "Geologica", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: #767676;
	--wd-text-font-size: 16px;
	--wd-title-font: "Geologica", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 700;
	--wd-title-color: #242424;
	--wd-entities-title-font: "Geologica", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 500;
	--wd-entities-title-color: #333333;
	--wd-entities-title-color-hover: rgb(51 51 51 / 65%);
	--wd-alternative-font: "Lato", Arial, Helvetica, sans-serif;
	--wd-widget-title-font: "Geologica", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 500;
	--wd-widget-title-transform: none;
	--wd-widget-title-color: #333;
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "Geologica", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 500;
	--wd-header-el-transform: none;
	--wd-header-el-font-size: 16px;
	--wd-brd-radius: 3px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(0,217,255);
	--wd-alternative-color: rgb(0,184,212);
	--btn-default-bgcolor: #f7f7f7;
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-bgcolor: rgb(0,217,255);
	--btn-accented-bgcolor-hover: rgb(0,184,212);
	--btn-transform: capitalize;
	--wd-form-brd-width: 1px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: #333333;
	--wd-link-color-hover: #242424;
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: none;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: rgb(0,0,0);
	background-image: none;
}
html .wd-checkout-steps li {
	font-size: 30px;
	text-transform: capitalize;
}
html table th {
	text-transform: capitalize;
}
html .wd-nav-mobile > li > a {
	text-transform: capitalize;
}
.wd-nav-arrows.wd-pos-together:not(:where(.wd-custom-style)) {
	--wd-arrow-size: 42px;
	--wd-arrow-icon-size: 18px;
	--wd-arrow-offset-v: 30px;
}
.product-labels .product-label.attribute-label:not(.label-with-img) {
	background-color: rgb(47,93,212);
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
:root{
--wd-container-w: 1740px;
--wd-form-brd-radius: 5px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 5px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-accented-brd-radius: 5px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
}

@media (min-width: 1740px) {
[data-vc-full-width]:not([data-vc-stretch-content]),
:is(.vc_section, .vc_row).wd-section-stretch {
padding-left: calc((100vw - 1740px - var(--wd-sticky-nav-w) - var(--wd-scroll-w)) / 2);
padding-right: calc((100vw - 1740px - var(--wd-sticky-nav-w) - var(--wd-scroll-w)) / 2);
}
}


.wd-page-title {
background-color: #0a0a0a;
}

:root {
 --color-primary:             #00D9FF;
--color-primary-dark:        #00B8D4;
--color-primary-deep:        #0099B3;
--color-primary-light:       #E0F7FF;
--color-primary-transparent: rgba(0, 217, 255, 0.1); 

  --color-secondary:           #1A1A1A;               
  --color-secondary-dark:      #0F0F0F;               
  --color-secondary-light:     #333333;               

  --color-text-base:           #1F1F1F;               
  --color-text-light:          #666666;               
  --color-text-white:          #ffffff;               

  --color-headings:            var(--color-secondary-dark);

  --color-background:          #ffffff;               
  --color-background-alt:      #F4F4F4;               
  --color-border:              #DDDDDD;               

  --color-success:             #00C853;               
  --color-error:               #D50000;               
  --color-warning:             #FFAB00;               

  --font-family-headings: 'Montserrat', sans-serif;
  --font-family-base:     'Inter', sans-serif;

  --font-size-base:       16px;
  --font-size-sm:         14px;
  --font-size-xs:         12px;
  --font-size-lg:         18px;
  --font-size-xl:         22px;

  --font-size-h1:         clamp(2rem, 5vw, 3.2rem);
  --font-size-h2:         clamp(1.6rem, 4vw, 2.4rem);
  --font-size-h3:         clamp(1.2rem, 3vw, 1.7rem);

  --font-weight-regular:  400;
  --font-weight-medium:   500;
  --font-weight-bold:     700;

  --line-height-base:     1.6;
  --line-height-headings: 1.2;
}

/* --- DESIGN GLOBAL DU MENU MOBILE --- */
.mobile-nav {
    background-color: #ffffff !important; /* Fond blanc pour une lisibilité maximale */
    padding: 0 !important;
}

/* Barre de recherche dans le menu mobile */
.mobile-nav .wd-search-form {
    padding: 20px !important;
    background-color: var(--color-secondary-dark); /* Fond noir pour la recherche */
}

.mobile-nav .searchform input[type="text"] {
    background-color: #1a1a1a !important;
    border: 1px solid #333 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
}

.mobile-nav .searchsubmit {
    color: var(--color-primary) !important;
}

/* --- LISTE DES LIENS (NIVEAU 0) --- */
.wd-nav-mobile li a {
    padding: 15px 20px !important;
    border-bottom: 1px solid var(--color-border) !important;
    display: flex !important;
    align-items: center;
    text-decoration: none !important;
}

.wd-nav-mobile .nav-link-text {
    font-family: var(--font-family-headings) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    color: var(--color-secondary-dark) !important; /* Texte noir sur fond blanc */
    letter-spacing: 0.5px;
}

/* Icônes/Flèches d'ouverture des sous-menus */
.wd-nav-opener {
    color: var(--color-secondary-dark) !important;
    background-color: var(--color-background-alt) !important;
    width: 50px !important;
    height: 50px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.wd-nav-opener:after {
    font-size: 12px !important;
}

/* --- SOUS-MENUS (NIVEAUX 1 ET 2) --- */
.wd-nav-mobile .wd-sub-menu {
    background-color: var(--color-background-alt) !important; /* Gris très clair pour différencier */
    padding: 0 !important;
}

.wd-nav-mobile .wd-sub-menu li a {
    padding-left: 40px !important; /* Décalage pour la hiérarchie */
}

.wd-nav-mobile .wd-sub-menu .nav-link-text {
    text-transform: none !important;
    font-weight: 500 !important;
    font-size: 13px !important;
    color: #444444 !important;
}

/* Niveau 2 (Encore plus profond) */
.wd-nav-mobile .sub-sub-menu li a {
    padding-left: 60px !important;
}

/* --- ÉTATS ACTIFS ET HOVER --- */
.wd-nav-mobile li.current-menu-item > a .nav-link-text {
    color: var(--color-primary-dark) !important;
}

.wd-nav-mobile li a:active, 
.wd-nav-mobile li a:hover {
    background-color: var(--color-primary-light) !important;
}

/* Pied du menu mobile (si Woodmart affiche des boutons en bas) */
.wd-side-hidden-footer {
    padding: 20px !important;
    border-top: 1px solid var(--color-border) !important;
}

/* Correction pour les icônes de réseaux sociaux en bas du menu mobile */
.mobile-nav .wd-social-icons a {
    color: var(--color-secondary-dark) !important;
    font-size: 18px !important;
}
/* --- NAVIGATION BARRE NOIRE (BAS DU HEADER) --- */
.whb-header-bottom {
    background-color: var(--color-secondary-dark) !important;
    min-height: 40px !important;
    display: flex;
    align-items: center;
}

/* Force tous les éléments sur une seule ligne */
.whb-header-bottom .container, 
.whb-header-bottom-inner,
.whb-column11 {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Liste du menu */
.wd-nav-header {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    width: 100%;
    padding: 0 10px !important;
}

/* Réduction drastique de l'espace entre les mots */
.wd-nav-header > li {
    margin-right: 0 !important;
}

.woodmart-nav-link {
    padding: 12px 8px !important; /* Espace réduit entre les catégories */
    display: flex;
    align-items: center;
}

/* Style du texte pour la lisibilité */
.nav-link-text {
    color: #ffffff !important;
    font-family: var(--font-family-headings) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 11px !important; /* Taille réduite pour tout faire tenir */
    letter-spacing: 0.2px !important;
    white-space: nowrap !important; /* Interdit le retour à la ligne */
    transition: color 0.3s ease;
}

/* Survol (Hover) */
.wd-nav-main li:hover > a .nav-link-text {
    color: var(--color-primary) !important;
}

/* --- RESPONSIVE POUR PETITS PC (MacBook, Laptops 13-14 pouces) --- */
@media (max-width: 1400px) {
    .nav-link-text {
        font-size: 10px !important; /* Encore plus petit pour les écrans moyens */
    }
    .woodmart-nav-link {
        padding: 12px 5px !important; /* Espacement minimal */
    }
}

@media (max-width: 1200px) {
    /* Si l'écran est vraiment trop petit, on permet un défilement horizontal discret 
       au lieu de casser le design sur deux lignes */
    .whb-column11 {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .whb-column11::-webkit-scrollbar {
        display: none; /* Cache la barre de scroll pour l'esthétique */
    }
    .wd-nav-header {
        justify-content: flex-start !important;
    }
}

/* Correction des flèches de sous-menu pour gagner de la place */
.wd-nav-header .wd-nav-arrow {
    margin-left: 3px !important;
    font-size: 8px !important;
    opacity: 0.7;
}



.ami-product {
  font-family: var(--font-family-base);
  color: var(--color-text-base);
  max-width: 1200px;
  line-height: var(--line-height-base);
	margin: 50px;
}

.ami-product h2 {
  font-family: var(--font-family-headings);
  color: var(--color-headings);
  font-size: var(--font-size-h2);
  line-height: var(--line-height-headings);
  border-left: 4px solid var(--color-primary);
  padding-left: 16px;
  margin-top: 32px;
  margin-bottom: 16px;
  font-weight: var(--font-weight-bold);
}

.ami-product h3 {
  font-family: var(--font-family-headings);
  color: var(--color-secondary);
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-medium);
  margin-top: 24px;
  margin-bottom: 12px;
}

.ami-product p {
  line-height: var(--line-height-base);
  margin-bottom: 16px;
  color: var(--color-text-base);
  font-size: var(--font-size-base);
}

.ami-product ul {
  padding-left: 24px;
  margin-bottom: 16px;
}

.ami-product ul li {
  margin-bottom: 10px;
  line-height: var(--line-height-base);
  color: var(--color-text-base);
}

.ami-product ul li strong {
  color: var(--color-secondary);
  font-weight: var(--font-weight-medium);
}

.ami-product .ami-specs table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 16px;
  border: 1px solid var(--color-border);
}

.ami-product .ami-specs td {
  padding: 12px 16px;
  border: 1px solid var(--color-border);
  font-size: var(--font-size-base);
}

.ami-product .ami-specs td:first-child {
  font-weight: var(--font-weight-medium);
  background-color: var(--color-background-alt);
  width: 40%;
  color: var(--color-secondary);
}

.ami-product .ami-specs tr:nth-child(even) {
  background: var(--color-background);
}

.ami-product .ami-specs tr:nth-child(odd) {
  background: #FAFAFA;
}

.ami-product .ami-highlight {
  background-color: var(--color-primary-light);
  border-left: 3px solid var(--color-primary);
  padding: 16px;
  margin: 24px 0;
  font-size: var(--font-size-base);
}

.ami-product .ami-highlight strong {
  color: var(--color-primary-deep);
}

.wd-slide-content {
    max-width: 850px;
    padding: 20px;
    text-align: left;
}

.slide-subtitle {
    font-family: var(--font-family-headings);
    color: var(--color-primary);
    font-weight: 800;
    font-size: 16px;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 20px;
    display: block;
}

.slide-title {
    font-family: var(--font-family-headings);
    color: #ffffff;
    font-size: clamp(2.5rem, 6vw, 4.5rem);
    font-weight: 900;
    line-height: 1.1;
    text-transform: uppercase;
    margin-bottom: 25px;
}

.slide-description {
    font-family: var(--font-family-base);
    color: rgba(255, 255, 255, 0.9);
    font-size: 18px;
    max-width: 650px;
    margin-bottom: 40px;
    line-height: 1.6;
}

.slide-btn {
    background-color: var(--color-primary);
    color: var(--color-secondary-dark) !important;
    padding: 18px 45px;
    font-family: var(--font-family-headings);
    font-weight: 800;
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 1px;
    display: inline-block;
    border-radius: 4px;
    text-decoration: none;
    transition: 0.3s ease;
}

.slide-btn:hover {
    background-color: var(--color-primary-dark);
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.3);
}

/* Optimisation pour les écrans PC portables */
@media (max-width: 1366px) {
    .slide-title { font-size: 3.2rem; }
    .slide-description { font-size: 16px; max-width: 550px; }
    .slide-btn { padding: 15px 35px; }
}

.wd-slide-content {
    max-width: 850px;
    padding: 20px;
    text-align: left;
}

.slide-subtitle {
    font-family: var(--font-family-headings);
    color: var(--color-primary);
    font-weight: 800;
    font-size: 16px;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 20px;
    display: block;
}

.slide-title {
    font-family: var(--font-family-headings);
    color: #ffffff;
    font-size: clamp(2.5rem, 6vw, 4.5rem);
    font-weight: 900;
    line-height: 1.1;
    text-transform: uppercase;
    margin-bottom: 25px;
}

.slide-description {
    font-family: var(--font-family-base);
    color: rgba(255, 255, 255, 0.9);
    font-size: 18px;
    max-width: 650px;
    margin-bottom: 40px;
    line-height: 1.6;
}

.slide-btn {
    background-color: var(--color-primary);
    color: var(--color-secondary-dark) !important;
    padding: 18px 45px;
    font-family: var(--font-family-headings);
    font-weight: 800;
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 1px;
    display: inline-block;
    border-radius: 4px;
    text-decoration: none;
    transition: 0.3s ease;
}

.slide-btn:hover {
    background-color: var(--color-primary-dark);
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.3);
}

/* Optimisation pour les écrans PC portables */
@media (max-width: 1366px) {
    .slide-title { font-size: 3.2rem; }
    .slide-description { font-size: 16px; max-width: 550px; }
    .slide-btn { padding: 15px 35px; }
}