/*
** Réalisation : Agence k4
** https://www.agencek4.fr
*/

/*
** Réalisation : LaFabrikk
** https://www.lafabrikk.fr
*/
:root {

  --LFcol01: #4B3C29;
  --LFcol02: #F1F0EE;
  --LFcol03: #EBE6E0;
  --LFcol04: #D4D0AA;
  --LFcol05: #8D3821;
  --LFcol06: #001C20;

  --LF001: 0.0625rem;
  --LF002: 0.125rem;
  --LF003: 0.1875rem;
  --LF004: 0.25rem;
  --LF005: 0.3125rem;
  --LF006: 0.375rem;
  --LF007: 0.4375rem;
  --LF008: 0.5rem;
  --LF009: 0.5625rem;
  --LF010: 0.625rem;
  --LF011: 0.6875rem;
  --LF012: 0.75rem;
  --LF013: 0.8125rem;
  --LF014: 0.875rem;
  --LF015: 0.9375rem;
  --LF016: 1rem;
  --LF017: 1.0625rem;
  --LF018: 1.125rem;
  --LF019: 1.1875rem;
  --LF020: 1.25rem;
  --LF021: 1.3125rem;
  --LF022: 1.375rem;
  --LF023: 1.4375rem;
  --LF024: 1.5rem;
  --LF025: 1.5625rem;
  --LF026: 1.625rem;
  --LF027: 1.6875rem;
  --LF028: 1.75rem;
  --LF029: 1.8125rem;
  --LF030: 1.875rem;
  --LF031: 1.9375rem;
  --LF032: 2rem;
  --LF033: 2.0625rem;
  --LF034: 2.125rem;
  --LF035: 2.1875rem;
  --LF036: 2.25rem;
  --LF037: 2.3125rem;
  --LF038: 2.375rem;
  --LF039: 2.4375rem;
  --LF040: 2.5rem;
  --LF041: 2.5625rem;
  --LF042: 2.625rem;
  --LF043: 2.6875rem;
  --LF044: 2.75rem;
  --LF045: 2.8125rem;
  --LF046: 2.875rem;
  --LF047: 2.9375rem;
  --LF048: 3rem;
  --LF049: 3.0625rem;
  --LF050: 3.125rem;
  --LF051: 3.1875rem;
  --LF052: 3.25rem;
  --LF053: 3.3125rem;
  --LF054: 3.375rem;
  --LF055: 3.4375rem;
  --LF056: 3.5rem;
  --LF057: 3.5625rem;
  --LF058: 3.625rem;
  --LF059: 3.6875rem;
  --LF060: 3.75rem;
  --LF061: 3.8125rem;
  --LF062: 3.875rem;
  --LF063: 3.9375rem;
  --LF064: 4rem;
  --LF065: 4.0625rem;
  --LF066: 4.125rem;
  --LF067: 4.1875rem;
  --LF068: 4.25rem;
  --LF069: 4.3125rem;
  --LF070: 4.375rem;
  --LF071: 4.4375rem;
  --LF072: 4.5rem;
  --LF073: 4.5625rem;
  --LF074: 4.625rem;
  --LF075: 4.6875rem;
  --LF076: 4.75rem;
  --LF077: 4.8125rem;
  --LF078: 4.875rem;
  --LF079: 4.9375rem;
  --LF080: 5rem;
  --LF081: 5.0625rem;
  --LF082: 5.125rem;
  --LF083: 5.1875rem;
  --LF084: 5.25rem;
  --LF085: 5.3125rem;
  --LF086: 5.375rem;
  --LF087: 5.4375rem;
  --LF088: 5.5rem;
  --LF089: 5.5625rem;
  --LF090: 5.625rem;
  --LF091: 5.6875rem;
  --LF092: 5.75rem;
  --LF093: 5.8125rem;
  --LF094: 5.875rem;
  --LF095: 5.9375rem;
  --LF096: 6rem;
  --LF097: 6.0625rem;
  --LF098: 6.125rem;
  --LF099: 6.1875rem;
  --LF100: 6.25rem;

  --LFwrapper : 1320px;
  --LFcontainer: calc(calc(100vw - var(--LFwrapper)) / 2);
}

*,::after,::before {
  box-sizing:border-box;
}
*::-moz-selection {
  background: var(--LFcol01);
  color: #fff;
}
*::selection {
  background: var(--LFcol01);
  color: #fff;
}

html {
  font-size: 16px;
}

/* --- STRUCTURE --- */
.wrapper {
  width: 100%;
  max-width: var(--LFwrapper);
  margin: 0 auto;
}
.wrapper-fluid {

}
.p-container {
  padding-left: 15px;
  padding-right: 15px;
}
.flex {
  display: flex;
  flex-wrap: wrap;
}
.flex > * {
  flex: 0 0 auto;
}

