/* *[id]{ border: 1px solid yellow; position: relative; padding: 1rem; }
*[id]:before{ content: '#'attr(id); position: absolute; top: -.5em; left: 1em; color: rgb(190, 156, 0); font-size: 1rem; margin-bottom: 1em; }
div[class]{ border: 1px solid #eee; position: relative; padding: 1rem; }
div[class]:before{ content: '.'attr(class); position: absolute; top: -.5em; left: 1em; color: #ccc; font-size: 1rem; }

nav[class],
section[class],
header[class],
main[class],
footer[class]{ border: 2px solid blue; position: relative; padding: 1rem; }
nav[class]:before,
section[class]:before,
header[class]:before,
main[class]:before,
footer[class]:before{ content: '.'attr(class); position: absolute; top: -.5em; left: 1em; color: blue; font-size: 1rem; background-color: #fff; }

*[id^="position-"]{ border: 2px solid red; position: relative; padding: 1rem; }
*[id^="position-"]:before{ content: '.'attr(id); position: absolute; top: -.5em; left: 1em; color: red; font-size: 1rem; background-color: #fff; } */
*{ margin: 0; padding: 0; }

body{ 
    --bs-body-font-family: Mont, Helvetica, sans-serif;
    --bs-body-font-size: 1.125rem; /* 18px */
    --bs-body-line-height: 1.67em;
    --bs-body-color: #848484;

    --containerWidth: 100%;
    --asideWidth: calc((100vw - var(--containerWidth)) / 2);
    --headerHeight: calc(var(--containerWidth) * 0.19);

    --noir: #000;
    --rouge: #FF2A37;
    --bggris: #efefef; /* #f5f5f5 */

    --fz35:  calc(1.188888rem + 0.71vw);
    --fz50:  calc(1.355554rem + 1.33vw);
    --fz70:  calc(1.577778rem + 2.17vw);
    --fz120: calc(2.133333rem + 4.25vw);

    --swiper-theme-color: var(--noir);
    --swiper-pagination-color: var(--noir);
    --swiper-pagination-bullet-inactive-color: var(--bs-body-color);
    --swiper-pagination-bullet-size: .5em;

    color: var(--bs-body-color); 
    font-family: var(--bs-body-font-family);
    font-size: var(--bs-body-font-size);
	font-weight: 500;
    line-height: var(--bs-body-line-height);
    
    --fancybox-thumbs-border-radius: 1px;
    --fancybox-accent-color: var(--rouge);
}

:focus, button:focus { outline:none; }

/* Images */
img, svg { max-width:100%; height:auto; }
[data-sizes] { display:block; width:100%; }
[data-bg] { background-size:cover; background-repeat:no-repeat; background-position: center center; }

/* Headings */
h1, h2, h3,
.h1, .h2, .h3{ margin: 0 0 3vmin; line-height: 1.2em; color: var(--noir); }
h1, .h1{ font-size: var(--fz70); }
h2, .h2{ font-size: var(--fz50); color: var(--rouge); margin-top: 1em; margin-bottom: 5vmin; font-weight: bold; }
h3, .h3{ margin-bottom: 1em; position: relative; font-size: var(--fz35); }
h4, .h4{ color: var(--noir); font-size: 20px; text-transform: lowercase; margin: 1em 0 0.5em; opacity: .7; line-height: 1.2em; }
h5{ font-size: 1em; margin-bottom: 1em; }
/* h4:before, .h4:before{ content: '. '; } */
h6{ color: var(--noir); font-weight: normal; font-size: inherit; margin: 1em 0; }

/* Paragraphs & lists */
p { margin-bottom: 1rem; }

blockquote{ font-size: var(--bs-body-font-size); color: var(--noir); padding: 5px; margin-bottom: 10px; }
blockquote:before{ content: '“'; font-size: 30px; }
cite{ display: block; font-size: 16px; text-align: right; }

ul, ol{ padding:0; list-style:none; margin-bottom: 1em; width: 100%; display: flex; flex-direction: column; }
li{ margin-bottom: 0.5em; padding-left: 0; /*display: inline-flex; align-items: center; flex-wrap: wrap;*/ }
li:before{ content: '-'; padding-right: .5em; }
li ul{ margin-left: 1em; margin-bottom: 0; margin-top: .5em; }

