/* ==========================================================================
   HEADER PRO — design épuré, marché DE (outillage / matériel)
   À coller dans : Apparence > Personnaliser > CSS additionnel
   (se charge en dernier => prioritaire). Vider le cache après (Hostinger + plugin).
   ========================================================================== */

:root {
	--ninetheme-primary: #1B3A57 !important;
	--ninetheme-primary-bg: #EAF0F5 !important;
	--ninetheme-primary-bg-soft: #F5F8FA !important;
	--ninetheme-secondary: #E8610A !important;
	--ninetheme-secondary-bg: #FFEEE0 !important;
	--ninetheme-secondary-bg-soft: #FFF7F0 !important;
	--ninetheme-green: #1B3A57 !important;
	--ninetheme-green-soft: #2C5478 !important;
	--ninetheme-green-bg: #EAF0F5 !important;
	--ninetheme-orange: #E8610A !important;
}

/* ---------- CORRECTIF CRITIQUE : effet hover-slide du thème ----------
   Le thème duplique le texte des menus/liens via data-hover (animation
   "slide" au survol : copie en ::before + copie en ::after, masquée par
   overflow:hidden). Si cette règle n'est pas chargée, les deux copies
   restent visibles l'une sous l'autre (ex: "Übersicht / Übersicht").
   On la réaffirme ici en priorité pour que ça ne se reproduise jamais,
   quel que soit l'ordre de chargement des CSS. */
span[data-hover] {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	line-height: normal;
	justify-content: center;
	align-items: center;
}
span[data-hover]::before,
span[data-hover]::after {
	content: attr(data-hover);
	transition: transform 0.35s cubic-bezier(0.310, -0.105, 0.430, 1.400);
	text-align: center;
	width: 100%;
}
span[data-hover]::after {
	position: absolute;
	top: 100%;
}
a:hover span[data-hover]::before {
	transform: translateY(-101%);
}
a:hover span[data-hover]::after {
	transform: translateY(-100%);
}
.mini-panel .account-area span[data-hover]::before,
.mini-panel .account-area span[data-hover]::after {
	text-align: left;
}
/* Boutons de catégories (cat-item) : même logique pour category-title */
.category-title[data-hover] {
	position: relative;
	overflow: hidden;
	display: block;
}

