
/*
 * Custom code goes here.
 * A template should always ship with an empty custom.css
 */
/*#_desktop_top_menu * {
	all: unset;
}
#_desktop_top_menu_custom a {
	display: block;
}*/
/* colors */
:root {
    --basic-fontcolor: rgba(35, 35, 35, 1);
    --contrast-color-carbonetube1: rgba(139, 0, 0, 0.65);
    --contrast-color-carbonetube2: rgba(177, 110, 107, 0.99);
    --bg-dark-color-carbonetube: rgba(64, 64, 64, 1);
}
/* Fonts */
body, p, ul, li {
    color: var(--basic-fontcolor);
    font-size: .9375rem;
}
h1, h2 {
    color: var(--contrast-color-carbonetube1);
}
h2 { font-size: 1.05rem; text-align: left; }
h2:nth-of-type(n+2) { margin-top: 4rem; }
a { color: var(--contrast-color-carbonetube1); }
a:hover { color: var(--contrast-color-carbonetube2); }
/* Nav */
.btn-primary { background-color: var(--contrast-color-carbonetube1); }
.btn-primary:hover { background-color: var(--contrast-color-carbonetube2) !important; }
.btn-primary:active { background-color: var(--contrast-color-carbonetube1); }
.btn-primary:focus { background-color: var(--contrast-color-carbonetube1); }
/* breadcrumb */
#wrapper .breadcrumb { margin-bottom: 2rem; }
#wrapper .breadcrumb li:last-child { color: var(--contrast-color-carbonetube2); }
/* cart */
.product-price { color: var(--contrast-color-carbonetube1); }
.modal-header .material-icons { color: var(--contrast-color-carbonetube1); }
/* Style header-nav */
@media screen and (max-width: 992px) {
    #wrapper { padding-top: 0; }
    #header .header-nav { border-bottom: none; }
}
#header .header-nav a { color: #FFF; }
#header .header-nav { 
    background-color: #404040;
    color: #FFF;
}
#header .header-nav .right-nav {
    align-items: center;
}
#header .header-nav .language-selector, #header .header-nav .user-info {
    margin-top: 0;
}
#header .header-nav .blockcart { background:inherit; }
#header .header-nav .cart-preview .shopping-cart { color: #FFF; }
.header-nav H1 {
	font-size: 2.375rem;
}
#search_widget { color: #404040; }
#search_widget input::-webkit-input-placeholder { /* Chrome, Safari */
  color: #000 !important;
  opacity: 1 !important;
}
#search_widget input:-moz-placeholder { /* Firefox 19+ */
  color: #000 !important;
  opacity: 1 !important;
}
#search_widget input::-moz-placeholder { /* Firefox 4-18 */
  color: #000 !important;
  opacity: 1 !important;
}
#search_widget input:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #000 !important;
  opacity: 1 !important;
}
#header .top-logo {
    display: flex;
    align-items: center;
    min-height: 50px;
}
.logo-text {
  font-size: 18px;
  font-weight: bold;
  color: #FFF;
}
.logo-subtext {
  font-size: 14px;
  font-weight: normal;
  /*color: #cddee8;*/
  color: var(--contrast-color-carbonetube2);
}
#header .header-nav .cart-preview.active {
    background: var(--contrast-color-carbonetube2);
}
.header-nav h1 { line-height: 0.8em; }
.header-nav h1 a:focus { text-decoration: none; }
body#checkout #header .header-nav {
    max-height: 50px !important;
    border-bottom: 2px solid #f6f6f6 !important;
    padding: 0 !important;
}
#checkout #search_widget { display: unset !important; }
body#checkout #footer { padding: 0 !important; }
body#checkout a:hover { color: #FFF !important; }
/* layout */
main {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
#wrapper {
    flex: 1;
}
/* Style du menu principal */
#_desktop_top_menu h3, #_mobile_top_menu h3 {
    margin: 0;
    padding: 20px 0px;
    color: #FFF;
    font-weight: normal;
    text-transform: uppercase;
    text-align: center;
    background-color: rgba(0, 0, 0, .50);
}
#_mobile_top_menu h3 {
    padding: 20px 0px 20px 10px;
    text-align: left;
}
.top-menu-custom {
    list-style: none;
    padding: 0;
    margin: 0;
}
/* Style du menu secondaire */
#header .header-top {
    padding: 0;
}
#header .simple-menu a:hover {
    color: #FFF;
}
#header .simple-menu a { text-transform: uppercase; }
.simple-menu a:hover {
    background: var(--contrast-color-carbonetube1);
}
/* Applique les styles de police et couleur aux liens */
.top-menu-custom a {
    font-family: 'Arial', Helvetica, sans-serif; /* Police */
    text-transform: uppercase; /* Met le texte en majuscules */
    color: grey; /* Couleur en état normal */
    text-decoration: none; /* Supprime la décoration par défaut */
    word-wrap: break-word;
    word-break: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    max-width: 100%;
}
/* Change la couleur des liens au survol ou lorsqu'ils sont cliqués */
.top-menu-custom a:hover,
.top-menu-custom a:focus, 
#header .top-menu-custom a:hover {
    color: var(--contrast-color-carbonetube1);
    /*color: #990000; Couleur rouge au survol ou au focus */
}
/* Assure que le texte dans les sous-menus suit les mêmes règles */
.popover-custom.sub-menu-custom a {
    font-family: 'Arial', Helvetica, sans-serif;
    text-transform: uppercase;
    color: grey;
    text-decoration: none;
}
/* Couleur au survol des liens des sous-menus */
.popover-custom.sub-menu-custom a:hover,
.popover-custom.sub-menu-custom a:focus {
    /*color: #990000;*/
    color: var(--contrast-color-carbonetube1);
}
/* Style des liens principaux */
.top-menu-custom > li {
    border-bottom: #cfcfcf 1px solid;
}
.top-menu-custom > li:last-child { border-bottom: none; }
.top-menu-custom > li > a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    text-decoration: none;
    padding: 10px;
    font-size: 0.8em;
    color: grey !important; /* Texte gris par défaut */
    background: #444;
    cursor: pointer;
}
.mobile .top-menu-custom > li > a {
    display: block;
}
/* Effet au survol */
.top-menu-custom > li > a:hover,
.top-menu-custom > li > a:focus {
    background: #666;
    color: var(--contrast-color-carbonetube1) !important;
    /*color: #990000 !important; Texte rouge au survol */
}
/* Applique un background #fff aux éléments de premier niveau sans sous-menu */
.top-menu-custom > li:not(:has(.popover-custom.sub-menu-custom)) > a {
    background: #fff;
    color: #000; /* Optionnel : ajuste la couleur du texte si nécessaire */
}
/* Change le background en #efefef au survol pour les éléments sans sous-menu */
.top-menu-custom > li:not(:has(.popover-custom.sub-menu-custom)) > a:hover {
    background: #efefef;
    color: var(--contrast-color-carbonetube1);
   /* color: #990000; Texte rouge au survol */
}
/* Ajoute un background #efefef aux éléments de premier niveau avec sous-menu */
.top-menu-custom > li:has(.popover-custom.sub-menu-custom) > a {
    background: #efefef;
    color: #000; /* Optionnel : ajuste la couleur du texte si nécessaire */
}
/* Change le background en #fff au survol */
.top-menu-custom > li:has(.popover-custom.sub-menu-custom) > a:hover {
    background: #fff;
    color: var(--contrast-color-carbonetube1);
    /*color: #990000; Texte rouge au survol */
}
/* Ajoute la flèche uniquement aux éléments de premier niveau qui ont un sous-menu */
.top-menu-custom > li:has(.popover-custom.sub-menu-custom) > a::after {
    content: "▼"; /* Icône par défaut */
    transition: transform 0.3s ease-in-out;
    margin-left: 10px;
}
/* Rotation de l’icône lorsque le sous-menu est ouvert */
.top-menu-custom > li.open:has(.popover-custom.sub-menu-custom) > a::after {
    transform: rotate(180deg); /* Pointe vers le haut */
}
/* Sous-menus */
.popover-custom.sub-menu-custom {
    display: none; /* Caché par défaut */
    background: #555;
    padding: 0;
}
/* Style des sous-menus */
.popover-custom.sub-menu-custom ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.popover-custom.sub-menu-custom ul li a {
    display: block;
    padding: 10px;
    color: white;
    text-decoration: none;
    background: #666;
}
.popover-custom.sub-menu-custom ul li a:hover {
    background: #777;
}
/* Supprime la flèche pour les liens des sous-menus */
.popover-custom.sub-menu-custom a::after {
    content: none;
}
/* Masque les icônes de type "add" et "remove" */
i.material-icons.add,
i.material-icons.remove {
    display: none !important;
}
.mobile .user-info {
    height: 3rem;
    padding: .75rem;
}
/* créer devis à partir panier colonne menu gauche */
#left-column .opartDevisCartToQuotationLink { display: none; }
/* language selector */
#_desktop_language_selector, #_mobile_language_selector { display: none; }
/* Txt accueil */
#custom-text { padding: 0; }
/* Carousel accueil */
.carousel .carousel-inner { height: 260px; }
.carousel .carousel-control .icon-prev:hover i, .carousel .carousel-control .icon-next:hover i { color: #404040; }
/* Style fond de page */
#wrapper { background:#FFF; }
/* Cookie UE */
#cookieNotice { 
    top: unset !important;
    bottom: 0 !important; 
}
.closeFontAwesome:before, #cookieNotice a { color: darkred !important; }
/* Pied de page */
.page-addresses .address .address-footer a { color: var(--contrast-color-carbonetube1); }
.page-footer .account-link[data-role="home"] { display:none; }
.page-footer a:hover, .page-addresses .address .address-footer a:hover { color: var(--contrast-color-carbonetube2); }
.page-footer a:focus, .page-addresses .address .address-footer a:focus { color: var(--contrast-color-carbonetube1); }
.footer-container {
    background-color: var(--bg-dark-color-carbonetube);
}
.footer-container .h3 {
    color: #626262;
}
.footer-container li a:hover {
    color: var(--contrast-color-carbonetube2);
}
.footer-container .block-social ul li, .footer-container .block-social ul li:hover {
    background-color: unset !important;
}
.linkedin {
    filter: brightness(0.5) sepia(0) hue-rotate(-70deg) saturate(5);
}
/* product page */
.tabs .nav-tabs .nav-link.active, .tabs .nav-tabs .nav-link:hover {
    color: var(--contrast-color-carbonetube2);
    border-bottom-color : var(--contrast-color-carbonetube2);
}
.product-images>li.thumb-container .thumb.selected, .product-images>li.thumb-container .thumb:hover {
    border-color: var(--contrast-color-carbonetube2);
}
.product-attachments h5 {
    font-size: 0.85rem;
}
.product-attachments h4 {
    font-size: 1rem;
    font-weight: 400;
}
.product-attachments h4 a, .attachment a {
    text-decoration: underline;
}
/* not found */
#products .page-not-found { max-width: inherit; }
/* liste catégories produits */
.block-category { min-height: fit-content; }
.block-category-inner:empty { display: none; }
.block-category-inner {
    padding: 1em;
    background-color: #efefef;
    border: #cfcfcf 1px solid;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}
.block-category .block-category-inner #category-description strong { font-weight: 700; color: #232323; }
.block-category .block-category-inner #category-description p { margin-bottom: 1em; }
/* ---------- cart ---------- */
.card-block .h1 { text-align: center; }
.cart-grid-body a.label:hover { color: var(--contrast-color-carbonetube1); }
body#checkout section.checkout-step.-reachable.-current .step-number { background-color: var(--contrast-color-carbonetube2); }
.form-control:focus, .input-group.focus { outline: .1rem solid var(--contrast-color-carbonetube2); border-color: var(--contrast-color-carbonetube2); }
.custom-radio input[type=radio]:checked+span { background-color: var(--contrast-color-carbonetube2); }
body#checkout section.checkout-step .address-item.selected { border: var(--contrast-color-carbonetube2); }
body#checkout a:hover {
    color: var(--contrast-color-carbonetube2) !important;
    text-decoration: underline;
}
.btn-primary,
.btn-primary:hover {
    background-color: var(--contrast-color-carbonetube2);
}
.btn-primary:hover {
    background-color: var(--contrast-color-carbonetube2);
}
.btn-primary.focus,
.btn-primary:focus {
    background-color: var(--contrast-color-carbonetube2);
}
.btn-primary.active,
.btn-primary:active,
.open > .btn-primary.dropdown-toggle {
    background-color: var(--contrast-color-carbonetube2);
}
.btn-primary.active.focus,
.btn-primary.active:focus,
.btn-primary.active:hover,
.btn-primary:active.focus,
.btn-primary:active:focus,
.btn-primary:active:hover,
.open > .btn-primary.dropdown-toggle.focus,
.open > .btn-primary.dropdown-toggle:focus,
.open > .btn-primary.dropdown-toggle:hover {
    background-color: var(--contrast-color-carbonetube2);
}
.btn-primary.disabled.focus,
.btn-primary.disabled:focus,
.btn-primary:disabled.focus,
.btn-primary:disabled:focus {
    background-color: var(--contrast-color-carbonetube2);
}
.btn-primary.disabled:hover,
.btn-primary:disabled:hover {
    background-color: var(--contrast-color-carbonetube2);
}
/* ---------- account ---------- */
#login-form {
    border: var(--contrast-color-carbonetube1) 1px solid;
    border-radius: 10px;
    padding: 2em 1em;
 }
