/* === Polices === */

@import url('https://fonts.googleapis.com/css2?family=Archivo:ital,wght@0,100..900;1,100..900&display=swap');




p {
    font-family: "Archivo", sans-serif;
}





@media (min-width: 1440px) {
    .container {
        width: 1440px;
        max-width: 100%;
    }
}


body {
    overflow-x: hidden;
}

/* BANDEAU VERT --- displayNav1 */

.header-nav .hidden-sm-down {
    display: flex;
    flex-direction: column;
}
.header-nav .hidden-sm-down .col-md-5 {
    width: 100% !important;
}

/* BARRE DE RECHERCHE --- displaySearch */

#header .header-top .search-widget {
    float: none;
    display: contents;
}

#search_widget form input {
    height: 48px;
    padding: 4px 16px 4px 50px!important;
}

#search_widget form {
    border-radius: 54px;
    overflow: hidden;
    width: -webkit-fill-available;
}

.search-widget form button[type=submit] {
position: absolute;
    background: none;
    border: none;
    color: #7a7a7a;
    left: 10px;
    top: 5px;
    transform: translate(-50%, -50%);
}

.fst-nav-bar,
.header-top .user-info a,
.header-top .quickorder-link {
    display: flex;
    align-items: center;

    color: #1E2124 !important;
    font-family: "Archivo", sans-serif;
    font-weight: 600;
}

.fst-nav-bar {
    column-gap: 30px;
}

.quickorder-link {
    display: flex;
    align-items: center;
    gap: 5px; /* espace entre icône + texte */
    white-space: nowrap; /* empêche le retour à la ligne */
}

.user-info a {
    display: flex;
    align-items: center;
    gap: 5px; /* espace entre icône + texte */
    white-space: nowrap; /* empêche le retour à la ligne */
}

.cart-mini-wrapper {
    color : black;
}

/* === Menu Principal ---  displayTOP */

header {
    position: relative;
}

#adtm_menu {
    position: unset;
}

#adtm_menu ul#menu li div.adtm_sub {
    top: 100%;
    height: calc(100vh - 100%);
    overflow-y: auto;
    overflow-x: visible;

    -ms-overflow-style: none;
    scrollbar-width: none;
}

#adtm_menu ul#menu li div.adtm_sub::-webkit-scrollbar {
    display: none;
}

.adtm_sub {
    border-top: 1px solid #D4DADE !important;
    box-shadow: none;
}

#adtm_menu:not(.atmRtl) .advtm_open_on_hover ul#menu .li-niveau1:hover div.adtm_sub {
    width: 20%;
    padding: 20px 0 20px 20px;
}

.column_wrap_title a {
    font-family: Archivo;
    font-weight: 600 !important;
    font-size: 16px !important;
    line-height: 100%;
    display: inline-flex;
    padding: 10px 0;
}

.adtm_column_wrap {
    padding: 0 !important;
    position: relative;
}

.adtm_column {
    position: relative;
}

.adtm_elements {
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.25s ease;
    pointer-events: none;
    position: fixed; 
    background: #fff;
    padding: 20px;
    z-index: 999;
    border: 1px solid #D4DADE;
    

    width: 20%;

    overflow-y: auto;
}

.adtm_elements.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}


#adtm_menu ul#menu .adtm_sub:hover {
    opacity: 1 !important;
    visibility: visible !important;
}

.advtm_column_wrap_1 {
    padding-right: 0 !important;
}

#adtm_menu .adtm_column {
    margin-right: 0;
}

.li-niveau1 a.a-niveau1 {
    border-color: transparent !important;
}

#adtm_menu ul#menu .li-niveau1 {
    border-right: .5px solid;
    border-left: .5px solid;
    border-image: linear-gradient(to top, white 0%, white 35%, #D9D9D9 35%, #D9D9D9 85%, white 85%, white 100%) 1;
    padding-bottom: 10px;
}

#adtm_menu ul#menu .li-niveau1:nth-child(2) {
    border: none;
}

#adtm_menu ul#menu .li-niveau1:nth-child(2) .advtm_menu_span {
    border: 1px solid var(--neutral-300, #D4DADE);
    border-radius: 4px;
}

#adtm_menu ul#menu .li-niveau1:nth-child(3) {
    border-right: .5px solid;
    border-left: 0px solid;
    border-image: linear-gradient(to top, white 0%, white 35%, #D9D9D9 35%, #D9D9D9 85%, white 85%, white 100%) 1;
}

#adtm_menu ul#menu .li-niveau1:last-child {
    border-right: 0px solid;
    border-left: .5px solid;
    border-image: linear-gradient(to top, white 0%, white 35%, #D9D9D9 35%, #D9D9D9 85%, white 85%, white 100%) 1;
}

.advtm_menu_span {
    font-family: Archivo;
    font-weight: 600 !important;
    font-style: SemiBold;
    font-size: 15px !important;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    color: #1E2124 !important;
}

body>main>header {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10000;

    border-bottom: 1px solid var(--neutral-300, #D4DADE);

}

#wrapper {
    background-color: white !important;
}

#index #wrapper {
    padding-top: 0 !important;
}

#adtm_menu .adtm_column {
    margin: 0 !important;
    padding-right: 20px !important;
}

.column_wrap_title {
    position: relative;
    padding: 10px 20px 10px 0;
    margin: 10px 0 !important;
    transition: .3s;
}

#adtm_menu div.adtm_column_wrap span.column_wrap_title {
    padding: 8px;
}

.column_wrap_title:hover {
    border-radius: 8px;
    background: var(--neutral-100, #F2F4F5);
}

.column_wrap_title::after {
    content: "";
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: translateY(-50%) rotate(-45deg);
}

.trait-menu {
    width: calc(100% - 30px);
    height: 1px;
    background-color: #D4DADE80;
}

.adtm_elements ul {
    margin-top: 30px;
}

.voir-tous {
    font-family: Archivo;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    text-decoration: underline;
    text-decoration-style: solid;
}

.voir-tous:hover {
    color: black !important;
    text-decoration: none !important;
}

.adtm_elements li {
    color: var(--neutral-900, #1E2124);
    font-family: var(--font-family-base, Archivo);
    font-size: var(--font-size-regular, 16px);
    font-style: normal;
    font-weight: 600;
    line-height: 110%;
    margin-bottom: 20px;
}

.adtm_elements h2 {
    color: var(--neutral-900, #1E2124);
    font-family: Archivo;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}
/* SLIDER - displayHome */
.homeslider-title {
    font-family: Archivo Narrow;
    font-weight: 700;
    font-style: Bold;
    font-size: 60px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;

    color: #1E2124;
}

.homeslider-description {
    font-family: Archivo;
    font-weight: 500;
    font-style: Medium;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0%;

    color: #1E2124;
}



.homeslider-promo {
    font-family: Archivo Narrow;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 42.66px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;

    color: #FFFFFF;

    padding: 3px 15px;

    display: inline-flex;
    background: #A3195B;

    transform: rotate(-6deg);
}

.homeslider-button {
    font-family: Archivo;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;

    color: white;

    padding: 14px 24px;

    background: #197649;
}

.homeslider-slide:has(.homeslider-title)::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0));
    pointer-events: none;
    z-index: 1;
}

.homeslider-content {
    position: relative;
    z-index: 2;
}


/* Contenu Réassurance - displayHome */

