


/* MAIN */

html{
  scroll-behavior: smooth;
}

body{
    font-family: "Open sans", Arial, sans-serif;
    background:#fff;
    color: #222;
    margin: 0;
}

ul{ margin: 0}

.fluid{
    padding: 0px 3%;
    margin: 0 auto;
    max-width: 1420px;
}

.fluid-product{
    padding: 0px 3%;
    margin: 0 auto;
    max-width: 980px;
}

#wrapper{
    padding-top: 0;
}

.bg-black{
    background:#2d2f32;
}

.bloc-grey{
    border: 1px solid #ccc;
    padding: 10px;
}

a{ color: #3073a7; text-decoration:none; }

a:hover{  text-decoration:none;  }

/* HEADER */


#header {
    padding: 20px 0px 0px 0px;
}
 


#header,
body .bg-dark-blue{
    background: #166176;
}

#header a {
    color: #fff;
}

#nav-top{
    display: flex;
    width: 100%;
    justify-content: space-between;
    min-height: 120px;
}

#nav-top-left{
    width: 25%;
}
#nav-top-center{

}
#nav-top-right{
    width: 25%;
}

.nav-top-right-links{
    margin-bottom: 20px;
    text-align: right;
}
.nav-top-right-links a{
    line-height: 32px;
    min-height: 32px;
    display: inline-block;
}

.nav-top-right-btn{
    display: flex;
    padding-left: 30%;
    margin-bottom: 20px;
}

.nav-top-right-btn a{
    display: block;
    text-align: center;
}
.nav-top-right-btn i{
    font-size: 40px;
}


#nav-top-right #_desktop_user_info,
#nav-top-right #_desktop_cart{
    width: 50%;
}

#search_widget{
    width: 100%;
}

#nav-top-menu{
    margin-bottom: 20px;
    text-align: right;
}

#nav-top-menu a{
    color: #999;
    padding: 5px;
    margin-left: 18px;
}
#nav-top-menu a:hover{
    color: #ccc;
}
#nav-top-menu a.active{
    color: #fff;
}

.btn-wallet{
    display: block;
    padding: 16px;
    text-align: center;
    background-color: #ccc;
    /*background-image: url("./../../images/icon/wallet.png");*/
    background-repeat: no-repeat;
    background-position: 12px center;
    background-size: 32px;
    border-radius: 3px;
    font-size: 16px;
}

#header a.btn-wallet-green{
    background-color: #cbdf95;
    color: #3a8e19;
/*background-image: url("./../../images/icon/wallet.png");*/
}
#header a.btn-wallet-red{
background-color: #db9978;
color: #b83636;
/*background-image: url("./../../images/icon/wallet-black.png");*/
}

#header a.btn-wallet-grey{
filter: grayscale(1);
color: #555;
    /*background-image: url("./../../images/icon/wallet-black.png");*/
}


#wrapper, footer{
background: #fff;
}


#logo{
max-width: 300px;
}

#nav-main{
position: relative;
}

#main-menu{
display: flex;
justify-content: space-between;
width: 100%;
}

#main-menu li.cat-n1{
display: block;
width: 10%;
margin: 0;
}

#main-menu li.cat-n1 > a{
display: block;
text-align: center;
color: #fff;
font-size: 13px;
height: 100%;
line-height: 140%;
padding: 10px;

}
#main-menu li.cat-n1 > a img{
width: auto;
height: 72px;
display: block;
margin: 0 auto;
max-width: 100%;
padding: 10px;
}

#main-menu li.cat-n1:hover > a{
background: #f8f8f8;
color: #333;
border-radius: 3px 3px 0px 0px;
}
#main-menu li.cat-n1:hover > a img{
filter:brightness(90%);
}

#main-menu li.cat-n1.current > a{
background-image: linear-gradient(0deg,rgba(255,255,255,0.15),rgba(255,255,255,0) 75% );
}

