#searchLayer {
    position: absolute;
    top: 6rem;
    width: 100%;
    margin:0;
    background-color: #fff;
    z-index: 7;
    max-width: 100%;
    font-family : sofia;
    margin-bottom: 1.5rem;
    overflow-y: scroll;
    height: 100%;
}

#searchLayer #hits {
    clear:both;
    padding: 0 8rem;
}

#hits li, #hitsCategorie li {
    float:left;
    margin-bottom: 3rem;
    width:calc(33.33% + -4rem);
    position:relative;
}

#hits li:nth-child(3n - 1),#hitsCategorie li:nth-child(3n - 1) {
    margin: 0 2rem;
}

#hits li:nth-child(3n - 2),#hitsCategorie li:nth-child(3n - 2) {
    margin-right: 4rem;
}

#hits li:nth-child(3n),#hitsCategorie li:nth-child(3n) {
    
    margin-left: 4rem;
}

.productBox {
    position:relative;
}

.productBox img {
    width: 100%;
}

.productBox a p:first-of-type {
    height: 1.5rem;
    overflow: hidden;
}

.productBox picture {
    position:relative;
}

.quick-view {
    display:none;
    height: 3rem;
    width: 100%;
    position: absolute;
    background-color: #000;
    left: 0;
    color: #fff;
    text-align: center;
    bottom: 3.5rem;
    line-height: 3rem;
    cursor:pointer;
}

.productBox:hover .quick-view{
    display:block;
}

.quick-add {
    display:none;
    height: 3rem;
    width: 100%;
    position: absolute;
    background-color: #000;
    left: 0;
    color: #fff;
    text-align: center;
    bottom: 3.5rem;
    line-height: 3rem;
    cursor:pointer;
}

.productBox:hover .quick-add{
    display:block;
}

.productBox .delay {
    float:right;
}

.productBox .stick-solde {
    position: absolute;
    color: #fff;
    background: #f14444;
    padding: .25rem .5rem;
    right: 0;
    bottom: 0;
}

body.bf .stick-solde, body.vp .stick-solde {
    background: #000000;
}

.productBox .price {
    font-size:1.25rem;
    font-family:sofiam;
}

.productBox .price.solde {
    color: #f14444;
}

.productBox .price.solde span:not(:first-of-type){
    color:#000;
    text-decoration: line-through;
}


.filterBoxSuggestion {
    height: 2.25rem;
    padding: 0 0 .75rem 0;
    overflow: hidden;
}

.filterboxResult .filterLayer:not(.display-order):nth-child(n+6), .filterLayer:not(.display-order):nth-child(n+6) {
    display:none;
}

.filterboxResult h3 {
    font-size:.875rem;
    font-family:sofia;
}

.filterboxResult .titleDimension {
    margin:0;
}

.filterboxResult .titleDimension img {
    float: left;
    margin-top: .875rem;
    margin-right: .5rem;
}

.filterLayer {
    margin-right: 4rem;
    float:left;
    cursor: pointer;
}
.filterLayer > div {
    display:none;
}

.filterLayer h2 {
    font-size:1rem;
    font-family:sofia;
    margin:0;

}

.filterLayer h2 img {
    margin-left:.5rem;
    width:.5rem;
    height:.5rem;
}

.filterboxResult {
    height: 4rem;
    line-height: 4rem;
    border-top: solid 1px #f5f5f5;
    border-bottom: solid 1px #f5f5f5;
}

.filterBoxSuggestion li {
    cursor:pointer;
    float:left;
    padding:.75rem 0;
    margin-right:.75rem;
    height:2.25rem;
    line-height:2.25rem;
    width:auto;
    font-family : sofia;
    font-size:.75rem;
    color:#000;
}

.filterBoxSuggestion li:first-child {
    padding-left:0;
}

.filterResult {
    position: absolute;
    background-color: #fff;
    z-index: 6;
    border: solid 1px #f5f5f5;
}

#searchLayer .suggestion {
    background-color:#F5F5F5;
    padding:0 .75rem;
}

#searchLayer .fullwidth {
    padding: 2rem 8rem;
}

#searchLayer .fullwidth h2 img {
    width:.5rem;
    height:.5rem;
}


.filtersApply {
    display:none;
}

#clearfilterBox {
    display:none;
}

.btnCloseSearch {
    cursor: pointer;
    position: absolute;
    height: 1rem;
    width: 1rem;
    top: 1rem;
    right: 1rem;
}

.btnCloseSearch img {
    width:1rem;
    height:1rem;
}

.filterBox > a {
    display:none;
}


#clearfilterBoxCategorie {
    float: left;
}
.ais-ClearRefinements-button {
    height: 4rem;
    background: none;
    border: none;
    display:block;
    font-family: sofiam;
    color:#000;
    font-size: 1rem;
    cursor:pointer;
    margin-right: 1rem;
}
.ais-ClearRefinements-button:disabled {
    display:none;
}

.filterBox, .filterBoxCategorie {
    line-height:4rem;
}