.page-my-account #content .links a:hover, .page-my-account #content .links a:hover i { color: var(--contrast-color-carbonetube1); }
/* ---------- @media ---------- */
@media (min-width: 992px) {
    .exclude-desktop {
        display: none !important;
    }
}
@media (max-width: 992px) {
    #wrapper .breadcrumb { margin: 1rem 0; }
}
@media (max-width: 767px) {
    .form-group {
        margin-bottom: 0;
    }
    /*#header .top-logo {
        min-height: unset;
    }*/
   /*.breadcrumb { margin: 1rem 0; }*/
    .footer-container .links ul>li {
        margin-bottom: 0;
        border-bottom: none;
        background-color: var(--bg-dark-color-carbonetube);
    }
    .footer-container .links ul>li a {
        color: #626262;
    }
    .links .title {
        border-bottom: none;
    }
    .links .title::after {
        display: inline-block;
        content: "▼"; /* Icône par défaut */
        position: relative;
        top: -1px;
        color: #626262;
        transition: transform 0.3s ease-in-out;
        transform: rotate(0deg);
    }
    .links .title:not(.collapsed)::after {
        transform: rotate(180deg);
    }
}
@media (max-width: 767px) {
    .carousel {
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }
    .carousel .carousel-inner {
        height: auto !important;
    }
}
@media (max-width: 480px) {
    .contact-form input[type=submit] {
        margin-top: 10px;
    }
    .products-sort-order {
        margin-top: 10px;
    }
}