#main-menu li.cat-n1 .sub-menu{
display: none;
position: absolute;
left: 0;
width: 100%;
background: #f8f8f8;
padding: 30px 0px;
box-shadow: 0px 10px 10px rgba(0,0,0,0.1);
z-index: 10;


}

#main-menu li.cat-n1:hover .sub-menu{
display: block;
animation: 0.3s cubic-bezier(.33,1.22,.71,1.03) 0s 1 normal forwards running subMenuDown;
}

@keyframes subMenuDown {
0% { opacity: 1; transform: translateY(0px); }
100% { opacity: 1; transform: translateY(-3px); }
}


#main-menu li.cat-n1 .sub-menu ul{
display: flex;
justify-content: flex-start;
}
#main-menu li.cat-n1 .sub-menu ul li{
width: 140px;
margin-right: 20px;
}
#main-menu li.cat-n1 .sub-menu ul li a{
width: 100%;
display: block;
text-align: center;
font-size: 13px;
}
#main-menu li.cat-n1 .sub-menu ul li a img{
margin-bottom: 10px;
border: none;
border-radius: 3px;

}






/* CONTENT */

.bloc{
    background: #fff;
    border: none;
    border-radius: 5px;
}

.breadcrumb{
    margin: 20px 0px 0px 0px;
}
.breadcrumb li{
    display: inline;
}




h1{
    color: #2c2e30;
    font-size: 36px;
    font-weight: 400;
    margin: 0px 0px 10px 0px;
}
h2{
    color: #166176;
    font-size: 30px;
    font-weight: bold;
    margin: 20px 0px 10px 0px;
}
h3{
    color: #308ba4;
    font-size: 24px;
    font-weight: bold;
    margin: 15px 0px 5px 0px;
}
h4{
    color: #2ca5c6;
    font-size: 20px;
    font-weight: bold;
    margin: 15px 0px 5px 0px;
}
h5{
    color: #57a116;
    font-size: 20px;
    font-weight: bold;
    margin: 15px 0px 5px 0px;
}
h6{
    color: #cd511a;
    font-size: 20px;
    font-weight: bold;
    margin: 15px 0px 5px 0px;
}

.color-turquoise{color:#12a28f}
.bg-turquoise{background-color:#12a28f}

.btn-primary{

}

.color-light-green{
    color: #83be4b;
}


p, li, td{
    font-size: 15px;
    color: #333;
    margin-bottom: 5px;
    line-height: 150%;
}

table{ border-collapse: collapse; }
table tr th, table tr td{ padding: 3px 6px; border-bottom: 1px solid #ccc; border-collapse: collapse }


input, textarea{
    padding: 8px;
    background-image: linear-gradient(0deg, #fff, #fefefe);
    border: 1px solid #bbb;
    border-radius: 4px;
}


b,strong{font-weight:600}

#description-avantage li,
ul.check li{
    list-style-type: disc;
    margin: 0px 0px 0px 16px ;
}


/* home & category */
.product-list{
    display: flex;
    flex-wrap: wrap;
}

.product-item{
    width: 300px;
    border-radius: 5px;
    margin: 0px 23px 30px 0px;
    display: block;
    background: #fff;
    border: 1px solid #ccc;


}
.product-item:hover{
    border: 1px solid #166176;
}

.product-item img{
    width: 100%;
    display: block;
    padding: 10px 20px;
}

.product-item .stock-infos > span{
    width: 100%;
}

.product-infos{
    display: block;
    padding: 0px 20px 20px 20px;
    width: 100%;
}

body #wrapper .product-title,
body #wrapper .product-title a{
    font-size: 16px;
    margin-bottom: 10px;
    display: block;
    min-height: 60px;
}



span.price{
    color: #555;
    font-weight: bold;
    font-size: 22px;
    line-height: 30px;

}



.simple-border{
    border: 1px solid #ccc;
    border-radius: 5px;
    background: #fff;
}



.badge-discount{
    box-shadow: -3px 3px 0px rgba(0,0,0,0.2);
    border-radius: 2px;
}


#reassurance img{
    max-width: 160px;
}









table{
    width: 100%;
}
table tr{

}
table tr td{
    border-bottom: 1px solid #ccc;
    padding: 5px;

}
table tr:last-child td{
    border-bottom: none;


}

.array{}
.array-row{
    padding: 5px;
    background-color: #f8f8f8;
    margin-bottom: 1px;
    font-size: 15px;
}
.array-row:hover{
    background-color: #f0f0f0;
}
.array-row.active{
    background-color: #ffcd26;
}

body .show-before-loaded {
    display: block;
}
body.isloaded .show-before-loaded {
    display: none;
}

body .show-after-loaded {
    display: none;
}
body.isloaded .show-after-loaded {
    display: block;
}

#blockcart-modal{
    top:40px
}

.footer-links a{
    font-size: 18px;
}


#main ul.carousel-inner{
    margin-left: 0;
}
.carousel .carousel-inner{
    height: auto;
    margin-left: 0;
}

