:root{
    --white : #ffffff;
    --grey : #1A2B4A;
    --lightgrey : #F6F8FA;
    --black : #313131;
    --red : #751F33;
    --pink : #FF2256;
    --blue : #1A2B4A;
}

@font-face {
    font-family: 'PermanentMarker';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/PermanentMarker-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'PoppinsBold';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/Poppins-Bold.ttf') format('truetype');
}
@font-face {
    font-family: 'PoppinsMedium';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/Poppins-Medium.ttf') format('truetype');
}
@font-face {
    font-family: 'PoppinsRegular';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/Poppins-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'PoppinsSemiBold';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../fonts/Poppins-SemiBold.ttf') format('truetype');
}


/*****************************/
/*****************************/
/*****    GENERAL ************/
/*****************************/
/*****************************/


body{
    font-family: 'PoppinsRegular';
    font-size: 16px;
    overflow-x: hidden;
}

#wrapper{
    background-color: var(--white);
    padding-top : 0;
}

.wrapper_content_page{
    margin-top: 120px;
}

h1{
    color: var(--pink);
    font-weight: bold;
    text-transform: initial!important;
    font-size : 2rem!important;
}

h2{
    color: var(--black);
    font-size : 1.5rem;
    font-family: 'PermanentMarker';
    font-weight: 700;
}

.h2{
    color : var(--blue);
    font-weight: 700;
    text-transform: uppercase!important;
    position: relative;
    display: inline-block;
    padding-bottom: 10px;

    &:after{
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 54px;
        height: 1px;
        background: var(--blue);
    }
}

h5{
    margin-bottom : 1rem;
    color: var(--white);
    font-size : 1.5rem;
    text-transform: uppercase;
    font-family: 'PoppinsBold';
    font-weight: 500;
}

a:focus{
    outline: none;
    text-decoration: none;
}

p{
    font-size : 1rem !important;
    color : var(--black);
}

ul{
    margin-bottom: 0;
}

.accordion a.collapsed .icon-up {
    display: none;
}
.accordion a:not(.collapsed) .icon-down {
    display: none;
}

.block_button_link{
    display: flex;
    justify-content: center;
}

.button_grey{
    position: relative;
    text-align: center;
    padding: 15px 50px 15px 30px;
    align-items: center;
    background-color: transparent;
    border: 4px solid var(--black);
    overflow: hidden;
    text-decoration: none;
    display: inline-flex;
    font-weight: 500;
    font-style: normal;
    font-size: 1.2rem;
    color: var(--black);
    text-transform: uppercase;
}

.button_grey:hover{
    color : var(--black);
}

.button_grey i{
    position: absolute;
    right: 0;
    bottom: 50%;
    transform: translate(-65%, 50%);
    transition: transform 0.4s ease;
}

.button_grey:hover i{
    transform: translate(-40%, 50%) !important;
    transition: transform 0.4s ease;
}

.button_grey::after{
    content: '';
    position: absolute;
    margin: -20px;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 40px;
    transform: rotate(45deg);
    background-color: var(--black);
}


.button_green{
    display: flex;
    justify-content: center;
    padding: 15px 50px 15px 30px;
    align-items: center;
    border: 2px solid var(--blue);
    background-color: var(--blue);
    text-decoration: none;
    font-size: 1rem;
    color: var(--white);
    text-transform: uppercase;

    &:hover{
        color : var(--blue);
        background-color: var(--white);
    }
}

.btn-primary{
    background: var(--red);
    border-radius: 8px;
    padding: 10px 25px;
    font-size: 16px;
    font-weight: 600;
}

.btn-primary:hover{
    background: var(--blue);
}

.btn-primary.active, .btn-primary:active, .open>.btn-primary.dropdown-toggle{
    background: var(--blue);
}

.btn-primary.focus, .btn-primary:focus{
    background: var(--blue);
}

.btn-primary.disabled:hover, .btn-primary:disabled:hover{
    background: var(--blue)!important;
}

.btn-primary.active, .btn-primary:active, .open>.btn-primary.dropdown-toggle{
    background: var(--blue)!important;
}

.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: var(--blue)!important;
}

.btn-primary.focus, .btn-primary:focus{
    background: var(--blue)!important;
}

.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, .btn-primary.focus, .btn-primary:focus-visible, .btn-primary:focus, .btn-primary.active, .btn-primary:active, .open>.btn-primary.dropdown-toggle, .btn-primary.disabled.focus, .btn-primary.disabled:focus, .btn-primary:disabled.focus, .btn-primary:disabled:focus{
    background: var(--blue)!important;
}

.btn-secondary{
    border-radius: 10px;
}

.bootstrap-touchspin .group-span-filestyle .btn-touchspin, .group-span-filestyle .bootstrap-touchspin .btn-touchspin, .group-span-filestyle .btn-default{
    background: var(--blue)!important;
}

.btn.disabled, .btn:disabled{
    opacity: .35;
}


#left-column{
    border-radius: 10px;
    background: #f7f7f7;
}
.block-categories, #search_filters, #search_filters_brands, #search_filters_suppliers {
    background: none;
}