.custom-banner-info {
    display: flex;
    width: 1280px;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    column-gap: 5%;
    padding: 100px 0;
    border-bottom: 1px solid #D4DADE;
}

.banner-intro,
.banner-features {
    width: 50%
}


#wrapper h2 {
    font-family: Archivo Narrow;
    font-weight: 400;
    font-style: Regular;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;

    color: #1E2124;
}

.highlight-green {
    font-family: Archivo Narrow;
    font-weight: 700;
    font-style: Italic;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
    display: inline-block;

    position: relative;

    color : #197649;
}


.highlight-green::before {
    content: "";
    background-color: #1976493f;
    position: absolute;
        display: flex;
    width: 100%;
    height: 35%;
    bottom: 10%;
}

.banner-features {
    display: flex;
    justify-content: space-around;
}

.custom-banner-info .feature-item h3 {
    font-family: Archivo;
    font-weight: 500;

    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0%;
    text-align: center;

}


.custom-banner-info .feature-item {
        display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 10px;
}

.custom-banner-info .feature-item .feature-icon span.material-symbols-outlined {
    font-size: 32px;
    color: #197649;
    font-variation-settings:
        'FILL' 0,
        'wght' 200,
        'GRAD' 0,
        'opsz' 32;
    padding: 5px;
    background-color: #DBEFE6;
    border-radius: 100%;
}

/* SECTION SELECTION DU MOMENT - displayHome */
#index .featured-products {
    margin-top: 100px;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 100px;
}

.products-track {
    padding-bottom: 1px;
}

/* === === === FICHE PRODUIT === === === */

.highlighted-informations {
    display: none;
}

#products .thumbnail-container, 
.featured-products .thumbnail-container, 
.product-accessories .thumbnail-container, 
.product-miniature .thumbnail-container {
    box-shadow: none;
    border: 1px solid #D4DADE;
    border-radius: 8px;
    overflow: hidden;
    height: auto !important;
}

#products .thumbnail-container .product-title a, 
.featured-products .thumbnail-container .product-title a, 
.product-accessories .thumbnail-container .product-title a, 
.product-miniature .thumbnail-container .product-title a {
    font-family: Archivo Narrow;
    font-weight: 400;
    font-style: SemiBold;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0%;
    color: #1E2124 !important;
    height: 50px;
    display: inline-block;
    text-align: left;
    text-transform: uppercase;
}

#products .product-description, 
.featured-products .product-description,
.product-accessories .product-description,
.product-miniature .product-description {
    position: unset !important;
    height: auto !important;
} 


.featured-products .product-title, 
.product-accessories .product-title,
.product-miniature .product-title {
    text-align: left !important;
}

.product-miniature .product-thumbnail {
    padding: 30px;
}

.product-miniature .product-thumbnail:hover {
    padding: 15px;
    transition: .5s;
}

.product-miniature .product-thumbnail img{
    width: 100%;
}

.price-qty-add {
    display: flex;
    align-items: flex-end;
    gap: 8px;
        justify-content: space-between;
    padding: 16px;


}