/* ICÔNES outline, sans surcharge */
.ninetheme-header.style-pro .mtc-ico {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	display: block;
	cursor: pointer;
}
.ninetheme-header.style-pro .top-action-btn {
	position: relative;
	display: flex;
	align-items: center;
	color: #2c2c2c;
	cursor: pointer;
	transition: color .18s ease;
}
.ninetheme-header.style-pro .top-action-btn:hover { color: #1B3A57; }
.ninetheme-header.style-pro .top-action-wraper {
	display: flex;
	align-items: center;
	gap: 20px;
}
.ninetheme-header.style-pro .ninetheme-wc-count {
	position: absolute;
	top: -7px;
	right: -8px;
	min-width: 15px;
	height: 15px;
	padding: 0 3px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	font-size: 10px;
	font-weight: 500;
	line-height: 1;
	background-color: #E8610A;
	color: #fff;
	box-sizing: border-box;
}

/* BARRE PRINCIPALE : logo | search (flex) | téléphone | icônes — une seule ligne */
.ninetheme-header.style-pro .ninetheme-header-middle .ninetheme-header-inner {
	min-height: 80px;
	gap: 28px;
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
}
.ninetheme-header.style-pro .header-col.col-left { flex: 0 0 auto; }
.ninetheme-header.style-pro .header-col.col-center {
	flex: 1 1 auto;
	min-width: 0;
	max-width: 620px;
}
.ninetheme-header.style-pro .header-col.col-right {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 24px;
}
.ninetheme-header.style-pro .nav-logo img {
	max-height: 48px;
	width: auto;
}

/* SEARCH BAR inline */
.ninetheme-header.style-pro .header-col.col-center .ninetheme-ajax-product-search { width: 100%; }
.ninetheme-header.style-pro .header-col.col-center .ninetheme-ajax-product-search-form {
	border: 2px solid #e2e2e2;
	border-radius: 8px;
	transition: border-color .18s ease;
}
.ninetheme-header.style-pro .header-col.col-center .ninetheme-ajax-product-search-form:focus-within { border-color: #1B3A57; }
.ninetheme-header.style-pro .header-col.col-center .ninetheme-ajax-search-input { height: 46px; font-size: 14px; }
.ninetheme-header.style-pro .header-col.col-center .ninetheme-ajax-search-submit {
	background: #1B3A57;
	width: 50px;
}
.ninetheme-header.style-pro .header-col.col-center .ninetheme-ajax-search-submit:hover { background: #E8610A; }
.ninetheme-header.style-pro .header-col.col-center .ninetheme-ajax-search-submit svg { fill: #fff; }

/* TÉLÉPHONE épuré */
.ninetheme-header.style-pro .nt-header-callus { display: flex; align-items: center; gap: 9px; }
.ninetheme-header.style-pro .nt-header-callus-icon { display: flex; align-items: center; color: #1B3A57; }
.ninetheme-header.style-pro .nt-header-callus-icon svg { width: 22px; height: 22px; }
.ninetheme-header.style-pro .nt-header-callus-text { display: flex; flex-direction: column; line-height: 1.25; }
.ninetheme-header.style-pro .nt-header-phone-number { font-size: 15px; font-weight: 500; color: #1a1a1a; white-space: nowrap; }
.ninetheme-header.style-pro .nt-header-phone-text { font-size: 11.5px; color: #8a8a8a; white-space: nowrap; }
.ninetheme-header.style-pro .col-right .top-action-wraper::before {
	content: "";
	width: 1px;
	height: 26px;
	background: rgba(0,0,0,0.1);
	margin-right: 4px;
}

/* BARRE CATÉGORIES + MENU */
.ninetheme-header.style-pro .ninetheme-header-bottom { background-color: #F5F8FA; }
.ninetheme-header.style-pro .ninetheme-header-bottom .ninetheme-header-inner { min-height: 52px; }
.ninetheme-header.style-pro .ninetheme-category-menu .menu-title {
	background-color: #1B3A57;
	color: #fff;
	border-radius: 7px;
	gap: 10px;
	font-weight: 500;
}
.ninetheme-header.style-pro .ninetheme-category-menu .menu-title:hover { background-color: #16314a; }
.ninetheme-header.style-pro .ninetheme-category-menu .menu-title .mtc-ico,
.ninetheme-header.style-pro .ninetheme-category-menu .menu-title .icon-arrow { color: #fff; }
.ninetheme-header.style-pro .header-mainmenu .nav > li > a { font-weight: 500; }
.ninetheme-header.style-pro .header-mainmenu .nav > li > a:hover,
.ninetheme-header.style-pro .header-mainmenu .nav > li.active > a,
.ninetheme-header.style-pro .header-mainmenu .nav > li.current-menu-item > a,
.ninetheme-header.style-pro .header-mainmenu .submenu a:hover { color: #1B3A57; }
.ninetheme-header.style-pro .header-mainmenu .menu-label {
	background-color: #E8610A !important;
	border-color: #E8610A !important;
	color: #fff !important;
}

/* BADGES DE CONFIANCE — sur la même ligne */
.ninetheme-header.style-pro .header-trust-badges.inline {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 20px;
}
.ninetheme-header.style-pro .trust-badge {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 12px;
	color: #555;
	white-space: nowrap;
}
.ninetheme-header.style-pro .trust-badge svg {
	width: 15px;
	height: 15px;
	color: #1B3A57;
	flex-shrink: 0;
}

/* STICKY */
.ninetheme-header.style-pro .ninetheme-header-sticky { box-shadow: 0 1px 8px rgba(0,0,0,.06); }
.ninetheme-header.style-pro .ninetheme-header-sticky .nav-logo img { max-height: 38px; }

/* MINI-PANEL COMPTE */
.ninetheme-header.style-pro .mini-panel .navigation .menu-item a:hover { color: #1B3A57; }

/* PANNEAU DE RECHERCHE BAS (déclenché par le bouton "Search" de la barre du bas)
   S'ouvre en bas, au-dessus du footer / de la nav mobile. */
.ninetheme-popup-search.mtc-bottom-search {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9998;
	background: #fff;
	box-shadow: 0 -6px 24px rgba(0,0,0,.12);
	border-top: 1px solid rgba(0,0,0,.06);
	padding: 14px 16px calc(14px + env(safe-area-inset-bottom, 0px));
	transform: translateY(110%);
	transition: transform .3s cubic-bezier(.22,.61,.36,1);
	visibility: hidden;
}
.ninetheme-popup-search.mtc-bottom-search.active {
	transform: translateY(0);
	visibility: visible;
}
/* au-dessus de la barre de navigation mobile fixe si elle existe */
body.has-bottom-mobile-nav .ninetheme-popup-search.mtc-bottom-search {
	bottom: 60px;
}
.mtc-bottom-search-inner {
	display: flex;
	align-items: center;
	gap: 12px;
	max-width: 1380px;
	margin: 0 auto;
}
.mtc-bottom-search-field { flex: 1 1 auto; min-width: 0; }
.mtc-bottom-search-field .ninetheme-ajax-product-search { width: 100%; }
.mtc-bottom-search-field .ninetheme-ajax-product-search-form {
	border: 2px solid #e2e2e2;
	border-radius: 8px;
}
.mtc-bottom-search-field .ninetheme-ajax-product-search-form:focus-within { border-color: #1B3A57; }
.mtc-bottom-search-field .ninetheme-ajax-search-input { height: 46px; font-size: 14px; }
.mtc-bottom-search-field .ninetheme-ajax-search-submit { background: #1B3A57; }
.mtc-bottom-search-field .ninetheme-ajax-search-submit:hover { background: #E8610A; }
.mtc-bottom-search-field .ninetheme-ajax-search-submit svg { fill: #fff; }
.mtc-bottom-search-close {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border: none;
	border-radius: 50%;
	background: #F5F8FA;
	color: #2c2c2c;
	cursor: pointer;
	transition: background .18s ease, color .18s ease;
}
.mtc-bottom-search-close:hover { background: #E8610A; color: #fff; }

@media (max-width: 992px) {
	.ninetheme-header.style-pro .ninetheme-header-mobile .nav-logo img { max-height: 36px; }
}

/* ==========================================================================
   SURCHARGES CRITIQUES — hardcodées avec !important pour battre
   ninetheme-dynamic-css (style inline Redux qui remet --ninetheme-primary:#019267)
   ========================================================================== */

/* Fond barre catégories */
.ninetheme-header.style-pro .ninetheme-header-bottom { background-color: #F5F8FA !important; }

/* Bouton "Alle Kategorien" */
.ninetheme-header.style-pro .ninetheme-category-menu .menu-title { background-color: #1B3A57 !important; color: #fff !important; }
.ninetheme-header.style-pro .ninetheme-category-menu .menu-title:hover { background-color: #16314a !important; }

/* Bouton recherche */
.ninetheme-header.style-pro .ninetheme-ajax-search-submit { background: #1B3A57 !important; }
.ninetheme-header.style-pro .ninetheme-ajax-search-submit:hover { background: #E8610A !important; }

/* Badge compteur panier/wishlist */
.ninetheme-header.style-pro .ninetheme-wc-count { background-color: #E8610A !important; }

/* Hover menu */
.ninetheme-header.style-pro .header-mainmenu .nav > li > a:hover,
.ninetheme-header.style-pro .header-mainmenu .nav > li.active > a,
.ninetheme-header.style-pro .header-mainmenu .nav > li.current-menu-item > a { color: #1B3A57 !important; }

/* Couleur téléphone */
.ninetheme-header.style-pro .nt-header-callus-icon { color: #1B3A57 !important; }

/* Barre principale : hauteur et layout */
.ninetheme-header.style-pro .ninetheme-header-middle .ninetheme-header-inner {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 28px !important;
}
.ninetheme-header.style-pro .header-col.col-center {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}
.ninetheme-header.style-pro .header-col.col-right {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 24px !important;
}