.tabs{
    padding: 0;
}

.tabs .nav-tabs .nav-link.active, .tabs .nav-tabs .nav-link:hover{
    border-bottom: var(--red) 3px solid;
}

.tabs .nav-tabs .nav-link.active{
    color : var(--red);
}

.tabs .nav-tabs .nav-link{
    color : var(--black);
}

.product-price{
    color : var(--red);
    font-size : 1.5rem;
    font-weight: bold;
}

#subcategories ul li .subcategory-name:hover, .block-categories .arrows .arrow-down:hover, .block-categories .arrows .arrow-right:hover, .block-categories .collapse-icons .add:hover, .block-categories .collapse-icons .remove:hover, .cart-grid-body a.label:hover{
    color : var(--red);
}

.color-yellow{
    color: var(--red);
}

.little_container{
    max-width: 1300px;
    margin : 0 auto;
}
/*****************************/
/*****************************/
/*****    HEADER ************/
/*****************************/
/*****************************/

#header{
    box-shadow: none;
    background-color: transparent!important;
}
#header.blur:before {
    content: '';
    position: fixed;
    width: 100%;
    height: 65px;
    left: 0;
    top: 0;
    backdrop-filter: blur(2px);
    z-index: -1;
}

.header-banner{
    background-color: var(--red);

    .container{
        .banner-lang{
            display: flex;
            justify-content: space-between;
            align-items: center;
            color : var(--white);
            padding: 5px 0;
            font-size: 14px;

            a{
                color : var(--white)!important;
            }

            .banner-lang{
                display: flex;
                justify-content: end;
                align-items: center;
            }
        }
    }
}

/*****************************/
/*****    LANGUE ************/
/*****************************/


.custom-language-selector {
    display: flex;
    align-items: center;
    gap: 12px;

    .lang-link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        opacity: 0.65;
        transform: scale(1);
        transition: opacity .2s ease, transform .2s ease;

        &:hover,
        &.active {
            opacity: 1;
            transform: scale(1.05);
        }

        img {
            display: block;
            width: 30px;
            height: auto;
            object-fit: contain;
        }
    }
}

/*****************************/
/*****    RECHERCHE ************/
/*****************************/

.search-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
}

.search-toggle .material-icons {
    font-size: 26px;
    line-height: 1;
}

.search-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
}

.search-modal.is-open {
    display: block;
}

.search-modal__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
}

.search-modal__dialog {
    position: relative;
    z-index: 1;
    width: calc(100% - 2rem);
    max-width: 640px;
    margin: 3vh auto 0;
    padding: 2rem;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
}

.search-modal__close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    cursor: pointer;
}

.search-modal__title {
    margin-bottom: 1.5rem;
}

.search-modal__field {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .85rem 1rem;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.search-modal__field input {
    width: 100%;
    border: none;
    outline: none;
    background: transparent;
}

#search_widget form input{
    padding: 0;
    background-color: transparent;
}

.search-modal__submit {
    padding: .85rem 1.25rem;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    background: var(--blue);
    color: #fff;

    i{
        position: unset!important;
        padding: 0!important;
        color : var(--white)!important;
    }
}

body.search-modal-open {
    overflow: hidden;
}

button:focus{
    outline: 0;
}

#search_widget{
    display: flex;
    justify-content: end;
}

.search-modal__form {
    position: relative;
}

.search-modal__autocomplete {
    position: relative;
    width: 100%;
}

.search-modal__autocomplete .ui-autocomplete {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0;
    width: 100% !important;
    margin-top: 8px;
    z-index: 9999;
    padding: 0;
    list-style: none;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    overflow: hidden;
}

.search-modal__autocomplete .ui-menu-item a {
    display: block;
    padding: 12px 16px;
    color: #222;
    text-decoration: none;
}

.search-modal__autocomplete .ui-menu-item a:hover,
.search-modal__autocomplete .ui-menu-item .ui-state-active {
    background: #f5f5f5;
}

.search-modal__autocomplete .ui-menu-item {
    border-bottom: 1px solid #f1f1f1;
}

.search-modal__autocomplete .ui-menu-item:last-child {
    border-bottom: none;
}

.search-autocomplete__link {
    display: flex !important;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    text-decoration: none;
    color: #222;
}

.search-autocomplete__image {
    width: 48px;
    height: 48px;
    min-width: 48px;
    object-fit: cover;
    border-radius: 6px;
    background: #f7f7f7;
}

.search-autocomplete__title {
    display: block;
    line-height: 1.3;
}

#header .header-nav .material-icons{
    color : var(--black);
}

#header .header-nav .right-nav{
    align-items: center;
    max-width: 200px;
}

#header a:hover{
    color : var(--red);
}

/*****************************/
/*****    HEADER ************/
/*****************************/

#header{
    .header-nav{
        max-height: none;
        padding: 10px 45px !important;

        .display_nav{
            display: flex;
            justify-content: space-between;
            align-items: center;

            .logo-nav{
                display: flex;
                align-items: center;

                #_desktop_logo{
                    margin-right : 25px;
                }
            }
        }
    }
}