.price-qty-hide{
        background: var(--neutral-100, #F2F4F5);
                padding: 12px 16px 16px 16px;
}

.price-qty-add .product-price-and-shipping {
    width: auto;
    flex: 0 0 auto;
    text-align: left;
    margin: 0;
}


.product-miniature .product-reference,
.product-miniature .product-title {
    padding: 0 15px;
}

.price-qty-add .product-price-and-shipping .price {
    font-size: 18px;
    font-weight: 700;
    color: #000;
    white-space: nowrap;
}

.mini-add-to-cart {
    width: auto;
    flex: 0 0 auto;
    margin: 0;
}

.mini-cart-controls {
    display: flex;
    align-items: center;
    gap: 0;

    overflow: hidden;
    background: #fff;
    column-gap: 10px;
}

.qty-wrapper {
    display: flex;
    align-items: center;
    position: relative;
    border: 1px solid #d0d0d0;
    border-radius: 4px;
    overflow: hidden;
}

.mini-cart-controls .input-qty {
    width: 60px;
    height: 40px;
    text-align: center;
    border: none;
    border-radius: 0;
    font-size: 16px;
    font-weight: 600;
    padding: 0;
    padding-right: 20px;
    margin: 0;
    box-shadow: none;
    -moz-appearance: textfield;

}

.mini-cart-controls .input-qty::-webkit-outer-spin-button,
.mini-cart-controls .input-qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.qty-arrows {
    display: flex;
    flex-direction: column;
    position: absolute;
    right: 0;
    height: 100%;
}

.qty-arrows .btn-qty-increase,
.qty-arrows .btn-qty-decrease {
    width: 20px;
    height: 20px;
    padding: 0;
    margin: 0;
    background-color: transparent;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.qty-arrows .btn-qty-increase:hover,
.qty-arrows .btn-qty-decrease:hover {
    background-color: #f0f0f0;
}

.qty-arrows .material-icons {
    font-size: 16px;
    color: #666;
}

.mini-cart-controls > button,
.mini-cart-controls .add-to-cart-btn {
    width: 40px;
    height: 40px;
    padding: 0;
    margin: 0;
    background-color: #197649;
    border: none;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.mini-cart-controls > button:hover,
.mini-cart-controls .add-to-cart-btn:hover {
    background-color: #145a37;
}

.mini-cart-controls .shopping-cart {
    margin: 0 !important;
    font-size: 20px;
    color: #fff;
}

.mini-cart-controls .input-qty{
background-color: white;
}

#products .all-product-link,
.featured-products .all-product-link,
.product-accessories .all-product-link,
.product-miniature .all-product-link {
    float: unset !important;
    display: flex;
    justify-content: center;
}


.featured-products>a {
    font-family: Archivo;
    font-weight: 600 !important;
    color: white !important;
    background-color: #197649;
    padding: 12px 30px;
    border-radius: 4px;
}


.sub-price {
    margin: 0 !important;

    color: var(--neutral-600, #66707C);

    font-family: var(--font-family-narrow, "Archivo Narrow");
    font-size: var(--font-size-small, 13px);
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
}

.price-connect {
    color: var(--neutral-900, #1E2124);

    font-family: var(--font-family-narrow, "Archivo Narrow");
    font-size: var(--font-size-regular, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 130%;

    margin-bottom: 0 !important;
}

.price-connect a {
    text-decoration-line: underline !important;
}

.catalogues-section {
    box-shadow: 0 0 0 100vw #f5f5f5;
    clip-path: inset(0 -100vw);
}

/* Section Partenaire -- displayHome */

.partenaires-subtitle {
    font-family: Archivo;
    font-weight: 700;
    font-size: 18px;
    font-style: Bold;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    text-transform: uppercase;
    color: #197649;

}

.partenaires-section {
    background-color: #fff;
    padding: 80px 0 !important;
}

/* Nos meilleurs offres slider - hook displayHome*/

.category-slider-section,
.category-slider-section .product-image {
    background-color: #fff !important;
}

.category-slider-section .product-info {
    padding: 0 !important;
}

.category-slider-section .product-reference {
    font-size: .9375rem !important;
    color: #999 !important;
    margin: 0 0 4px 0 !important;
    text-transform: uppercase !important;
    padding: 0 15px;
}

.category-slider-section .product-name a{
    font-family: Archivo Narrow;
    font-weight: 400;
    font-style: SemiBold;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0%;
    color: #1E2124 !important;
    height: 50px;
    display: inline-block;
    text-align: left;
    text-transform: uppercase;
    padding: 0 15px;
}
.products-slider .product-image a {
    transition: .2s;
}

.products-slider .product-image a:hover {
    transform: scale(1.1);
}


/* Réassurance -- */

#block-reassurance,
.blockreassurance {
    padding: 40px 0 0 0;
    position: relative;
}

.blockreassurance {
    margin-bottom: 40px;
}

.blockreassurance_product {
    position: absolute;
    width: 100%;
    bottom: -125px;
    left: 0;
}

#block-reassurance::before,
.blockreassurance::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 1px;
  background-color: rgba(0, 0, 0, .25);
}

#block-reassurance ul,
#block-reassurance ul li div,
.blockreassurance_product,
.blockreassurance_product div {
    display: flex;
    justify-content: space-between;
}

.blockreassurance_product div:first-child{
    display: none;
}

#block-reassurance ul li div,
.blockreassurance_product div{
    flex-direction: column;
    align-items: center;
}

#block-reassurance ul li,
.blockreassurance .row>div{
    border-bottom : 0 !important;
    border-right : 1px solid rgba(0, 0, 0, .25);

    width: 25%;
}

#block-reassurance ul li:last-child{
    border-right : none;
}



.blockreassurance_product div {
    border-bottom : 0 !important;
    border-right : 1px solid rgba(0, 0, 0, .25);

    width: 33%;
}



.blockreassurance_product div:nth-child(4){
    border-right : none;
}

.blockreassurance_product .clearfix {
    display: none;
}


#block-reassurance ul li img,
.blockreassurance_product svg,
.blockreassurance svg {
    filter: invert(35%) sepia(30%) saturate(970%) hue-rotate(99deg) brightness(98%) contrast(93%);
}

.blockreassurance_product svg path,
.blockreassurance svg path {
    fill: #000 !important;
}

#block-reassurance ul li span,
.blockreassurance_product p,
.blockreassurance .block-title {
    font-family: Archivo Narrow;
font-weight: 500;
font-style: Medium;
font-size: 16px;
line-height: 130%;
letter-spacing: 0%;
text-align: center;
text-transform: uppercase;

margin-top: 10px;
}

.blockreassurance .block-title {
    margin-top: -10px;
}

#product #block-reassurance {
    box-shadow: none;
}

#block-reassurance img,
.blockreassurance_product svg,
.blockreassurance svg  {
    width: 32px;
}

/* MAP -- hook displayHome */

.storesmap-section {
    margin-top: 100px;
}

.search-container {
    display: none;
}

.storesmap-section .section-subtitle {
    font-family: Archivo;
font-weight: 700;
font-style: Bold;
font-size: font/size/large;
line-height: 100%;
letter-spacing: 0%;
text-align: center;
text-transform: uppercase;
}

.storesmap-section h2 {
    width: 50%;
    margin: 0 auto;
    text-align: center;
}

.stores-list {
    padding: 0;
    background: none !important;
}

.storesmap-wrapper {
    gap: 10px !important;
    box-shadow: none !important;
}

.stores-list-items {
    gap: 0 !important;
}

.store-item {
    border-radius: 0 !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
}

.store-item:last-child {
    border-radius: 0 !important;
    border: none;
}

.after-map-text {
    margin-top: 48px;
    margin-bottom: 24px;
}

.after-map {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.after-map-text,
.after-map-text p {
    color: var(--neutral-900, #1E2124);
text-align: center;
font-feature-settings: 'liga' off;
font-family: var(--font-family-base, Archivo);
font-size: var(--font-size-large, 18px);
font-style: normal;
font-weight: 400;
line-height: 130%;
}

.after-map-text p {
    margin-bottom: 0 !important;
}

.after-map-link a {
    display: inline-flex;
height: 48px;
padding: 8px 24px;
justify-content: center;
align-items: center;
gap: 8px;

border-radius: 4px;
background: var(--primary-600, #197649);

color: #FFF;
text-align: center;

font-family: var(--font-family-base, Archivo);
font-size: var(--font-size-regular, 16px);
font-style: normal;
font-weight: 600;
line-height: 110%;
}

.storesmap-container {
    margin-bottom: 80px;
}

/* === FOOTER === */

#footer {
    padding-top: 0 !important;
}

.footer-container {
    margin-top: 0 !important;
    background: var(--primary-600, #197649);
    padding: 80px 0 0 0 !important;
}

.footer-up {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 80px;
}

.footer-up .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.footer-up>div:first-child {
    width: 25%;
    display: flex;
}

.footer-list {
    display: flex;
    width: 75%;
}

.footer-list::after {
    content: none;
    display: none !important;
}

.footer-list .links {
    width: 100%;
}

.footer-list .h3 {
    color: var(--primary-50, #DBEFE6);
font-family: Archivo Narrow;
font-size: 16px;
font-style: normal;
font-weight: 600;
line-height: 130%; /* 20.8px */
letter-spacing: 0.64px;
text-transform: uppercase;

margin-bottom: 24px;
}

.block_newsletter p {
    padding-top: 0 !important;
} 

.footer-list .links a {
    color: #FFF;
font-family: Archivo;
font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: 130%; /* 18.2px */
}

.footer-list .links a:hover {
    color: #FFF;
    text-decoration: underline;
}

.footer-list .links>div {
    display: flex;
}

.footer-list .block_newsletter {
    width: 66% !important;
    float: unset !important;
}

.footer-list .block_newsletter .row{
    display: flex;
    flex-direction: column;
}

.footer-list .block_newsletter .row p{
    width: 100% !important;
}

.footer-list .block_newsletter .row div{
    display: flex;
    flex-direction: column;

    width: 100% !important;
}


.footer-logo {
      mix-blend-mode: screen;
  filter: brightness(0) invert(1);
}

.block_newsletter .col-xs-12 {
    padding-right: 0px;
    padding-left: 0px;
}

.newsletter-label-mail {
    color: #FFF;
font-family: "Archivo Narrow";
font-size: 13px;
font-style: normal;
font-weight: 700;
line-height: 130%; /* 16.9px */
letter-spacing: 0.52px;
text-transform: uppercase;

margin-bottom: 0 !important;
}

.block_newsletter .input-wrapper input {
    background: var(--primary-600, #197649);
    border-radius: 4px;
border: 1px solid var(--neutral-white, #FFF);
}

.block_newsletter .btn-primary {
border-radius: 4px;
background: var(--neutral-white, #FFF);

color: var(--neutral-900, #1E2124);
text-align: center;
font-family: Archivo;
font-size: 16px;
font-style: normal;
font-weight: 600;
line-height: normal;
}

.gdpr_consent span,
.gdpr_consent a{
    color: var(--neutral-white, #FFF);
font-family: Archivo;
font-size: 13px;
font-style: normal;
font-weight: 400;
line-height: 130%; /* 16.9px */
}

.psgdpr_consent_message {
    display: flex;
    margin-top: 8px;
    margin-bottom: 16px;
}

.gdpr_consent a {
    text-decoration: underline;
}

.gdpr_consent .custom-checkbox input[type=checkbox]+span {
    border-radius: 4px;
border: 1px solid var(--neutral-white, #FFF);
}

.section-end-footer {
    padding: 24px 0;
    background-color: #0F492E;
    box-shadow: 0 0 0 100vw #0F492E;
    clip-path: inset(0 -100vw);
}

.section-end-footer>div {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.end-footer {
    display: flex;
    column-gap: 24px;
}

.section-end-footer .text-sm-center,
.end-footer p {
    margin-bottom: 0 !important;
}

.section-end-footer a {
    color: var(--neutral-white, #FFF);
font-family: Archivo;
font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: 130%; /* 18.2px */
}

.end-footer a {
    text-decoration: underline;
}



/* === === === PAGE PRODUIT === === === */

#wrapper .breadcrumb li:after {
    content: ">";
    color: #7a7a7a;
    margin: .3125rem;
}

.breadcrumb {
    margin-bottom: 24px !important;
}

.breadcrumb a span {
    color: var(--neutral-600, #66707C);

font-family: var(--font-family-base, Archivo);
font-size: var(--font-size-small, 13px);
font-style: normal;
font-weight: 500;
line-height: 130%;
text-decoration-line: underline;
text-decoration-style: solid;
text-decoration-skip-ink: none;
text-decoration-thickness: auto;
text-underline-offset: auto;
text-underline-position: from-font;
}

.breadcrumb li:last-child a span {
    text-decoration-line: none;
}

/* Disposition verticale des miniatures à gauche */
.images-container-vertical {
  display: flex;
  flex-direction: row;
  gap: 15px;
  align-items: flex-start;
}

/* Colonne des miniatures */
.thumbnails-vertical {
  flex: 0 0 auto;
  max-width: 100px;
  order: 1;
}

.thumbnails-vertical .product-images {
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.thumbnails-vertical .thumb-container {
  width: 100%;
  cursor: pointer;
  border: 2px solid transparent;
  transition: border-color 0.3s ease;
  overflow: hidden;
  border-radius: 4px;
}

.thumbnails-vertical .thumb {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity 0.3s ease;
}

.thumbnails-vertical .thumb.selected {
  opacity: 1;
}


/* Image principale */
.images-container-vertical .product-cover {
  flex: 1 1 auto;
  order: 2;
  position: relative;
}

.images-container-vertical .product-cover img {
  width: 100%;
  height: auto;
  display: block;
}

/* Responsive : passer en horizontal sur mobile */
@media (max-width: 767px) {
  .images-container-vertical {
    flex-direction: column-reverse;
  }
  
  .thumbnails-vertical {
    max-width: 100%;
    order: 2;
  }
  
  .thumbnails-vertical .product-images {
    flex-direction: row;
    overflow-x: auto;
    gap: 8px;
    padding-bottom: 10px;
  }
  
  .thumbnails-vertical .thumb-container {
    flex: 0 0 80px;
    width: 80px;
  }
  
  .images-container-vertical .product-cover {
    order: 1;
  }
}

/* Layer zoom */
.product-cover .layer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.8);
  opacity: 0;
  transition: opacity 0.3s ease;
  cursor: pointer;
}

.product-cover:hover .layer {
  opacity: 1;
}

.product-cover .layer .zoom-in {
  font-size: 48px;
  color: #333;
}

/* Disposition verticale des miniatures à gauche */
.images-container-vertical {
  display: flex;
  flex-direction: row;
  gap: 15px;
  align-items: flex-start;
}

/* Colonne des miniatures */
.thumbnails-vertical {
  flex: 0 0 auto;
  max-width: 100px;
  order: 1;
}

.thumbnails-vertical .product-images {
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.thumbnails-vertical .thumb-container {
  width: 100%;
  cursor: pointer;
  border: 2px solid transparent;
  transition: border-color 0.3s ease;
  overflow: hidden;
  border-radius: 4px;
}

.thumbnails-vertical .thumb {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity 0.3s ease;
}

.thumbnails-vertical .thumb.selected {
  opacity: 1;
}

/* Image principale */
.images-container-vertical .product-cover {
  flex: 1 1 auto;
  order: 2;
  position: relative;
}

.images-container-vertical .product-cover img {
  width: 100%;
  height: auto;
  display: block;
}

/* Responsive : passer en horizontal sur mobile */
@media (max-width: 767px) {
  .images-container-vertical {
    flex-direction: column-reverse;
  }
  
  .thumbnails-vertical {
    max-width: 100%;
    order: 2;
  }
  
  .thumbnails-vertical .product-images {
    flex-direction: row;
    overflow-x: auto;
    gap: 8px;
    padding-bottom: 10px;
  }
  
  .thumbnails-vertical .thumb-container {
    flex: 0 0 80px;
    width: 80px;
  }
  
  .images-container-vertical .product-cover {
    order: 1;
  }
}

/* Layer zoom */
.product-cover .layer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.8);
  opacity: 0;
  transition: opacity 0.3s ease;
  cursor: pointer;
}

#product #content {
    max-width: 100%;
}

.product-cover:hover .layer {
  opacity: 1;
}

.product-cover .layer .zoom-in {
  font-size: 48px;
  color: #333;
}

.product-images>li.thumb-container>.thumb.selected, .product-images>li.thumb-container>.thumb:hover {
    border: 2px solid #333;
}

.thumbnails-vertical .thumb-container:has(.selected) {
    border-color: none !important;
}

#product .product-cover img {
    box-shadow: none !important;
}

.product-info-principal {
    padding: 32px;
    border-radius: 8px;
    background: var(--neutral-100, #F2F4F5);
}

.product-info-principal h1 {
    color: var(--neutral-900, #1E2124);
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-h2, 32px);
font-style: normal;
font-weight: 700;
line-height: 110%;
text-transform: uppercase;
}

.product-info-principal .product-reference span{
    color: var(--neutral-600, #66707C) !important;
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-regular, 16px);
font-style: normal;
font-weight: 400;
line-height: 130%;
}

.product-info-principal .product-reference {
    margin-bottom: 24px;
}

.product-info-principal .product-information p{
    color: var(--neutral-900, #1E2124);
    font-family: var(--font-family-base, Archivo);
    font-size: var(--font-size-regular, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
}

.login-required-message {
    background-color: #fff;
    padding: 24px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.product-block-login {
    color: var(--neutral-900, #1E2124) !important;
    font-family: var(--font-family-narrow, "Archivo Narrow") !important;
    font-size: var(--font-size-large, 18px) !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 130% !important;
}

.login-required-message p {
    color: var(--neutral-900, #1E2124);
    font-family: var(--font-family-narrow, "Archivo Narrow");
    font-size: var(--font-size-regular, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
}

.login-required-message a {
    color: var(--neutral-900, #1E2124);
    font-family: var(--font-family-narrow, "Archivo Narrow");
    font-size: var(--font-size-regular, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: auto;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}

.login-required-message .material-symbols-outlined {
    margin-bottom: 16px;
    color: #8A95A1;
}


.product-tabs-menu {
    justify-content: center;
}

.product-tabs-menu .nav-link {
    overflow: hidden;
color: var(--neutral-600, #66707C);
text-overflow: ellipsis;

font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-large, 18px);
font-style: normal;
font-weight: 700;
line-height: 130%;
}

.nav-tabs .nav-item.open .nav-link, .nav-tabs .nav-item.open .nav-link:focus, .nav-tabs .nav-item.open .nav-link:hover, .nav-tabs .nav-link.active, .nav-tabs .nav-link.active:focus, .nav-tabs .nav-link.active:hover {
    color: var(--primary-600, #197649);
    background-color: #fff;
    border-bottom: 2px solid #197649;
}

.product-tabs-content h3{
    color: var(--neutral-900, #1E2124);
font-feature-settings: 'liga' off;
font-family: var(--font-family-base, Archivo);
font-size: var(--font-size-h3, 24px);
font-style: normal;
font-weight: 600;
line-height: normal;
}

.product-tabs-content p {
    color: var(--neutral-900, #1E2124);
    font-family: var(--font-family-base, Archivo);
    font-size: var(--font-size-regular, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
}

.product-tabs-content #features-content h3{
    display: none;
}

.header-featured-products {
    display: flex;
    justify-content: space-between;
}

#product .featured-products .view-all-categ a {
    background-color: transparent;
    color: var(--neutral-900, #1E2124);
    text-align: center;
    box-shadow: none;

    font-family: var(--font-family-base, Archivo);
    font-size: var(--font-size-regular, 16px);
    font-style: normal;
    font-weight: 600;
    line-height: 110%; /* 17.6px */
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}

#product .featured-products .product-accessories-title {
    color: var(--neutral-900, #1E2124);
    font-feature-settings: 'liga' off;

    font-family: var(--font-family-base, Archivo);
    font-size: var(--font-size-h3, 24px);
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

#product #block-reassurance {
    margin-top: 0 !important;
}

#product .featured-products{
background: var(--neutral-100, #F2F4F5);
    box-shadow: 0 0 0 100vw #F2F4F5;
    clip-path: inset(0 -100vw);
    padding: 80px 0;
}

#product .product-manufacturer {
  margin-bottom: 15px;
}

#product .product-manufacturer a {
  display: inline-block;
  transition: opacity 0.3s ease;
}


#product .manufacturer-logo {
  max-height: 60px;
  max-width: 60px;
  height: auto;
  width: auto;
  mix-blend-mode: multiply; /* Enlève le fond blanc */

}

#product .manufacturer-name {
  font-size: 16px;
  font-weight: 600;
  color: #333;
}

.product-info-principal .product-prices{
    display: flex;
    column-gap: 8px;
}

.product-info-principal .product-prices .current-price span,
.product-info-principal .product-prices .tax-shipping-delivery-label{
    color: var(--neutral-900, #1E2124);

/* Heading 2 */
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-h2, 32px);
font-style: normal;
font-weight: 700;
line-height: 120%; /* 38.4px */
text-transform: uppercase;
}

.product-info-principal .current-price {
    display: flex;
    align-items: center;
    column-gap: 8px;
}

#product .product-add-to-cart .product-quantity {
    flex-direction: column;
}

.bootstrap-touchspin {
    box-shadow: none;
}

.product-info-principal .qty>span {
    display: flex;
    align-items: center;

    padding: 6px 0 6px 16px;

    width: 100%;
    margin-bottom: 0;


    border-radius: 4px 0 0 4px;
border: 1px solid var(--neutral-300, #D4DADE);
background: var(--neutral-white, #FFF);
    border-right: none;
color: var(--neutral-900, #1E2124);
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-small, 13px);
font-style: normal;
font-weight: 700;
line-height: normal;
text-transform: uppercase;
}

.bootstrap-touchspin input.form-control {

    border: 1px solid var(--neutral-300, #D4DADE);
background: var(--neutral-white, #FFF);
    border-left: none;
    border-right: none;
    
    border-radius: 0 4px 4px 0;
}

.product-quantity .qty {
    margin-right: 0;
}

.product-info-principal .product-quantity .bootstrap-touchspin{
width: auto;
    display: contents;
}

.product-info-principal .bootstrap-touchspin-up {
    border: 1px solid var(--neutral-300, #D4DADE);
    border-bottom: none;
    border-left: none;
    border-radius: 0 4px 0 0 !important;
}

.product-info-principal .bootstrap-touchspin-down {
    border: 1px solid var(--neutral-300, #D4DADE);
    border-top: none;
    border-left: none;
    border-radius: 0 0 4px 0 !important;
}

.product-info-principal .add-to-cart {
    width: 100%;
    padding: 4px 16px;
    border-radius: 4px;
    background: var(--primary-600, #197649);
}

.product-info-principal #product-availability {
    display: flex;
    justify-content: center;
    margin-top: 16px;
}

.product-info-principal .has-discount .current-price .discount{
    background: var(--secondary-600, #A3195B);

    color: var(--neutral-white, #FFF);

    font-family: var(--font-family-narrow, "Archivo Narrow");
    font-size: var(--font-size-large, 18px);
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
}

.product-info-principal .has-discount .current-price-unit,
.product-info-principal .tax-shipping-delivery-label-discount {
    color: var(--secondary-600, #A3195B) !important;
    font-family: var(--font-family-narrow, "Archivo Narrow") !important;
    font-size: var(--font-size-h2, 32px) !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 120% !important;
    text-transform: uppercase !important;
}

.product-info-principal .product-discount .regular-price {
color: var(--neutral-600, #66707C);

/* Body - Regular/Narrow - Regular */
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-regular, 16px);
font-style: normal;
font-weight: 400;
line-height: 130%; /* 20.8px */
text-decoration-line: line-through;
}


.product-info-principal .product-discount {
    margin-bottom: 3px !important;
}

.product-prices div {
    margin-bottom: 0 !important;
}

.product-info-principal .product-prices > :last-child {
    align-self: flex-end;
}

.native-slider {
    width: 100%;
}

.price-qty-add .product-price-and-shipping {
        display: flex;
    flex-direction: column;
        align-items: flex-start;
}

.price-qty-add .product-price-and-shipping .discount-product {
    position: inherit !important;

}

.price-qty-add .regular-price-discount {
    color: var(--neutral-600, #66707C);
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-regular, 16px);
font-style: normal;
font-weight: 400;
line-height: 130%;
text-decoration-line: line-through;
}

.price-qty-add .price {
color: var(--secondary-600, #A3195B) !important;
font-family: var(--font-family-narrow, "Archivo Narrow") !important;
font-size: var(--font-size-large, 18px) !important;
font-style: normal !important;
font-weight: 700 !important;
line-height: 130% !important;
}

.price-qty-add .discount-product {
color: var(--neutral-white, #FFF) !important;

font-family: var(--font-family-narrow, "Archivo Narrow") !important;
font-size: var(--font-size-small, 13px) !important;
font-style: normal !important;
font-weight: 700 !important;
line-height: 130% !important;

background: var(--secondary-600, #A3195B) !important;

min-width: auto !important;
min-height: auto !important;

margin-left: 0 !important;
}







/* === Page Catégorie === */

#category #wrapper,
#search #wrapper {
    padding-top: 0;
}

#category .breadcrumb,
#search .breadcrumb {
    padding-top: 24px;
}

.category-header-wrapper .block-category {
    padding-top: 16px;
}

.block-category h1{
    color: var(--neutral-900, #1E2124);
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-h1, 60px);
font-style: normal;
font-weight: 700;
line-height: 100%;
text-transform: uppercase;
}

.category-description {
    overflow: hidden;
color: var(--neutral-900, #1E2124);
text-overflow: ellipsis;
font-family: var(--font-family-base, Archivo);
font-size: var(--font-size-regular, 16px);
font-style: normal;
font-weight: 400;
line-height: 130%;
}

.block-category #category-description p:first-child {
    margin-bottom: 0;
}

.block-category #category-description p:last-child {
    margin-bottom: 24px;
}

#js-product-list {
    margin-bottom: 40px;
}

.subcategories-list>div {
    width: auto !important;
    padding: 0;
}


/* Category Header avec split background */
.category-header-wrapper {
    position: relative;
    width: 100%;
    margin-bottom: 2rem;
    display: block;
    overflow: hidden;
}

/* Partie gauche - couleur unie */
.category-header-left-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background-color: #F2F4F5;
    z-index: 0;
}

/* Partie droite - image */
.category-header-right-bg {
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 0;
}

/* Dégradé plus long et plus intense au début */
.category-header-right-bg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 50%; /* Dégradé sur 50% de la largeur de l'image */
    height: 100%;
    background: linear-gradient(to right, 
        #F2F4F5 0%,
        #F2F4F5 5%,
        rgba(242, 244, 245, 0.98) 8%,
        rgba(242, 244, 245, 0.95) 12%,
        rgba(242, 244, 245, 0.9) 16%,
        rgba(242, 244, 245, 0.85) 20%,
        rgba(242, 244, 245, 0.75) 25%,
        rgba(242, 244, 245, 0.65) 30%,
        rgba(242, 244, 245, 0.55) 35%,
        rgba(242, 244, 245, 0.45) 40%,
        rgba(242, 244, 245, 0.35) 50%,
        rgba(242, 244, 245, 0.25) 60%,
        rgba(242, 244, 245, 0.15) 70%,
        rgba(242, 244, 245, 0.08) 80%,
        rgba(242, 244, 245, 0.03) 90%,
        transparent 100%
    );
    z-index: 1;
}

/* Overlay (maintenant transparent) */
.category-header-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: transparent;
    z-index: 1;
    pointer-events: none;
}

.category-header-wrapper .container {
    position: relative;
    z-index: 2;
}

.category-header-wrapper .h1 {
    color: #333;
    font-size: 3rem;
    font-weight: bold;
    text-shadow: none;
    margin-bottom: 24px;
}

.category-header-wrapper #category-description {
    color: #666;
    font-size: 1.1rem;
    text-shadow: none;
    margin-bottom: 2rem;
    max-width: 55%;
}


.subcategories-title {
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
    color: #333;
    text-shadow: none;
}

.subcategories-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -0.5rem;
    max-width: 55%;
    column-gap: 8px;
    row-gap: 8px;
}



.subcategory-link {
    display: block;
    text-align: center;
    transition: all 0.3s ease;
    padding: 4px 16px;
    border-radius: 40px;
background: var(--neutral-white, #FFF);
}

.subcategory-link:hover {
    transform: translateY(-5px);
    text-decoration: none;
    background: rgba(255, 255, 255, 1);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

.subcategory-image {
    width: 100%;
    height: auto;
    border-radius: 4px;
    margin-bottom: 0.5rem;
}

.subcategory-name {
color: var(--neutral-900, #1E2124);
font-family: var(--font-family-base, Archivo);
font-size: var(--font-size-small, 13px);
font-style: normal;
font-weight: 500;
line-height: 130%;
}

/* Responsive */
@media (max-width: 992px) {
    /* En dessous de 992px, on empile les backgrounds */
    .category-header-left-bg,
    .category-header-right-bg {
        width: 100%;
    }
    
    .category-header-right-bg {
        opacity: 0.3;
    }
    
    .category-header-right-bg::before {
        width: 100%;
        background: linear-gradient(to bottom, 
            #F2F4F5 0%, 
            rgba(242, 244, 245, 0.8) 20%, 
            rgba(242, 244, 245, 0.5) 40%, 
            transparent 60%
        );
    }
}

@media (max-width: 768px) {
    .category-header-wrapper .h1 {
        font-size: 2rem;
    }
    
    .category-header-wrapper #category-description {
        font-size: 1rem;
    }
    
    .category-breadcrumb {
        padding: 0.5rem 0;
    }
}

#category .block-categories,
#search .block-categories,
#module-pm_advancedsearch4-searchresults .block-categories{
    display: none;
}

#PM_ASBlockOutput_1 .card {
    box-shadow: none;
    border: none
}

#PM_ASBlockOutput_1 .card-header {
    background: none;
    border: none;

    display: flex;
    align-items: flex-end;
    column-gap: 16px;

    padding-bottom: 0;
}

.PM_ASResetSearch:before {
    content: none !important;
}

#PM_ASBlockOutput_1 .PM_ASBlockTitle {
    color: var(--neutral-900, #1E2124);
font-feature-settings: 'liga' off;
font-family: var(--font-family-base, Archivo);
font-size: var(--font-size-h3, 24px);
font-style: normal;
font-weight: 600;
line-height: normal;
}

#PM_ASBlockOutput_1 .PM_ASResetSearch {
    color: var(--neutral-600, #66707C);
font-family: var(--font-family-base, Archivo);
font-size: var(--font-size-regular, 16px);
font-style: normal;
font-weight: 400;
line-height: 130%;
text-decoration-line: underline;
text-decoration-style: solid;
text-decoration-skip-ink: none;
text-decoration-thickness: auto;
text-underline-offset: auto;
text-underline-position: from-font;

border: none;
box-shadow: none;
margin: 0;
padding: 0;
}

#PM_ASBlockOutput_1 .card-block {
    padding-top: 0;
}

#PM_ASBlockOutput_1 .PM_ASCriterionsGroupTitle {
    border-bottom: none;
}

#PM_ASBlockOutput_1 .PM_ASCriterions {
    border-bottom: 1px solid var(--neutral-300, #D4DADE);
    padding-bottom: 24px;
}

#PM_ASBlockOutput_1 .PM_ASCriterionsGroupName {
    color: var(--neutral-900, #1E2124);
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-regular, 16px);
font-style: normal;
font-weight: 700;
line-height: normal;
text-transform: uppercase;
}

#PM_ASBlockOutput_1 .PM_ASLabelCheckbox a {
    margin: 0;
}

#PM_ASBlockOutput_1 .PM_ASCriterionsGroup {
    margin-bottom: 0;
}

#PM_ASBlockOutput_1 .card-block .active_filters,
#PM_ASBlockOutput_1 .card-block .PM_ASResetSearch {
    display: none !important;
}

#js-active-search-filters .active-filter-title {
    display: none;
}

.PM_ASSelections {
    border: none !important;
    background-color: transparent !important;
}

#js-active-search-filters .active_filters {
    padding: 0 !important;
}

#js-active-search-filters .active_filters .filter-block {
    box-shadow: none;
    border-radius: 40px;
background: var(--neutral-100, #F2F4F5);

color: var(--neutral-900, #1E2124);
font-family: var(--font-family-base, Archivo);
font-size: var(--font-size-small, 13px);
font-style: normal;
font-weight: 500;
line-height: 130%;
padding-left: 30px;
}

a.PM_ASSelectionsRemoveLink {
    position: relative;
}

a.PM_ASSelectionsRemoveLink::before,
a.PM_ASSelectionsRemoveLink::after {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background: currentColor;
    top: 45%;
    left: 10px;
}

a.PM_ASSelectionsRemoveLink::before {
    transform: rotate(45deg);
}

a.PM_ASSelectionsRemoveLink::after {
    transform: rotate(-45deg);
}

#category #products .thumbnail-container,
#category #products .product-description,
#search #products .thumbnail-container,
#search #products .product-description {
    width: 308px !important;
}

#category #left-column,
#search #left-column  {
    width: 30%;
}

#category #content-wrapper,
#search #content-wrapper {
    width: 70%;
}

.PM_ASCriterionValue,
.PM_ASLabelLink {
    color: var(--neutral-900, #1E2124) !important;
font-family: var(--font-family-base, Archivo) !important;
font-size: var(--font-size-regular, 16px) !important;
font-style: normal !important;
font-weight: 400 !important;
line-height: 130% !important;
}

/* Masquer la checkbox native */
.PM_ASCriterionCheckbox {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 20px;
    height: 20px;
    border: 2px solid #8A95A1;
    border-radius: 4px;
    background-color: white;
    cursor: pointer;
    position: relative;
    transition: all 0.3s ease;
}

/* État checked */
.PM_ASCriterionCheckbox:checked {
    background-color: #197649;
    border-color: #197649;
}

/* La coche blanche */
.PM_ASCriterionCheckbox:checked::after {
    content: '✓';
    position: absolute;
    color: white;
    font-size: 16px;
    font-weight: bold;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* État focus pour l'accessibilité */
.PM_ASCriterionCheckbox:focus {
    outline: 2px solid #197649;
    outline-offset: 2px;
}

.pagination .counting-product {
    display: none;
}

.pagination .page-list {
    box-shadow: none;
}

.pagination .col-md-6 {
    width: 100%;
    margin-left: 0 !important
}

.pagination .page-list li {
    display: inline-block;
}

.pagination a:not(.previous):not(.next),
.pagination span {
    letter-spacing: unset !important;
    width: 48px;
    height: 48px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.pagination a,
.pagination span {
    color: var(--neutral-900, #1E2124);
text-align: center;
font-family: var(--font-family-base, Archivo);
font-size: var(--font-size-regular, 16px);
font-style: normal;
font-weight: 600;
line-height: 110%;
}

.pagination .current a {
    border-radius: 4px;
background: var(--primary-600, #197649);
color: var(--neutral-white, #FFF);
}

.pagination .page-list .prev {
    float: left;
}

.pagination .page-list .prev,
.pagination .page-list .next {
    height: 48px;
    display: flex;
    align-items: center;
}

/* Badge sponsorisé sur la miniature */
.product-listing-ad-container .product-listing-ad-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background: rgba(0, 0, 0, 0.8);
    color: #fff;
    padding: 5px 10px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 3px;
    z-index: 10;
}

/* Style pour la publicité dans la grille */
.product-listing-ad-container {
    position: relative;
}

.product-listing-ad-container .thumbnail {
    position: relative;
}

.product-listing-ad-container img {
    width: 100%;
    height: auto;
}

/* Ajustements pour que la pub ait le même aspect qu'un produit */
.product-listing-ad-container .product-description {
    padding: 15px 0;
    min-height: 80px;
}

.product-listing-ad-container .product-title {
    font-size: 14px;
    margin-bottom: 10px;
}

.product-listing-ad-container .product-desc {
    font-size: 12px;
    color: #666;
}

.article_pub>div {
    min-height: -webkit-fill-available;
        display: flex;
    flex-direction: column;
    justify-content: space-between;

    background-repeat: no-repeat !important;
}

.article_pub .product-description {
    background: none !important;
}

.article_pub img {
    opacity: 0;
}

.article_pub .product-desc {
    display: none;
}

.article_pub .product-description a {
    display: flex !important;
    height: auto !important;
}

#products .article_pub .product-title a {
    color: var(--neutral-white, #FFF) !important;
font-family: var(--font-family-base, Archivo) !important;
font-size: var(--font-size-h4, 20px) !important;
font-style: normal !important;
font-weight: 600 !important;
line-height: normal !important;
}

.article_pub .product-description {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 10px;
    padding-right: 20px;
}


.article_pub .catalogue-arrow a {
    color: #fff !important;
}

.article_pub:hover .catalogue-arrow {
    background: rgba(255, 255, 255, 0.9);
    color: #333;
    transform: rotate(90deg);
}

.quickorder-search-link a {
    display: flex;
    align-items: center;
    gap: 5px;
}

.quickorder-search-link span {
    width: max-content;
}

#quickorder-container .quickorder-search label {
    text-align: left;
}

#module-quickorder-quickorder .import-section .material-icons {
    display: none;
}

#module-quickorder-quickorder .import-section .btn-import {
    margin: 0 auto;
}

.search-row {
    align-items: center;
}

.cart-mini-wrapper #cart-total-display {
    width: max-content;
    display: block;
}

#header a:hover,
.header-top .user-info a:hover {
    color: #0F492E !important;
}

#product .scroll-box-arrows {
    display: none;
}

.product-line-grid-left .product-image {
    background-color: transparent !important;
}

#cart .blockreassurance_product,
#checkout .blockreassurance_product {
    display: none;
}

#checkout .header-nav .text-xs-right {
    display: none;
}

#checkout .header-nav .row {
    display: flex;
    justify-content: center;
}

#checkout .header-nav #_desktop_logo a {
    display: flex;
    justify-content: center;
}

#checkout #header .header-nav {
    background-color: transparent !important;
}


body#checkout #header .header-nav {
    box-shadow: none;
    padding: 3rem 0 2rem;
}

#checkout header {
    z-index: 999999;
}

#checkout #footer {
display: none;
}

.cart-mini-wrapper .cart-qty {
    padding: 2px 5px ;
    margin-top: 15px;
    margin-left: -15px;

    background-color: #0F492E;
    border-radius: 50px;

    font-size: 12px;
    color: white;
}

#_desktop_user_info>.user-info {
    position: relative;
    display: flex;
    column-gap: 10px;
}

#_desktop_user_info #subaccount-notification-badge {
    position: absolute;
    top: -10px;
    right: -15px;
}