.carousel .carousel-item li a{
    width: 100%;
    display: block;
    text-align: center;
}

.carousel .carousel-item figure{
    width: 100%;
    display: block;
    text-align: center;
}
.carousel .carousel-item figure img {
    border-radius: 8px;
    max-height: 680px;
    width: auto;
    box-shadow: 0px 5px 10px rgba(0,0,0,0.5);
    margin: 10px 0px;
}

.carousel .carousel-item .caption{
    position: inherit;
    bottom: 0;
    left:0;
    display: none;
}

.carousel .carousel-indicators {
    display: block;
    bottom: -50px;
}

.carousel-indicators li,
.carousel-indicators li.active{
    width: 50px;
    height: auto;
    text-indent:inherit;
    border: none;
    margin: 0px 10px;
    background: #fff;
    padding: 0;
}

.carousel-indicators li img,
.carousel-indicators li.active img{
    border: 3px solid #fff;
    border-radius: 8px;
    padding: 0;
    margin: 0;
    box-shadow: 0px 5px 10px rgba(0,0,0,0.3);
}

.carousel-indicators li img {
    opacity: 0.6;
    width: 50px;

}
.carousel-indicators li.active img {

    border: 3px solid #12a28f;
    opacity: 1;
    transform: scale(1);


}

body .btn-white{
    border: 1px solid #ccc;
    color: #166176;
    border-radius: 5px;
    padding: 6px 12px;
    font-size: 16px;
}



body#product .current-price-value{
    font-size: 26px;
    color: #333;
}


.block-category{
    margin-bottom: 0;
    min-height: auto;
}

#main p strong,
.block-category .block-category-inner #category-description strong{
    color: inherit;
    font-weight: bold;
}

.block-category .block-category-inner #category-description strong{
    color: inherit;
}

#main ul{
    list-style-type: disc;
    margin-left: 20px;
}
#main ul li{

}


#category-description{
    width: 100%;
    display: block;
}

#category-description img{
    width: 100%;
    height: auto;
    display: block;
}

#category-description hr{
    clear: both;
}

img#category-description-cover{
    width: 30%;
    height: auto;
    float: right;
}

section#products{
    clear: both;
}

.product-list .product{
    padding: 12px;
    width: 240px;
    margin: 15px;
    box-sizing: border-box;
}

.product-list .product-description{
    padding: 0;
}
.product-list .product-price{
    width: 100%;
}



.product-list .product-miniature,
.product-list picture,
.product-list img{
    display: block;
    width: 100%;
}

.product-list img{

    width: 90%;
    height: auto;
    margin: 0 auto;
    margin-bottom: 10px;
}

#js-product-list-top{
    padding: 0px 30px 0px 5px;
}

.products-selection{
    margin-bottom:0px;
}

.nav-tabs,
.nav-tabs::after{
    border: none;
    background: none;
}


ul.product-images li img{
    width: 60px;
    height: 60px;
}



#subcategories{
    margin: 10px 0px 20px 0px;
    border: none;
    padding: 0;
}

#subcategories ul{
    list-style: none;
    margin: 0;
}