@media (max-width: 768px){
    #header {
        .header-nav {
            padding: 10px 15px !important;
            border-radius: 0 !important;
        }
    }
    .blur .header-nav{
        top: 0 !important;
    }
}

#header .header-nav .user-info{
    margin-top : 0!important;
    margin-left : 0!important;
    padding: .75rem;
}

#header .header-nav .blockcart{
    height: unset!important;
}

.header-top .search-widgets form input[type=text]{
    color : var(--black);
}


#_desktop_logo .logo{
    max-width: 130px !important;
    margin-bottom: -5px;
}
#checkout #header .header-nav .logo{
    max-height: none !important;
}

#_desktop_logo a, #_mobile_logo a{
    position: relative;
    text-decoration: none;
    display: flex;
}


#header .header-top{
    padding : 0;
}

#header .header-top a[data-depth="0"]{
    color: var(--white);
    font-weight: 400;
    font-size : 14px;
}

#header .header-top a[data-depth="0"]:hover{
    color: var(--white);
}

#header .header-nav{
    border : 0;
    width: 100%;
    max-width: 1830px;
    margin: 0 auto;
    background: var(--white);
    /*margin-top: 25px;*/
    border-radius: 16px;
    position: fixed;
    left: 50%;
    top: 44px;
    transform: translateX(-50%);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: all 0.1s;
}
@media (min-width: 992px) and (max-width: 1800px) {
    #header .header-nav{
        width: calc(100% - 50px);
    }
}

#_desktop_user_info .user-info a{
    color: var(--red);
    font-weight: 700;
    margin-left : 0!important;
}
#_desktop_cart{
    margin: 0 10px;
}

.blockcart{
    background-color: transparent!important;
    position: relative;
    margin-left: 0!important;
}

.blockcart .cart-products-count{
    font-size: 12px;
    font-weight: 700;
    color : var(--white);
    position: absolute;
    top : 0;
    right : 0;
    background: var(--blue);
    min-width: 20px;
    height: 20px;
    border-radius: 10px;
}

.blockcart .header a{
    position: initial !important;
}

/********* sous menu vertical **********/

#top-menu{

    > li > a{
        &:after{
            content: "";
            position: absolute;
            left: 50%;
            bottom: 0;
            transform: translateX(-50%);
            width: 8px;
            border-bottom: 2px solid #a8aeba;
            transition: width 0.3s ease;
        }
        &:hover{
            &:after{
                width: calc(100% - 20px);
            }
        }
    }

    li{
        a{
            position: relative;
            display: inline-block;
            text-decoration: none;
            padding: 4px !important;
            font-size: 14px !important;
            color: #313131 !important;
            margin: 0 15px;
            text-align: center;
            text-transform: uppercase;
        }
        &:hover{
            li{
                .dropdown-submenu{
                    position: relative;
                    display: inline-block;
                    text-decoration: none;
                    margin: 0 0 5px;
                    font-weight: 400;
                }
            }
        }


    }


    a{
        color : var(--blue)!important;
        &:hover{
            color : var(--blue)!important;
        }
    }

}

.top-menu .sub-menu {
    margin-left: 0;
    width: inherit;
    min-width: inherit;
    z-index: 18;
    position: absolute;
    top: 28px !important;
    left : 0!important;
    box-shadow: none;
    border: 0;
    padding-bottom: 15px;
    border-radius: 15px;
}
#header .menu, #header .menu ul li {
    display: inline-block;
    position: relative;
}
.top-menu .sub-menu ul[data-depth="1"] li {
    float: left;
    margin: 0 35px 0 20px;
    clear: both;
}
.top-menu a.dropdown-submenu{
    text-transform: unset;
    font-size: 1rem;
}

/*************************************/
/******    BLOC TEXTE PERSONNALISE        ******/
/*************************************/

#custom-text{
    background-color: var(--red);
    margin-left: -15px;
    width: calc(100% + 30px);
    padding: 30px 0;
    margin-bottom: 0;

    p{
        margin: 0;
    }
}

/*************************************/
/******    SLIDER        ******/
/*************************************/

.carousel{
    margin-bottom: 0;
    position: relative;
    z-index: 10;
    margin-left: -15px;
    width: calc(100% + 30px);
    /*margin-top: -140px;*/
}

.carousel .carousel-indicators{
    display: block;
}

.carousel-indicators li{
    border-color: var(--white);
}

.carousel-indicators .active{
    background-color: var(--white);
}

.carousel .direction{
    display: none;
}

.carousel .carousel-inner{
    height: 100%;
}

.carousel .carousel-control .icon-next i:hover, .carousel .carousel-control .icon-prev i:hover{
    color : var(--white)!important;
}

.carousel .carousel-item img{
    object-fit: cover;
    max-height: 800px;
}
@media (max-width: 768px) {
    .carousel .carousel-item img{
        object-position: -30px center;
    }
}