.ui-autocomplete {
    border: none !important;
    border-radius: 8px;
background: var(--neutral-white, #FFF);
box-shadow: 0 14px 50px 0 rgba(0, 0, 0, 0.25);
}


.ui-autocomplete-category-header {
color: var(--neutral-600, #66707C) !important; 
text-align: center;
border-bottom: none !important;


/* Body - Large/Narrow - Bold */
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-large, 18px) !important;
font-style: normal;
font-weight: 700 !important;
line-height: 130%;

background: none !important;
}

.ui-autocomplete-category-header span {
text-transform: capitalize !important;
}

.ui-menu-item {
border-bottom: 1px solid #e9ecef;
}

.ui-autocomplete.searchbar-autocomplete li a .product-reference {
    color: var(--neutral-600, #66707C);

/* Body - Regular/Narrow - Regular */
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-regular, 16px);
font-style: normal;
font-weight: 400;
line-height: 130%; /* 20.8px */
}

.ui-autocomplete.searchbar-autocomplete li a .product-name {
    color: var(--neutral-900, #1E2124);

/* Body - Large/Narrow - Regular */
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-large, 18px);
font-style: normal;
font-weight: 400;
line-height: 130%; /* 23.4px */
}

.ui-autocomplete.searchbar-autocomplete li a .product-info {
    padding: 0 !important;
}

.ui-autocomplete-separator {
    opacity: 0;
    margin-bottom: 24px !important;
}

.autocomplete-category {
    border-bottom: none;
}

.autocomplete-thumbnail {
    margin-right: 16px;
}

.ui-autocomplete.searchbar-autocomplete li a:hover {
    background-color: #f1f1f1;
}

.ui-autocomplete.searchbar-autocomplete li a.ui-state-focus {
    padding: unset !important;
}

.ui-autocomplete.searchbar-autocomplete li.autocomplete-category a i {
    display: none;
}

.ui-autocomplete.searchbar-autocomplete li.autocomplete-category a i,
.ui-autocomplete.searchbar-autocomplete li.autocomplete-category a .category-name {
    color: var(--neutral-900, #1E2124);

/* Body - Large/Narrow - Regular */
font-family: var(--font-family-narrow, "Archivo Narrow");
font-size: var(--font-size-large, 18px);
font-style: normal;
font-weight: 700;
line-height: 130%; /* 23.4px */
text-decoration-line: underline;
text-decoration-style: solid;
text-decoration-skip-ink: none;
text-decoration-thickness: auto;
text-underline-offset: auto;
text-underline-position: from-font;
}

.card-block:after {
    content: none;
}

#category .subcategory-image {
    display: none;
}












/* ============================================================
   INTERDACTA — Qui sommes-nous ? | CSS page CMS PrestaShop
   Ajoutez ce CSS dans : Apparence > Thème > CSS personnalisé
   ou dans le fichier custom.css de votre thème.
   ============================================================ */

/* ── Imports & variables ── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;1,700&family=Source+Sans+3:wght@400;600;700&display=swap');

.idt-page {
  --idt-green-dark:   #1b4332;
  --idt-green-mid:    #2d6a4f;
  --idt-green-light:  #52b788;
  --idt-green-bg:     #e8f5ee;
  --idt-yellow:       #f0c040;
  --idt-magenta:      #c2185b;
  --idt-teal:         #0097a7;
  --idt-white:        #ffffff;
  --idt-text:         #1a1a1a;
  --idt-text-muted:   #4a5568;
  --idt-radius:       10px;
  --idt-gap:          2.5rem;

  font-family: 'Source Sans 3', sans-serif;
  color: var(--idt-text);
  line-height: 1.7;
}

/* ── Reset interne ── */
.idt-page * {
  box-sizing: border-box;
}

.idt-page p {
  margin: 0 0 1rem;
}

.idt-page ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* ── Conteneur ── */
.idt-container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 1.5rem;
}