#subcategories ul li{

    float: left;
    width: 190px;
    min-width: 190px;
    margin: 5px 15px 15px 15px;
}


/* ------------ SERVICES ------------ */




body .mystyle-liste .product-list .product{
    float: none;
    width: 100%;
    margin: 4px 18px;
    padding: 5px;
}

body .mystyle-liste .product-list .product article{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

body .mystyle-liste .product-list .product-image{

}
body .mystyle-liste .product-list .product-description{
    width: 80%;
}

body .mystyle-liste .product-list  a.product-link{
    width: 50%;

}

body #wrapper .mystyle-liste .product-list  .product-title {

text-align: left;
    min-height: 10px;
}




body .mystyle-liste .product-list .product-price{
    width: 10%;
}

body .mystyle-liste .product-list picture{
    float: left;
    width: 60px;
    height: 60px;
    margin-right: 2%;
}

body .mystyle-liste .product-list img{
    width: 100%;
    height: auto;
    margin-bottom: 0;
}

body .mystyle-liste .product-list .product article{
    display: flex;
    justify-content: space-between;
}

body .mystyle-liste .product-list #add-to-cart-or-refresh{
    display: none;
}

#main ul.brand-list{
    list-style: none;
    display: flex;

    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}
.brand-list li{
    list-style: none;
    width: 220px;
    margin-bottom: 30px;
    margin-right: 40px;

}
.brand-list li a{
    display: block;
    padding: 10px 10px 20px 10px;
    min-height: 290px;
}

.brand-title{

    font-size: 16px;
}

.brand-text,
.brand-text p{
    color: #999;
    font-size: 12px;
}