.carousel .carousel-item .caption{
    max-width: 900px;
    bottom : 50%;
    transform: translateY(50%);
    left : 70%;

    .legend{
        font-family: 'PoppinsRegular';
        font-size : 18px;
        margin-bottom : 1rem;
    }

    .caption-description{
        margin : 1rem 0;
        p{
            font-size : 12px!important;
            font-family: 'PoppinsRegular';
        }
    }
}

.button_white_pink{
    display: flex;
    a{
        background-color: var(--white);
        color : var(--pink);
        padding: 10px 25px;
        justify-content: center;
        align-items: center;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
    }
}

.carousel .carousel-item .caption .display-1{
    color : var(--white);
    text-align: start;
    font-size : 2rem;
    font-family: 'PermanentMarker';
    font-weight: 400;
    text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
    margin: 0;

    .title-rest {
        display: block;
        color: var(--pink);
        font-size: 4rem!important;
    }
}

.carousel .carousel-control .icon-next {
    right: 4rem;
}

.carousel .carousel-control .icon-prev {
    left: 3rem;
}

/*************************************/
/******   COUP DE COEUR   ******/
/*************************************/
.products-section-title{
    font-family: 'PoppinsBold';
    color : var(--blue)!important;
    text-transform: initial!important;
}
/*************************************/
/******   CAPTUS CATEGORIES     ******/
/*************************************/

.container-category{
    background-color: var(--black);
    /*position: absolute;*/
    margin-top: -120px;
    margin-left: -15px;
    width: calc(100% + 30px);
    left: 0;
    top: 12%;
    z-index: 0;
    .container{
        padding-top: 10rem;
    }
    h2{
        color : var(--red)!important;
    }
    .category-card-container{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 1rem;
        margin: 3rem auto;

        .category{
            text-align: center;
            h3{
                font-family: 'PoppinsMedium';
                font-size: 1rem;
                margin-top: 1rem;
                color : var(--white);
            }

            .captuscategory{
                transition: all 0.3s ease-in-out;
                &:hover{
                    transform: translateY(-4px);

                    a{
                        color: var(--black);
                    }
                }
            }
        }

        .view-cat{
            .image-cover{
                border-radius: 10px;
            }
        }
    }
}

.view-cat{
    img{
        height: 150px;
        width: 150px;
        object-fit: cover;
    }
}

/*************************************/
/******   NOUVEAUX PRODUITS       ******/
/*************************************/

.new-products{
    margin-top: 3rem;
}

.add-to-cart-miniature{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;

    img{
        filter: brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(1081%) hue-rotate(249deg) brightness(117%) contrast(100%);
    }

    &:hover{
        img{
            filter: brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(1081%) hue-rotate(249deg) brightness(117%) contrast(100%);
        }
    }
}

/*************************************/
/******   PRODUITS POPULAIRES   ******/
/*************************************/

.featured-products{
    background-color: transparent;
    margin-left: -15px;
    width: calc(100% + 30px);

    h2{
        color : var(--red);
    }
}



/*************************************/
/******    MINIATURES      ******/
/*************************************/

.product-miniature .thumbnail-container:focus .product-description::after, .product-miniature .thumbnail-container:hover .product-description::after{
    display: none;
}

.product-miniature .thumbnail-container{
    border-radius: 0;
    /*box-shadow: rgba(0, 0, 0, 0.1) 0 4px 12px;*/
    width: 100%;
}

.product-miniature .thumbnail-top {
    padding: 0;
    /*border : 5px solid var(--blue);
    border-radius: 16px;*/
}




.product-miniature .thumbnail.product-thumbnail {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 407 / 519;
    width: 100%;
}

.product-miniature .product-picture {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    transition: opacity .6s ease;
}

.product-miniature .product-picture-main {
    z-index: 2;
    opacity: 1;
}

.product-miniature .product-picture-hover {
    z-index: 1;
    opacity: 0;
}

.product-miniature .thumbnail.product-thumbnail:hover .product-picture-main {
    opacity: 0;
    transition: all 0.3s;
}

.product-miniature .thumbnail.product-thumbnail:hover .product-picture-hover {
    opacity: 1;
}

.product-miniature .product-picture img {
    width: 100%;
    max-width: 100% !important;
    margin: unset !important;
    height: 100% !important;
    display: block !important;
    object-position: center;
    object-fit: cover;
}

#product-modal .modal-content .modal-body .product-images img:hover{
    border : 3px solid var(--red);
}


/* Entrée hover : la face visible part à gauche */
.product-miniature:hover .product-picture-main {
    /*transform: rotateY(-90deg);*/
    opacity: 0;
}

/* La seconde face arrive en face */
.product-miniature:hover .product-picture-hover {
    transform: rotateY(0deg);
}









.product-miniature .product-description{
    padding: 0;
    background: none;
    display: flex;
    flex-direction: column;
    justify-content: end;
    margin-top : 0.5rem;
}

.product-description p{
    margin-bottom: 10px;
}
.product-description ul{
    margin: 1.6rem 0;
}
.product-description h3{
    margin-top: 1.6rem;
}
.product-description li > p{
    display: inline;
}