.m-default {
  margin-top: var(--LF077);
  margin-bottom: var(--LF077);
}
.m-b-default {
  margin-bottom: var(--LF077);
}
.m-big {
  margin-top: 11rem;
  margin-bottom: 11rem;
}

.p-default {
  padding-top: var(--LF077);
  padding-bottom: var(--LF077);
}
.p-big {
  padding-top: 11rem;
  padding-bottom: 11rem;
}




/* --- TYPO --- */
.t-inter {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
}
.t-scale {
  font-family: "scale-variable", sans-serif;
  font-optical-sizing: auto;
}

.t-uppercase {
  text-transform: uppercase;
}




/* --- GENERAL --- */
body {
  margin: 0;
  background-color: var(--LFcol02);
  font-family: "Inter", sans-serif;
  color: var(--LFcol01);
  line-height: 1.5;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: "scale-variable", sans-serif;
  margin: 0;
  font-weight: 400;
  color: var(--LFcol01);
}
h1, .h1 {
  margin-bottom: var(--LF025);
  font-size: var(--LF042);
  line-height: 1.2;
}
h2, .h2 {
  margin-bottom: var(--LF015);
  font-size: var(--LF040);
  line-height: 1.2;
}
h3, .h3 {
  margin-bottom: var(--LF016);
  font-size: var(--LF022);
  line-height: 1.2;
}
h4, .h4 {
  margin-bottom: var(--LF010);
  font-size: var(--LF022);
  line-height: 1.2;
}

.t-center {
  text-align: center;
}

.m-default {
  margin-top: var(--LF060);
  margin-bottom: var(--LF060);
}
.p-default {
  padding-top: var(--LF060);
  padding-bottom: var(--LF060);
}

.m-half {
  margin-top: var(--LF030);
  margin-bottom: var(--LF030);
}
.p-half {
  padding-top: var(--LF030);
  padding-bottom: var(--LF030);
}

.narrow {
  max-width: 48.125rem;
  margin-left: auto;
  margin-right: auto;
}
.narrower {
  max-width: 41.9375rem;
  margin-left: auto;
  margin-right: auto;
}

button {
  border: none;
  background-color: transparent;
}

a {
  color: var(--LFcol01);
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

.btn {
  padding: var(--LF007) var(--LF032);
  border-radius: var(--LF005);
  font-weight: 600;
}
.btn.btn-picto {
  display: flex;
  align-items: center;
  gap: var(--LF007)
}
.btn-primary {
  background-color: var(--LFcol04);
  color: var(--LFcol01);
  stroke: var(--LFcol01);
}
.btn-secondary {
  background-color: var(--LFcol01);
  color: var(--LFcol02);
  stroke: var(--LFcol02);
}

p {
  font-weight: 400;
  margin-top: 0;
}
p:last-child {
  margin-bottom: 0;
}

img {
  max-width: 100%;
  height: auto;
}

.breadcrumb__wrapper {
  margin-top: var(--LF020);
  font-size: var(--LF010);
}
.breadcrumb__wrapper a {
  text-decoration: underline;
}
.breadcrumb__wrapper .container {

}
.breadcrumb__wrapper ol.breadcrumb {
  margin-bottom: 0;
}
.breadcrumb__wrapper svg {
  margin: 0 var(--LF008);
  stroke: var(--LFcol01);
}

.sous-titre {
  font-size: var(--LF010);
}

.img-full {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-position: center center;
  object-fit: cover;
}

/* --- HEADER --- */
#header {
  stroke: var(--LFcol01);
  fill: var(--LFcol01);
}
.header-top {
  position: relative;
  align-items: center;
  justify-content: space-between;
  padding-top: var(--LF014);
  padding-bottom: var(--LF009);
  font-size: var(--LF012);
}
.header-top:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: var(--LF015);
  width: calc(100% - var(--LF030));
  height: var(--LF001);
  background-color: var(--LFcol01);
}
.header-top-links {
  align-items: center;
  gap: var(--LF024);
}

.header-nav {
  align-items: center;
  justify-content: space-between;
  padding-top: var(--LF012);
  padding-bottom: var(--LF014);
}
.header-nav-logo {
  width: 7.5625rem;
  stroke: none;
}
.header-nav-logo svg {
  width: 100%;
  height: auto;
}
.header-nav-nav {
  font-size: var(--LF012);
  font-weight: 600;
}
.header-nav-nav .ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree {
  gap: var(--LF020);
}
.header-nav-nav .ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree>li .ps-mainmenu__tree-link {
  padding: var(--LF004) 0;
}
.header-nav-nav a {
  position: relative;
}
.header-nav-nav a:hover {
  text-decoration: none;
}
.header-nav-nav a:after {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    width: 0;
    height: var(--LF003);
    background-color: var(--LFcol05);
    transition: all 0.2s;
}
.header-nav-nav a:hover:after {
  width: 100%;
}