dl{ display:flex; flex-wrap:wrap; }
dt{ font-weight: bold; }
dt:after{ content: ' :'; }
dd,
dt{ flex: 0 0 calc(50% - 0.25rem); box-sizing: border-box;padding:0.625rem;margin:0.125rem;background:#f6f6f6;}

/* Separateur */
hr{ margin: 1em 0; border: 0; border-bottom: 1px solid #dfdfdf;}

/* inline elements*/
small{ font-size: .85em; }

/* Link */
a{ color: var(--noir); text-decoration: none; white-space: nowrap; position: relative; }
a:hover{ color: var(--rouge); }

/* icon */ 
.ico{ display: inline-block; width: 1.25rem; min-width: 1.25rem; height: 1.25rem; overflow: hidden; text-indent: 2rem; white-space: nowrap; background-color: var(--noir);
    mask-repeat: no-repeat; mask-position: 50% 50%;
    -webkit-mask-repeat: no-repeat; -webkit-mask-position: 50% 50%; }
.ico:hover{ background-color: var(--rouge); }

/* button*/
.btn{ cursor: pointer; color: #fff; font-weight: bold; text-transform: lowercase; background-color: var(--rouge); font-size: 18px; border-radius: 30px; min-height: 40px; display: inline-flex; align-items: center; justify-content: center; padding: 0 15px; border: 0; }
.btn:hover{ background-color: var(--noir); color: #fff; }
.btn.btn-secondary{ background-color: transparent; color: var(--bs-body-color); border: 2px solid var(--bs-body-color); }
.btn.btn-secondary:hover{ background-color: #d8d8d8; }
.btn.disabled,
.btn:disabled,
.btn.disabled:hover,
.btn:disabled:hover{cursor:not-allowed;opacity:.65; background-color: var(--rouge);}

.card-link,
.btn-link{ font-size: 14px; cursor: pointer; color: var(--noir); }
.card-link:hover,
.btn-link:hover{ color: var(--rouge); }

.label-pill{ display: inline-block; padding: .375rem; margin: 0 0.25rem; border-radius: 3px; }
.label-pill.bright{ color: #fff; }
.label-pill.dark{ color: #fff; }

/* Dropdown */
.dropdown{ position: relative; }
.dropdown-toggle{ font-weight: bold; font-size: 15px; padding: 0 15px; min-height: 55px; display: inline-flex; align-items: center; justify-content: center; color: var(--noir); }
.dropdown-toggle span{ text-transform: lowercase; margin-left: 0.3em; }
.dropdown-toggle:after{ content: ''; margin-left: 12px; width: 15px; height: 8px; background: url(../img/fleche-bas-rouge.svg) no-repeat 50% 50%; transition: all .2s ease-out; }
.dropdown-toggle[aria-expanded="true"]:after{ transform: rotateX(180deg); }
.filters > .dropdown-toggle{ flex-direction: row-reverse; }
.filters > .dropdown-toggle:after{ margin-left: 0; margin-right: 12px; }

.collapse{}
.collapse.show{ display: block; }

/* table */
table{ width: 100%; border-collapse: separate; border-spacing: 5px; font-size: 16px; line-height: 1.2em; }
table thead th{ border-bottom: 2px solid #ccc; }
table th{ padding: 5px; border-bottom: 1px dotted #ccc; font-weight: bold; }
table td{ padding: 5px; border-bottom: 1px dotted #ccc; }

/*
 * formulaires 
*/

input,
select,
textarea{ background:var(--bggris); padding:25px 30px 5px 30px; line-height: 30px; border:none; font-family: inherit; font-size: inherit; color: var(--noir); display: block; }
textarea{ max-width: 100%; }

.nav-inline.my-2{ margin-bottom: 5vmin !important; }
.nav-inline{ display: flex; flex-direction: row; align-items: center; justify-content: center; width: 100%; border-bottom: 1px solid #ccc; }
.nav-item{ margin: 0 1px;}
.nav-item:before{ content: none; }
.nav-separator{ display: none; }
.nav-link{ display: inline-block; padding: 5px 20px 0; background-color: var(--bggris); }
.nav-link.active{ border: 1px solid #ccc; border-bottom: 0; background-color: #fff; transform: translateY(1px); color: inherit; }

.form-group{ font-size: 1.125rem; color: #848484; font-weight: normal; margin-bottom: 1em; align-items: center; }
.input-group{ display: flex; }

.field{ position: relative; margin-bottom: 30px; }
.field *{ box-sizing: border-box; }
.field label{ font-weight: bold; }
.field label.required:after{ content: '*'; color: #c00; }
.field label .form-optional{ font-weight: normal; font-style: italic; }
.form-comment,
.form-control-comment{ font-weight: normal; font-size: 0.75em; line-height: 1.2em; display: block; margin: 0.2em 0; text-align: right; font-style: italic; }

.textfield label { position:absolute; left:30px; top:30px; transform:translateY(-50%); color:#848484; transition:all 0.5s ease 0s; pointer-events: none; }
.textfield input, 
.textfield select,
.textfield textarea { background:var(--bggris); padding:25px 30px 5px 30px; line-height: 30px; border:none; font-family: inherit; font-size: inherit; color: var(--noir); display: block; width: 100%; }
.textfield select{ border-right: 10px solid var(--bggris); }

.textfield.filled label,
.textfield.active label,
.textfield.has-placeholder label,
.textfield.countrySelect label{ transform: none; top: 3px; }

.textfield.countrySelect{ border-right: 15px solid var(--bggris); }

.field .input-group > input + .btn{ border-top-left-radius: 0; border-bottom-left-radius: 0; padding: 0 30px; }

#promo-code .btn.next{ text-indent: 120%; height: auto; overflow: hidden; flex-wrap: nowrap; padding: 0; background: var(--rouge) url(../img/fleche-droite-blanche.svg) no-repeat 55% 50%; width: 80px; min-width: 60px; border-radius: 0; }
 


.checkfield-group > label{ margin-bottom: .5em; display: block; }
.radio-wrapper{ margin-left: 25px; }
.radio-inline{ display: flex; flex-direction: row; }
.radio-item{ margin-right: 1em; display: flex; font-weight: normal; align-items: baseline; }
.radio-item input{ filter: hue-rotate(140deg); transform: scale(1.6); margin: 0.5em; }
.checkbox-item > label { position: relative; display: flex; font-weight: normal; }
.checkbox-item input{ width: 20px; min-width: 20px; height: 20px; filter: hue-rotate(140deg); margin-right: .5em; transform: translateY(3px); }/* margin-right: 10px; margin-top: 5px; */

.field-controller{ overflow: hidden; }
.field-controller small{ display: block; font-size: .85em; font-style: italic; line-height: 1em; padding: 0.5em 0; text-align: right; }

.custom-file-wrapper{ display: flex; align-items: center; justify-content: flex-start; margin: .5em 0; }
.custom-file-wrapper .file-input{ width: 100%; height: 30px; line-height: 30px; background-color: var(--bggris); }
.custom-file-wrapper .btn{ border-radius: 0 20px 20px 0; margin: 0; min-width: 140px; font-size: 14px; min-height: 30px; padding: 0 10px; }
.custom-file-wrapper + small{ margin-top: -.7em; }

.alert{ line-height: 1.5em;  margin: 1.5em 0 1em; display: block; }
.alert:empty{ display: none; }
.alert p:last-child{ margin-bottom: 0; }

/* presta patch forms dégueulito */ 
.custom-radio input{ filter: hue-rotate(140deg); transform: scale(1.6); margin: 0.5em; }

/* Classes */
.casper{ display: none; }
.minitalic{ font-size: .75em; font-style: italic; }
.flex-inline{ display: inline-flex; align-items: center; }
.container, .container-fluid, .container-xxl, .container-xl, .container-lg, .container-md, .container-sm{ width: auto; }

/*
 * Structure / Layout 
 */
#header{ text-transform: lowercase; position: fixed; width: 100%; top: 0; z-index: 15; display: flex; flex-direction: column; }
#header p{ margin: 0; display: inline; }
#header .menu{ display: block; }

.header-top{ background-color: var(--bggris); overflow: hidden; height: 75px; position: relative; z-index: 10; }
.header-top .container{ display: flex; align-items: center; justify-content: space-between; height: 100%; }
.header-top a{ margin: 0 .5rem; color: var(--noir); display: block; }

.logo-wrapper{ min-width: 230px; display: block; margin: 0; }

#secondary-nav,
#secondary-nav div{ display: flex; align-items: center; justify-content: flex-end; height: 100%; font-weight: bold; color: var(--noir); }

#position-displayNav1{ margin-right: 10vmin; }

.ico.account{ mask-image: url(../img/ico-account.svg); -webkit-mask-image: url(../img/ico-account.svg); }
.ico.search{ mask-image: url(../img/ico-search.svg); -webkit-mask-image: url(../img/ico-search.svg); }
.ico.wishlist{ mask-image: url(../img/ico-wishlist.svg); -webkit-mask-image: url(../img/ico-wishlist.svg); }
.ico.clear{ mask-image: url(../img/ico-clear.svg); -webkit-mask-image: url(../img/ico-clear.svg); mask-size: 50%; -webkit-mask-size: 50%; cursor: pointer; }
.ico.cart{ mask-image: url(../img/ico-cart.svg); -webkit-mask-image: url(../img/ico-cart.svg); position: relative; }

#secondary-nav #search_widget{ margin-right: 10px; }
#secondary-nav #search_widget form{ position: absolute; width: 0; transition: all .4s ease-out; overflow: hidden; }
#secondary-nav #search_widget form:after{ content: ''; position: absolute; right: 30px; top: 50%; transform: translateY(-50%); display: inline-block; width: 1rem; min-width: 1rem; height: 1rem; background-color: var(--rouge); opacity: 0; transition: all .4s ease-out;
    mask-repeat: no-repeat; mask-position: 50% 50%; -webkit-mask-repeat: no-repeat; -webkit-mask-position: 50% 50%; mask-image: url(../img/ico-search.svg); -webkit-mask-image: url(../img/ico-search.svg); pointer-events: none; }
#secondary-nav #search_widget input{ box-sizing: border-box; width: 100%; height: 50px; background-color: #efefef; border: 0; border-bottom: 2px solid #848484; font-family: inherit; font-size: 18px; font-weight: bold; }
#secondary-nav #search_widget .search{ z-index: 1; cursor: pointer; width: 30px; }
#secondary-nav #search_widget .clear{ position: absolute; top: 50%; right: 0; transform: translate(0, -50%); pointer-events: none; opacity: 0; z-index: 2; transition: all .4s ease-out; }
#secondary-nav #search_widget.open form{ width: calc( var(--containerWidth) * .5); z-index: 1; }
#secondary-nav #search_widget.open form:after{ opacity: 1; }
#secondary-nav #search_widget.open .clear{ opacity: 1; pointer-events: inherit; display: block !important; }
    body > .ui-autocomplete{ display: flex; flex-direction: row; left: 50% ! important; transform: translateX(-50%); max-width: var(--containerWidth); border: 1px solid #efefef; border-radius: 0; padding: 15px 10px 10px; opacity: 0.9; transition: opacity .4s ease-out; }
    body > .ui-autocomplete:hover{ opacity: .99; }
    body > .ui-autocomplete:before { content: ''; position: absolute; top: -10px; left: 50%; width: 20px; height: 20px; background-color: #efefef; transform: rotate(45deg) skew(5deg, 5deg); }
    body > .ui-autocomplete li{ max-width: 200px; }
    body > .ui-autocomplete li:before{ content: none; }
    body > .ui-autocomplete li a{display: flex !important; flex-direction: column; justify-content: center; align-items: center; border: 0 !important; border-radius: 0 !important; cursor: pointer; background: #fff none !important; color: var(--noir); margin: 0 !important; }
    body > .ui-autocomplete li a:hover { background: #efefef none !important; }
    body > .ui-autocomplete li a img{ display: block; mix-blend-mode: multiply; max-height: 98px; width: auto; height: 100%; }
    body > .ui-autocomplete li a .product{ max-width: 100px; text-overflow: ellipsis; overflow: hidden; font-size: 12px; text-transform: lowercase; }


#menu-cart{ position: relative; display: flex; align-items: center; justify-content: center; margin: 0; cursor: pointer; padding: .5em; }
#menu-cart .cart-products-count{ color: #fff; background-color: #ccc; position: absolute; font-size: 10px; font-weight: bold; border-radius: 50%; width: 16px; height: 16px; line-height: 17px; text-align: center; top: 0px; right: 0px; pointer-events: none; }
#menu-cart.active .cart-products-count{ background-color: var(--rouge); }
    
.top-menu li{ margin-bottom: 0; }
.top-menu li:before{ content: none; }
.top-menu li ul{ margin-left: 0; }
.top-menu > li > a{ font-weight: bold; }
.depth-0 > li > .sub-menu{ font-size: 0.938rem; }
.depth-2 > li > a{ font-weight: bold; }
.depth-3 a{ color: var(--bs-body-color); }

.breadcrumb{ position: relative; z-index: 1; font-size: 12px; }
.breadcrumb ol{ flex-direction: row; margin: 1em 0; }
.breadcrumb li{ margin: 0; }
.breadcrumb li:before { content: none; }
.breadcrumb li:not(:last-child):after { content: '/'; margin: 0 .5em; opacity: .6; }
.breadcrumb li a{ opacity: .6; color: inherit; }
.breadcrumb li a:hover{ opacity: 1; color: inherit; }

main{ overflow: hidden; padding-top: 160px; }

#footer{ background-color: var(--rouge); color: #fff; font-size: .9em; }
.blockreassurance{ background-color: #fff; color: var(--bs-body-color); border-top: 1px solid #ccc; padding: 3vmin 0 0; }
.reassurance-item{ max-width: 200px; }
.reassurance-item .h4{ margin-bottom: 0; }
.displayFooter{ justify-content: space-between; padding: 5vmin 0; position: relative; }
.displayFooter > .col{ width: auto; max-width: 25%; flex: inherit; }
.displayFooter p.title{ color: #fff; padding-top: 117px; text-transform: lowercase; font-weight: bold; font-size: 1.2em; opacity: .8; }
.displayFooter li:before{ content: none; }
#contact-infos{ display: flex; flex-direction: column; }
#contact-infos > *{ order: 3; }
.displayFooter .col a{ color: #fff; text-transform: lowercase; }
#contact-infos > .logo{ width: 250px; display: block; margin-bottom: 1em; order: 1 }
#contact-infos > .address{ line-height: 1.5em; max-width: none; height: auto; border: 0; padding: 0; margin: 0; margin-bottom: 1em; display: block; }
#contact-infos > .mail{ font-size: .75em; }
#contact-infos > .tel{ font-weight: bold; font-size: 1.2em; }
#contact-infos > .block-social{ order: 2; }
.block-social ul{ display: flex; align-items: center; justify-content: center;     flex-direction: row; }
.block-social li{ margin: 0 10px; }
.block-social a{ display: block; width: 24px; height: 24px; background-position: 50% 50%; background-size: contain; white-space: nowrap; text-indent: 120%; overflow: hidden; opacity: .8; transition: all .4s ease-out; }
.block-social a:hover{ opacity: 1; }
.block-social li.facebook a{ background-image: url(../img/ico-facebook.svg); }
.block-social li.instagram a{ background-image: url(../img/ico-instagram.svg); }

.displayFooterAfter{ font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center; justify-content: flex-end; }
.displayFooterAfter .col{  width: auto; flex: inherit; padding: 0; }
.displayFooterAfter ul{ display: flex; flex-direction: row; align-items: center; justify-content: flex-end; margin: 0; }
.displayFooterAfter ul li{ margin: 0; white-space: nowrap; }
.displayFooterAfter ul li:before{ content: '|'; padding-left: .5em; }
.displayFooterAfter a{ color: #fff; }
.displayFooterAfter .h3{ display: none; }

#position-displayTop{ order: -1; }
.banner{ display: flex; align-items: center; justify-content: center; column-gap: 1em; background:#ff2a37; color:#fff; text-align:center; position:relative; z-index:10; }
.banner .texte{ display: flex;flex-direction: column; padding:10px 0; }
.banner p { margin-bottom:0; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; font-size: 16px; }
.banner p.small{ line-height: .8em; opacity: .7; }
.banner small { font-size: 12px; }

#link-custom-page-location-hiver-3,
#link-custom-page-nos-conseils-3{ position: relative; }
#link-custom-page-location-hiver-3:after,
#link-custom-page-nos-conseils-3:after{ content: url(../img/ico-external-link.svg); width: 12px; height: 12px; position: absolute; top: 50%; right: 0; transform: translate(120%, -1.1em); filter: invert(1); }

/* 
 * PAGES PRODUITS, CONTENU, MAGASIN, etc.
 */

/* Page catégorie / Liste des produits */

.product-list-header{ position: relative; height: 490px; height: 25vw; align-items: center; justify-content: flex-start; }
/* .product-list-header h1{ color: #fff; margin: 0; position: relative; z-index: 1; font-size: var(--fz70); font-weight: bold; } */

.product-list-header-wrapper{ display: flex; flex-direction: column; justify-content: center; height: 100%; }
.product-list-header-wrapper h1{ position: relative; z-index: 1; margin-bottom: 0; color: #fff; }

.category-cover{ width: 100vw; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); overflow: hidden; background-color: #111; }
.category-cover:before { content: ''; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: linear-gradient(135deg, rgb(255 255 255 / 35%), transparent 70%); z-index: 1; }
.category-cover img{ position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100vw; height: auto; }
.category-cover + .breadcrumb{ color: #fff; }

.products-selection{ display: flex; flex-direction: row; align-items: center; justify-content: space-between; position: relative; height: 90px; }
.products-selection>div{ position: relative; z-index: 3; height: 100%; display: flex; align-items: center; }
.products-selection:after{ content: ''; position: absolute; z-index: 0; left: 50%; bottom: 0; width: 100vw; height: 100%; background-color: #fff; border-bottom: 1px solid #d8d8d8; transform: translateX(-50%); }
    
.total-products{ font-size: 22px; font-weight: bold; color: var(--noir); }
.total-products p{ margin: 0; }
.total-products strong{ color: var(--rouge); }

#search_filter_toggler{ flex-direction: row-reverse; }
#search_filter_toggler:after { margin-left: 0; margin-right: 12px; }

.sorting{ position: relative; z-index: 2; }
.sorting div{ height: 100%; }
.sorting .dropdown-toggle{ height: 100%; display: flex; align-items: center; }
.sorting .dropdown-menu.show{ margin-top: -2px !important; }

#dropdownSortOrder{ font-size: 15px; background-color: var(--bggris); margin-bottom: 0; padding: .5em 0; width: 100%; }
#dropdownSortOrder li{ margin: .25em 0; display: block; padding: 0 15px; }
#dropdownSortOrder li:before{ content: none; }

.search-filters-wrapper > .h6{ display: none; }
.facets-wrapper{ display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-evenly; background-color: var(--bggris); padding: 5vmin 5vmin 2vmin;  }

.facet{ font-size: 15px; flex: 0 0 auto; width: 25%; padding: 0 5vmin; box-sizing: border-box; min-width: 260px; }
.facet-title{ font-weight: bold; color: var(--noir); }
.facet li{ display: block; margin: 0; }
.facet li:before{ content: none; }
.facet .accordion-button{ font-weight: bold; color: var(--noir); border: 0; font-size: 15px; }
.facet .magnitude{ font-size: 12px; opacity: 0.7; }

#search_filters .facet .facet-label{ display: flex; align-items: center; }
#search_filters .facet .facet-label input{ filter: hue-rotate(140deg); }
#search_filters .facet .facet-label a{ color: #848484; margin-left: .5em; }
#search_filters .facet .facet-label a:hover{ color: var(--rouge); }
#search_filters .ui-slider-horizontal{ height: 3px; background: #848484; border: 0; }
#search_filters .ui-widget-header{ border: 0; background-color: var(--rouge); }
#search_filters .ui-slider .ui-slider-handle{ top: -8px; width: 18px; height: 18px; background-color: #fff; border: 3px solid var(--rouge); border-radius: 50%; box-sizing: border-box; }

.facet-dropdown{box-sizing:border-box;padding:0;color:#7a7a7a;border:1px solid transparent;box-shadow:1px 1px 1px 1px #f6f6f6}
.facet-dropdown .select-title{ align-items: center; cursor: pointer; background: #f6f6f6; border: 1px solid #767676; padding: 10px; display: flex; justify-content: space-between; border-radius: 5px; max-width: 400px; box-shadow: inset 0px 1px 1px rgb(0 0 0 / 10%); }
.facet-dropdown .select-title>i{margin-left:auto}
.facet-dropdown .select-list{display:block;padding:.2rem 0.75rem;color:inherit;background:#f6f6f6}
.facet-dropdown .select-list:hover{color:#fff;text-decoration:none;background:#FF2A37}
.facet-dropdown .dropdown-menu{ height: 0; overflow: hidden; background-color: #fff; }
.facet-dropdown.open>.select-title{border-color: var(--rouge); }
.facet-dropdown.open .dropdown-menu{height: auto; }
.active_filters{ padding: .625rem 1rem 0; }
.active_filters .filter-block{display: inline-block; padding: 0 0.2rem 0 0.625rem; margin-right: 0.625rem; margin-bottom: 0.625rem; font-size: .8125rem; color: #232323; background: #fff;}
.active_filters .filter-block .close{ color: inherit; }
.active_filters .filter-block a:hover{color: var(--rouge);}
.active_filters .filter-block:before{ content: none; }

.clear-all-wrapper{ background-color: #ececec; padding: 1rem; display: flex; align-items: center; justify-content: flex-end; }

#products{ padding: 5vmin 0; }

.feature-genre{ width: 30px; height: 30px; position: absolute; top: 10%; left: 10%; background-size: contain; text-indent: 50px; overflow: hidden; white-space: nowrap; pointer-events: none; }
.feature-genre.homme{ background: url(../img/ico-homme.svg) no-repeat 50% 50%; }
.feature-genre.femme{ background: url(../img/ico-femme.svg) no-repeat 50% 50%; }

.product-miniature{ margin: 0 auto 5vmin; position: relative; max-width: 320px; }
.product-miniature.out-of-stock figure > a{ filter: grayscale(1); }
.product-miniature.out-of-stock figure > a:hover{ filter: grayscale(0); }
.product-miniature.out-of-stock figcaption{ filter: grayscale(0.5); opacity: 0.7; }
.product-miniature h2,
.product-miniature h3{ text-transform: uppercase; margin-bottom: .3em; font-weight: bold; font-size: var(--bs-body-font-size); margin-top: 1em; width: calc(100% - 2em); }
.product-miniature h3 a,
.product-miniature h2 a{ color: var(--noir); display: block; width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: inherit; min-height: 2.4em; }
.product-miniature h3 a small,
.product-miniature h2 a small{ text-transform: none; display: block; }
.product-miniature figure{ position: relative; }
.product-miniature figcaption{ position: relative; margin-top: .5em; }
.product-miniature h3{ margin-bottom: 0; }
.product-miniature .product-thumbnail{ width: 100%; background-color: var(--bggris); display: block; }
.product-miniature .product-thumbnail img{ display: block; width: 100%; mix-blend-mode: multiply; }
.product-miniature .manufacturer-logo{ display: block; height: 40px; margin-bottom: 10px; }
.product-miniature .manufacturer-logo img{ max-height: 40px; width: auto; max-height: 40px; }
    .manufacturer-logo img{ filter: contrast(1.1); }

.product .product-miniature .discount{ top: -10px; width: 80px; height: 80px; }
.product .product-miniature .new{ top: calc(var(--containerWidth) / 4 - 50px); }

.product .product-flag{ pointer-events: none; z-index: 2; }
.product .discount{ position: absolute; top: 20px; right: 20px; font-weight: bold; }
.product .out_of_stock{ background-color: rgb(0 0 0 / 90%); color: #fff; text-transform: uppercase; text-align: center; padding: 0.3rem; top: 40%; transform: translate(-10px, -50%) rotate(-5deg); position: absolute; width: calc(100% + 10px); box-shadow: 0px 0px 1px #000; }
.product .on-sale{ background-color: var(--rouge); color: #fff; text-transform: uppercase; text-align: center; padding: 0.3rem; top: 55%; transform: translate(-10px, -50%) rotate(-0deg); position: absolute; width: 110px; right: -20px; }
.product .new{ background-color: var(--rouge); color: #fff; text-transform: uppercase; text-align: center; padding: 0.3rem; top: calc(var(--containerWidth) / 2 - 50px); transform: translate(-10px, -50%) rotate(-0deg); position: absolute; width: 110px; right: -20px; }
.product .pack{ background: url(../img/pack.svg) no-repeat 0 0; position: absolute; top: 0; left: 0; width: 90px; height: 90px; text-indent: 100%; overflow: hidden; opacity: .7; }

.product .product-price{ font-size: 1.25rem; font-weight: bold; display: flex; align-items: baseline; }
.product .product-price > span{ margin-right: .5em; }
.product .price{ color: var(--noir); }
.product .regular-price{ color: #848484; text-decoration: line-through; }
.product .reducted-price{ color: var(--rouge); }
.product .discount{ color: #fff; background-color: var(--rouge); border-radius: 50%; width: 100px; height: 100px; display: flex; align-items: center; justify-content: center; font-size: .9rem; font-size: .9rem; flex-direction: column; line-height: 1.5em; }
.product .discount-type{ text-transform: uppercase;  }
.product .tax-shipping-delivery-label{ font-size: .75em; font-weight: normal; }

.pagination{ text-align: center; font-size: .85em; }
.pagination .page-list{ flex-direction: row; align-items: center; justify-content: center; gap: .5em; }
.pagination .page-list li:before{ content: none; }
.pagination .previous,
.pagination .next{ font-size: .9em; }
.pagination .disabled{color:#7a7a7a}
.pagination .current a{color:#FF2A37;}

/* Product / Page produit */

#product .product-information{ display: flex; flex-direction: column; position: relative; }
#product .product-information a{ display: block; }
#product .product-information > *{ order: 3; }
#product .product-information > h1{ order: 2; margin-bottom: 0; line-height: 0.9em; margin-bottom: 0.5em; margin-top: 0.3em; text-transform: uppercase; }
#product .product-information > h1 small{ font-size: var(--fz35); display: block; text-transform: none; line-height: 1.2em; margin-top: 0.2em; }
#product .product-information > h2.manufacturer{ order: 1; margin-top: 0; margin-bottom: 0; }
#product .product-information > .product-refs{ transform: translateY(-1em); margin-bottom: 1em; }
#product .product-information > .product-refs p{ margin-bottom: 0; line-height: 1.5em; }
#product .product-information .specs-list__content{ margin-left: .5em; }
#product .manufacturer-logo{ display: block; margin: 0; }
#product .manufacturer-name{ display: block; font-size: var(--fz70); opacity: .5; }
#product .product-actions{ margin-top: 3vmin; }
#product .wishlist-button-add{ position: absolute; top: 0; right: 0; }

#description .product-description{ margin-top: 8vmin; }
#product h3{ font-size: 22px; margin-top: 5vmin; text-transform: lowercase; }
#product .product-information .attachment a{ display: inline; }
.product-variants-item{ margin-bottom: 1em; }
.product-variants-item.select{ border: 2px solid #D4D4D4; padding: 10px; display: flex; justify-content: space-between; border-radius: 5px; max-width: 400px; }
.product-variants-item select,
.product-variants-item select:focus{ color: var(--noir); font-weight: normal; background-color: #fff; padding-top: 5px; }
.product-variants-item.select option[data-quantity="0"]{ color: #999; }
.product-variants-item .control-label{ display: flex; align-items: center; }

.product-variants-item.color ul{ display: flex; flex-direction: row; flex-wrap: wrap; margin-left: -5px; margin-right: -5px; }
.product-variants-item.color li{position:relative; width: 30px; min-height: 30px; margin: 5px; }
.product-variants-item.color li[data-quantity="0"] span{ opacity: .7; }
.product-variants-item.color li:before{ content: none; }
.product-variants-item.color input{position:absolute;top:0;width:100%;height:100%;cursor:pointer;opacity:0; }
.product-variants-item.color input+span{ display: block; width: 30px; height: 30px; background-color: #eee; border: 2px solid #fff; box-sizing: border-box; transition: all .2s ease-out; text-indent: 120%; white-space: nowrap; overflow: hidden; line-height: 1em; }
.product-variants-item.color input:checked+span,
.product-variants-item.color input:hover+span{border-color:#ccc; }
.product-variants-item.color .texture{ width: 100px; height: 100px; }
.product-variants-item.color .texture input+span{ width: 100%; height: 100%; background-size: cover; background-position: center center; }

#product_attachments{ display: flex; align-items: center; justify-content: flex-start; font-size: 16px; }
#product_attachments:before{ content: ''; background: url(../img/ico-taille.svg) no-repeat 0 50%; background-size: contain; width: 40px; height: 35px; display: block; }

.product-quantities{  margin-top: 5vmin; }
.product-quantities label:after{ content: ':'; margin-right: .2em; }

.product-availability-conditions{ margin-bottom: 0; }
.product-availability-conditions .material-icons{ margin-right: .2em; }

#product-availability .product-available{color:#4cbb6c}
#product-availability .product-unavailable{color: var(--rouge); }
#product-availability .product-last-items{color: var(--rouge); }

.product-add-to-cart{  }
.product-quantity{ display: flex; align-items: center; max-width: 425px; justify-content: space-between;}
.qty{ background-color: #fff; margin: 0 1em 0 0; border: 2px solid #D4D4D4; padding: 0 10px; display: flex; justify-content: space-between; border-radius: 5px; max-width: 102px; }
.qty label{ display: none; }

.modal-header .close{ position: relative; z-index: 10; }

.minusplus{ display: flex; align-items: center; justify-content: space-between; position: relative; width: 100%; }
.minusplus span{ width: 1.5em; text-align: center; cursor: pointer; }
.minusplus span:hover{ color: var(--noir); }
.minusplus input{ background-color: #fff; width: 10px; padding: 5px 0; }
.minusplus .btn{ background-color: transparent; }
.minusplus .btn .material-icons{ margin-right: .5em; }

.minusplus.touchspin{ justify-content: center; }
.minusplus .input-group{ align-items: center; justify-content: center; flex-direction: row; }
.minusplus .input-group-btn-vertical{ width: 0; display: flex; align-items: center; }
.minusplus .input-group-btn-vertical .btn{ background-color: transparent; margin: 0; padding: 0 20px; color: var(--bs-body-color); position: absolute; left: -10px; height: 100%; }
.minusplus .input-group-btn-vertical .btn:hover{ color: var(--noir); }
.minusplus .input-group-btn-vertical .btn.bootstrap-touchspin-up:before{ content: '+'; }
.minusplus .input-group-btn-vertical .btn.bootstrap-touchspin-down:before{ content: '-'; }
.minusplus .input-group-btn-vertical .btn.bootstrap-touchspin-up{ left: inherit; right: -10px; }
.minusplus .input-group-btn-vertical .btn .touchspin-up,
.minusplus .input-group-btn-vertical .btn .touchspin-down{ display: none; }

.product-customization{ border: 2px solid #D4D4D4; padding: 10px; border-radius: 5px; max-width: 400px; overflow: hidden; }
.product-customization-item{ display: flex; flex-direction: column; justify-content: space-between; position: relative; border-bottom: 1px solid #ccc; padding-bottom: 0.5em; margin-bottom: 0.3em; }
.product-customization-item .custom-file-wrapper .file-input{ padding: 5px; font-size: 16px; }
.product-customization-item .textarea{ display: flex; flex-direction: column; }
.product-customization-item .textarea textarea{ width: calc(100% - 20px); padding: 10px; }
.product-customization-item .btn-link{ position: absolute; top: 0.3em; right: 0; }

.product-customization-item .js-file-name{ font-size: 16px; }
.product-customization > .btn{ font-size: 14px; min-height: 30px; padding: 0 10px; float: right; margin: .5em 0; }

#customization-message-edit + .textarea{ opacity: 0; transition: all .4s ease-out; height: 0; overflow: hidden; }
#customization-message-edit.open + .textarea{ opacity: 1; height: auto; }

.remove-image + .custom-file{ display: none; }

body .wishlist-button-add{ border-radius: 0; box-shadow: none; background-color: transparent; }
body .wishlist-button-add i{ color: var(--rouge); }
body .products article .wishlist-button-add { top: -12px; right: 0; background: #fff; opacity: 1; }
body .products article .wishlist-button-add i{ transition: 0.2s ease-out; }
body .products article .wishlist-button-add:hover i{ opacity: 0.7; }
body .wishlist-add-to-new i{ color: var(--noir); }
body .wishlist-list .wishlist-list-item:hover { background: var(--bggris); }
body .wishlist-modal .modal-body { padding: 0.9375rem 1.875rem; }
body .wishlist-modal .modal-body .form-group .form-control { color: inherit; background-color: var(--bggris); }
body .wishlist-modal .modal-body .form-group .form-control:focus { color: #666; }

body .wishlist-products-container .products-sort-order{ position: relative; }
body .wishlist-products-container .products-sort-order .sort-by{ margin-right: .5em; }
body .wishlist-products-container .products-sort-order button{ border: 0; font-size: 15px; padding: 0 15px; min-height: 35px; display: inline-flex; align-items: center; justify-content: center; color: var(--noir); cursor: pointer; }
body .wishlist-products-container .products-sort-order .dropdown-menu{ display: flex; flex-direction: column; position: absolute; top: 100%; left: 0; transition: all .4s ease-out; opacity: 0; z-index: -1; max-height: 0; overflow: hidden; }
body .wishlist-products-container .products-sort-order.open .dropdown-menu { transform: translateY(0); opacity: 1; max-height: 200px; z-index: 1; }
body .wishlist-products-container .products-sort-order .dropdown-menu a{ font-size: 16px; background-color: var(--bggris); padding: 0 15px; }
body .wishlist-products-container .products-sort-order .dropdown-menu a:hover{ background-color: #f5f5f5; }

.figures .page-content{ position: relative; }
.images-container .thumb-wrapper{ margin-bottom: var(--bs-gutter-x); background-color: var(--bggris); transition: all .4s ease-out; cursor: pointer; display: block; position: relative; }
.images-container .thumb-wrapper.video-thumbnail { height: calc(100% - var(--bs-gutter-x)); overflow: hidden; }
.images-container .thumb-wrapper.video-thumbnail:before{ content: ''; position: relative; display: block; width: 100%; height: 0; left: 0; top: 0; background: url(../img/play.svg) no-repeat 50% 50%; background-size: 80px; z-index: 1; padding-top: 100%; z-index: 1; }
.images-container .thumb-wrapper.video-thumbnail img{ position: absolute; height: 100%; width: auto; max-width: none; top: 0; left: 50%; transform: translateX(-50%); z-index: 0; }
.images-container .thumb-wrapper:hover{ background-color: #ccc; }
.images-container .thumb-wrapper img{ mix-blend-mode: multiply; display: block; filter: contrast(1.1); object-fit: cover; }
.product-images{ flex-direction: row; width: auto; }
.product-images li{ margin-bottom: 0; position: relative; }
.product-images li:before{ content: none; }
#product .out-of-stock a.thumb-wrapper img{ filter: grayscale(.5); }
#product .out-of-stock a.thumb-wrapper:hover img{ filter: grayscale(0); }
#product .out_of_stock{ top: calc( var(--containerWidth) / 4 ); }
#product .product-cover{ position: relative; }
#product .feature-genre { width: 40px; height: 40px; max-width: 10%; max-height: 10%; }

.fancybox__content :focus:not(.carousel__button.is-close) { outline: thin dotted; box-shadow: none; }
.fancybox__thumbs .carousel__slide .fancybox__thumb::after{ border-width: 2px; }

.product-accessories{ margin-bottom: 5vmin; }
.featured-products{ padding-top: 5vmin; position: relative;}
.featured-products:before{ content: ''; position: absolute; top: 5vmin; left: 50%; transform: translateX(-50%); width: 100vw; height: 20vmin; background: linear-gradient(180deg, var(--bggris), transparent); z-index: -1; }
.featured-products .btn{ float: right; }
#marques + .featured-products:before{ background: none; }

/* Pages de formulaires */
.page-header{ margin: 8vmin 0; }
.page-footer{ margin: 8vmin 0; }

/* Accueil */
#index h2{ margin: 1em 0 2em; line-height: 1.2em; color: var(--noir); position: relative; font-size: 2.2rem; text-align: center; }

#carousel{ margin-bottom: 0; margin-top: 12vmin; }
#carousel .carousel-inner{ position: relative; }
#carousel .carousel-item{ margin-bottom: 0; opacity: 0; transition: all .7s ease-out; }
#carousel .carousel-item.active{ opacity: 1; }
#carousel .carousel-item:before{ content: none; }
#carousel .carousel-item figcaption{ position: absolute; top: 0; left: 1em; transform: translateY(-50%); z-index: 2; }
#carousel .carousel-item h2{ font-size: var(--fz120); font-size: var(--fz120); white-space: nowrap; margin: 0; color: var(--rouge); }
#carousel .carousel-item .btn{ position: absolute; right: 4%; bottom: 10%; }
#carousel .carousel-item .cover{ width: var(--containerWidth); height: calc(var(--containerWidth) * .413); overflow: hidden; position: relative; }
#carousel .carousel-item .cover:before{ content: ''; position: absolute; opacity: .9; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 40%); z-index: 1; pointer-events: none; }
#carousel .carousel-item .cover img{ position: absolute; z-index: 0; top: 50%; left: 0; width: 100%; height: 100%; transform: translateY(-50%); object-fit: contain; }
#carousel .carousel-control{ background: transparent none !important; height: 40%; top: 30% }
#carousel .carousel-control .material-icons{ text-shadow: none; font-size: 40px; }
#carousel .carousel-control .icon-next{ right: 30%; }
#carousel .carousel-control .icon-prev{ left: 30%; }
#carousel .carousel-indicators { flex-direction: row; justify-content: center; position: absolute; bottom: -1em; margin: 0; z-index: 2; }
#carousel .carousel-indicators li{ background-color: #d3d3d3; border: 0 none; margin: 0 1em; }
#carousel .carousel-indicators li.active{ background-color: var(--rouge); transform: scale(1.3); }
#carousel .carousel-indicators li:before{ content: none; }

#custom-text{ text-align: center; margin: 10vmin 0 0; }

#activites{ margin-bottom: 8vmin; }
#activites h3{ margin: 0; overflow: hidden; display: flex; align-items: center; justify-content: center; height: 100%; }
#activites ul{ flex-direction: row; margin: 0; transition: all .2s ease-out; }
#activites li{ position: relative; overflow: hidden; margin-bottom: 0; padding: 10px; min-width: calc(var(--containerWidth) *.26); aspect-ratio: 426/645; }
#activites li:before{ content: none; }
#activites li a{ position: absolute; width: 100%; height: 100%; top: 0; left: 0; display: flex; align-items: center; justify-content: center; color: #fff; }
#activites li img{ transition: all .4s ease-out; position: relative; z-index: -1; display: block; max-width: calc((100vw - 45px) / 2); }
#activites li:hover img{ transform: scale(1.2); }

#marques{ position: relative; padding: 5vmin 0; }
#marques:before{ content: ''; position: absolute; width: 100vw; height: 100%; left: 50%; top: 0; transform: translateX(-50%); background-color: var(--bggris); overflow: hidden; }
#marques .container{ overflow: hidden; text-align: center; }
#marques ul{ flex-direction: row; justify-content: space-evenly; align-items: center; margin-bottom: 5vmin; font-size: 1.4em; font-weight: 700; gap: 20px; }
#marques li{ margin-bottom: 0; }
#marques li:before{ content: none; }
#marques li a{ display: block; }
#marques li img{ mix-blend-mode: multiply; filter: grayscale(1) contrast(1.1); display: block; }

#instagram{ padding: 5vmin 0; }

/* Page marque */
.block-manufacturer h1 small{ display: block; font-size: .3em; line-height: 1em; }
.block-manufacturer .manufacturer-logo img{ position: relative; z-index: 1; /*filter: contrast(0.9) grayscale(1) invert(1); */}

/* Page contact */
/* .page-contact h1{ color: var(--rouge); font-size: var(--fz50); } */

/* Page liste des marques 
#manufacturer #main ul {display: grid;gap: 10px;grid-template-columns: 1fr 1fr 1fr 1fr;align-items: flex-start; }*/
.brand{border: 1px solid #ccc;padding: 15px;box-sizing: border-box;margin-bottom: 0;display: grid;align-items: baseline;text-align: center;height: 100%;grid-template-columns: 1fr;grid-template-rows: 110px auto 4em;}
.brand:before{ content: none; }
.brand-img{}
.brand-infos{ padding-top: .5em; }
.brand-products{ align-self: self-end; }

/*
 * PAGES PANIER / COMMANDES, MON COMPTE etc 
 */
#password #main,
#authentication #main{ max-width: 700px; margin: auto; }
#password #main .page-header,
#authentication #main .page-header{ margin-bottom: 0; }

#authentication .page-header,
#authentication .no-account,
#authentication .register-form > p{ text-align: center; }

.forgot-password{ margin-bottom: 1em; }
.renew-password .email{ margin-bottom: 1em; }

 /* panier / cart */
.checkout-wrapper{ padding: 0 0 10vmin; }
/* .checkout-wrapper h1{ color: var(--rouge); font-size: var(--fz50); } */

#notifications{ margin: 2em 0 0; }

.cart{}
.cart-title{ font-size: 22px; color: var(--noir); font-weight: bold; margin: 1em 0; }
.cart-block{ padding: .5em 0; border-top: 1px solid #ccc; }
.cart-summary-line{ display: flex; flex-direction: row; align-items: baseline; justify-content: space-between; width: 100%; padding: .5em 0; }
.cart-summary-line .value{ font-weight: bold; font-size: 20px; color: var(--noir); }

.cart-detailed-actions{ margin: 3vmin 0; }
.cart-detailed-actions .btn{ display: flex; }

.product-line{ align-items: stretch; }
.product-line .col{ display: flex; justify-content: center; flex-direction: column; }
.product-line .product-image{ max-width: 150px; }
.product-line .product-image img{ display: block; margin: 2px; filter: contrast(1.1); }
.product-line .product-line-info .label{ font-weight: bold; display: block; white-space: inherit; white-space: normal; line-height: 1em; }
.product-line .product-line-info .label small{ font-weight: normal; display: block; margin: 0.5em 0 0; font-size: 14px; }
.product-line .btn-link{ display: inline-block; text-decoration: underline; color: #848484; line-height: 1em; }
.product-line .btn-link:hover{ color: var(--rouge); }
.product-line .product-qty{ max-width: 130px; }
.product-line .product-qty .qty{ margin-right: 0; }
.product-line .product-line-variant{ font-size: 14px; line-height: 1.3em; margin: 0.5em 0; }
.product-line .product-line-variant .value{ color: var(--noir); }
.product-line .product-price{ display: flex; flex-direction: column; align-items: flex-end; padding-right: 30px; max-width: 135px; }
.product-line .product-price-total{ color: var(--noir); }
.product-line .product-price-discount{ font-size: 14px; }

.cart-item{ background-color: var(--bggris); margin-bottom: 1em; }
.cart-item:before{ content: none; }
.cart-item:first-child{ margin-top: 2.5em; }
.cart-item:first-child .col[data-label]{ position: relative; }
.cart-item:first-child .col[data-label]:before{ content: attr(data-label); font-size: 14px; position: absolute; bottom: 100%; left: 0; width: 100%; height: 5em; display: flex; align-items: center; justify-content: center; color: #848484; }
.cart-item:first-child .col.product-line-variants[data-label]:before{ justify-content: flex-start; padding-left: calc(var(--bs-gutter-x) * .5); }

.cart-voucher .cart-summary-line{ font-size: 15px; }
.cart-voucher .cart-summary-line .label{ padding-left: 5px; }
.cart-voucher .cart-summary-line .value{ font-size: 15px; font-weight: normal; }
.modal-header { background-color: var(--bggris); }
.product-customization-line{ margin: 5px; align-items: center; }

/* Commande / checkout */

/* .page-checkout h1{ color: var(--rouge); font-size: var(--fz50); } */

#login-form{ max-width: 600px; margin: 8vmin auto; }

.cart-summary-products li:before{ float: left; }
.cart-summary-products a{ white-space: inherit; line-height: 1em; }
.cart-summary-products a small{ display: block; font-size: 14px; }

.checkout-step{ padding: 20px 0; overflow: hidden; }
.checkout-step .content{ overflow: hidden; margin-left: 3.5em; }
.checkout-step .form-footer{ display: flex; align-items: center; justify-content: flex-end; }
.checkout-step .form-footer > *{ margin-left: 1em; }
.checkout-step .delivery-options .carrier-price{ color: var(--noir); }
.checkout-step .delivery-options .radio-item input{ margin-top: 1em; margin-right: 1em; }
.checkout-step .delivery-options .radio-item.has-logo{ align-items: flex-start; }
.checkout-step .delivery-options .radio-item.has-logo input{ margin-top: 1.8em; }
.checkout-step .delivery-option:not(:first-child){ align-items: baseline; margin-top: 2em; }
.checkout-step .carrier{ align-items: center; flex-wrap: nowrap; }
.checkout-step .carrier-name{ display: flex; align-items: center; opacity: 1; }
.checkout-step .carriere-name-container{ color: var(--noir); }
.checkout-step .carrier-name span{ opacity: .7; }
.checkout-step .carrier-logo{ margin-right: .5em; max-height: 40px; }
.checkout-step .carrier-logo img{ max-height: 40px; width: auto; }
.order-options{ margin-bottom: 1em; margin-top: 2em; }
.payment-options{ padding: 1em; margin-bottom: 1em; background-color: var(--bggris); }

.colissimo-address-fields{ padding: 0; margin-left: 3em; }
.colissimo-address-fields .row{ display: block; box-sizing: border-box; position: relative; margin: 0; }
.colissimo-address-fields .col-md-3,
.colissimo-address-fields .col-md-6{ display: block; width: auto !important; padding: 0; margin: 0; }
.colissimo-address-fields .address-label{ font-weight: bold; position:absolute; left:15px; top: 3px; color:#848484; transition:all 0.5s ease 0s; pointer-events: none; }
.colissimo-address-fields .address-input{ background:var(--bggris); padding:25px 30px 5px 30px !important; line-height: 30px; border:none; font-family: inherit; font-size: inherit; color: var(--noir); display: block; width: 100%; }

#colissimo-pickup-point-address-selected{ border: 1px solid #ccc; margin-left: 2em; }
#colissimo-pickup-point-address-selected header{ padding: 0; }
#colissimo-pickup-point-address-selected header .h4{ text-transform: none; font-weight: bold; text-align: center; background-color: var(--bggris); display: block; margin: 0; padding: 1em 0; }
#colissimo-pickup-point-address-selected .colissimo-edit-point{ margin-left: 20px; }
.widget_colissimo_liste .widget_colissimo_grise{ opacity: .8; }
.colissimo-pickup-mobile-phone{ padding: 10px 30px; }
body .widget_colissimo_bouton_validation{  cursor: pointer; color: #fff; font-weight: bold; text-transform: lowercase; background-color: var(--rouge) !important; font-size: 18px; border-radius: 30px !important; min-height: 40px; display: inline-flex; align-items: center; justify-content: center; padding: 0 15px !important; border: 0; }
body .widget_colissimo_input_text_normal{ width: 100%; }
body .widget_colissimo_point_img{ transform: translateX(20px); }

.step-title{ cursor: pointer; font-size: 18px; font-weight: bold; color: var(--noir); display: flex; align-items: center; position: relative; white-space: nowrap; }
.step-title:after{ content: ''; width: 50%; height: 0; border-bottom: 2px dashed #D8D8D8; justify-self: stretch; width: 100%; order: 2; margin: 0 10px; }
.step-number{ order: 0; background-color: var(--rouge); width: 42px; min-width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; border-radius: 50%; color: #fff; font-weight: bold; font-size: 16px; margin-right: 20px; }
.step-edit{ display: none; color: #7a7a7a; font-weight: normal; cursor: pointer; padding: 10px 0; order:4; white-space: nowrap; width: 20px; }
.-complete .step-edit{ display: block; }
.step-title .done{ order: 2; background: #fff; margin: 0; padding: 0 0 0 0.5em; }

.ps-alert-error{margin-bottom:0;padding:0.25rem 0.25rem 2.75rem}
.ps-alert-error .item,
.ps-alert-success .item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:1rem;background-color:#ff4c4c;border:2px #ff4c4c solid; color: #fff; padding-top: 1em;}
.ps-alert-error .item:before,
.ps-alert-success .item:before{content: none;}
.ps-alert-error .item i,
.ps-alert-success .item i{display:-webkit-box;display:-ms-flexbox;display:flex;border:15px #ff4c4c solid; min-width: 24px;}
.ps-alert-error .item i svg,
.ps-alert-success .item i svg{width:24px;height:24px;background-color:#ff4c4c}

.ps-alert-success{padding:0.25rem 0.25rem 2.75rem}
.ps-alert-success .item{background-color:#4cbb6c;border-color:#4cbb6c}
.ps-alert-success .item i{border-color:#4cbb6c}
.ps-alert-success .item i svg{background-color:#4cbb6c}

.address-item{ border: 1px solid #ccc; padding: .7em 1em .5em; height: 100%; box-sizing: border-box;}
.address-item .card-title{ margin-top: 0; }
.address-item .card-body .radio-wrapper{ margin-left: 0; }
.address-item .card-body .radio-label{ display: block; width: 100%; margin-left: 0.5em; font-size: 16px; line-height: 1.5em; }
.address-item .action-links{ margin-left: 2.1em; }

.add-address{ box-sizing: border-box; border: 1px solid #ccc; padding: .5em; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 16px; }
.add-address a{ padding: 1em 0; height: calc(100% - 2em); width: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; background-color: var(--bggris); color: var(--bs-body-color); }
.add-address a i{ font-size: 30px; }
.add-address a:hover{ background-color: #ddd; color: #000; }

.delivery-options .radio-wrapper{ margin-left: 0; }
.delivery-options h4:before{ content: none; }
.delivery-options p{ font-weight: normal; margin-bottom: 0; }

.payment-option .radio-wrapper{ margin-left: 0; }
.payment-option + .additional-information{ margin-left: 2em; }

#payment-confirmation .form-footer{ font-weight: bold; color: var(--noir); }
.order-line{ background-color: var(--bggris); margin-bottom: 20px; }
.order-line td{ border-bottom: 0; }
.order-line td:not([title]):before{ content: none; }

#order-summary-content .step-edit{ display: block; float: right; }
#order-summary-content .addresses .col-md-6{ margin-bottom: 1em; }
.summary-selected-carrier  .row{ align-items: center; }

/* Mon compte */
.page-customer main{ padding-top: 75px; }
/* .page-customer h1{ color: var(--rouge); font-size: var(--fz50); } */

.page-my-account .links > .row > div{ padding-top: calc(var(--bs-gutter-x) * .5); padding-bottom: calc(var(--bs-gutter-x) * .5); }
.page-my-account .link-item { padding: 0 1em; display: flex; height: 150px; flex-direction: column; align-items: center; justify-content: space-evenly; line-height: 1.2em; background: #fff; border: 1px solid #ccc; text-align: center; white-space: initial; }
.page-my-account .link-item i{ font-size: 40px; }

.address { max-width: 300px; border: 1px solid #ccc; padding: 0 1em; display: flex; flex-direction: column; justify-content: space-between; height: calc(100% - var(--bs-gutter-x)); margin: calc( var(--bs-gutter-x) / 2) 0; }
.address address{ font-size: 16px; }
.address-footer { border-top: 1px solid #ccc; padding: 1em 0; margin-top: 1em; display: flex; align-items: center; justify-content: space-evenly; font-size: 14px; }

body .wishlist-list-item:before{ content: none; }
body .wishlist-list-item:hover .wishlist-list-item-title{ color: var(--rouge); }
body .wishlist-container-header{ margin: 8vmin 0; }
body .wishlist-container-header h1{ color: var(--rouge); font-size: var(--fz50); }
body .wishlist-products-container-header{ margin: 8vmin 0; }
body .wishlist-products-container-header h1{ color: var(--rouge); font-size: var(--fz50); }
body .wishlist-modal .form-group{ position: relative; margin-bottom: 30px; }
body .wishlist-modal .form-group *{ box-sizing: border-box; }
body .wishlist-modal .form-group label{ font-weight: bold; position:absolute; left:30px; top: 3px; color:#848484; transition:all 0.5s ease 0s; pointer-events: none; }
body .wishlist-modal .form-group input{ background:var(--bggris); padding:25px 30px 5px 30px; line-height: 30px; border:none; font-family: inherit; font-size: inherit; color: var(--noir); display: block; width: 100%; }
body .wishlist-list-item-right .dropdown-menu{ position: absolute; top: 0; right: 60px; }
body .wishlist-list .wishlist-list-item:not(:last-child){ border-bottom: 1px dotted #ccc; }

body .wishlist-products-list{ display: flex; flex-wrap: wrap; flex-direction: row; margin: 0 calc(1.5rem / -2) 5vmin; padding: 0; }
body .wishlist-products-item{ margin: 0; padding: 0 calc(1.5rem / 2); }
body .wishlist-products-item:before{ content: none; }
body .wishlist-products-item .wishlist-product{ max-width: 330px; }
body .wishlist-products-item .wishlist-product .wishlist-button-add i{ color: var(--noir); }
body .wishlist-products-item .wishlist-product-image{ background-color: var(--bggris); display: block; width: 100%; height: auto; }
body .wishlist-products-item .wishlist-product-image img { display: block; width: 100%; mix-blend-mode: multiply; position: static; transform: none; }
body .wishlist-products-item .wishlist-product-title{ color: var(--noir); text-transform: none; margin-bottom: 0.3em; font-weight: bold; font-size: var(--bs-body-font-size); margin-top: 1em; width: calc(100% - 2em); }
body .wishlist-products-item .wishlist-product-price { font-size: 1.25rem; font-weight: bold; display: flex; align-items: baseline; color: var(--rouge); }
body .wishlist-products-item .wishlist-product-price > span { margin-right: 0.5em; }
body .wishlist-products-item .wishlist-product-price > span.wishlist-product-price-promo { color: #848484; text-decoration: line-through; }
body .wishlist-products-item .wishlist-product-combinations-text{ white-space: initial; }
body .wishlist-products-item .wishlist-product-combinations{ margin-bottom: 1em; }
body .wishlist-products-item .wishlist-product-combinations a:hover { color: var(--rouge); }

.page-order-confirmation h1 .material-icons{ font-size: 1em; }
.order-products-table{ margin: 5vmin auto; }
.order-products-table .item-pu,
.order-products-table .item-qty,
.order-products-table .item-total{ text-align: center; }
/* .order-products-table tfoot th{ display: none; } */
.order-products-table tfoot td{ text-align: center; }
.order-products-table tfoot th{ text-align: right; }

.page-order-detail #order-infos{ margin-bottom: 5vmin; }
.page-order-detail #order-history th{ text-align: left; }
.page-order-detail .addresses{ margin: 5vmin 0; }
.page-order-detail .addresses h3{ font-size: 1.7rem; margin-top: 1em; }
.page-order-detail .address{ height: auto; }

.page-order-detail .order-shipping{ margin: 5vmin 0; }
.page-order-detail .order-shipping h3{ font-size: 1.7rem; margin-top: 1em; }
.page-order-detail .order-shipping td{ text-align: center; }

.page-order-detail .order-no-return-products .label{ font-weight: bold; display: block; }
.page-order-detail .order-no-return-products .label small{ font-weight: normal; display: block; margin: 0.5em 0; }
/* .page-order-detail .order-products-table tfoot th{ display: table-cell; } */

/*
 * vendor
 */

.modal-content{ min-width: 300px; width: 100%; }
.modal-dialog{ height: calc(100vh - 20px); display: flex; align-items: center; justify-content: center;}

.hamburger { padding: 15px 15px; display: inline-block; cursor: pointer; transition-property: filter; transition-duration: 0.15s; transition-timing-function: linear; font: inherit; color: inherit; text-transform: none; background-color: transparent; border: 0; margin: 0; overflow: visible; }
.hamburger.is-active
.hamburger-inner,
.hamburger.is-active
.hamburger-inner::before,
.hamburger.is-active
.hamburger-inner::after { background-color: #000; }

.hamburger-box { width: 40px; height: 24px; display: inline-block; position: relative; }

.hamburger-inner { display: block; top: 50%; margin-top: -2px; }
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after { width: 30px; height: 3px; background-color: #000; border-radius: 3px; position: absolute; transition-property: transform; transition-duration: 0.15s; transition-timing-function: ease; }
.hamburger-inner::before,
.hamburger-inner::after { content: ""; display: block; }
.hamburger-inner::before { top: -9px; }
.hamburger-inner::after { bottom: -9px; }

.hamburger--emphatic { overflow: hidden; }
.hamburger--emphatic
.hamburger-inner { transition: background-color 0.125s 0.175s ease-in; }
.hamburger--emphatic
.hamburger-inner::before { left: 0; transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
.hamburger--emphatic
.hamburger-inner::after { top: 9px; right: 0; transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
.hamburger--emphatic.is-active
.hamburger-inner { transition-delay: 0s; transition-timing-function: ease-out; background-color: transparent !important; }
.hamburger--emphatic.is-active
.hamburger-inner::before { left: -80px; top: -80px; transform: translate3d(80px, 80px, 0) rotate(45deg); transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
.hamburger--emphatic.is-active
.hamburger-inner::after { right: -80px; top: -80px; transform: translate3d(-80px, 80px, 0) rotate(-45deg); transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