.product-features>dl.data-sheet dd.value, .product-features>dl.data-sheet dt.name{
    text-transform: initial;
    min-height: auto;
    padding: 8px;
}

.product-features{
    max-width: 600px;
}


@media (min-width: 992px) and (max-width: 1200px) {
    #row-p-details > div {
        width: 100%;
    }
}


.product-miniature .product-title a{
    color: var(--black);
    font-size: 1rem;
    font-weight: bold;
}

.product-miniature .product-title {
    text-align: left;
}

.product-miniature .product-price-and-shipping{
    font-size : 1rem;
    color : var(--red);
    display: flex;
    font-weight: bold;
}

.product-miniature .product-title{
    margin-top : 0;
    margin-bottom : 5px;
}

.product-miniature, .product-miniature .product{
    height : 100%;
}

.product-price-and-shipping {
    display: flex;
    align-items: center;
    justify-content: space-between;
}


/*************************************/
/******    CATEGORIES         ******/
/*************************************/

.block-category .block-category-inner .category-cover img{
    width: 100%;
    height: auto;
}

#subcategories{
    padding : 0;
    border : 0;
}

#subcategories ul li{
    background-color : transparent;
    border : 1px dashed var(--red);
    padding : 0.5rem;
    width: calc(100% / 6 - 20px);
    min-width: 150px;
    border-radius: 20px;

    &:hover{
        outline: 1px solid var(--red);
        border : none;
    }

    h5{
        color : var(--red)!important;
        text-transform: initial;
    }
}

#subcategories ul li:hover{
    background-color : transparent;
}

#subcategories ul li:hover a h5{
    color : var(--red)!important;
}

#subcategories ul li .subcategory-name{
    color : var(--red)!important;
    text-decoration: none;
}

#subcategories ul li:hover .subcategory-name{
    color : var(--black)!important;
}

#subcategories ul li .subcategory-image a{
    border : 0;
    background: transparent;
    padding: 10px;
}

#subcategories ul li:hover .subcategory-image a{
    border : 0;
    padding: 10px;
}

.pagination .current a{
    color : var(--red);
}

#subcategories ul{
    /*justify-content: space-between;*/
    margin : 0;
    gap : 10px;
}

#subcategories ul li{
    /*margin : 0 0 10px;*/
    margin: 0;
}

#subcategories ul li h5{
   margin-bottom: 0;
    font-size : 1rem;
}

.block-category{
    min-height: auto;
    margin: 0;
}

.brands-sort .select-list, .products-sort-order .select-list, .suppliers-sort .select-list{
    color : var(--blue);
}

.brands-sort .select-list:hover, .products-sort-order .select-list:hover, .suppliers-sort .select-list:hover{
    background-color: var(--blue);
}

/*************************************/
/******   NAVIGATION A FACETTE      ******/
/*************************************/

.facet-label{
    display: flex;
    align-items: center;
    margin-top : 5px;
}

#search_filters .facet ul {
    max-height: 308px;
    overflow-y: auto;
}
#search_filters .facet .facet-label a{
    margin-top: -8px;
}

.custom-checkbox input[type=checkbox]{
    margin-top :0;
}

.facet-dropdown.open>.select-title{
    border : 3px solid var(--pink);
}

.facet-dropdown .select-list:hover{
    background: var(--black);
}

#search_filters .facet, #search_filters_brands .facet, #search_filters_suppliers .facet{
    padding-top : 1rem;
}

#search_filters .facet .facet-title{
    margin-bottom: 0.8rem;
}

#search_filters>.h6, #search_filters_brands>.h6, #search_filters_suppliers>.h6{
    color : var(--red);
    font-weight: 700;
    font-size : 1.5rem!important;
}

/*************************************/
/******    PRODUIT         ******/
/*************************************/

.product-section{
    padding : 2rem 0;
}
.product-images>li.thumb-container .thumb.selected, .product-images>li.thumb-container .thumb:hover{
    border-color : var(--red);
}


/*.product-cover{*/
/*    text-align: center;*/
/*}*/
.product-cover .layer {
    background: rgba(117, 31, 51, 0.26);
}

.block-categories .category-sub-menu li[data-depth="1"], .product-prices div{
    margin: 0;
}

.tabs .nav-tabs{
    border-bottom : 0;
}

.product-flags li.product-flag{
    background: var(--red);
}

.product-flags li.product-flag.on-sale{
    background: var(--red);
}
.product-flags li.product-flag.cat-name{
    background: var(--red);
    width: 100%;
    margin-top: 0 !important;
    text-align: center;
}

.product-section-title{
    color : var(--red);
    font-size : 1.2rem;
}

select.form-control:not([size]):not([multiple]){
    border-radius: 8px;
}

.product-description{
    p{
        color: var(--blue);
        font-size: 1rem;
    }
}

.product-prices{
    margin-top: 2.5rem;
}

.addtocart-declinaisons{
    max-width: 470px;
}
.list-declinaison {
    border-bottom: 1px solid #e7e7e7;
    margin-bottom: 10px;
    padding-bottom: 10px;
}