/* ── Grille 2 colonnes ── */
.idt-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--idt-gap);
  align-items: center;
}

.idt-grid-2--reverse {
  direction: rtl;
}
.idt-grid-2--reverse > * {
  direction: ltr;
}

/* ── Section générique ── */
.idt-section {
  padding: 4rem 0;
}

/* ── Headings ── */
.idt-heading {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.9rem;
  font-weight: 700;
  color: var(--idt-green-dark);
  margin: 0 0 1.25rem;
  line-height: 1.2;
}

.idt-heading--center {
  text-align: center;
}

/* ── Listes à puce vertes ── */
.idt-list {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}

.idt-list li {
  padding-left: 1.4rem;
  position: relative;
}

.idt-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: .55em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--idt-green-light);
}

/* ── Placeholders images ── */
.idt-map-placeholder,
.idt-img-placeholder {
  border-radius: var(--idt-radius);
  overflow: hidden;
  box-shadow: 0 6px 24px rgba(0,0,0,.10);
}

.idt-map-placeholder svg,
.idt-img-placeholder svg {
  display: block;
  width: 100%;
  height: auto;
}

/* ══════════════════════════════════════
   HERO
══════════════════════════════════════ */
.idt-hero {
  background: var(--idt-green-dark);
  padding: 3.5rem 1.5rem;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.idt-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 20% 50%, rgba(82,183,136,.25) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 30%, rgba(45,106,79,.4) 0%, transparent 55%);
}