@media screen and (max-width: 1080px)
{

    #header {
        padding: 0px 0px 0px 0px;
    }

    /* MENU MOBILE */

    a#menu-mobile-btn {
        position:relative;
        color:#fff;
        width:42px;
        height:40px;
        text-align:center;
        cursor:pointer;
        z-index:65000;
        margin-left: 0;
        margin-right: 15px;
        padding-left: 0;
        padding-right: 0;
        padding-top: 5px;
        left: 10px;
        top: 10px;

    }

    #menu-mobile-btn .txt-menu {
        display:none
    }
    body.open #menu-mobile-btn .txt-menu {
        display:none
    }
    #menu-mobile-btn .txt-fermer {
        display:none
    }
    body.open #menu-mobile-btn .txt-fermer {
        display:none
    }
    #nav-hamburger {
        width:36px;
        height:36px;
        position:relative;
        margin:2px auto 2px auto;
        -webkit-transform:rotate(0);
        -moz-transform:rotate(0);
        -o-transform:rotate(0);
        transform:rotate(0);
        -webkit-transition:.5s ease-in-out;
        -moz-transition:.5s ease-in-out;
        -o-transition:.5s ease-in-out;
        transition:.5s ease-in-out;
        cursor:pointer
    }
    #nav-hamburger span {
        display:block;
        position:absolute;
        height:2px;
        width:100%;
        background:#fff;
        border-radius:1px;
        opacity:1;
        left:0;
        -webkit-transform:rotate(0);
        -moz-transform:rotate(0);
        -o-transform:rotate(0);
        transform:rotate(0);
        -webkit-transition:.25s ease-in-out;
        -moz-transition:.25s ease-in-out;
        -o-transition:.25s ease-in-out;
        transition:.25s ease-in-out
    }
    #nav-hamburger span:nth-child(1) {
        top:0
    }
    #nav-hamburger span:nth-child(2),
    #nav-hamburger span:nth-child(3) {
        top:12px
    }
    #nav-hamburger span:nth-child(4) {
        top:24px
    }
    body.open #menu-mobile-btn #nav-hamburger span:nth-child(1) {
        top:7.5px;
        width:0%;
        left:50%
    }
    body.open #menu-mobile-btn #nav-hamburger span:nth-child(2) {
        -webkit-transform:rotate(45deg);
        -moz-transform:rotate(45deg);
        -o-transform:rotate(45deg);
        transform:rotate(45deg)
    }
    body.open #menu-mobile-btn #nav-hamburger span:nth-child(3) {
        -webkit-transform:rotate(-45deg);
        -moz-transform:rotate(-45deg);
        -o-transform:rotate(-45deg);
        transform:rotate(-45deg)
    }
    body.open #menu-mobile-btn #nav-hamburger span:nth-child(4) {
        top:7.5px;
        width:0%;
        left:50%
    }

    /* Menu  */


    #nav-top{
        display: block;
        min-height: 86px;
        padding-top: 30px;
    }


    #nav .fluid{
        padding: 0px 10px;
    }

    body #nav-main{
        display: none;
    }

    body #nav-top-menu{
        display: none;
    }

    body.open #nav-main,
    body.open #nav-top-right,
    body.open #nav-top-menu{
        display: block;
    }

    body.open #nav-top-right{
        display: flex;
        flex-direction: column-reverse;
    }

    body.open #nav-top-menu{
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 0;
        justify-content: space-between;
    }
    body.open #nav-top-menu a{
        width: 48%;
        padding: 5px;
        margin: 0px;
        margin-bottom: 5px;
        display: inline-block;
        text-align: center;
        background: #222;
        border-radius: 12px;
    }


    body.open #nav{
        display: block;
    }
    body.open #wrapper{
        display: none;
    }

    #nav-top-right{
        position: absolute;
        top: 0;
        right: 10px;
        width: 30%;
    }
    #nav-top-right a{
        display: block;
        padding: 15px 5px;
    }
    #nav-top-right i{
        font-size: 26px;
    }

    /*
    #user-login,
    #_desktop_cart{
        position: absolute;
        top: 16px;
    }
    #user-login i,
    #_desktop_cart i{
        font-size: 26px;
    }
    #user-login{
        right: 90px;
    }
    #_desktop_cart{
        right: 16px;
    }
    a#menu-mobile-btn{
        left: 10px;
        top: 10px;
    }*/

    #logo {
        width: 160px;
        position: absolute;
        left: 80px;
        top: 10px;
    }

    body #main-menu {
        display: block;
        width: 100%;
    }
    body #main-menu li.cat-n1 {
        display: block;
        width: 100%;
        margin-bottom: 5px;
    }
    #main-menu li.cat-n1 a:hover,
    #main-menu li.cat-n1:hover{
        background: none;
        color: #fff;
        border-radius: 12px;
    }
    body #main-menu li.cat-n1:hover .sub-menu{
        display: none;
    }
    #main-menu li.cat-n1 > a{
        text-align: left;
        display: flex;
        align-items: center;
        background: #222;
        border-radius: 12px;
        padding: 12px;
    }
    #main-menu li.cat-n1 > a:hover{
        background: #222;
        border-radius: 12px;
    }
    #main-menu li.cat-n1 > a img{
        margin: 0;
        padding: 0;
        width: 40px;
        height: 40px;
        margin-right: 10px;
    }


    /* content */

    body .skrew, body .bloc.flip .skrew{
        background-image: none;
        padding: 10px;
    }
    body .category-description-level-2 > .c {
        background-size: cover;
    }

    #slider-home{
        display: none;
    }


    body #header .menu-categories ul.ul-level-0{
        flex-wrap: wrap;
    }
    body #header .menu-categories ul.ul-level-0 li.li-level-0{
        flex-wrap: wrap;
        width: 100%;
        margin-right: 0px;
    }


    body #header .menu-categories ul a.a-level-0{
        display: flex !important;
        align-items: center;
        justify-content: start;
        width: 100%;
        text-align: left;
        padding-bottom: 0px;
    }
    body #header .menu-categories ul a.a-level-0 img{
        width: 80px;
        padding: 10px;
        margin: 0;
    }

    body #header .menu-categories li:hover .submenu{
        display: none;
    }

    #subcategories ul li {
        width: 150px;
        min-width: 150px;
    }

    body#product #main{
        padding: 10px;
    }

}