.header-nav-misc {
  align-items: center;
  gap: var(--LF020);
}
#ps_searchbar {
  display: none;
}
#_desktop_ps_shoppingcart .header-block_action-btn {
  position: relative;
}
#_desktop_ps_shoppingcart .header-block_badge {
  position: absolute;
  top: -0.3125rem;
  right: -0.5625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--LF016);
  height: var(--LF016);
  background-color: var(--LFcol05);
  border-radius: var(--LF020);
  font-size: var(--LF012);
  color: var(--LFcol02);
}

.header-light,
#header.header-light .header-nav-nav a {
  color: var(--LFcol02);
}
#header.header-light {
  stroke: var(--LFcol02);
  fill: var(--LFcol02);
}
#header.header-light .header-top:after {
  background-color: var(--LFcol02);
}




/* --- FOOTER --- */
#footer {
  background-color: var(--LFcol01);
  color: var(--LFcol02);
}
.footer__before {
  padding-top: var(--LF080);
  padding-bottom: var(--LF080);
}
.footer__before .inner {
  align-items: center;
  justify-content: space-between;
}
.footer__before .ps-emailsubscription {
  width: 49.19%;
}
.footer__before .ps-emailsubscription p.title {
  font-size: var(--LF028);
}
.footer__before .ps-emailsubscription input[type=email] {
  padding: var(--LF010) var(--LF024) var(--LF011);
  background-color: transparent;
  border: var(--LF001) solid var(--LFcol02);
  font-size: var(--LF010);
  color: var(--LFcol02);
}
.footer__before .ps-emailsubscription input[type=email]::placeholder {
  color: var(--LFcol02);
}
.footer__before .ps-emailsubscription p.newsletter-conditions {
  margin-top: var(--LF016);
  font-size: var(--LF010);
}
.footer-reassurances {
  width: 30.66%;
  gap: var(--LF024);
}
.footer-reassurances-sep {
  width: var(--LF001);
  background-color: var(--LFcol02);
}
.footer-reassurance {
  width: calc(calc(100% - var(--LF098))/3);
  font-size: var(--LF012);
  text-align: center;
}
.footer-reassurance-picto {
  width: var(--LF020);
  height: var(--LF020);
  margin: auto;
  background-color: var(--LFcol02);
  border-radius: var(--LF005);
}
.footer-reassurance-picto svg {
  stroke: var(--LFcol01);
}
.footer-reassurance-titre {
  margin-top: var(--LF012);
  font-size: var(--LF014);
  font-weight: 500;
}

.footer__main {
  display: none;
}




/* --- PRODUCT MINIATURE --- */
.product-miniature {
  position: relative;
}
.product-flags {
  justify-content: flex-end;
  padding: var(--LF020);
}
.product-flags .badge {
  padding: var(--LF006) var(--LF012);
  font-size: var(--LF010);
  text-transform: uppercase;
  border: none;
  background-color: var(--LFcol06);
}
.product-flags .badge.discount {
  background-color: var(--LFcol05);
  color: var(--LFcol02);
}
.product-flags .badge.light {
  background-color: var(--LFcol04);
  color: var(--LFcol01);
}
.product-miniature__image-container {
  position: relative;
  overflow: hidden;
  background-color: var(--LFcol03);
}
.product-miniature__image-link {
  display: block;
}
.product-miniature__image {
  width: 100%;
}
.product-miniature__actions {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  transform: translateY(100%);
  transition: all 0.2s;
}
.product-miniature:hover .product-miniature__actions {
  transform: translateY(0%);
}
.product-miniature__add {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--LF013);
  width: 100%;
  padding: var(--LF012) 0;
  background-color: var(--LFcol01);
  font-size: var(--LF010);
  font-weight: 600;
  color: var(--LFcol02);
  stroke: var(--LFcol02);
  transition: all 0.2s;
}
.product-miniature__add:hover {
  background-color: var(--LFcol05);
}
.product-miniature__bottom {
  margin-top: var(--LF012);
}
.product-miniature__title {
  margin-bottom: var(--LF010);
  font-size: var(--LF022);
  line-height: var(--LF022);
}
.product-miniature__description {
  font-size: var(--LF010);
}
.product-miniature__misc {
  justify-content: flex-end;
  margin-top: var(--LF014);
}
.product-miniature__prices {
  align-items: center;
  gap: var(--LF012);
  font-size: var(--LF014);
  font-weight: 500;
}
.product-miniature__discount-price {
  font-size: var(--LF012);
  text-decoration: line-through;
}