.idt-hero__inner {
  position: relative;
  z-index: 1;
}

.idt-hero__label {
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .18em;
  color: var(--idt-green-light);
  text-transform: uppercase;
  margin: 0 0 .5rem;
}

.idt-hero__title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2rem, 5vw, 3.2rem);
  font-style: italic;
  font-weight: 700;
  color: var(--idt-white);
  margin: 0;
  line-height: 1.15;
}

/* ══════════════════════════════════════
   INTRO
══════════════════════════════════════ */
.idt-intro {
  background: var(--idt-white);
}

.idt-intro__text strong {
  color: var(--idt-green-mid);
}

/* ══════════════════════════════════════
   MARCHÉS
══════════════════════════════════════ */
.idt-marches {
  background: var(--idt-green-bg);
}

/* ══════════════════════════════════════
   NOS VALEURS
══════════════════════════════════════ */
.idt-valeurs {
  background: var(--idt-green-dark);
  color: var(--idt-white);
}

.idt-valeurs__label {
  display: flex;
  flex-direction: column;
  gap: .15rem;
  align-self: flex-start;
  padding-top: .4rem;
}

.idt-valeurs__nos {
  font-family: 'Playfair Display', serif;
  font-size: clamp(2rem, 4vw, 2.8rem);
  font-weight: 700;
  color: var(--idt-white);
  line-height: 1;
}