.product-variants .radio-label {
    display: inline-block;
    padding: 8px 12px;
    font-weight: 600;
    background: #fff;
    border: 1px solid var(--blue);
}
.product-variants  label .color{
    width: 34px;
    height: 34px;
}
.input-color:hover+span, .input-radio:hover+span {
    background: #e8e8e8;
    border: 1px solid var(--blue);
}
.input-radio:checked+span{
    background: var(--blue);
    color: #fff;
    border: 1px solid var(--blue);
}
.input-color:checked+span{
    border: 3px solid #fff;
    box-shadow: 0 0 0px 2px var(--red);
}



/*************************************/
/******    PANIER         ******/
/*************************************/

#blockcart-modal .product-name{
    color : var(--red);
}

.product-line-info.product-price.h5{
    font-size : 1rem;
}

.product-line-actions .product-price{
    font-size : 1rem;
}

#cart-summary-product-list .product-price{
    font-size : 1rem;
}

#cart .card, #checkout .card{
    border: 1px solid var(--red) !important;
    border-radius: 10px;
}
.card .card-header{
    padding: .3125rem .4375rem;
    font-size: 1rem !important;
    font-weight: 700;
    color: var(--white);
    background: var(--red);
    border-radius: 8px 8px 0 0;
    text-align: center;
    text-transform: uppercase !important;
    margin: 0;
    line-height: initial;
    border: none;
}

#my-account .card{
    border: 1px solid var(--red) !important;
    border-radius: 10px;
}
#my-account .card .card-body{
    padding: 1rem 0 0;
}

[role=button], a, area, button, input, label, select, summary, textarea{
    color : var(--black);
}

body#checkout a:hover{
    color : var(--black);
}

a:focus, a:hover{
    color : var(--red);
}


body#checkout section.checkout-step .delivery-options .delivery-option {
    border-radius: 10px;
}

body#checkout section.checkout-step.-reachable.-current .step-number{
    background-color: var(--red);
}

.custom-radio input[type=radio]:checked+span{
    background-color: var(--red);
}

.form-control:focus{
    outline: 2px solid var(--red);
    border-color: var(--red);
}

.input-group.focus{
    outline-color: var(--red);
}

.carousel .carousel-control .icon-next:hover i, .carousel .carousel-control .icon-prev:hover i, .dropdown:hover .expand-more, .page-my-account #content .links a:hover i, .search-widget form button[type=submit] .search:hover, .top-menu .sub-menu a:hover{
    color : var(--red);
}

.top-menu .sub-menu{
    transition: none;
}

body#checkout section.checkout-step .address-item.selected{
    border-color : var(--red);
}

.page-my-account #content .links a i{
    color : var(--blue);
}

/*************************************/
/******    REASSURANCE         ******/
/*************************************/

.container-reassurance{
    background-color: var(--lightgrey);
    display: flex;
    justify-content: center;
    margin: 0!important;
    padding: 50px 0;
    margin-left: -15px!important;
    width: calc(100% + 30px);

    .container-items{
        display: flex;
        justify-content: space-around;
        align-items: baseline;
        width: 60%;
    }

    .block-reassurance-item{
        img{
            height: 50px !important;
            width: 100%!important;
            margin-right : 0!important;
        }
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 1rem;
        width: 30%;
        text-align: center;

        .block-reassurance-text{
            display: flex;
            flex-direction: column;
            .title-reassurance{
                margin-bottom: 0;
                color : var(--black);
                text-transform: uppercase;
                font-weight: 600;
                font-size : 12px!important;
            }
            .description-reassurance{
                color : var(--grey);
                font-size : 12px!important;
            }
        }
    }

}

.banner{
    margin-left : -15px;
    width: calc(100% + 30%);
    margin-bottom: 0!important;

    img{
        width: 100vw;
    }
}


/*************************************/
/******    FOOTER         ******/
/*************************************/

.page-footer{
    margin: 0!important;
}

#footer {
    background-color: var(--grey);
    padding-top: 15px;
    margin-top: 0;
}

.footer-container{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: right;
}

#contact-infos{
    color : var(--white);
    font-size : 1rem;
}

.contact-rich{
    margin-top : 2rem;
}

.contact-rich h4{
    display: none;
}

.logo_footer{
    margin-bottom : 2rem;
}

.logo_footer .logo{
    width: 170px;
}

.logo_footer a{
    position: relative;
    text-decoration: none;
    display: block;
}

.logo_footer #baseline{
    margin-top: 3px;
    font-size: 14px;
    color: #FFF;
    font-style: italic;
    position: relative;
    z-index: 2;
}

.footer-container li a{
    color : var(--white);
    font-size : 1rem;
    text-transform: uppercase;
}

.footer-container li a:hover{
    color : var(--red);
}



.block_link_footer a{
    color : var(--white);
    font-size : 1.2rem;
}

.block_link_footer a:hover{
    color : var(--red);
}

.phone_link_block{
    margin-bottom : 0.8rem;
}

.block_link_footer .phone_link{
    font-size : 2rem;
    font-weight: bold;
    font-style: italic;
}