/* --- PRODUCT LIST --- */
body.product-list header#header {
  z-index: 3;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
body.product-list #js-product-list-header {
  position: relative;
  padding-top: 6.4375rem;
}
body.product-list #js-product-list-header:before {
  content: '';
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(75, 60, 41, 0.70) 0%, rgba(75, 60, 41, 0.70) 100%);
}
.breadcrumb__wrapper {
  z-index: 3;
  position: relative;
  color: var(--LFcol02);
}
.breadcrumb__wrapper svg {
  stroke: var(--LFcol02);
}
.breadcrumb__wrapper a {
  color: var(--LFcol02);
}
.category__cover {
  z-index: 1;
}
.category__header {
  z-index: 3;
  position: relative;
  margin-top: var(--LF031);
  padding-bottom: var(--LF065);
  text-align: center;
  color: var(--LFcol02);
}
.category__header h1 {
  margin-bottom: var(--LF020);
  color: var(--LFcol02);
  text-transform: uppercase;
}

#products {
  margin-top: var(--LF040);
}
.products__selection {
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--LF040);
}
.products__count,
.products__sort-label {
  font-size: var(--LF012);
}




/* --- CATEGORY --- */
.subcategory {
  font-weight: 500;
}
.subcategory__list {
  justify-content: center;
  gap: var(--LF010);
}
.subcategory__link {
  padding: var(--LF008) var(--LF018);
  border: var(--LF001) solid var(--LFcol01);
  border-radius: var(--LF005);
  transition: all 0.2s;
}
.subcategory__link:hover {
  border-color: var(--LFcol05);
  background-color: var(--LFcol05);
  color: var(--LFcol02);
  text-decoration: none;
}




/* --- HOME --- */
.k4_home_offres-liste {
  gap: var(--LF021);
}
.k4_home_offre {
  width: calc(33.33333% - var(--LF014));
}
.k4_home_offre-img {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--LFcol03);
  aspect-ratio: 1;
}
.k4_home_offre-img img {
  width: 80%;
}
.k4_home_offre-titre {
  margin-top: var(--LF015);
  font-size: var(--LF022);
}
.k4_home_offre-texte {
  font-size: var(--LF010);
}
.k4_home_offre-lien {
  margin-top: var(--LF004);
  font-size: var(--LF010);
  font-weight: 600;
  stroke: var(--LFcol01);
}

.ps-bestsellers {
  background-color: var(--LFcol01);
}
.ps-bestsellers .wrapper {
  justify-content: space-between;
}
.ps-bestsellers-left {
  width: 17.41%;
  color: var(--LFcol02);
}
.ps-bestsellers-left h2 {
  color: var(--LFcol02);
}
.ps-bestsellers-right {
  width: 50%;
  color: var(--LFcol02);
}
.ps-bestsellers-right .products {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.ps-bestsellers-right a {
  color: var(--LFcol02);
}
.ps-bestsellers-right .product-miniature__add {
  background-color: var(--LFcol04);
  color: var(--LFcol01);
  stroke: var(--LFcol01);
}
.ps-bestsellers-right .product-miniature__add:hover {
  background-color: var(--LFcol05);
  color: var(--LFcol02);
  stroke: var(--LFcol02);
}

.k4_interlude_image {
  position: relative;
  margin-top: -4.8125rem;
  aspect-ratio: 2.11;
}

.k4_home_livraison {
  background-color: var(--LFcol01);
  color: var(--LFcol02);
}
.k4_home_livraison h2 {
  color: var(--LFcol02);
}
.k4_home_livraison .wrapper {
  justify-content: space-between;
}
.k4_home_livraison-left {
  width: 50%;
  padding-left: var(--LFcontainer);
  padding-right: var(--LF068);
}
.k4_home_livraison-left-top {
  align-items: center;
  justify-content: space-between;
}
.k4_home_livraison-left-top h2 {
  width: 45%;
}
.k4_home_livraison-left-top p {
  width: 45%;
}
.k4_home_livraison-left-liste-bloc {
  gap: var(--LF008);
  margin-top: var(--LF020);
  padding-bottom: var(--LF020);
  border-bottom: var(--LF001) solid var(--LFcol02);
}
.k4_home_livraison-left-liste-bloc-picto {
  align-items: center;
  justify-content: center;
  width: var(--LF020);
  height: var(--LF020);
  border-radius: var(--LF005);
  background-color: var(--LFcol02);
}
.k4_home_livraison-left-liste-bloc-titre {
  margin-left: var(--LF007);
  font-size: var(--LF014);
  font-weight: 500;
}
.k4_home_livraison-left-liste-bloc-texte {
  width: 100%;
  font-size: var(--LF010);
}
.k4_home_livraison-right {
  width: 50%;
  background-color: var(--LFcol04);
}