.idt-valeurs__titre {
  font-family: 'Playfair Display', serif;
  font-size: clamp(2rem, 4vw, 2.8rem);
  font-weight: 700;
  color: var(--idt-green-light);
  line-height: 1;
}

.idt-valeurs__list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.idt-valeurs__list li {
  padding-left: 1.4rem;
  position: relative;
  color: rgba(255,255,255,.9);
}

.idt-valeurs__list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: .6em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--idt-green-light);
}

.idt-valeurs__list li strong {
  color: var(--idt-white);
}

/* ══════════════════════════════════════
   LOGISTIQUE
══════════════════════════════════════ */
.idt-logistique {
  background: var(--idt-white);
}

/* ══════════════════════════════════════
   OUTILS & SERVICES — CARDS
══════════════════════════════════════ */
.idt-services {
  background: var(--idt-green-bg);
}

.idt-services__intro {
  text-align: center;
  color: var(--idt-text-muted);
  margin-bottom: 2rem;
  font-size: 1.05rem;
}

.idt-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}

.idt-card {
  border-radius: var(--idt-radius);
  padding: 2rem 1.75rem;
  color: var(--idt-white);
  transition: transform .2s ease, box-shadow .2s ease;
}

.idt-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0,0,0,.15);
}

.idt-card__title {
  font-family: 'Playfair Display', serif;
  font-size: 1.15rem;
  font-weight: 700;
  margin: 0 0 .85rem;
  line-height: 1.25;
}

.idt-card p {
  margin: 0;
  font-size: .95rem;
  opacity: .92;
  line-height: 1.6;
}

.idt-card--yellow  { background: #c8960c; }
.idt-card--magenta { background: var(--idt-magenta); }
.idt-card--teal    { background: var(--idt-teal); }

/* ══════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════ */
@media (max-width: 900px) {
  .idt-grid-2,
  .idt-grid-2--reverse {
    grid-template-columns: 1fr;
    direction: ltr;
  }

  .idt-grid-2--reverse > * {
    direction: ltr;
  }

  .idt-cards {
    grid-template-columns: 1fr;
  }

  .idt-valeurs__label {
    flex-direction: row;
    gap: .5rem;
    align-items: baseline;
  }
}

@media (max-width: 600px) {
  .idt-section {
    padding: 2.5rem 0;
  }

  .idt-heading {
    font-size: 1.5rem;
  }

  .idt-cards {
    grid-template-columns: 1fr;
  }
}

#prices-drop .block-categories {
    display: none !important;
}