.block_footer_bottom{
    background-color: var(--black);
}
.block_footer_bottom a{
    color : var(--white);
    font-size : 1rem;
}

.block_footer_bottom p{
    margin : 0;
    padding : 0.5rem 0;
}

#contact-infos a{
    color: var(--white);
    font-weight: 700;
    font-size: 20px;
}

ul#footer_sub_menu_1 li, ul#footer_sub_menu_2 li, ul#footer_sub_menu_3 li, .account-list li {
    line-height: 30px;
    font-size: 16px;

    a{
        text-transform: capitalize;

        &:hover{
            color : var(--white)!important;
            text-decoration: underline;
            text-underline-offset: 4px;
            text-decoration-thickness: 0.1em;
        }
    }
}


#block_myaccount_infos .myaccount-title a {
    margin-bottom : 1rem;
    color: var(--white);
    font-size : 1.5rem;
    text-transform: uppercase;
    font-family: 'PermanentMarker';
    font-weight: 500;

    &:hover{
        color: var(--red);
    }
}

.footer-bottom{
    margin-top: 2rem;
    background-color: var(--red);

}

.footer-bottom-content{
    padding-top: 1rem;
    font-weight: 500;
    font-size: 16px;
    color : var(--white)!important;

    a{
        color : var(--white);
    }

    a:hover{
        text-decoration: underline;
        text-underline-offset: 4px;
        text-decoration-thickness: 0.1em;
    }
}

.logo-footer{
    width: 150px;
}

/*************************************/
/*************************************/
/******    MEDIA QUERIES         ******/
/*************************************/
/*************************************/

@media (min-width: 1600px) {

    /*************************************/
    /******      GENERAL            ******/
    /*************************************/
    .container {
        width: 1700px;
    }

    .container_little{
        width: 1500px;
    }


}

@media (min-width: 1400px) and (max-width: 1599px) {

    /*************************************/
    /******      GENERAL            ******/
    /*************************************/
    .container {
        width: 1500px;
    }

    .container_little {
        width: 1200px;
    }

    /*************************************/
    /******      CATEGORY            ******/
    /*************************************/

    .container-category{
        top: 14%;
        .category-card-container {
            .view-cat{
                .image-cover{
                    width: 120px;
                    height: 120px;
                }
            }
        }
    }

    /*************************************/
    /******    CUSTOM TEXT         ******/
    /*************************************/

    .custom-text{
        width: 80%;
    }

}

@media (min-width: 1200px) and (max-width: 1399px) {

    /*************************************/
    /******    CUSTOM TEXT         ******/
    /*************************************/

    .custom-text{
        width: 90%;
    }

    #custom-text{
        padding: 1rem;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {

    /*************************************/
    /******      CATEGORY            ******/
    /*************************************/
    .container-category{
        top: 10%;
        .category-card-container {
            display: grid;
            grid-template-rows: repeat(3,1fr);
            grid-template-columns: repeat(3, 1fr);
            width: 70%;
            .view-cat{
                .image-cover{
                    width: 150px;
                    height: 150px;
                }
            }
        }
    }

    /*************************************/
    /******    REASSURANCE         ******/
    /*************************************/

    .container-reassurance{
        .container-items{
            width: 80%;
        }
    }

}

@media (max-width: 991px) {
    .carousel .carousel-item .caption {
         position: absolute;
         margin: 0;
         text-align: start;
    }
}

@media (min-width: 768px) and (max-width: 991px){
    #header .header-top .menu::before{
        display: none;
    }

    .container_little, .container{
        width: 100%;
    }

    #stickyDiv{
        display: none;
    }

    .block_link_footer .phone_link{
        font-size : 1.5rem;
    }

    #menu-icon i{
        color : var(--white);
    }

    #_mobile_top_menu a[data-depth="0"]{
        color : var(--black)!important;
    }

    .account .material-icons{
        color : var(--white);
    }

    /*************************************/
    /******      CATEGORY            ******/
    /*************************************/
    .container-category{
        position: relative;
        .container{
            padding-top: 2rem;
        }
        .category-card-container {

            display: grid;
            grid-template-rows: repeat(3,1fr);
            grid-template-columns: repeat(3, 1fr);
            width: 80%;

        }
    }

    /*************************************/
    /******    REASSURANCE         ******/
    /*************************************/

    .container-reassurance{
        .container-items{
            width: 90%;
        }
    }

    /*************************************/
    /******    CUSTOM TEXT         ******/
    /*************************************/

    .custom-text{
        width: 80%;

    }

    #custom-text{
        padding: 0;
    }

    /*************************************/
    /******    SLIDER HERO         ******/
    /*************************************/

    .carousel .carousel-item .caption {
        font-size: 30px;
        left: unset;
        right: 60px;
    }

    .carousel{
        margin-left: -50vw;
        width: 100vw;
        height: 600px;

        .carousel-item{
            p{
                color : var(--white)!important;
            }
            img{
                height: 600px;
            }
        }
    }

}