.ais-RefinementList {
    padding: 2rem;
    padding-bottom: 1rem;
    
}

.ais-RefinementList .ais-RefinementList-item {
    line-height:1rem;
    margin-bottom:1rem;
}

.ais-RefinementList .side-label::before {
    top: -3px;
}

.filterboxResult input[type=checkbox]:checked+.side-label::after {
  top: calc(.25rem + -2px);
}

.ais-RefinementList-showMore {
    background: 0 0;
    border: none;
    font-style: italic;
    display: block;
    font-family: sofiam;
    font-size: 1rem;
    padding: 0;

}
#searchLayer .ais-RefinementList-showMore  img{
    width: 2rem;
    float: left;
    margin-top: -.5rem;
}


.ais-RefinementList-showMore--disabled {
    display:none;
}

.display-order {
    float:right;
    margin-right:0;
}
.display-order span {
    font-family:sofiam;
}

.ais-SearchBox-input {
    width: 100%;
    height: 5rem;
    border: none;
    font-size: 1.5rem;
    color: #000;
    line-height: 5rem;
    border-bottom: 1px solid #f5f5f5;
    padding: 0 .75rem 0 0;
    outline: none;
    font-family: sofiapro_light;
    -webkit-appearance: none;
    border-width: 0;
    border-style: none;
}

.ais-SearchBox-input::-webkit-search-decoration,
.ais-SearchBox-input::-webkit-search-cancel-button,
.ais-SearchBox-input::-webkit-search-results-button,
.ais-SearchBox-input::-webkit-search-results-decoration {
  -webkit-appearance:none;
  -webkit-border-radius:0px;
  border-radius: 0;
}

.ais-SearchBox-input::placeholder{
    color: #E6E6E6;
}

.ais-SearchBox-reset {
    display: none;
}


.filterResult.dimension{
    padding: 1rem 3rem 2rem 2rem;
}


.rheostat.selectedFilter .rheostat-handle {
    background-color:#333;
}
.rheostat .rheostat-handle {
    background-color:#000;
    z-index: 2;
}

.ais-RangeSlider .rheostat-progress {
    background-color: #E6E6E6; 
}

.rheostat.selectedFilter .rheostat-progress {
    background-color: #333; 
}

.ais-RangeSlider .rheostat {
    overflow: visible;
    margin-top: .5rem;
    margin-bottom: 3rem; 
}
  
.ais-RangeSlider .rheostat-background {
    height:.5rem;
    top: 0;
    width: 100%; 
}

.ais-RangeSlider .rheostat-background {
    position: relative;
    background-color: #ffffff;
}
  
.ais-RangeSlider .rheostat-progress {
    position: absolute;
    top: 2px;
    height: 2px;
}
  
.rheostat-handle {
width: 1rem;
height: 1rem;
background-color: #333;
position: absolute;
display: block;
top: -0.325rem;
cursor: pointer;
border-radius: 100%;
-webkit-border-radius: 100%;
-moz-border-radius: 100%;
-o-border-radius: 100%;
cursor: -webkit-grab;
cursor: grab;
}

.rheostat-marker {
margin-left: -1px;
position: absolute;
width: 1px;
height: .5rem;
background-color: #aaa;
display:none;
}

.rheostat-marker--large {
  height: .5rem;
}

.rheostat-value {
margin-left: 50%;
padding-top: 2rem;
position: absolute;
text-align: center;
-webkit-transform: translateX(-50%);
transform: translateX(-50%); }

.rheostat-tooltip {
margin-left: 50%;
position: absolute;
text-align: center;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}

.dim-left, .dim-left:hover, .dim-left:active, .dim-left:focus {
    border: solid 1px #f5f5f5;
    width: 2rem;
    height: 1rem;
    float: left;
    text-align:center;
}

.dim-right, .dim-right:hover, .dim-right:active, .dim-right:focus {
    border: solid 1px #f5f5f5;
    width: 2rem;
    height: 1rem;
    float: right;
    margin-right: 1rem;
    text-align:center;
}

#filterBoxDimension, #filterBoxDimension1Categorie, #filterBoxDimension2Categorie {
    margin-top:2rem;
}

.selecFilter {
    float: left;
    background-color: #f5f5f5;
    padding: 0 .5rem;
    height: 2rem;
    line-height: 2rem;
    margin-top: 1rem;
    cursor:pointer;
    margin-right: 1rem;
}

@media (max-width: 1279px) {
    .selecFilter {
        margin-right:50%;
    }

    .mob.filter-title {
        text-align:center;
        font-family:sofiam;
        line-height: 2.5rem;
    }

    .mob.filter-close {
        cursor:pointer;
        width: 2rem;
        height: 2rem;
        float:left;
    }

    .filterResult.dimension{
        padding: 1rem 0 2rem 1.5rem;
    }

    .btnCloseSearch {
        top: 4rem;
    }

    .productBox:hover .quick-view{
        display:none;
    }

    .ais-RangeSlider{
    width:90%;
    }

    #searchLayer .fullwidth {
        padding: 2rem 1rem;
    }

    #searchLayer #hits {
        padding: 0 1rem;
        padding-bottom:4rem;
    }

    .contentLayer {
        padding: 0 1rem;
    }

    .filterBoxCategorie {
        top: 6rem;
        width: 100%;
        text-align: center;
        left: 0;
    }

    body.optiBanner .filterBoxCategorie {
        top: 8rem;
    }

    body.optiBanner.banner .filterBoxCategorie {
        top: 12rem;
    }

    #hits li, #hitsCategorie li {
        width:calc(50% + -.5rem);
        margin-bottom: 3rem;
    }

    #hits li:nth-child(2n), #hitsCategorie li:nth-child(2n) {
        padding-left:1rem;
    }

    #hits li:nth-child(3n - 2), #hitsCategorie li:nth-child(3n - 2) {
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 3rem;
    }
    #hits li:nth-child(3n - 1), #hitsCategorie li:nth-child(3n - 1) {
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 3rem;
    }
    #hits li:nth-child(3n), #hitsCategorie li:nth-child(3n) {
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 3rem;
    }

    .filterboxResult {
        position: fixed;
        background: #fff;
        z-index: 6;
        top: 0;
        left: 0;
        height: 100vh;
        margin:0;
        border-top:0;
        width:calc(100% + -2rem);
        padding:1rem;
        overflow: scroll;
        display:none;
    }

    .filterLayer {
        width: 100%;
    }

    .filterLayer > div {
        display: none;
        width: calc(100% + -2rem);
        border:none;
    }

    .display-order {
        float: left;
        margin-bottom: 5rem;
    }

    .filter-open .filterboxResult {
        display:block;
        height: calc(100% + -2rem);
    }

    .ais-RefinementList .ais-RefinementList-item {
        float: left;
        width: 50%;
    }

    .ais-RefinementList {
        padding: 0;
        padding-bottom: 2rem;
    }

    .filter-open .filtersApply.open {
        display:block;
    }

    .filter-open .filtersApply:not(.open) {
        display:block;
    }

    #clearfilterBoxCategorie {
        clear: both;
        text-decoration: underline;
    }

    .filtersApply {
        position: fixed;
        bottom: 0;
        margin-bottom: 0;
        z-index: 6;
        display: block;
        left: 0;
        padding: 1rem;
        width: 100%;
        background-color: #fff;
        height: 3rem;
        line-height: 3rem;
        border-top: solid 1px #f5f5f5;
    }

    .filtersApply .button {
        height:3rem;
        line-height:3rem;
    }

    .filtersApply .button.bold {
        font-family:sofiam;
    }

    .filtersApply > div {
        width: calc(50% - 1.5rem);
        float: left;
        text-align: center;
        display:block;
        cursor:pointer;
    }

    .filtersApply > div:last-child {
        margin-left:1rem;
    }

    .filtersApply.open {
        display:none;
    }
    .filterResult {
        position: initial;
    }
}

@media (min-width: 1280px) and (max-width: 1365px) {
    
    #searchLayer .fullwidth {
        padding: 2rem;
    }

    #searchLayer #hits {
        clear:both;
        padding: 0 2rem;
    }

    #hits li, #hitsCategorie li {
        margin-bottom: 1rem;
        width:calc(33.33% + -1rem);
    }
    
    #hits li:nth-child(3n - 1),#hitsCategorie li:nth-child(3n - 1) {
        margin: 0 .5rem;
    }
    
    #hits li:nth-child(3n - 2),#hitsCategorie li:nth-child(3n - 2) {
        margin-right: 1rem;
    }
    
    #hits li:nth-child(3n),#hitsCategorie li:nth-child(3n) {
        margin-left: 1rem;
    }
}


@media (min-width: 1366px) and (max-width: 1919px){
    #searchLayer .fullwidth {
        padding: 2rem 4rem;
    }

    #searchLayer #hits {
        clear:both;
        padding: 0 4rem;
    }

    #hits li, #hitsCategorie li {
        margin-bottom: 2rem;
        width:calc(33.33% + -2rem);
    }
    
    #hits li:nth-child(3n - 1),#hitsCategorie li:nth-child(3n - 1) {
        margin: 0 1rem;
    }
    
    #hits li:nth-child(3n - 2),#hitsCategorie li:nth-child(3n - 2) {
        margin-right: 2rem;
    }
    
    #hits li:nth-child(3n),#hitsCategorie li:nth-child(3n) {
        margin-left: 2rem;
    }
}


@media (max-width: 767px) {
    #hits li, #hitsCategorie li {
        width:100%;
        margin-bottom: 3rem;
    }

    #hits li:nth-child(2n), #hitsCategorie li:nth-child(2n) {
        padding-left:0;
    }
}

@media (max-width: 768px) {
    body.optiBanner.banner .filterBoxCategorie {
        top : 11rem;
    }
}