@media (max-width: 768px) {
    .block-categories{
        display: none;
    }

    .prmn_menus_ul{
        display: block;
    }

    .prmn_has_sub .prmn_menu_content_title{
        background: transparent;
        color : var(--black);
        padding: 0;
    }

    #header .header-top .menu::before{
        display: none;
    }

    #stickyDiv{
        display: none;
    }

    #menu-icon i{
        color : var(--white);
    }

    #_mobile_top_menu a[data-depth="0"]{
        color : var(--black)!important;
    }

    .account .material-icons{
        color : var(--white);
    }

    .logo_footer{
        padding : 1rem;
    }

    .footer-container .h3, .footer-container .h4{
        color : var(--white);
    }

    .block_link_footer{
        margin-top : 1rem;
    }

    .footer-container .links ul{
        background-color: transparent;
    }

    .footer-container .links ul>li a{
        color : var(--white);
    }

    .footer-container .links ul>li{
        border : 0;
        padding: .400rem;
    }

    #mobile_top_menu_wrapper{
        width: 100vw;
        margin-top: 85px;

        #_mobile_top_menu{
            width: 100%;
        }


    }

    #header .header-top a[data-depth="0"]{
        margin: 0;
        text-align: left;
    }

    #top-menu {
        & > li > a {
            &:after {
                border-bottom: 0;
            }
        }
    }

    #search_widget{
        margin-bottom : 0;
    }

    .cart-detailed-totals{
        padding : 15px;
    }

    .card-block.checkout{
        padding : 15px;
    }

    #js-checkout-summary{
        padding : 15px;
    }

    /*************************************/
    /******      CATEGORY            ******/
    /*************************************/
    .container-category{
        position: relative;
        .container{
            padding-top: 2rem;
        }
        .category-card-container {

            display: grid;
            grid-template-rows: repeat(3,1fr);
            grid-template-columns: repeat(3, 1fr);

            .view-cat{
                .image-cover{
                    width: 100px;
                    height: 100px;
                }
            }
        }
    }

    /*************************************/
    /******    REASSURANCE         ******/
    /*************************************/

    .container-reassurance{

        .container-items{
            flex-direction: column;
            width: 100%;
            gap: 2rem;

            .block-reassurance-item{
                width: 65%;
                margin: 0 auto;
            }
        }
    }

    /*************************************/
    /******    CUSTOM TEXT         ******/
    /*************************************/

    #custom-text{
        padding: 0;
    }
    /*************************************/
    /******    SLIDER HERO         ******/
    /*************************************/

    .carousel .carousel-item .caption {
        font-size: 30px;
    }

    .carousel .carousel-item .caption .display-1 {
        font-size: 2rem;
    }

    .carousel .carousel-item .caption {
        left: unset;
        right: 15px;
    }

    .carousel{
        margin-left: -50vw;
        width: 100vw;
        height: 500px;

        li.carousel-item:before {
            content: '';
            background: linear-gradient(0deg, var(--blue), transparent);
            position: absolute;
            left: 0;
            height: 100%;
            bottom: -70px;
            width: 100%;
        }

        .carousel-item{
            .caption{
                right: auto;
                left: 15px;
                bottom: 35%;
            }
            p{
                color : var(--white)!important;
            }
            img{
                height: 100%;
            }
        }
    }

    /*************************************/
    /******    FOOTER               ******/
    /*************************************/

    .padding-footer{
        padding-left: 2rem;
    }

    .block-contact #contact-infos {
        padding: 0;

    }

    #footer_sub_menu_1 li, #footer_account_list li{
        padding-left: 0;
    }

    ul#footer_sub_menu_1 li, .account-list li {
        line-height: 20px;
        font-size: 16px;
        a{
            font-weight: 500;
        }
    }

    #block_myaccount_infos, .links{
        margin-top: 1rem;

        .h3, h5{
            margin-bottom: 0.5rem;
        }

    }

    .footer-bottom{
        text-align: center;
    }

}


#ps_checkout-payment-method-logo-block-container{
    display: none;
}


.block-promo .promo-name .cart-summary-line span {
    color: var(--black);
}
.block-promo .promo-code .alert-danger {
    background: var(--blue);
}
.block-promo .promo-code .alert-danger::after{
    display: none;
}
.block-promo .promo-input {
    border-radius: 10px 0 0 10px;
    border: var(--red) 1px solid;
}
.block-promo .promo-input+button {
    border: 1px solid var(--red);
    border-radius: 0 10px 10px 0;
    padding: 9px 20px;
    margin-top: -2px;
}
.cart-grid-right .promo-discounts .cart-summary-line .label .code {
    color: var(--pink);
}


.zoommodal {
    position: absolute;
    background: rgba(255, 255, 255, 0.5);
    width: 100%;
    height: 100%;
    z-index: 9;
    top: 0;
    left: 0;
    opacity: 0;
    transition: all 0.1s;
    cursor: pointer;
}
.zoommodal:hover, .zoommodal:active {
    opacity: 1;
}
.zoommodal i{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    color: var(--lightgrey);
    font-size: 5rem;
}