/**
 * Bandeau d'informations Audrey Déco — voir PROJECT.md.
 */
.audrey-topbar {
  background: #faf7ef;
  border-top: 2px solid #36543f;
  border-bottom: 1px solid #9aa58f;
  color: #252820;
  font-family: Georgia, serif;
  font-size: 13px;
  line-height: 1.25;
}

.audrey-topbar__content,
.audrey-topbar__messages,
.audrey-topbar__links,
.audrey-topbar__contact {
  align-items: center;
  display: flex;
}

.audrey-topbar__content {
  justify-content: space-between;
  min-height: 32px;
  gap: 20px;
}

.audrey-topbar__messages,
.audrey-topbar__links {
  gap: 13px;
}

.audrey-topbar__heart {
  color: #b97920;
  font-size: 18px;
}

.audrey-topbar__contact .material-icons {
  color: #252820;
  font-size: 18px;
}

.audrey-topbar__separator {
  width: 1px;
  height: 15px;
  background: #d8b77a;
}

.audrey-topbar__contact {
  color: inherit;
  gap: 5px;
  white-space: nowrap;
}

#header .audrey-topbar__contact:hover,
#header .audrey-topbar__contact:focus {
  color: #c78924;
  text-decoration: none;
}

#header .audrey-topbar__contact:hover .material-icons,
#header .audrey-topbar__contact:focus .material-icons {
  color: #c78924;
}

.audrey-topbar__social {
  align-items: center;
  color: #36543f;
  display: inline-flex;
  font-family: Arial, sans-serif;
  font-size: 20px;
  font-weight: 700;
  justify-content: center;
  line-height: 1;
}

.audrey-topbar__social--instagram {
  font-weight: 400;
}

#header .audrey-topbar__social:hover,
#header .audrey-topbar__social:focus {
  background: transparent;
  color: #b97920;
  text-decoration: none;
}

#header .audrey-topbar__social:focus {
  outline: 2px solid #36543f;
  outline-offset: 2px;
}

.audrey-topbar__social .material-icons {
  font-size: 14px;
}

.audrey-instagram-icon {
  display: block;
  height: 1em;
  width: 1em;
}

@media (max-width: 991px) {
  #header .header-nav {
    background: #faf7ef;
    border-bottom: 1px solid #9aa58f;
  }

  #header .header-nav .blockcart {
    background: transparent;
  }

  .audrey-topbar__content {
    flex-wrap: wrap;
    gap: 5px 14px;
    justify-content: center;
    min-height: 0;
    padding: 6px 0;
  }

  .audrey-topbar__messages > span:not(:first-child),
  .audrey-topbar__messages .audrey-topbar__separator,
  .audrey-topbar__links .audrey-topbar__separator {
    display: none;
  }

  .audrey-topbar__messages,
  .audrey-topbar__links {
    gap: 9px;
  }
}

@media (max-width: 575px) {
  .audrey-topbar {
    font-size: 11px;
  }

  .audrey-topbar__content {
    gap: 4px 10px;
  }

  .audrey-topbar__contact span {
    display: none;
  }
}

/* En-tête principal : logo, recherche et accès client. */
body a:not(.btn):hover,
body a:not(.btn):focus {
  color: #b97920;
}

/* Bouton de recherche : même survol doré sur tous les formats. */
#header .search-widgets .audrey-search-submit:hover .material-icons.search,
#header .search-widgets .audrey-search-submit:focus .material-icons.search,
#header .search-widgets .audrey-search-submit:focus-visible .material-icons.search {
  color: #b97920 !important;
}

#header .audrey-main-header__actions .user-info a:hover .material-icons,
#header .audrey-main-header__actions .user-info a:focus .material-icons,
#header .audrey-main-header__actions .blockcart a:hover .material-icons,
#header .audrey-main-header__actions .blockcart a:focus .material-icons {
  color: #b97920 !important;
}

/* Fond général : remplace les gris et blancs structurels du thème Classic. */
html,
body,
#wrapper,
#main,
#content-wrapper,
.page-content,
.page-content.page-cms,
.card,
.block-category,
.products-selection,
.pagination,
.facet,
.product-information,
.tabs,
.modal-content {
  background-color: #faf7ef;
}

@media (min-width: 992px) {
  #header .header-nav > .container {
    max-width: none;
    padding-right: 28px;
    padding-left: 28px;
    width: 100%;
  }

  #header .header-nav {
    background: #faf7ef;
    max-height: none;
    border-bottom: 3px solid #36543f;
  }

  #header .audrey-main-header {
    align-items: center;
    display: flex;
    min-height: 142px;
    width: 100%;
  }

  #header .audrey-main-header__logo h1 {
    margin: 0;
  }

  #header .audrey-main-header__logo {
    align-self: stretch;
    align-items: center;
    background-image: url('../img/audrey/header-floral-decoration.webp');
    background-position: left center;
    background-repeat: no-repeat;
    background-size: auto 100%;
    display: flex;
    flex: 0 0 27%;
    max-width: 27%;
    padding-left: 125px;
    position: relative;
  }

  #header .audrey-main-header__logo::after {
    background: #faf7ef;
    bottom: -11px;
    color: #36543f;
    content: '♥';
    font-size: 18px;
    left: 50%;
    line-height: 1;
    padding: 0 5px;
    position: absolute;
    transform: translateX(-50%);
    z-index: 1;
  }

  #header .audrey-main-header__logo .logo {
    display: block;
    max-height: 130px;
    max-width: 225px;
    width: auto;
  }

  #header .audrey-main-header__search #search_widget {
    display: block;
    width: 100%;
  }

  #header .audrey-main-header__search {
    flex: 0 0 36%;
    max-width: 36%;
  }

  #header .audrey-main-header__search .search-widgets {
    max-width: none;
  }

  #header .audrey-main-header__search form {
    position: relative;
  }

  #header .audrey-main-header__search .audrey-search-submit {
    align-items: center;
    background: transparent;
    border: 0;
    cursor: pointer;
    display: flex;
    height: 100%;
    justify-content: center;
    padding: 0;
    position: absolute;
    right: 8px;
    top: 0;
    width: 56px;
  }

  #header .audrey-main-header__search input[type='text'] {
    background: #fffdf8;
    border: 1px solid #36543f;
    border-radius: 4px;
    color: #252820;
    min-height: 42px;
    padding: 10px 68px 10px 15px;
  }

  #header .audrey-main-header__search input[type='text']:focus {
    border-color: #b97920;
    box-shadow: 0 0 0 2px rgba(185, 121, 32, 0.18);
    outline: 0;
  }

  #header .audrey-main-header__search .search-widgets form .material-icons.search {
    color: #36543f;
    display: block;
    height: auto;
    left: 50%;
    line-height: 1;
    margin: 0;
    position: absolute !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
  }

  #header .audrey-main-header__search .audrey-search-submit:hover .material-icons,
  #header .audrey-main-header__search .audrey-search-submit:focus .material-icons {
    color: #b97920;
  }

  #header .audrey-main-header__actions {
    align-items: center;
    display: flex;
    justify-content: flex-end;
    flex: 0 0 37%;
    max-width: 37%;
  }

  #header .audrey-main-header__actions .user-info a,
  #header .audrey-main-header__actions .blockcart a {
    align-items: center;
    color: #252820;
    display: flex;
    font-family: Georgia, serif;
    gap: 10px;
    text-decoration: none;
  }

  #header .audrey-main-header__actions .user-info .material-icons,
  #header .audrey-main-header__actions .blockcart .shopping-cart {
    color: #36543f;
    font-size: 34px;
  }

  #header .audrey-main-header__actions .user-info {
    margin: 0;
    padding-right: 24px;
    border-right: 1px solid #d8b77a;
  }

  #header .audrey-main-header__actions .blockcart {
    background: transparent;
    height: auto;
    margin-left: 24px;
    padding: 0;
  }

  #header .audrey-main-header__actions .audrey-account-label,
  #header .audrey-main-header__actions .audrey-cart-label {
    display: flex;
    flex-direction: column;
    font-size: 14px;
    line-height: 1.35;
    white-space: nowrap;
  }

  #header .audrey-main-header__actions .audrey-account-label > span:last-child,
  #header .audrey-main-header__actions .cart-products-count {
    color: #52584c;
  }

  #header .audrey-main-header__actions .user-info a:hover,
  #header .audrey-main-header__actions .user-info a:focus,
  #header .audrey-main-header__actions .blockcart a:hover,
  #header .audrey-main-header__actions .blockcart a:focus {
    color: #b97920;
  }

  #header .audrey-main-header__actions .user-info a:hover .material-icons,
  #header .audrey-main-header__actions .user-info a:focus .material-icons,
  #header .audrey-main-header__actions .blockcart a:hover .material-icons,
  #header .audrey-main-header__actions .blockcart a:focus .material-icons {
    color: #b97920;
  }

  #header .header-top #search_widget {
    display: none;
  }
}

/* Évite de comprimer le logo lorsque l'en-tête desktop est très étroit. */
@media (min-width: 992px) and (max-width: 1199px) {
  #header .audrey-main-header__logo {
    background-image: none;
    padding-left: 0;
  }

  #header .audrey-main-header__logo .logo {
    max-width: 190px;
  }
}

/* Navigation principale : les entrées restent entièrement gérées par ps_mainmenu. */
#header .header-top {
  background: #faf7ef;
}

@media (min-width: 768px) {
  #header .header-top {
    border-bottom: 1px solid #9aa58f;
    padding: 0;
  }

  #header .header-top .header-top-right {
    width: 100%;
  }

  #header .header-top .menu {
    padding: 0;
    width: 100%;
  }

  #header .header-top .top-menu[data-depth='0'] {
    align-items: stretch;
    display: flex;
    justify-content: center;
    margin: 0;
  }

  #header .header-top .top-menu[data-depth='0'] > li {
    margin: 0;
  }

  #header .header-top .top-menu a[data-depth='0'] {
    border-bottom: 3px solid transparent;
    color: #252820;
    display: block;
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.01em;
    padding: 18px 20px 15px;
    text-decoration: none;
    text-transform: uppercase;
    transition: border-color 180ms ease, color 180ms ease;
  }

  #header .header-top .top-menu > li > a[data-depth='0']:hover,
  #header .header-top .top-menu > li > a[data-depth='0']:focus,
  #header .header-top .top-menu > li.current > a[data-depth='0'] {
    border-bottom-color: #b97920;
    color: #b97920;
  }

  #header .header-top .top-menu > li > a[data-depth='0']:focus {
    outline: 2px solid #36543f;
    outline-offset: -4px;
  }

  #header .header-top .top-menu .popover.sub-menu {
    background: #fffdf8;
    border: 1px solid #36543f;
    border-top: 3px solid #b97920;
    border-radius: 0;
    box-shadow: 0 8px 18px rgba(54, 84, 63, 0.16);
    margin-top: 0;
    min-width: min(1080px, calc(100vw - 56px));
    padding: 14px 18px;
  }

  #header .header-top .top-menu .sub-menu ul[data-depth='1'] {
    display: grid;
    gap: 2px 22px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
  }

  #header .header-top .top-menu .sub-menu ul[data-depth='1'] > li {
    float: none;
    margin: 0;
    width: auto;
  }

  #header .header-top .top-menu .sub-menu ul[data-depth='2'] {
    display: grid;
    gap: 2px 14px;
    grid-template-columns: repeat(2, minmax(145px, 1fr));
    margin: 4px 0 8px;
  }

  #header .header-top .top-menu .sub-menu ul[data-depth='2'] > li {
    float: none;
    margin: 0;
    width: auto;
  }

  #header .header-top .top-menu .sub-menu a {
    color: #36543f;
    font-family: Georgia, serif;
    font-size: 14px;
    line-height: 1.25;
    padding: 8px 10px;
    text-decoration: none;
    transition: background-color 180ms ease, color 180ms ease;
    white-space: normal;
  }

  #header .header-top .top-menu .sub-menu a[data-depth='2'] {
    color: #52584c;
    font-size: 13px;
    padding: 6px 10px;
  }

  #header .header-top .top-menu .sub-menu a:hover,
  #header .header-top .top-menu .sub-menu a:focus,
  #header .header-top .top-menu .sub-menu li.current > a {
    background: #f2ebdd;
    color: #b97920;
  }

  #header .header-top .top-menu .sub-menu a:focus {
    outline: 2px solid #36543f;
    outline-offset: -2px;
  }
}

/* Wishlist : même sobriété que les icônes de partage, avec contour doré au survol.
   Le module injecte ses propres styles après le chargement : cette surcharge
   finale couvre les boutons ajoutés dynamiquement par Vue. */
body#product .wishlist-button-add,
body .products .wishlist-button-add,
body #products .wishlist-button-add,
body .featured-products .wishlist-button-add {
  background: #fffdf8 !important;
  border: 1px solid #36543f !important;
  color: #36543f !important;
  opacity: 1 !important;
}

body#product .wishlist-button-add .material-icons,
body .products .wishlist-button-add .material-icons,
body #products .wishlist-button-add .material-icons,
body .featured-products .wishlist-button-add .material-icons {
  color: inherit !important;
}

body#product .wishlist-button-add:hover,
body#product .wishlist-button-add:focus,
body .products .wishlist-button-add:hover,
body .products .wishlist-button-add:focus,
body #products .wishlist-button-add:hover,
body #products .wishlist-button-add:focus,
body .featured-products .wishlist-button-add:hover,
body .featured-products .wishlist-button-add:focus {
  background: #fffdf8 !important;
  border-color: #c78924 !important;
  box-shadow: 0 3px 9px rgba(199, 137, 36, .2) !important;
  color: #c78924 !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Tablettes : l'en-tête desktop est présent à partir de 768 px. */
@media (min-width: 768px) and (max-width: 991px) {
  #header .header-nav {
    background: #faf7ef;
    border-bottom: 3px solid #36543f;
    max-height: none;
  }

  #header .header-nav > .container {
    max-width: none;
    padding-right: 18px;
    padding-left: 18px;
    width: 100%;
  }

  #header .header-nav .mobile {
    display: none !important;
  }

  #header .audrey-main-header {
    align-items: center;
    display: grid;
    grid-template-columns: 185px minmax(240px, 1fr) max-content;
    min-height: 112px;
    width: 100%;
  }

  #header .audrey-main-header__logo,
  #header .audrey-main-header__search,
  #header .audrey-main-header__actions {
    float: none;
    max-width: none;
    min-width: 0;
    width: auto;
  }

  #header .audrey-main-header__logo h1 {
    margin: 0;
  }

  #header .audrey-main-header__logo .logo {
    display: block;
    max-height: 102px;
    max-width: 175px;
    width: auto;
  }

  #header .audrey-main-header__search #search_widget {
    display: block;
    width: 100%;
  }

  #header .audrey-main-header__search .search-widgets {
    max-width: none;
  }

  #header .audrey-main-header__search form {
    position: relative;
  }

  #header .audrey-main-header__search input[type='text'] {
    background: #fffdf8;
    border: 1px solid #36543f;
    border-radius: 4px;
    color: #252820;
    min-height: 42px;
    padding: 10px 62px 10px 14px;
  }

  #header .audrey-main-header__search .audrey-search-submit {
    align-items: center;
    background: transparent;
    border: 0;
    cursor: pointer;
    display: flex;
    height: 100%;
    justify-content: center;
    padding: 0;
    position: absolute;
    right: 4px;
    top: 0;
    width: 48px;
  }

  #header .audrey-main-header__search .material-icons.search {
    color: #36543f;
    left: 50%;
    position: absolute !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
  }

  #header .audrey-main-header__actions {
    align-items: center;
    display: flex;
    justify-content: flex-end;
    white-space: nowrap;
  }

  #header .audrey-main-header__actions .user-info {
    margin: 0;
    padding-right: 14px;
  }

  #header .audrey-main-header__actions .user-info a,
  #header .audrey-main-header__actions .blockcart a {
    align-items: center;
    color: #252820;
    display: flex;
    font-family: Georgia, serif;
    gap: 6px;
    text-decoration: none;
  }

  #header .audrey-main-header__actions .user-info .material-icons,
  #header .audrey-main-header__actions .blockcart .shopping-cart {
    color: #36543f;
    font-size: 28px;
  }

  #header .audrey-main-header__actions .blockcart {
    background: transparent;
    height: auto;
    margin-left: 12px;
    padding: 0;
  }

  #header .audrey-main-header__actions .audrey-account-label,
  #header .audrey-main-header__actions .audrey-cart-label {
    display: flex;
    flex-direction: column;
    font-size: 12px;
    line-height: 1.2;
  }

  #header .header-top #search_widget {
    display: none !important;
  }

  #header .header-top .top-menu[data-depth='0'] {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
  }

  #header .header-top .top-menu a[data-depth='0'] {
    font-size: 12px;
    padding: 15px 12px 12px;
    white-space: nowrap;
  }
}

/* Version mobile du menu déplié par le bouton hamburger. */
@media (max-width: 991px) {
  #mobile_top_menu_wrapper {
    background: #faf7ef;
    border-bottom: 3px solid #36543f;
    padding: 0 20px 16px;
  }

  #mobile_top_menu_wrapper .top-menu {
    margin: 0;
  }

  #mobile_top_menu_wrapper .top-menu > li {
    border-bottom: 1px solid #d8b77a;
    margin: 0;
  }

  #mobile_top_menu_wrapper .top-menu > li > a[data-depth='0'] {
    color: #252820;
    display: block;
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-size: 17px;
    font-weight: 600;
    padding: 15px 0;
    text-decoration: none;
    text-transform: uppercase;
  }

  #mobile_top_menu_wrapper .top-menu > li > a[data-depth='0']:hover,
  #mobile_top_menu_wrapper .top-menu > li > a[data-depth='0']:focus,
  #mobile_top_menu_wrapper .top-menu > li.current > a[data-depth='0'] {
    color: #b97920;
  }

  #mobile_top_menu_wrapper .top-menu .collapse-icons .material-icons {
    color: #36543f;
  }

  #mobile_top_menu_wrapper .top-menu .sub-menu {
    background: #f2ebdd;
    box-shadow: none;
    margin: 0 -10px 10px;
  }

  #mobile_top_menu_wrapper .top-menu .sub-menu a {
    color: #36543f;
    font-family: Georgia, serif;
  }

  /* Recherche affichée sous l'en-tête sur mobile. */
  #header .header-top #search_widget {
    display: block;
    padding: 10px 15px;
    width: 100%;
  }

  #header .header-top .search-widgets {
    float: none;
    max-width: none;
  }

  #header .header-top .search-widgets form {
    height: 46px;
    overflow: hidden;
    position: relative;
    width: 100%;
  }

  #header .header-top .search-widgets form input[type='text'] {
    background: #fffdf8;
    border: 1px solid #36543f;
    border-radius: 4px;
    box-sizing: border-box;
    color: #252820;
    display: block;
    height: 46px;
    min-height: 46px;
    padding: 10px 72px 10px 14px;
    width: 100%;
  }

  #header .header-top .search-widgets form input[type='text']:focus {
    border-color: #b97920;
    box-shadow: 0 0 0 2px rgba(185, 121, 32, 0.18);
    outline: 0;
  }

  #header .header-top .search-widgets .audrey-search-submit {
    align-items: center;
    background: transparent;
    border: 0;
    cursor: pointer;
    display: flex;
    height: 46px;
    justify-content: center;
    padding: 0;
    position: absolute;
    right: 4px;
    top: 0 !important;
    bottom: auto !important;
    transform: none !important;
    width: 48px;
  }

  #header .header-top .search-widgets .audrey-search-submit .material-icons.search {
    color: #36543f;
    font-size: 24px;
    left: 50%;
    line-height: 1;
    margin-top: -8px;
    position: absolute !important;
    right: auto !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
  }

  #header .header-top .search-widgets .clear {
    display: none !important;
  }
}

/* Bandeau de réassurance placé sous le slider de la page d'accueil. */
#wrapper > .container {
  max-width: none;
  width: 100%;
}

/* Hero de la page d'accueil, placé juste sous le menu. */
.audrey-home-hero {
  background: #fffdf8 url('../img/audrey/homepage-hero.webp') no-repeat right center / cover;
  border: 1px solid #36543f;
  box-shadow: inset 0 0 0 4px #fffdf8, inset 0 0 0 5px #9aa58f;
  min-height: 390px;
  overflow: hidden;
  padding: 36px 5.5%;
  position: relative;
}

.audrey-home-hero__content {
  max-width: 52%;
  position: relative;
  z-index: 1;
}

.audrey-home-hero h1 {
  color: #252820;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(38px, 4.1vw, 68px);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 0.92;
  margin: 0;
}

.audrey-home-hero h1 span {
  color: #36543f;
  display: block;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 0.76em;
  font-style: italic;
  font-weight: 500;
  letter-spacing: 0;
  margin: 9px 0 0 13px;
}

.audrey-home-hero h1 b {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 0.72em;
  font-style: normal;
  font-weight: 400;
}

.audrey-home-hero__ornament {
  align-items: center;
  color: #b97920;
  display: flex;
  font-family: Georgia, serif;
  font-size: 31px;
  gap: 12px;
  line-height: 1;
  margin: 20px 0;
}

.audrey-home-hero__ornament::before,
.audrey-home-hero__ornament::after {
  background: #b97920;
  content: '';
  height: 1px;
  max-width: 230px;
  width: 38%;
}

.audrey-home-hero__content > p {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 16px;
  line-height: 1.35;
  margin: 0;
  max-width: 500px;
}

.audrey-home-hero__cta {
  background: #36543f;
  border: 2px solid #b97920;
  border-radius: 5px;
  box-shadow: inset 0 0 0 1px #fffdf8;
  color: #fffdf8 !important;
  display: inline-block;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-top: 22px;
  padding: 13px 23px;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.audrey-home-hero__cta:hover,
.audrey-home-hero__cta:focus {
  background: #b97920;
  border-color: #36543f;
  color: #fffdf8 !important;
  text-decoration: none;
}

.audrey-home-hero__benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 30px;
  list-style: none;
  margin: 28px 0 0;
  padding: 0;
}

.audrey-home-hero__benefits li {
  align-items: center;
  color: #36543f;
  display: flex;
  font-family: Georgia, serif;
  font-size: 12px;
  gap: 7px;
}

.audrey-home-hero__benefits .material-icons {
  color: #b97920;
  font-size: 23px;
}

/* Bandeau de catégorie principale. */
#wrapper .breadcrumb {
  background: transparent;
  border: 0;
  margin: 0;
  padding: 18px clamp(16px, 4vw, 72px) 14px;
}

#wrapper .breadcrumb ol {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

#wrapper .breadcrumb li {
  align-items: center;
  color: #52584c;
  display: flex;
  font-family: Georgia, serif;
  font-size: 13px;
  line-height: 1.3;
}

#wrapper .breadcrumb li::after {
  color: #d8b77a;
  content: '/';
  font-size: 16px;
  margin: 0 15px;
}

#wrapper .breadcrumb li:last-child::after {
  display: none;
}

#wrapper .breadcrumb li a {
  color: #36543f;
  text-decoration: none;
}

#wrapper .breadcrumb li a:hover,
#wrapper .breadcrumb li a:focus {
  color: #b97920;
  text-decoration: none;
}

#wrapper .breadcrumb li:last-child > span {
  color: #52584c;
}

#js-product-list-header .audrey-category-header {
  background: #faf7ef;
  border: 0;
  box-shadow: none;
  margin: 0 0 28px;
  padding: 14px 28px;
}

#js-product-list-header .audrey-category-header .audrey-category-header__content > .h1 {
  color: #252820;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(35px, 3.25vw, 48px);
  font-weight: 400 !important;
  letter-spacing: -0.015em;
  line-height: 1;
  margin: 0 0 5px;
}

#js-product-list-header .audrey-category-header .block-category-inner {
  align-items: start;
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 40%);
}

#js-product-list-header .audrey-category-header #category-description {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.42;
  margin: 0;
  max-width: 530px;
  padding-top: 0;
}

#js-product-list-header .audrey-category-header #category-description p {
  color: #252820;
  font-family: Georgia, serif;
  font-size: inherit;
  font-weight: 400 !important;
  line-height: inherit;
  margin: 0 0 7px;
}

/* À ajouter dans la description de la catégorie :
 * <p class="audrey-category-tagline">Des attentions uniques, du cœur à offrir ♡</p> */
#js-product-list-header .audrey-category-header .audrey-category-tagline {
  color: #36543f !important;
  font-family: 'Segoe Script', 'Brush Script MT', cursive !important;
  font-size: clamp(24px, 2.25vw, 34px) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1.12 !important;
  margin: 0 0 16px !important;
}

#js-product-list-header .audrey-category-header .audrey-category-tagline::first-letter {
  letter-spacing: 0.02em;
}

#js-product-list-header .audrey-category-header .category-cover {
  background: transparent;
  line-height: 0;
  margin: 0;
  overflow: hidden;
  padding: 4px;
  justify-self: end;
  max-width: 100%;
  width: 100%;
}

#js-product-list-header .audrey-category-header .category-cover img {
  display: block;
  width: 100%;
}

#js-product-list-header .audrey-category-header .category-cover img {
  height: auto;
  object-fit: contain;
}

#js-product-list-header .audrey-category-header--filtered {
  background: transparent;
  margin: 0 0 14px;
  min-height: 0;
  padding: 0;
}

#js-product-list-header .audrey-category-header--filtered .block-category-inner {
  display: block;
}

#js-product-list-header .audrey-category-header--filtered .audrey-category-header__content > .h1 {
  font-size: clamp(29px, 3vw, 40px);
  margin: 0;
}

/* Catégorie racine : le titre seul ne doit pas réserver l'espace d'un bandeau. */
body.category-id-2 #js-product-list-header .block-category,
body.category-id-7 #js-product-list-header .block-category {
  margin-bottom: 0;
  min-height: 0;
}

@media (max-width: 991px) {
  #js-product-list-header .audrey-category-header {
    padding: 20px;
  }

  #js-product-list-header .audrey-category-header .block-category-inner {
    gap: 21px;
    grid-template-columns: 1fr;
  }

  #js-product-list-header .audrey-category-header .category-cover {
    grid-row: 1;
    justify-self: stretch;
  }

  #js-product-list-header .audrey-category-header #category-description {
    font-size: 15px;
  }
}

/* Sous-catégories : titre ornementé et cartes inspirées de la page d'accueil. */
#category #subcategories {
  background: transparent;
  border: 0;
  box-shadow: none;
  margin: 0 0 36px;
  padding: 8px 0 0;
}

#category #subcategories .subcategory-heading {
  align-items: center;
  color: #252820;
  display: flex;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(26px, 2.35vw, 34px);
  font-weight: 400 !important;
  gap: 10px;
  justify-content: center;
  line-height: 1;
  margin: 0 0 20px;
  text-align: center;
  text-transform: none;
}

#category #subcategories .subcategory-heading__line {
  background: #d8b77a;
  display: block;
  flex: 1 1 130px;
  height: 1px;
  max-width: 325px;
}

#category #subcategories .subcategory-heading__flourish {
  background: url('../img/audrey/title-arabesque.png') center / contain no-repeat;
  display: block;
  flex: 0 0 118px;
  height: 38px;
}

#category #subcategories .subcategory-heading__flourish--right {
  transform: scaleX(-1);
}

#category #subcategories .subcategory-heading__text {
  white-space: nowrap;
}

#category #subcategories .subcategories-list {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

#category #subcategories .subcategories-list > li {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  box-shadow: inset 0 0 0 3px #fffdf8;
  float: none !important;
  margin: 0 !important;
  min-width: 0 !important;
  padding: 5px;
  position: relative;
  text-align: center;
  width: 100% !important;
}

#category #subcategories .subcategories-list > li::after {
  color: #36543f;
  content: '♡';
  display: block;
  font-family: Georgia, serif;
  font-size: 21px;
  line-height: 1;
  margin: 2px 0 3px;
}

#category #subcategories .subcategory-card {
  color: inherit;
  display: block;
  text-decoration: none;
}

/* Étend le lien à toute la carte, y compris sous le titre et le cœur. */
#category #subcategories .subcategory-card::after {
  content: '';
  inset: 0;
  position: absolute;
  z-index: 1;
}

#category #subcategories .subcategory-image {
  aspect-ratio: 1 / .87;
  background: #f3eadb;
  margin: 0;
  overflow: hidden;
}

/* Packaging : navigation par intitulés, sans visuels de sous-catégories. */
body.category-id-65 #subcategories .subcategory-image {
  display: none;
}

#category #subcategories .subcategory-image .img,
#category #subcategories .subcategory-image picture,
#category #subcategories .subcategory-image img {
  display: block;
  height: 100%;
  width: 100%;
}

#category #subcategories .subcategory-image .img,
#category #subcategories .subcategories-list > li:hover .subcategory-image .img {
  border: 0 !important;
  padding: 0 !important;
}

#category #subcategories .subcategory-image img {
  object-fit: cover;
  transition: transform .25s ease;
}

#category #subcategories .subcategories-list > li:hover .subcategory-image img {
  transform: scale(1.04);
}

#category #subcategories h5 {
  font-family: Georgia, serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.2;
  margin: 11px 5px 0;
  min-height: 36px;
}

#category #subcategories .subcategory-name {
  color: #252820;
  text-decoration: none;
  text-transform: none;
}

#category #subcategories .subcategory-name:hover,
#category #subcategories .subcategory-name:focus {
  color: #b97920;
  text-decoration: none;
}

#category #subcategories .subcategories-list > li:hover .subcategory-name,
#category #subcategories .subcategories-list > li:focus-within .subcategory-name {
  color: #b97920;
}

#category #subcategories .cat_desc {
  display: none;
}

/* Filtres de catégorie : panneau replié, ouvert à la demande. */
.audrey-category-filter-toggle {
  align-items: center;
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  color: #36543f;
  cursor: pointer;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 14px;
  gap: 8px;
  line-height: 1;
  margin: 0 0 0 16px;
  padding: 8px 10px;
}

.audrey-category-filter-toggle:hover,
.audrey-category-filter-toggle:focus {
  border-color: #b97920;
  color: #b97920;
  outline: none;
}

.audrey-category-filter-toggle .material-icons {
  font-size: 18px;
  transition: transform .2s ease;
}

.audrey-category-filter-toggle[aria-expanded='true'] .material-icons {
  transform: rotate(180deg);
}

@media (min-width: 768px) {
  #category #left-column,
  #category .left-column:not(#content-wrapper) {
    display: none;
  }

  #category #content-wrapper {
    flex: 0 0 100%;
    max-width: 100%;
    transition: max-width .28s ease, width .28s ease, flex-basis .28s ease;
    width: 100%;
  }

  #category .total-products {
    align-items: center;
    display: flex;
  }

  #category .total-products p {
    margin: 0;
  }

  #category.audrey-category-filters-open .audrey-category-listing-layout,
  #category.audrey-category-filters-closing .audrey-category-listing-layout {
    align-items: flex-start;
    display: flex;
    gap: 0;
    width: 100%;
  }

  #category.audrey-category-filters-open .audrey-category-listing-layout #left-column,
  #category.audrey-category-filters-open .audrey-category-listing-layout .left-column:not(#content-wrapper),
  #category.audrey-category-filters-closing .audrey-category-listing-layout #left-column,
  #category.audrey-category-filters-closing .audrey-category-listing-layout .left-column:not(#content-wrapper) {
    animation: audrey-filter-column-in .36s cubic-bezier(.22, .61, .36, 1) both;
    display: block !important;
    flex: 0 0 25%;
    float: none !important;
    max-width: 25%;
    padding-right: 22px;
    padding-left: 15px;
    transition: flex-basis .36s ease, max-width .36s ease, opacity .25s ease, padding .36s ease, transform .3s ease, width .36s ease;
    width: 25%;
  }

  #category.audrey-category-filters-open .audrey-category-listing-layout #products,
  #category.audrey-category-filters-closing .audrey-category-listing-layout #products {
    flex: 0 0 75%;
    max-width: 75%;
    min-width: 0;
    transition: flex-basis .36s ease, max-width .36s ease, width .36s ease;
    width: 75%;
  }

  #category.audrey-category-filters-closing .audrey-category-listing-layout #left-column,
  #category.audrey-category-filters-closing .audrey-category-listing-layout .left-column:not(#content-wrapper) {
    flex-basis: 0;
    max-width: 0;
    opacity: 0;
    overflow: hidden;
    padding-left: 0;
    padding-right: 0;
    transform: translateX(-12px);
    width: 0;
  }

  #category.audrey-category-filters-closing .audrey-category-listing-layout #products {
    flex-basis: 100%;
    max-width: 100%;
    width: 100%;
  }

  #category #left-column #search_filters_wrapper,
  #category .left-column:not(#content-wrapper) #search_filters_wrapper {
    background: #faf7ef;
    border: 1px solid #36543f;
    box-shadow: none;
    margin: 0;
    padding: 16px 20px;
  }

  #category #left-column .block-categories .navbar-toggler:hover .material-icons.add,
  #category #left-column .block-categories .navbar-toggler:focus .material-icons.add,
  #category .left-column:not(#content-wrapper) .block-categories .navbar-toggler:hover .material-icons.add,
  #category .left-column:not(#content-wrapper) .block-categories .navbar-toggler:focus .material-icons.add {
    color: #c78924;
  }
}

@keyframes audrey-filter-column-in {
  from {
    opacity: 0;
    transform: translateX(-12px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Listes Nouveaux produits et Promotions : même comportement que les catégories. */
@media (min-width: 768px) {
  #new-products #left-column,
  #prices-drop #left-column,
  #new-products .left-column:not(#content-wrapper),
  #prices-drop .left-column:not(#content-wrapper) {
    display: none;
  }

  #new-products #content-wrapper,
  #prices-drop #content-wrapper {
    flex: 0 0 100%;
    max-width: 100%;
    transition: max-width .28s ease, width .28s ease, flex-basis .28s ease;
    width: 100%;
  }

  #new-products .total-products,
  #prices-drop .total-products {
    align-items: center;
    display: flex;
  }

  #new-products .total-products p,
  #prices-drop .total-products p {
    margin: 0;
  }

  #new-products.audrey-category-filters-open .audrey-category-listing-layout,
  #new-products.audrey-category-filters-closing .audrey-category-listing-layout,
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout,
  #prices-drop.audrey-category-filters-closing .audrey-category-listing-layout {
    align-items: flex-start;
    display: flex;
    width: 100%;
  }

  #new-products.audrey-category-filters-open .audrey-category-listing-layout #left-column,
  #new-products.audrey-category-filters-closing .audrey-category-listing-layout #left-column,
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout #left-column,
  #prices-drop.audrey-category-filters-closing .audrey-category-listing-layout #left-column {
    animation: audrey-filter-column-in .36s cubic-bezier(.22, .61, .36, 1) both;
    display: block !important;
    flex: 0 0 25%;
    float: none !important;
    max-width: 25%;
    padding-left: 15px;
    padding-right: 22px;
    transition: flex-basis .36s ease, max-width .36s ease, opacity .25s ease, padding .36s ease, transform .3s ease, width .36s ease;
    width: 25%;
  }

  #new-products.audrey-category-filters-open .audrey-category-listing-layout #products,
  #new-products.audrey-category-filters-closing .audrey-category-listing-layout #products,
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout #products,
  #prices-drop.audrey-category-filters-closing .audrey-category-listing-layout #products {
    flex: 0 0 75%;
    max-width: 75%;
    min-width: 0;
    transition: flex-basis .36s ease, max-width .36s ease, width .36s ease;
    width: 75%;
  }

  #new-products.audrey-category-filters-closing .audrey-category-listing-layout #left-column,
  #prices-drop.audrey-category-filters-closing .audrey-category-listing-layout #left-column {
    flex-basis: 0;
    max-width: 0;
    opacity: 0;
    overflow: hidden;
    padding-left: 0;
    padding-right: 0;
    transform: translateX(-12px);
    width: 0;
  }

  #new-products.audrey-category-filters-closing .audrey-category-listing-layout #products,
  #prices-drop.audrey-category-filters-closing .audrey-category-listing-layout #products {
    flex-basis: 100%;
    max-width: 100%;
    width: 100%;
  }
}

#new-products #left-column .block-categories,
#prices-drop #left-column .block-categories {
  background: #faf7ef;
  border: 1px solid #36543f;
  font-family: Georgia, serif;
  margin: 0 0 14px;
  padding: 18px 20px;
}

#new-products #left-column .block-categories a,
#prices-drop #left-column .block-categories a,
#new-products #left-column .block-categories .arrows,
#prices-drop #left-column .block-categories .arrows,
#new-products #left-column .block-categories .navbar-toggler,
#prices-drop #left-column .block-categories .navbar-toggler {
  color: #36543f;
  text-decoration: none;
  transition: color .2s ease;
}

#new-products #left-column .block-categories li:hover > a,
#new-products #left-column .block-categories li:hover > .arrows,
#new-products #left-column .block-categories li:hover > .navbar-toggler,
#prices-drop #left-column .block-categories li:hover > a,
#prices-drop #left-column .block-categories li:hover > .arrows,
#prices-drop #left-column .block-categories li:hover > .navbar-toggler {
  color: #c78924;
}

/* Tri et pagination des listes éditoriales. */
#new-products .products-selection .sort-by-row,
#prices-drop .products-selection .sort-by-row {
  align-items: center;
  justify-content: flex-end;
  margin-right: 0;
  padding-right: 14px;
}

#new-products .products-selection .sort-by,
#prices-drop .products-selection .sort-by {
  color: #52584c;
  flex: 0 0 auto;
  font-family: Georgia, serif;
  font-size: 14px;
  max-width: none;
  padding: 0 10px 0 0;
  width: auto;
}

#new-products .products-selection .products-sort-order,
#prices-drop .products-selection .products-sort-order {
  flex: 0 0 auto;
  max-width: none;
  padding: 0;
  width: auto;
}

#new-products .products-selection .products-sort-order .select-title,
#prices-drop .products-selection .products-sort-order .select-title {
  align-items: center;
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  color: #36543f;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 14px;
  gap: 14px;
  line-height: 1.15;
  min-width: 190px;
  padding: 8px 10px 8px 12px;
  text-align: left;
}

#new-products .products-selection .products-sort-order .select-title:hover,
#new-products .products-selection .products-sort-order .select-title:focus,
#new-products .products-selection .products-sort-order.show .select-title,
#prices-drop .products-selection .products-sort-order .select-title:hover,
#prices-drop .products-selection .products-sort-order .select-title:focus,
#prices-drop .products-selection .products-sort-order.show .select-title {
  border-color: #b97920;
  color: #b97920;
  outline: none;
}

#new-products .products-selection .products-sort-order .dropdown-menu,
#prices-drop .products-selection .products-sort-order .dropdown-menu {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  box-shadow: 0 6px 15px rgba(54, 84, 63, .14);
  margin-top: 5px;
  min-width: 100%;
  padding: 4px 0;
}

#new-products .products-selection .products-sort-order .dropdown-menu .select-list,
#prices-drop .products-selection .products-sort-order .dropdown-menu .select-list {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 14px;
  padding: 8px 12px;
}

#new-products .products-selection .products-sort-order .dropdown-menu .select-list:hover,
#new-products .products-selection .products-sort-order .dropdown-menu .select-list:focus,
#new-products .products-selection .products-sort-order .dropdown-menu .select-list.current,
#prices-drop .products-selection .products-sort-order .dropdown-menu .select-list:hover,
#prices-drop .products-selection .products-sort-order .dropdown-menu .select-list:focus,
#prices-drop .products-selection .products-sort-order .dropdown-menu .select-list.current {
  background: #f5ead7;
  color: #b97920;
  text-decoration: none;
}

#new-products #products,
#new-products #js-product-list,
#new-products #js-product-list .pagination,
#prices-drop #products,
#prices-drop #js-product-list,
#prices-drop #js-product-list .pagination {
  background-color: #faf7ef;
}

#new-products #js-product-list .pagination,
#prices-drop #js-product-list .pagination {
  align-items: center;
  background: transparent;
  border: 0;
  display: flex;
  flex-direction: column;
  font-family: Georgia, serif;
  gap: 9px;
  justify-content: center;
  margin: 28px 0 10px;
  padding: 0;
}

#new-products #js-product-list .pagination > div,
#prices-drop #js-product-list .pagination > div {
  flex: 0 0 auto;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none;
  padding: 0;
  text-align: center;
  width: auto;
}

#new-products #js-product-list .pagination .page-list,
#prices-drop #js-product-list .pagination .page-list {
  align-items: center;
  background-color: #faf7ef !important;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
  margin: 0;
  padding: 0;
}

#new-products #js-product-list .pagination .page-list li,
#prices-drop #js-product-list .pagination .page-list li {
  margin: 0;
}

#new-products #js-product-list .pagination .page-list a,
#prices-drop #js-product-list .pagination .page-list a {
  align-items: center;
  background: #faf7ef;
  border: 1px solid #e5d3ae;
  border-radius: 3px;
  color: #36543f;
  display: inline-flex;
  font-size: 13px;
  height: 25px;
  justify-content: center;
  line-height: 1;
  min-width: 25px;
  padding: 3px 6px;
  text-decoration: none;
}

#new-products #js-product-list .pagination .page-list li.current a,
#prices-drop #js-product-list .pagination .page-list li.current a {
  background: #36543f !important;
  border-color: #36543f !important;
  color: #fffdf8 !important;
}

#new-products #js-product-list .pagination .page-list a:hover,
#new-products #js-product-list .pagination .page-list a:focus,
#prices-drop #js-product-list .pagination .page-list a:hover,
#prices-drop #js-product-list .pagination .page-list a:focus {
  background: #f5ead7;
  border-color: #b97920;
  color: #b97920;
  outline: none;
  text-decoration: none;
}

@media (max-width: 767px) {
  #new-products .products-selection .sort-by-row,
  #prices-drop .products-selection .sort-by-row {
    justify-content: space-between;
  }

  #new-products .products-selection .products-sort-order,
  #prices-drop .products-selection .products-sort-order {
    flex: 1 1 auto;
    max-width: 100%;
    width: auto;
  }

  #new-products .products-selection .products-sort-order .select-title,
  #prices-drop .products-selection .products-sort-order .select-title {
    justify-content: space-between;
    min-width: 0;
    width: 100%;
  }
}

/* Liste d'envies : même fond doré que les actions de partage au survol. */
body#product .wishlist-button-add:hover,
body#product .wishlist-button-add:focus,
body .products .wishlist-button-add:hover,
body .products .wishlist-button-add:focus,
body #products .wishlist-button-add:hover,
body #products .wishlist-button-add:focus,
body .featured-products .wishlist-button-add:hover,
body .featured-products .wishlist-button-add:focus {
  background: #c78924 !important;
  border-color: #c78924 !important;
  color: #fffdf8 !important;
}

body#product .wishlist-button-add:hover .material-icons,
body#product .wishlist-button-add:focus .material-icons,
body .products .wishlist-button-add:hover .material-icons,
body .products .wishlist-button-add:focus .material-icons,
body #products .wishlist-button-add:hover .material-icons,
body #products .wishlist-button-add:focus .material-icons,
body .featured-products .wishlist-button-add:hover .material-icons,
body .featured-products .wishlist-button-add:focus .material-icons,
body#product .wishlist-button-add:hover i,
body#product .wishlist-button-add:focus i,
body .products .wishlist-button-add:hover i,
body .products .wishlist-button-add:focus i,
body #products .wishlist-button-add:hover i,
body #products .wishlist-button-add:focus i,
body .featured-products .wishlist-button-add:hover i,
body .featured-products .wishlist-button-add:focus i {
  color: #fffdf8 !important;
}

/* Avis Google choisis manuellement pour l’accueil : ils restent indépendants
 * de toute API ou fiche Google publique. */
.audrey-static-reviews {
  background: #f2ebdd;
  border-bottom: 1px solid #36543f;
  border-top: 1px solid #36543f;
  margin: 54px 0 0;
  padding: 52px max(24px, calc((100% - 1280px) / 2));
}

.audrey-static-reviews__heading {
  margin: 0 auto 30px;
  max-width: 620px;
  text-align: center;
}

.audrey-static-reviews__eyebrow {
  color: #b97920;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .12em;
  margin: 0 0 5px;
  text-transform: uppercase;
}

.audrey-static-reviews h2 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(30px, 3vw, 38px);
  font-weight: 600;
  line-height: 1.1;
  margin: 0;
}

.audrey-static-reviews__heading > p:last-child {
  color: #52584c;
  font-family: Lora, Georgia, serif;
  font-size: 15px;
  margin: 10px 0 0;
}

.audrey-static-reviews__list {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.audrey-static-review {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 25px 24px 22px;
}

.audrey-static-review__stars {
  color: #b97920;
  font-size: 17px;
  letter-spacing: 2px;
}

.audrey-static-review__stars span {
  color: #d8c9ad;
}

.audrey-static-review blockquote {
  color: #252820;
  font-family: Lora, Georgia, serif;
  font-size: 15px;
  line-height: 1.65;
  margin: 17px 0 22px;
}

.audrey-static-review__author {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 17px;
  font-weight: 700;
  margin: auto 0 0;
}

.audrey-static-review__author span {
  color: #667558;
  font-size: 14px;
  font-weight: 600;
}

.audrey-static-reviews__link {
  color: #36543f;
  display: table;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 18px;
  font-weight: 700;
  margin: 28px auto 0;
  text-decoration: none;
}

.audrey-static-reviews__link:hover,
.audrey-static-reviews__link:focus-visible {
  color: #b97920;
}

@media (max-width: 767px) {
  .audrey-static-reviews {
    margin-top: 38px;
    padding: 38px 16px;
  }

  .audrey-static-reviews__list {
    grid-template-columns: 1fr;
  }
}

.audrey-reviews-page {
  margin: 0 auto;
  max-width: 1100px;
}

.audrey-reviews-page__intro {
  margin: 0 auto 34px;
  max-width: 680px;
  text-align: center;
}

.audrey-reviews-page__intro h2 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(30px, 4vw, 44px);
  font-weight: 600;
}

.audrey-reviews-page__intro p {
  color: #52584c;
  font-family: Lora, Georgia, serif;
}

.audrey-reviews-page .audrey-static-reviews__list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 767px) {
  .audrey-reviews-page .audrey-static-reviews__list {
    grid-template-columns: 1fr;
  }
}

/* Grilles catalogue mobile : deux créations par rangée sur toutes les listes,
 * sans modifier les carrousels de la page d'accueil ni les accessoires produit. */
@media (max-width: 767px) {
  body:not(#product) #products .products.row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -6px;
    margin-right: -6px;
  }

  body:not(#product) #products .products.row > .js-product,
  body:not(#product) #products .products.row > .product {
    flex: 0 0 50% !important;
    float: none !important;
    max-width: 50% !important;
    min-width: 0;
    padding-left: 6px !important;
    padding-right: 6px !important;
    width: 50% !important;
  }
}

/* Choix de livraison mobile : les grilles Bootstrap ne doivent pas conserver
 * leurs largeurs et marges de bureau à l'intérieur des cartes. */
@media (max-width: 767px) {
  body#checkout .delivery-option {
    box-sizing: border-box;
    overflow: hidden;
  }

  body#checkout .delivery-option > .col-sm-1 {
    box-sizing: border-box;
    float: none !important;
    margin: 0 !important;
    width: 100% !important;
  }

  body#checkout .delivery-option .custom-radio {
    float: none !important;
  }

  body#checkout .delivery-option .delivery-option-2 {
    box-sizing: border-box;
    float: none !important;
    margin: 0 !important;
    max-width: 100% !important;
    padding: 8px 0 0 !important;
    width: 100% !important;
  }

  body#checkout .delivery-option .delivery-option-2 > .row,
  body#checkout .delivery-option .delivery-option-2 .carrier {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
  }

  body#checkout .delivery-option .delivery-option-2 > .row > [class*='col-'] {
    box-sizing: border-box;
    float: none !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
  }

  body#checkout .delivery-option .carrier {
    align-items: center;
    display: flex !important;
    gap: 10px;
  }

  body#checkout .delivery-option .carrier-logo {
    flex: 0 0 58px;
    padding: 0 !important;
    width: 58px !important;
  }

  body#checkout .delivery-option .carriere-name-container {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0 !important;
    width: auto !important;
  }
}

/* Mon compte bureau : le contenu occupe la hauteur de chaque carte. */
@media (min-width: 768px) {
  #my-account .audrey-my-account__links > a {
    align-items: stretch;
    display: flex !important;
    height: 130px;
    min-height: 130px;
  }

  #my-account .audrey-my-account__links > a .link-item {
    flex: 1 1 auto;
    height: 100% !important;
  }
}

/* Facettes catalogue. */
#category #search_filters {
  background: #faf7ef;
  color: #36543f;
  font-family: Georgia, serif;
}

#category #search_filters > .h6 {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: .03em;
  margin: 0 0 12px;
  padding-bottom: 10px;
  text-transform: uppercase;
}

#category #search_filters .facet {
  border-top: 1px solid #9aa58f;
  margin: 0;
  padding: 14px 0;
}

#category #search_filters .facet:last-child {
  border-bottom: 1px solid #9aa58f;
}

#category #search_filters .facet .facet-title {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 9px;
  text-transform: none;
}

#category #search_filters .facet ul {
  margin: 0;
}

#category #search_filters .facet li {
  margin: 0;
  padding: 4px 0;
}

#category #search_filters .facet .facet-label {
  align-items: center;
  color: #52584c;
  cursor: pointer;
  display: flex;
  font-family: Georgia, serif;
  font-size: 14px;
  gap: 7px;
  line-height: 1.35;
  margin: 0;
  transition: color .2s ease;
}

#category #search_filters .facet .facet-label input {
  accent-color: #c78924;
  flex: 0 0 auto;
}

#category #search_filters .facet .facet-label a {
  color: inherit;
  text-decoration: none;
}

#category #search_filters .facet .facet-label:hover,
#category #search_filters .facet .facet-label:focus-within,
#category #search_filters .facet .facet-label.active,
#category #search_filters .facet .facet-label:hover a,
#category #search_filters .facet .facet-label:focus-within a,
#category #search_filters .facet .facet-label.active a {
  color: #c78924;
}

#category #search_filters .facet .facet-label .magnitude {
  color: #806f54;
  font-size: 12px;
}

#category #search_filters .custom-checkbox,
#category #search_filters .custom-radio {
  flex: 0 0 auto;
  margin: 0;
}

#category #search_filters .custom-checkbox input,
#category #search_filters .custom-radio input {
  cursor: pointer;
}

#category #search_filters .facet-dropdown {
  padding: 0;
}

#category #search_filters .facet-dropdown .select-title {
  align-items: center;
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  color: #36543f;
  display: flex;
  font-family: Georgia, serif;
  font-size: 13px;
  justify-content: space-between;
  padding: 8px 10px;
  text-decoration: none;
}

#category #search_filters .facet-dropdown .select-title:hover,
#category #search_filters .facet-dropdown .select-title:focus {
  border-color: #c78924;
  color: #c78924;
}

#category #search_filters .facet-dropdown .dropdown-menu {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  box-shadow: 0 6px 15px rgba(54, 84, 63, .14);
  min-width: 100%;
  padding: 4px 0;
}

#category #search_filters .facet-dropdown .select-list {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 13px;
  padding: 8px 10px;
}

#category #search_filters .facet-dropdown .select-list:hover,
#category #search_filters .facet-dropdown .select-list:focus {
  background: #f5ead7;
  color: #c78924;
  text-decoration: none;
}

#category #search_filters .clear-all-wrapper {
  margin: -5px 0 13px;
}

#category #search_filters .js-search-filters-clear-all {
  background: transparent;
  border: 0;
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 12px;
  padding: 0;
  text-decoration: underline;
}

#category #search_filters .js-search-filters-clear-all:hover,
#category #search_filters .js-search-filters-clear-all:focus {
  color: #c78924;
}

/* Arborescence des catégories dans le panneau de filtres. */
#category #left-column .block-categories,
#category .left-column:not(#content-wrapper) .block-categories {
  background: #faf7ef;
  border: 1px solid #36543f;
  font-family: Georgia, serif;
  margin: 0 0 14px;
  padding: 18px 20px;
}

#category #left-column .block-categories ul,
#category .left-column:not(#content-wrapper) .block-categories ul {
  margin: 0;
}

#category #left-column .block-categories .category-top-menu > li > a,
#category .left-column:not(#content-wrapper) .block-categories .category-top-menu > li > a {
  color: #36543f;
  display: block;
  font-family: Georgia, serif;
  font-size: 17px;
  font-weight: 600;
  margin-bottom: 15px;
  text-decoration: none;
}

#category #left-column .block-categories .category-sub-menu li,
#category .left-column:not(#content-wrapper) .block-categories .category-sub-menu li {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 5px 0;
}

#category #left-column .block-categories .category-sub-menu li > a,
#category .left-column:not(#content-wrapper) .block-categories .category-sub-menu li > a {
  color: #36543f;
  flex: 0 1 auto;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.35;
  text-decoration: none;
  transition: color .2s ease;
}

#category #left-column .block-categories .category-sub-menu li > .arrows,
#category .left-column:not(#content-wrapper) .block-categories .category-sub-menu li > .arrows,
#category #left-column .block-categories .category-sub-menu li > .navbar-toggler,
#category .left-column:not(#content-wrapper) .block-categories .category-sub-menu li > .navbar-toggler {
  align-items: center;
  color: #36543f;
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  margin-left: 4px;
  transition: color .2s ease;
}

#category #left-column .block-categories .category-sub-menu li > .arrows .material-icons,
#category .left-column:not(#content-wrapper) .block-categories .category-sub-menu li > .arrows .material-icons,
#category #left-column .block-categories .category-sub-menu li > .navbar-toggler .material-icons,
#category .left-column:not(#content-wrapper) .block-categories .category-sub-menu li > .navbar-toggler .material-icons {
  color: inherit;
  font-size: 18px;
}

#category #left-column .block-categories .category-sub-menu li > .collapse,
#category .left-column:not(#content-wrapper) .block-categories .category-sub-menu li > .collapse {
  flex: 0 0 100%;
  width: 100%;
}

#category #left-column .block-categories .category-sub-menu li:hover > a,
#category #left-column .block-categories .category-sub-menu li:hover > .arrows,
#category #left-column .block-categories .category-sub-menu li:hover > .navbar-toggler,
#category .left-column:not(#content-wrapper) .block-categories .category-sub-menu li:hover > a,
#category .left-column:not(#content-wrapper) .block-categories .category-sub-menu li:hover > .arrows,
#category .left-column:not(#content-wrapper) .block-categories .category-sub-menu li:hover > .navbar-toggler {
  color: #c78924;
}

/* Tri des produits. */
#category .products-selection .sort-by-row {
  align-items: center;
  justify-content: flex-end;
  margin-right: 0;
  padding-right: 14px;
}

#category .products-selection .sort-by {
  color: #52584c;
  flex: 0 0 auto;
  font-family: Georgia, serif;
  font-size: 14px;
  max-width: none;
  padding: 0 10px 0 0;
  width: auto;
}

#category .products-selection .products-sort-order {
  flex: 0 0 auto;
  max-width: none;
  padding: 0;
  width: auto;
}

#category .products-selection .products-sort-order .select-title {
  align-items: center;
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  color: #36543f;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 14px;
  gap: 14px;
  line-height: 1.15;
  min-width: 190px;
  padding: 8px 10px 8px 12px;
  text-align: left;
}

#category .products-selection .products-sort-order .select-title:hover,
#category .products-selection .products-sort-order .select-title:focus,
#category .products-selection .products-sort-order.show .select-title {
  border-color: #b97920;
  color: #b97920;
  outline: none;
}

#category .products-selection .products-sort-order .select-title .material-icons {
  color: #36543f;
  font-size: 19px;
  margin-left: auto;
}

#category .products-selection .products-sort-order .select-title:hover .material-icons,
#category .products-selection .products-sort-order .select-title:focus .material-icons,
#category .products-selection .products-sort-order.show .select-title .material-icons {
  color: #b97920;
}

#category .products-selection .products-sort-order .dropdown-menu {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  box-shadow: 0 6px 15px rgba(54, 84, 63, .14);
  margin-top: 5px;
  min-width: 100%;
  padding: 4px 0;
}

#category .products-selection .products-sort-order .dropdown-menu .select-list {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 14px;
  padding: 8px 12px;
}

#category .products-selection .products-sort-order .dropdown-menu .select-list:hover,
#category .products-selection .products-sort-order .dropdown-menu .select-list:focus,
#category .products-selection .products-sort-order .dropdown-menu .select-list.current {
  background: #f5ead7;
  color: #b97920;
  text-decoration: none;
}

@media (max-width: 767px) {
  #category .products-selection .sort-by-row {
    justify-content: space-between;
  }

  #category .products-selection .products-sort-order {
    flex: 1 1 auto;
    max-width: 100%;
    width: auto;
  }

  #category .products-selection .products-sort-order .select-title {
    justify-content: space-between;
    min-width: 0;
    width: 100%;
  }
}

/* Pagination catalogue. */
#category #products,
#category #js-product-list,
#category #js-product-list .pagination {
  background-color: #faf7ef;
}

#category #js-product-list .pagination {
  align-items: center;
  background: transparent;
  border: 0;
  display: flex;
  flex-direction: column;
  font-family: Georgia, serif;
  gap: 9px;
  justify-content: center;
  margin: 28px 0 10px;
  padding: 0;
}

#category #js-product-list .pagination > div {
  flex: 0 0 auto;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none;
  padding: 0;
  text-align: center;
  width: auto;
}

#category #js-product-list .pagination .page-list {
  align-items: center;
  background-color: #faf7ef !important;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
  margin: 0;
  padding: 0;
}

#category #js-product-list .pagination .page-list li {
  margin: 0;
}

#category #js-product-list .pagination .page-list a {
  align-items: center;
  background: #faf7ef;
  border: 1px solid #e5d3ae;
  border-radius: 3px;
  color: #36543f;
  display: inline-flex;
  font-size: 13px;
  height: 25px;
  justify-content: center;
  line-height: 1;
  min-width: 25px;
  padding: 3px 6px;
  text-decoration: none;
}

#category #js-product-list .pagination .page-list li.current a {
  background: #36543f !important;
  border-color: #36543f !important;
  color: #fffdf8 !important;
}

#category #js-product-list .pagination .page-list a:hover,
#category #js-product-list .pagination .page-list a:focus {
  background: #f5ead7;
  border-color: #b97920;
  color: #b97920;
  outline: none;
  text-decoration: none;
}

#category #js-product-list .pagination .page-list li.current a:hover,
#category #js-product-list .pagination .page-list li.current a:focus {
  background: #b97920;
  border-color: #b97920;
  color: #fffdf8;
}

#category #js-product-list .pagination .page-list .previous,
#category #js-product-list .pagination .page-list .next {
  font-size: 0;
  width: 28px;
}

#category #js-product-list .pagination .page-list .previous .material-icons,
#category #js-product-list .pagination .page-list .next .material-icons {
  font-size: 20px;
  margin: 0;
}

#category #js-product-list .pagination .page-list .spacer {
  color: #806f54;
  display: inline-block;
  font-size: 16px;
  line-height: 25px;
  min-width: 20px;
}

#category #js-product-list .pagination .page-list a.disabled {
  cursor: default;
  opacity: .42;
  pointer-events: none;
}

@media (max-width: 767px) {
  #category #js-product-list .pagination {
    justify-content: center;
  }

  #category #js-product-list .pagination > div:first-child {
    display: block;
  }

  #category #js-product-list .pagination > div:last-child {
    max-width: 100%;
    width: auto;
  }

  #category #js-product-list .pagination .page-list {
    justify-content: center;
  }
}

@media (max-width: 991px) {
  #category #subcategories .subcategories-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  #category #subcategories {
    padding-top: 2px;
  }

  #category #subcategories .subcategory-heading {
    font-size: 25px;
    gap: 6px;
    margin-bottom: 16px;
  }

  #category #subcategories .subcategory-heading__line {
    flex-basis: 15px;
  }

  #category #subcategories .subcategory-heading__flourish {
    flex-basis: 62px;
    height: 22px;
  }

  #category #subcategories .subcategories-list {
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #category #subcategories h5 {
    font-size: 14px;
    margin-top: 8px;
  }
}

/* Packaging : les sous-catégories sans visuels forment une navigation compacte. */
body.category-id-65#category #subcategories .subcategories-list {
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(145px, 210px)) !important;
  justify-content: center;
}

body.category-id-65 #subcategories .subcategories-list > li {
  padding: 7px 10px;
}

body.category-id-65 #subcategories h5 {
  margin: 0;
  min-height: 0;
}

body.category-id-65 #subcategories .subcategories-list > li::after {
  font-size: 18px;
  margin: 4px 0 0;
}

@media (max-width: 991px) {
  .audrey-home-hero {
    background-position: 64% center;
    min-height: 400px;
    padding: 35px 7%;
  }

  .audrey-home-hero__content {
    max-width: 62%;
  }

  .audrey-home-hero h1 {
    font-size: clamp(35px, 5.5vw, 54px);
  }
}

@media (max-width: 575px) {
  .audrey-home-hero {
    background-image: linear-gradient(90deg, rgba(255, 253, 248, 0.97) 0%, rgba(255, 253, 248, 0.87) 63%, rgba(255, 253, 248, 0.26) 100%), url('../img/audrey/homepage-hero.webp');
    background-position: center;
    min-height: 510px;
    padding: 31px 25px;
  }

  .audrey-home-hero__content {
    max-width: 100%;
  }

  .audrey-home-hero h1 {
    font-size: 43px;
  }

  .audrey-home-hero__content > p {
    font-size: 14px;
    max-width: 310px;
  }

  .audrey-home-hero__benefits {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
    margin-top: 22px;
  }
}

.footer-container > .container {
  max-width: none;
  width: 100%;
}

.audrey-footer-prelude-container {
  max-width: none;
  width: 100%;
}

@media (min-width: 1200px) {
  .products.row > .product {
    flex: 0 0 20%;
    max-width: 20%;
    width: 20%;
  }
}

@media (min-width: 1600px) {
  .products.row > .product {
    flex-basis: 16.666667%;
    max-width: 16.666667%;
    width: 16.666667%;
  }
}

/* Carrousels des sections produit de la page d'accueil. */
.page-home .audrey-product-slider {
  position: relative;
}

.page-home .audrey-product-slider > .products {
  -ms-overflow-style: none;
  box-sizing: border-box;
  display: flex;
  flex-wrap: nowrap;
  gap: 14px;
  justify-content: flex-start !important;
  margin: 0;
  overflow-x: auto;
  padding: 4px 48px 10px;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.page-home .audrey-product-slider > .products.row {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.page-home .audrey-product-slider > .products,
.page-home .audrey-product-slider > .products.row {
  box-sizing: border-box !important;
  padding-right: 54px !important;
  padding-left: 54px !important;
}

.page-home .audrey-product-slider > .products::-webkit-scrollbar {
  display: none;
}

.page-home .audrey-product-slider > .products > .product {
  flex: 0 0 calc(25% - 11px);
  max-width: calc(25% - 11px);
  scroll-snap-align: start;
  width: calc(25% - 11px);
}

.audrey-product-slider__control {
  align-items: center;
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 50%;
  color: #36543f;
  cursor: pointer;
  display: flex;
  height: 36px;
  justify-content: center;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
  width: 36px;
  z-index: 2;
}

.audrey-product-slider__control--previous {
  left: 3px;
}

.audrey-product-slider__control--next {
  right: 3px;
}

.audrey-product-slider__control .material-icons {
  font-size: 26px;
}

.audrey-product-slider__control:hover,
.audrey-product-slider__control:focus {
  background: #36543f;
  border-color: #36543f;
  color: #fffdf8;
}

.audrey-product-slider__control:disabled {
  cursor: default;
  opacity: 0.35;
}

#header .audrey-search-submit:hover .material-icons.search,
#header .audrey-search-submit:focus .material-icons.search {
  color: #b97920;
}

@media (min-width: 1200px) {
  .page-home .audrey-product-slider > .products > .product {
    flex-basis: calc(20% - 12px);
    max-width: calc(20% - 12px);
    width: calc(20% - 12px);
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .page-home .audrey-product-slider > .products {
    padding-right: 54px;
    padding-left: 54px;
  }
}

@media (min-width: 1600px) {
  .page-home .audrey-product-slider > .products > .product {
    flex-basis: calc(16.666667% - 12px);
    max-width: calc(16.666667% - 12px);
    width: calc(16.666667% - 12px);
  }
}

@media (max-width: 767px) {
  .page-home .audrey-product-slider > .products {
    gap: 10px;
  }

  .page-home .audrey-product-slider > .products > .product {
    flex-basis: calc(78% - 8px);
    max-width: calc(78% - 8px);
    width: calc(78% - 8px);
  }

  .audrey-product-slider__control {
    height: 30px;
    width: 30px;
  }
}

/* Cartes des univers de la page d'accueil. */
.audrey-category-cards {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin: 0 0 34px;
}

.audrey-category-card {
  align-items: center;
  background: #fffdf8;
  border: 1px solid #36543f;
  box-shadow: inset 0 0 0 3px #fffdf8, inset 0 0 0 4px #9aa58f;
  color: #252820;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 13px 9px 15px;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.audrey-category-card:hover,
.audrey-category-card:focus {
  border-color: #b97920;
  box-shadow: inset 0 0 0 3px #fffdf8, inset 0 0 0 4px #d8b77a;
  color: #252820;
  text-decoration: none;
  transform: translateY(-3px);
}

.audrey-category-card__title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.1;
  min-height: 40px;
  text-transform: uppercase;
}

.audrey-category-card__heart {
  color: #b97920;
  font-family: Georgia, serif;
  font-size: 22px;
  line-height: 1;
  margin: 3px 0 7px;
}

.audrey-category-card__image {
  aspect-ratio: 0.9 / 1;
  display: block;
  margin-bottom: 11px;
  overflow: hidden;
  width: 100%;
}

.audrey-category-card__image img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.audrey-category-card__image--placeholder,
.audrey-category-card__image--seasonal {
  background:
    radial-gradient(circle at 50% 38%, rgba(216, 183, 122, 0.42), transparent 22%),
    linear-gradient(135deg, #f2ebdd, #fffdf8 65%);
}

.audrey-category-card__image--seasonal {
  border: 1px solid #d8b77a;
  border-radius: 50%;
  width: 80%;
}

.audrey-category-card__action {
  border: 1px solid #b97920;
  border-radius: 3px;
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 11px;
  line-height: 1;
  padding: 8px 14px;
  text-transform: uppercase;
}

.audrey-category-card:hover .audrey-category-card__action,
.audrey-category-card:focus .audrey-category-card__action {
  background: #36543f;
  border-color: #36543f;
  color: #fffdf8;
}

.audrey-category-card--coming-soon {
  opacity: 0.82;
}

/* Invitation à une création sur mesure, uniquement sur l’accueil. */
.audrey-home-idea-container {
  max-width: none;
  width: 100%;
}

.audrey-home-idea {
  align-items: center;
  background: #f7eedf;
  border: 1px solid #36543f;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 28px;
  margin: 34px 0 0;
  padding: 30px clamp(24px, 5vw, 72px);
}

.audrey-home-idea__ornament {
  align-items: center;
  border: 1px solid #c88819;
  border-radius: 50%;
  color: #c88819;
  display: flex;
  flex: 0 0 58px;
  font-size: 25px;
  height: 58px;
  justify-content: center;
  width: 58px;
}

.audrey-home-idea__content {
  max-width: 820px;
}

.audrey-home-idea h2 {
  color: #174b43;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(26px, 3vw, 37px);
  font-weight: 600;
  line-height: 1.05;
  margin: 0 0 13px;
}

.audrey-home-idea p {
  color: #4c574e;
  font-family: Georgia, serif;
  font-size: 14px;
  line-height: 1.55;
  margin: 0 0 8px;
}

.audrey-home-idea p:last-child {
  margin-bottom: 0;
}

.audrey-home-idea__cta {
  align-items: center;
  background: #36543f;
  border: 1px solid #36543f;
  color: #fffdf8 !important;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 700;
  gap: 9px;
  justify-content: center;
  min-height: 46px;
  padding: 12px 19px;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.audrey-home-idea__cta:hover,
.audrey-home-idea__cta:focus {
  background: #c88819;
  border-color: #c88819;
  color: #fffdf8 !important;
}

@media (max-width: 767px) {
  .audrey-home-idea {
    align-items: flex-start;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 16px;
    margin-top: 24px;
    padding: 24px 18px;
  }

  .audrey-home-idea__ornament {
    flex-basis: 44px;
    font-size: 19px;
    height: 44px;
    width: 44px;
  }

  .audrey-home-idea h2 {
    font-size: 28px;
  }

  .audrey-home-idea p {
    font-size: 13px;
  }

  .audrey-home-idea__cta {
    grid-column: 1 / -1;
    width: 100%;
  }
}

/* Pré-footer éditorial et inscription newsletter. */
.audrey-footer-prelude {
  background:
    url('../img/audrey/footer-prelude-floral-left.webp') no-repeat left bottom / 155px auto,
    url('../img/audrey/footer-prelude-floral-right.webp') no-repeat right bottom / 175px auto,
    #f2ebdd;
  border: 1px solid #36543f;
  display: grid;
  grid-template-columns: 1.1fr 1fr 1.25fr;
  margin: 28px 0 22px;
  overflow: hidden;
  padding: 14px 12px;
}

.audrey-footer-prelude__item {
  align-items: center;
  display: flex;
  gap: 18px;
  min-width: 0;
  padding: 6px 22px;
  position: relative;
  z-index: 1;
}

.audrey-footer-prelude__item + .audrey-footer-prelude__item {
  border-left: 1px solid #9aa58f;
}

.audrey-footer-prelude__item h2 {
  color: #252820;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.1;
  margin: 0 0 7px;
}

.audrey-nowrap {
  white-space: nowrap;
}

.audrey-footer-prelude__item p {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 12px;
  line-height: 1.35;
  margin: 0;
}

.audrey-footer-prelude__portrait,
.audrey-footer-prelude__icon {
  align-items: center;
  border: 1px solid #b97920;
  border-radius: 50%;
  color: #b97920;
  display: inline-flex;
  flex: 0 0 78px;
  height: 78px;
  justify-content: center;
  width: 78px;
}

.audrey-footer-prelude__portrait {
  background: #fffdf8;
  overflow: hidden;
  padding: 0;
}

.audrey-footer-prelude__portrait img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

/* Hiérarchie des médaillons du pré-footer. */
.audrey-footer-prelude__creator .audrey-footer-prelude__portrait {
  flex-basis: 110px;
  height: 110px;
  width: 110px;
}

.audrey-footer-prelude__gift .audrey-footer-prelude__icon {
  flex-basis: 86px;
  height: 86px;
  width: 86px;
}

.audrey-footer-prelude__portrait .material-icons,
.audrey-footer-prelude__icon {
  font-size: 38px;
}

.audrey-footer-prelude__gift a {
  color: #36543f;
  display: inline-block;
  font-family: Georgia, serif;
  font-size: 11px;
  font-weight: 600;
  margin-top: 10px;
  text-decoration: none;
  text-transform: uppercase;
}

.audrey-footer-prelude__gift a:hover,
.audrey-footer-prelude__gift a:focus {
  color: #b97920;
}

.audrey-footer-prelude__newsletter {
  align-items: center;
  padding-right: 92px;
}

.audrey-footer-prelude__creator {
  padding-left: 82px;
}

.audrey-footer-prelude__newsletter-content {
  min-width: 0;
  width: 100%;
}

.audrey-footer-prelude__newsletter .block_newsletter {
  background: transparent !important;
  border: 0;
  margin: 10px 0 0;
  padding: 0;
  width: 100%;
}

.audrey-footer-prelude__newsletter .block_newsletter > .row,
.audrey-footer-prelude__newsletter .block_newsletter form,
.audrey-footer-prelude__newsletter .block_newsletter form .row,
.audrey-footer-prelude__newsletter .block_newsletter form .col-xs-12 {
  background: transparent !important;
}

.audrey-footer-prelude__newsletter-content > .block-social,
.audrey-footer-prelude__newsletter-content > .blockreassurance {
  display: none;
}

.audrey-footer-prelude__newsletter .block_newsletter > .row > p {
  display: none;
}

.audrey-footer-prelude__newsletter .block_newsletter > .row > div {
  max-width: none;
  padding: 0;
  width: 100%;
}

.audrey-footer-prelude__newsletter .block_newsletter > .row {
  margin: 0;
}

.audrey-footer-prelude__newsletter .block_newsletter form > .row,
.audrey-footer-prelude__newsletter .block_newsletter form .col-xs-12 {
  margin: 0;
  padding: 0;
}

.audrey-footer-prelude__newsletter .block_newsletter .input-wrapper {
  margin-right: 112px;
}

.audrey-footer-prelude__newsletter .block_newsletter input[name='email'] {
  background: #fffdf8;
  border: 1px solid #9aa58f;
  border-radius: 4px;
  color: #252820;
  font-family: Georgia, serif;
  font-size: 12px;
  height: 35px;
  padding: 8px 10px;
  width: 100%;
}

.audrey-footer-prelude__newsletter .block_newsletter input[name='email']:focus {
  border-color: #b97920;
  box-shadow: 0 0 0 2px rgba(185, 121, 32, 0.18);
  outline: 0;
}

.audrey-footer-prelude__newsletter .block_newsletter input[name='submitNewsletter'] {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8;
  font-family: Georgia, serif;
  font-size: 11px;
  height: 35px;
  padding: 0 10px;
  text-transform: uppercase;
}

.audrey-footer-prelude__newsletter .block_newsletter input[name='submitNewsletter']:hover,
.audrey-footer-prelude__newsletter .block_newsletter input[name='submitNewsletter']:focus {
  background: #b97920;
  border-color: #b97920;
}

/* Footer : identité de marque, liens PrestaShop et paiements. */
.footer-container {
  background: #faf7ef url('../img/audrey/footer-gold-decoration.webp') no-repeat left bottom / 135px auto;
  border-top: 1px solid #9aa58f;
  box-shadow: none;
  color: #36543f;
  margin-top: 0;
  padding: 18px 0 8px;
}

.footer-container > .container {
  padding-right: 38px;
  padding-left: 38px;
}

.audrey-footer-main {
  align-items: stretch;
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
}

.audrey-footer-brand {
  align-items: center;
  border-right: 1px solid #decda9;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: 0 28px 4px 0;
  text-align: center;
}

.audrey-footer-brand__logo {
  display: block;
  line-height: 0;
  max-width: 170px;
}

.audrey-footer-brand__logo img {
  height: auto;
  max-height: 116px;
  max-width: 100%;
  width: auto;
}

.audrey-footer-brand p {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 11px;
  line-height: 1.35;
  margin: 6px 0 7px;
}

.audrey-footer-brand__social {
  display: flex;
  gap: 13px;
}

.audrey-footer-brand__social a {
  align-items: center;
  color: #36543f;
  display: inline-flex;
  font-family: Arial, sans-serif;
  font-size: 20px;
  font-weight: 700;
  height: 22px;
  justify-content: center;
  line-height: 1;
  text-decoration: none;
  width: 22px;
}

.audrey-footer-brand__social a:hover,
.audrey-footer-brand__social a:focus {
  color: #b97920;
  text-decoration: none;
}

.audrey-footer-brand__social .audrey-instagram-icon {
  height: 19px;
  width: 19px;
}

.audrey-footer-main__modules {
  align-items: start;
  display: grid;
  gap: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  min-width: 0;
}

.audrey-footer-main__modules > .links:not(.block-contact) {
  display: contents;
}

.audrey-footer-main__modules > .links:not(.block-contact) > .row {
  display: contents;
}

.audrey-footer-main__modules > .links > .row > .wrapper,
.audrey-footer-main__modules > .wrapper,
.audrey-footer-main__modules > .block-contact,
.audrey-footer-main__modules > .block-myaccount-footer,
.audrey-footer-main__modules > #block_myaccount_infos {
  border-right: 1px solid #decda9;
  display: block !important;
  float: none;
  margin: 0;
  min-height: 148px;
  padding: 0 22px;
  width: auto;
}

.audrey-footer-main__modules > :last-child,
.audrey-footer-main__modules > .links > .row > .wrapper:last-child {
  border-right: 0;
}

.audrey-footer-main__modules .h3,
.audrey-footer-main__modules .h4,
.audrey-footer-main__modules .block-contact-title,
.audrey-footer-main__modules #block_myaccount_infos h4 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.15;
  margin: 0 0 8px;
  text-transform: uppercase;
}

.audrey-footer-main__modules ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.audrey-footer-main__modules li,
.audrey-footer-main__modules #contact-infos,
.audrey-footer-main__modules .block-contact {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 12px;
  line-height: 1.45;
}

.audrey-footer-main__modules li {
  margin: 0 0 4px;
  padding: 0;
}

.audrey-footer-main__modules a {
  color: #52584c;
  text-decoration: none;
}

.audrey-footer-main__modules a:hover,
.audrey-footer-main__modules a:focus {
  color: #b97920;
  text-decoration: none;
}

.audrey-footer-main__modules .block-contact {
  display: block !important;
  grid-column: auto !important;
  grid-row: auto !important;
  padding-top: 0;
}

.audrey-footer-main__modules .block-contact #contact-infos {
  display: block;
  padding: 0;
}

.audrey-footer-contact__address {
  color: #52584c;
  font-family: Lora, Georgia, serif;
  font-size: 13px;
  font-style: normal;
  line-height: 1.55;
  margin: 0 0 14px;
}

.audrey-footer-contact__links {
  display: grid;
  gap: 8px;
}

.audrey-footer-main__modules .audrey-footer-contact__links li {
  margin: 0;
}

.audrey-footer-contact__links a {
  align-items: center;
  display: inline-flex;
  gap: 9px;
}

.audrey-footer-contact__links .material-icons {
  color: #b97920;
  font-size: 17px;
  line-height: 1;
}

/* Les deux listes ps_linklist occupent les colonnes 1 et 2 ; les modules
 * natifs de contact et de compte sont placés explicitement à leur suite. */
@media (min-width: 992px) {
  .audrey-footer-main__modules > .links:not(.block-contact) > .row > .wrapper:last-child {
    border-right: 1px solid #decda9;
  }

  .audrey-footer-main__modules > .block-contact {
    grid-column: 3 !important;
    grid-row: 1 !important;
  }

  .audrey-footer-main__modules > #block_myaccount_infos {
    border-right: 0;
    grid-column: 4 !important;
    grid-row: 1 !important;
  }
}

.audrey-footer-after {
  display: none;
}

.audrey-footer-bottom {
  align-items: center;
  border-top: 1px solid #9aa58f;
  display: flex;
  justify-content: space-between;
  margin: 16px auto 0;
  max-width: 830px;
  min-height: 28px;
  padding-top: 8px;
  position: relative;
}

.audrey-footer-bottom::before {
  background: #faf7ef;
  color: #36543f;
  content: '♡';
  font-family: Georgia, serif;
  font-size: 27px;
  left: 50%;
  line-height: 1;
  padding: 0 10px;
  position: absolute;
  top: -15px;
  transform: translateX(-50%);
}

.audrey-footer-bottom__copyright {
  font-family: Georgia, serif;
  font-size: 10px;
  line-height: 1.3;
  margin: 0;
}

.audrey-footer-bottom__copyright a {
  color: #777b73;
  text-decoration: none;
}

.audrey-footer-bottom__partners,
.audrey-footer-bottom__payments,
.audrey-footer-bottom__carriers {
  align-items: center;
  display: flex;
}

.audrey-footer-bottom__partners {
  gap: 13px;
}

.audrey-footer-bottom__payments,
.audrey-footer-bottom__carriers {
  gap: 8px;
}

.audrey-footer-bottom__payments {
  padding-right: 13px;
  border-right: 1px solid #decda9;
}

.audrey-footer-bottom__payments img {
  display: block;
  height: 34px;
  max-width: 120px;
  object-fit: contain;
  width: auto;
}

.audrey-footer-bottom__carriers img {
  display: block;
  height: 30px;
  max-width: 88px;
  object-fit: contain;
  width: auto;
}

.audrey-footer-bottom__partners > .material-icons {
  color: #36543f;
  font-size: 19px;
}

@media (max-width: 991px) {
  .footer-container > .container {
    padding-right: 22px;
    padding-left: 22px;
  }

  .audrey-footer-main {
    grid-template-columns: 180px minmax(0, 1fr);
  }

  .audrey-footer-brand {
    padding-right: 18px;
  }

  .audrey-footer-main__modules {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .audrey-footer-main__modules > .links > .row > .wrapper,
  .audrey-footer-main__modules > .wrapper,
  .audrey-footer-main__modules > .block-contact,
  .audrey-footer-main__modules > .block-myaccount-footer,
  .audrey-footer-main__modules > #block_myaccount_infos {
    border-bottom: 1px solid #decda9;
    min-height: 120px;
    padding: 0 16px 15px;
  }
}

@media (max-width: 575px) {
  .footer-container {
    background-size: 115px auto;
    padding-top: 15px;
  }

  .footer-container > .container {
    padding-right: 15px;
    padding-left: 15px;
  }

  .audrey-footer-main {
    grid-template-columns: 1fr;
  }

  .audrey-footer-brand {
    border-bottom: 1px solid #decda9;
    border-right: 0;
    padding: 0 0 17px;
  }

  .audrey-footer-brand__logo {
    max-width: 135px;
  }

  .audrey-footer-brand__logo img {
    max-height: 92px;
  }

  .audrey-footer-main__modules {
    display: block;
  }

  .audrey-footer-main__modules > .links:not(.block-contact),
  .audrey-footer-main__modules > .links:not(.block-contact) > .row {
    display: block;
  }

  .audrey-footer-main__modules > .links > .row > .wrapper,
  .audrey-footer-main__modules > .wrapper,
  .audrey-footer-main__modules > .block-contact,
  .audrey-footer-main__modules > .block-myaccount-footer,
  .audrey-footer-main__modules > #block_myaccount_infos {
    border-bottom: 1px solid #decda9;
    border-right: 0;
    min-height: 0;
    padding: 13px 0;
    width: 100%;
  }

  .audrey-footer-main__modules .links .title {
    border-bottom: 0;
    padding: 0;
  }

  .audrey-footer-main__modules .links ul {
    background: transparent;
  }

  .audrey-footer-main__modules .links ul > li {
    border-bottom: 0;
    font-weight: 400;
    padding: 3px 0;
  }

  .audrey-footer-bottom {
    align-items: center;
    flex-direction: column;
    gap: 10px;
    margin-top: 20px;
    padding-top: 13px;
    text-align: center;
  }

  .audrey-footer-bottom__partners {
    flex-wrap: wrap;
    justify-content: center;
  }
}

@media (max-width: 991px) {
  .audrey-footer-prelude {
    background-size: 105px auto, 115px auto;
    grid-template-columns: 1fr;
    padding: 0;
  }

  .audrey-footer-prelude__item {
    padding: 18px;
  }

  .audrey-footer-prelude__creator,
  .audrey-footer-prelude__newsletter {
    padding-right: 18px;
    padding-left: 18px;
  }

  .audrey-footer-prelude__item + .audrey-footer-prelude__item {
    border-top: 1px solid #9aa58f;
    border-left: 0;
  }
}

/* À partir de 1000 px, les trois zones restent côte à côte, mais leurs
 * contenus ne doivent pas être comprimés par les retraits décoratifs. */
@media (min-width: 992px) and (max-width: 1399px) {
  .audrey-footer-prelude {
    grid-template-columns: 1.1fr 1fr 1.3fr;
  }

  .audrey-footer-prelude__item {
    gap: 14px;
    padding: 12px 18px;
  }

  .audrey-footer-prelude__creator,
  .audrey-footer-prelude__newsletter {
    padding-right: 18px;
    padding-left: 18px;
  }

  .audrey-footer-prelude__creator .audrey-footer-prelude__portrait {
    flex-basis: 90px;
    height: 90px;
    width: 90px;
  }

  .audrey-footer-prelude__gift .audrey-footer-prelude__icon {
    flex-basis: 72px;
    height: 72px;
    width: 72px;
  }

  .audrey-footer-prelude__newsletter .block_newsletter form > .row > .col-xs-12:first-child {
    align-items: center;
    display: flex;
  }

  .audrey-footer-prelude__newsletter .block_newsletter .input-wrapper {
    flex: 1 1 auto;
    margin-right: 10px;
    min-width: 0;
    order: 1;
  }

  .audrey-footer-prelude__newsletter .block_newsletter input[name='submitNewsletter'] {
    flex: 0 0 auto;
    float: none !important;
    order: 2;
  }
}

@media (max-width: 575px) {
  .audrey-footer-prelude {
    background-size: 70px auto, 78px auto;
  }

  /* Sur les écrans étroits, le bouton ne réduit plus le champ e-mail à une
   * simple pastille : le champ occupe sa propre ligne. */
  .audrey-footer-prelude__newsletter .block_newsletter form > .row > .col-xs-12:first-child {
    display: flex;
    flex-wrap: wrap;
  }

  .audrey-footer-prelude__newsletter .block_newsletter .input-wrapper {
    margin-right: 0;
    order: 1;
    width: 100%;
  }

  .audrey-footer-prelude__newsletter .block_newsletter input[name='submitNewsletter'] {
    float: none !important;
    margin: 8px 0 0;
    order: 2;
  }

  .audrey-footer-prelude__creator .audrey-footer-prelude__portrait {
    flex-basis: 64px;
    height: 64px;
    width: 64px;
  }

  .audrey-footer-prelude__gift .audrey-footer-prelude__icon {
    flex-basis: 56px;
    height: 56px;
    width: 56px;
  }

  .audrey-footer-prelude__item {
    align-items: flex-start;
    gap: 12px;
    padding: 15px;
  }

  .audrey-footer-prelude__portrait,
  .audrey-footer-prelude__icon {
    flex-basis: 52px;
    height: 52px;
    width: 52px;
  }

  .audrey-footer-prelude__portrait .material-icons,
  .audrey-footer-prelude__icon {
    font-size: 27px;
  }
}

@media (max-width: 1199px) {
  .audrey-category-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  .audrey-category-cards {
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .audrey-category-card {
    padding: 11px 7px 12px;
  }

  .audrey-category-card__title {
    font-size: 15px;
  }
}

/* Footer tablette : les blocs restent ouverts et compacts sur deux colonnes. */
@media (min-width: 576px) and (max-width: 991px) {
  .audrey-footer-main {
    grid-template-columns: 210px minmax(0, 1fr);
  }

  .audrey-footer-brand {
    padding-right: 20px;
  }

  .audrey-footer-main__modules {
    align-content: start;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .audrey-footer-main__modules .hidden-sm-down {
    display: block !important;
  }

  .audrey-footer-main__modules .hidden-md-up,
  .audrey-footer-main__modules .links .title {
    display: none !important;
  }

  .audrey-footer-main__modules .links .collapse,
  .audrey-footer-main__modules .links .collapse.in {
    display: block !important;
  }

  .audrey-footer-main__modules > .links > .row > .wrapper,
  .audrey-footer-main__modules > .wrapper,
  .audrey-footer-main__modules > .block-contact,
  .audrey-footer-main__modules > .block-myaccount-footer,
  .audrey-footer-main__modules > #block_myaccount_infos {
    border: 0 !important;
    min-height: 0;
    padding: 0 18px 16px;
  }

  .audrey-footer-main__modules > .links:not(.block-contact) > .row > .wrapper:nth-child(1) {
    border-bottom: 1px solid #decda9 !important;
    border-right: 1px solid #decda9 !important;
    grid-column: 1;
    grid-row: 1;
  }

  .audrey-footer-main__modules > .links:not(.block-contact) > .row > .wrapper:nth-child(2) {
    border-bottom: 1px solid #decda9 !important;
    grid-column: 2;
    grid-row: 1;
  }

  .audrey-footer-main__modules > .block-contact {
    border-right: 1px solid #decda9 !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
  }

  .audrey-footer-main__modules > #block_myaccount_infos {
    grid-column: 2 !important;
    grid-row: 2 !important;
  }

  .audrey-footer-main__modules .block-contact #contact-infos {
    min-height: 0;
  }
}

/* Entre smartphone et tablette : le bloc marque prend toute la largeur. */
@media (min-width: 576px) and (max-width: 767px) {
  .audrey-footer-main {
    grid-template-columns: 1fr;
  }

  .audrey-footer-brand {
    border-bottom: 1px solid #decda9;
    border-right: 0;
    padding: 0 0 16px;
  }

  .audrey-footer-brand__logo img {
    max-height: 105px;
  }

  .audrey-footer-main__modules {
    padding-top: 16px;
  }

  .audrey-footer-main__modules .links ul,
  .audrey-footer-main__modules .links ul > li {
    background: transparent !important;
  }

  .audrey-footer-main__modules .links ul > li {
    border-bottom: 0 !important;
    font-weight: 400;
    padding: 3px 0 !important;
  }

  .audrey-footer-main__modules .links .title,
  .audrey-footer-main__modules .hidden-md-up {
    display: none !important;
  }

  .audrey-footer-main__modules .hidden-sm-down,
  .audrey-footer-main__modules .links .collapse,
  .audrey-footer-main__modules .links .collapse.in {
    display: block !important;
  }
}

/* Cartes produit et action des sections catalogue. */
.products .product {
  display: flex;
  margin-bottom: 24px;
}

.products .product-miniature {
  background: #fffdf8;
  border: 1px solid #36543f;
  box-shadow: inset 0 0 0 3px #fffdf8, inset 0 0 0 4px #9aa58f;
  display: flex;
  flex-direction: column;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 5px;
  position: relative;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
  width: 100%;
}

.products .product-miniature:hover {
  border-color: #b97920;
  box-shadow: inset 0 0 0 3px #fffdf8, inset 0 0 0 4px #d8b77a;
  transform: translateY(-3px);
}

.products .product-miniature .thumbnail-container {
  box-shadow: none;
  height: auto;
  margin: 0;
  width: 100%;
}

.products .product-miniature .thumbnail-top {
  overflow: hidden;
}

.products .product-miniature .thumbnail {
  color: #b97920;
  display: block;
}

.products .product-miniature .thumbnail:hover,
.products .product-miniature .thumbnail:focus {
  color: #c78924;
}

.products .product-miniature .thumbnail img {
  aspect-ratio: 1 / 1;
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.products .product-miniature .product-description {
  background: #fffdf8;
  flex: 1 0 auto;
  padding: 10px 9px 8px;
  position: static;
  text-align: center;
  width: 100%;
}

.products .product-miniature .product-title {
  font-family: Georgia, serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.25;
  margin: 0 0 5px;
  min-height: 35px;
}

.products .product-miniature .product-title a {
  color: #252820;
}

.products .product-miniature .product-title a:hover,
.products .product-miniature .product-title a:focus {
  color: #b97920;
  text-decoration: none;
}

.products .product-miniature .product-price-and-shipping {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 16px;
  font-weight: 700;
  margin: 0;
}

.products .product-miniature .price {
  color: #252820;
}

.products .product-miniature .product-flags {
  left: 10px;
  margin: 0;
  position: absolute;
  top: 10px;
  z-index: 1;
}

.products .product-miniature .product-flag {
  background: #36543f;
  color: #fffdf8;
  font-family: Georgia, serif;
  font-size: 10px;
  font-weight: 600;
  padding: 5px 7px;
  text-transform: uppercase;
}

.products .product-miniature .product-feature-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  list-style: none;
  margin: -3px 0 10px;
  padding: 0;
}

.products .product-miniature .product-feature-badge {
  background: #fffdf8;
  border: 1px solid #36543f;
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 9px;
  font-weight: 600;
  margin: 0;
  padding: 4px 6px;
  text-decoration: none;
  text-transform: uppercase;
}

.products .product-miniature .product-feature-badge:hover,
.products .product-miniature .product-feature-badge:focus {
  background: #36543f;
  border-color: #36543f;
  color: #fffdf8 !important;
}

.products .product-miniature .product-feature-badge--natural {
  background: #edf3e8;
  border-color: #6f8a58;
  color: #476438;
}

.products .product-miniature .product-feature-badge--artificial {
  background: #faf0df;
  border-color: #b97920;
  color: #935b12;
}

.products .product-miniature .highlighted-informations {
  display: none;
}

.all-product-link {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8 !important;
  display: table;
  float: none !important;
  font-family: Georgia, serif;
  font-size: 13px !important;
  font-weight: 600;
  line-height: 1;
  margin: 0 auto 26px;
  padding: 11px 20px;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.all-product-link:hover,
.all-product-link:focus {
  background: #b97920;
  border-color: #b97920;
  color: #fffdf8 !important;
}

.all-product-link .material-icons {
  font-size: 16px;
  margin-left: 5px;
  vertical-align: -3px;
}

@media (max-width: 575px) {
  .products .product-miniature .product-title {
    font-size: 15px;
  }
}

/* Titres des sections produit. */
h2.products-section-title {
  align-items: center;
  color: #252820;
  display: flex;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 38px;
  font-weight: 600;
  gap: 14px;
  justify-content: center;
  letter-spacing: 0;
  line-height: 1.1;
  margin: 28px 0 20px;
  text-align: center;
  text-transform: none !important;
}

h2.products-section-title::before,
h2.products-section-title::after {
  background-image: url('../img/audrey/title-arabesque.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  display: block;
  flex: 0 0 118px;
  height: 38px;
  white-space: nowrap;
}

h2.products-section-title::before {
  transform: scaleX(-1);
}

h2.products-section-title::after {
  transform: none;
}

@media (max-width: 575px) {
  h2.products-section-title {
    font-size: 30px;
    gap: 8px;
    margin: 22px 0 16px;
  }

  h2.products-section-title::before,
  h2.products-section-title::after {
    flex-basis: 62px;
    height: 22px;
  }
}

.audrey-reassurance {
  align-items: stretch;
  background: #fffdf8;
  border: 1px solid #36543f;
  display: flex;
  margin: 22px 0 28px;
  padding: 10px 0;
}

.audrey-reassurance__item {
  align-items: center;
  display: flex;
  flex: 1 1 25%;
  gap: 18px;
  justify-content: center;
  min-width: 0;
  padding: 4px 20px;
}

.audrey-reassurance__item + .audrey-reassurance__item {
  border-left: 1px solid #9aa58f;
}

.audrey-reassurance__item > .material-icons {
  color: #36543f;
  flex: 0 0 auto;
  font-size: 38px;
}

.audrey-reassurance__item div {
  display: flex;
  flex-direction: column;
  font-family: Georgia, serif;
  line-height: 1.35;
}

.audrey-reassurance__item strong {
  color: #252820;
  font-size: 16px;
  font-weight: 600;
}

.audrey-reassurance__item span {
  color: #52584c;
  font-size: 13px;
}

@media (max-width: 991px) {
  .audrey-reassurance {
    flex-wrap: wrap;
    margin: 16px 0 22px;
    padding: 0;
  }

  .audrey-reassurance__item {
    flex-basis: 50%;
    justify-content: flex-start;
    padding: 14px;
  }

  .audrey-reassurance__item + .audrey-reassurance__item {
    border-left: 0;
  }

  .audrey-reassurance__item:nth-child(even) {
    border-left: 1px solid #9aa58f;
  }

  .audrey-reassurance__item:nth-child(n + 3) {
    border-top: 1px solid #9aa58f;
  }
}

@media (max-width: 575px) {
  .audrey-reassurance__item {
    flex-basis: 100%;
  }

  .audrey-reassurance__item:nth-child(even) {
    border-left: 0;
  }

  .audrey-reassurance__item + .audrey-reassurance__item {
    border-top: 1px solid #9aa58f;
  }

  .audrey-reassurance__item:nth-child(n + 3) {
    border-top: 1px solid #9aa58f;
  }
}

/* Conditions générales : lecture longue dans le modal du checkout. */
body#checkout #modal .modal-dialog {
  max-width: 760px;
  margin: 2rem auto;
}

body#checkout #modal .modal-content {
  max-height: calc(100vh - 4rem);
  overflow: hidden;
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 0;
  box-shadow: 0 20px 48px rgba(30, 57, 41, .25);
}

body#checkout #modal .close {
  z-index: 2;
  position: absolute;
  top: 14px;
  right: 14px;
  width: 34px;
  height: 34px;
  margin: 0;
  padding: 0;
  border: 1px solid #d9bd88;
  border-radius: 50%;
  background: #fffdf8;
  color: #36543f;
  font-size: 25px;
  font-weight: 400;
  line-height: 28px;
  opacity: 1;
  text-shadow: none;
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

body#checkout #modal .close:hover,
body#checkout #modal .close:focus-visible {
  background: #36543f;
  color: #fff;
  outline: 0;
  transform: rotate(90deg);
}

body#checkout #modal .js-modal-content {
  max-height: calc(100vh - 4rem);
  padding: 3.5rem 3rem 3rem;
  overflow-y: auto;
  color: #4d5e51;
  font-size: 15px;
  line-height: 1.55;
  scrollbar-color: #36543f #f7eedf;
  scrollbar-width: thin;
}

body#checkout #modal .js-modal-content::-webkit-scrollbar {
  width: 9px;
}

body#checkout #modal .js-modal-content::-webkit-scrollbar-track {
  background: #f7eedf;
}

body#checkout #modal .js-modal-content::-webkit-scrollbar-thumb {
  border: 2px solid #f7eedf;
  border-radius: 10px;
  background: #36543f;
}

body#checkout #modal .js-modal-content > :first-child {
  margin-top: 0;
}

body#checkout #modal .js-modal-content h1,
body#checkout #modal .js-modal-content h2,
body#checkout #modal .js-modal-content h3 {
  margin: 2rem 0 .8rem;
  padding-bottom: .65rem;
  border-bottom: 1px solid #d9bd88;
  color: #36543f;
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 700;
  line-height: 1.2;
}

body#checkout #modal .js-modal-content h1 {
  font-size: 1.75rem;
}

body#checkout #modal .js-modal-content h2 {
  font-size: 1.38rem;
}

body#checkout #modal .js-modal-content h3 {
  font-size: 1.12rem;
}

body#checkout #modal .js-modal-content p {
  margin: 0 0 1rem;
}

body#checkout #modal .js-modal-content strong {
  color: #36543f;
}

body#checkout #modal .js-modal-content a {
  color: #36543f;
  font-weight: 700;
  text-decoration-color: #c88718;
  text-underline-offset: 3px;
}

body#checkout #modal .js-modal-content ul,
body#checkout #modal .js-modal-content ol {
  margin: 0 0 1.1rem;
  padding-left: 1.35rem;
}

body#checkout #modal .js-modal-content li + li {
  margin-top: .35rem;
}

@media (max-width: 767px) {
  body#checkout #modal .modal-dialog {
    width: calc(100% - 1.5rem);
    margin: .75rem auto;
  }

  body#checkout #modal .modal-content,
  body#checkout #modal .js-modal-content {
    max-height: calc(100vh - 1.5rem);
  }

  body#checkout #modal .js-modal-content {
    padding: 3.25rem 1.25rem 1.5rem;
    font-size: 14px;
  }

  body#checkout #modal .js-modal-content h2 {
    font-size: 1.22rem;
  }
}

/* Page contact. */
#contact #wrapper {
  overflow: hidden;
}

#contact #left-column {
  display: none;
}

#contact #content-wrapper {
  flex: 0 0 100%;
  max-width: 100%;
  width: 100%;
}

.audrey-contact-page {
  margin: 0 auto;
  max-width: 1220px;
  padding: 36px 42px 52px;
  position: relative;
}

.audrey-contact-page::before,
.audrey-contact-page::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: 250px;
  opacity: .88;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 220px;
}

.audrey-contact-page::before {
  background-image: url('../img/audrey/header-floral-decoration.webp');
  left: -52px;
  transform: scaleX(-1);
}

.audrey-contact-page::after {
  background-image: url('../img/audrey/footer-prelude-floral-right.webp');
  right: -48px;
}

.audrey-contact-page__header {
  margin: 0 auto 34px;
  max-width: 680px;
  position: relative;
  text-align: center;
  z-index: 1;
}

.audrey-contact-page__header h1 {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 36px;
  font-weight: 500;
  letter-spacing: .01em;
  line-height: 1.1;
  margin: 0;
  text-transform: none;
}

.audrey-contact-page__ornament {
  background: url('../img/audrey/title-arabesque.png') center / contain no-repeat;
  display: block;
  height: 60px;
  margin: 4px auto 9px;
}

.audrey-contact-page__header p {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.5;
  margin: 0;
}

.audrey-contact-page__grid {
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0, 1.15fr) minmax(330px, .85fr);
  position: relative;
  z-index: 1;
}

.audrey-contact-page__form,
.audrey-contact-page__details {
  background: rgba(255, 253, 248, .9);
  border: 2px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  padding: 30px 34px;
}

.audrey-contact-page .contact-form h3,
.audrey-contact-page__details h2 {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.25;
  margin: 0;
}

.audrey-contact-form__intro {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 13px;
  line-height: 1.5;
  margin: 5px 0 19px;
}

.audrey-contact-page .contact-form .form-fields > .form-group:first-child {
  margin: 0;
}

.audrey-contact-page .contact-form .form-fields > .form-group:first-child > div {
  float: none;
  margin: 0;
  max-width: none;
  padding: 0;
  width: 100%;
}

.audrey-contact-page .contact-form .form-group {
  margin-bottom: 13px;
}

.audrey-contact-page .contact-form .form-group > label {
  clip: rect(0 0 0 0);
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.audrey-contact-page .contact-form .form-group > div[class*='col-md-'] {
  float: none;
  margin: 0;
  max-width: none;
  padding: 0;
  width: 100%;
}

.audrey-contact-page .contact-form .form-control {
  background-color: #fffdf8;
  border: 1px solid #eadac2;
  border-radius: 4px;
  box-shadow: none;
  color: #252820;
  font-family: Georgia, serif;
  font-size: 13px;
  min-height: 40px;
  padding: 9px 12px;
}

.audrey-contact-page .contact-form textarea.form-control {
  min-height: 148px;
  resize: vertical;
}

.audrey-contact-page .contact-form .bootstrap-filestyle .btn-default {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8;
  font-family: Georgia, serif;
  font-size: 13px;
  padding: 10px 14px;
}

.audrey-contact-page .contact-form .bootstrap-filestyle .btn-default:hover,
.audrey-contact-page .contact-form .bootstrap-filestyle .btn-default:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8;
}

.audrey-contact-page .contact-form .form-control:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .13);
  outline: 0;
}

.audrey-contact-page .contact-form .form-footer {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-top: 15px;
}

.audrey-contact-form__required {
  color: #6f746b;
  font-family: Georgia, serif;
  font-size: 12px;
}

.audrey-contact-page .contact-form .btn-primary {
  align-items: center;
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 12px;
  font-weight: 600;
  gap: 8px;
  padding: 11px 15px;
  text-transform: uppercase;
}

.audrey-contact-page .contact-form .btn-primary:hover,
.audrey-contact-page .contact-form .btn-primary:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8;
}

.audrey-contact-page .contact-form .btn-primary .material-icons {
  font-size: 16px;
}

.audrey-contact-page__details h2 {
  margin-bottom: 24px;
}

.audrey-contact-detail {
  align-items: flex-start;
  display: flex;
  gap: 15px;
  margin-top: 21px;
}

.audrey-contact-detail > .material-icons {
  align-items: center;
  background: #faf3e7;
  border-radius: 50%;
  color: #c78924;
  display: inline-flex;
  flex: 0 0 36px;
  font-size: 20px;
  height: 36px;
  justify-content: center;
  width: 36px;
}

.audrey-contact-detail h3 {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  margin: 1px 0 3px;
}

.audrey-contact-detail p,
.audrey-contact-detail__address,
.audrey-contact-detail a {
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
}

.audrey-contact-detail a:hover,
.audrey-contact-detail a:focus {
  color: #c78924;
}

.audrey-contact-detail__address span {
  display: block;
}

.audrey-contact-social {
  display: flex;
  gap: 10px;
  margin: 27px 0 0 51px;
}

.audrey-contact-social a {
  align-items: center;
  border: 1px solid #eadac2;
  border-radius: 50%;
  color: #36543f;
  display: inline-flex;
  font-family: Arial, sans-serif;
  font-size: 19px;
  font-weight: 700;
  height: 34px;
  justify-content: center;
  text-decoration: none;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease;
  width: 34px;
}

.audrey-contact-social a:hover,
.audrey-contact-social a:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8;
}

.audrey-contact-social svg {
  display: block;
  height: 18px;
  width: 18px;
}

.audrey-contact-social .material-icons {
  font-size: 18px;
}

@media (max-width: 991px) {
  .audrey-contact-page {
    padding: 28px 20px 38px;
  }

  .audrey-contact-page::before,
  .audrey-contact-page::after {
    height: 180px;
    width: 155px;
  }

  .audrey-contact-page::before {
    left: -40px;
  }

  .audrey-contact-page::after {
    right: -34px;
  }

  .audrey-contact-page__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .audrey-contact-page {
    padding: 22px 10px 30px;
  }

  .audrey-contact-page::before,
  .audrey-contact-page::after {
    display: none;
  }

  .audrey-contact-page__header {
    margin-bottom: 24px;
  }

  .audrey-contact-page__header h1 {
    font-size: 31px;
  }

  .audrey-contact-page__header p {
    font-size: 14px;
  }

  .audrey-contact-page__form,
  .audrey-contact-page__details {
    border-radius: 0;
    padding: 24px 18px;
  }

  .audrey-contact-page .contact-form .form-footer {
    align-items: stretch;
    flex-direction: column;
    gap: 14px;
  }

  .audrey-contact-page .contact-form .btn-primary {
    justify-content: center;
  }

  .audrey-contact-social {
    margin-left: 0;
  }
}

/* Résultats de recherche : mêmes contrôles que les catégories. */
#search .products-selection .sort-by-row {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  margin: 0 18px 18px 0;
}

#search .products-selection .sort-by {
  color: #52584c;
  flex: 0 0 auto;
  font-family: Georgia, serif;
  font-size: 14px;
  max-width: none;
  padding: 0 10px 0 0;
  width: auto;
}

#search .products-selection .products-sort-order {
  flex: 0 0 auto;
  max-width: none;
  padding: 0;
  width: auto;
}

#search .products-selection .products-sort-order .select-title {
  align-items: center;
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  color: #36543f;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 14px;
  gap: 14px;
  line-height: 1.15;
  min-width: 190px;
  padding: 8px 10px 8px 12px;
  text-align: left;
}

#search .products-selection .products-sort-order .select-title:hover,
#search .products-selection .products-sort-order .select-title:focus,
#search .products-selection .products-sort-order.show .select-title {
  border-color: #b97920;
  color: #b97920;
  outline: none;
}

#search .products-selection .products-sort-order .select-title .material-icons {
  color: #36543f;
  font-size: 19px;
  margin-left: auto;
}

#search .products-selection .products-sort-order .select-title:hover .material-icons,
#search .products-selection .products-sort-order .select-title:focus .material-icons,
#search .products-selection .products-sort-order.show .select-title .material-icons {
  color: #b97920;
}

#search .products-selection .products-sort-order .dropdown-menu {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  box-shadow: 0 6px 15px rgba(54, 84, 63, .14);
  margin-top: 5px;
  min-width: 100%;
  padding: 4px 0;
}

#search .products-selection .products-sort-order .dropdown-menu .select-list {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 14px;
  padding: 8px 12px;
}

#search .products-selection .products-sort-order .dropdown-menu .select-list:hover,
#search .products-selection .products-sort-order .dropdown-menu .select-list:focus,
#search .products-selection .products-sort-order .dropdown-menu .select-list.current {
  background: #f5ead7;
  color: #b97920;
  text-decoration: none;
}

#search #products,
#search #js-product-list,
#search #js-product-list .pagination,
#search #js-product-list .page-list {
  background-color: #faf7ef !important;
}

#search #js-product-list .pagination {
  align-items: center;
  background: transparent;
  border: 0;
  display: flex;
  flex-direction: column;
  font-family: Georgia, serif;
  gap: 9px;
  justify-content: center;
  margin: 28px 0 10px;
  padding: 0;
}

#search #js-product-list .pagination > div {
  flex: 0 0 auto;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none;
  padding: 0;
  text-align: center;
  width: auto;
}

#search #js-product-list .pagination .page-list {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
  margin: 0;
  padding: 0;
}

#search #js-product-list .pagination .page-list li {
  margin: 0;
}

#search #js-product-list .pagination .page-list a {
  align-items: center;
  background: #faf7ef;
  border: 1px solid #e5d3ae;
  border-radius: 3px;
  color: #36543f;
  display: inline-flex;
  font-size: 13px;
  height: 25px;
  justify-content: center;
  line-height: 1;
  min-width: 25px;
  padding: 3px 6px;
  text-decoration: none;
}

#search #js-product-list .pagination .page-list li.current a {
  background: #36543f !important;
  border-color: #36543f !important;
  color: #fffdf8 !important;
}

#search #js-product-list .pagination .page-list a:hover,
#search #js-product-list .pagination .page-list a:focus {
  background: #f5ead7;
  border-color: #b97920;
  color: #b97920;
  outline: none;
  text-decoration: none;
}

#search #js-product-list .pagination .page-list .previous,
#search #js-product-list .pagination .page-list .next {
  font-size: 0;
  width: 28px;
}

#search #js-product-list .pagination .page-list .previous .material-icons,
#search #js-product-list .pagination .page-list .next .material-icons {
  font-size: 20px;
  margin: 0;
}

#search #js-product-list .pagination .page-list .spacer {
  color: #806f54;
  display: inline-block;
  font-size: 16px;
  line-height: 25px;
  min-width: 20px;
}

@media (max-width: 767px) {
  #search .products-selection .sort-by-row {
    justify-content: space-between;
    margin-right: 0;
  }

  #search .products-selection .products-sort-order {
    flex: 1 1 auto;
    max-width: 100%;
    width: auto;
  }

  #search .products-selection .products-sort-order .select-title {
    justify-content: space-between;
    min-width: 0;
    width: 100%;
  }
}

/* Page de connexion. */
#authentication,
#authentication #wrapper,
#authentication #main,
#authentication .page-content,
#authentication #content-wrapper {
  background-color: #faf7ef !important;
}

#authentication #wrapper > .container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  width: 100%;
}

#authentication #wrapper {
  overflow: hidden;
}

#authentication #content-wrapper {
  float: none !important;
  flex: 0 0 100%;
  max-width: 100%;
  width: 100%;
}

#authentication #main,
#authentication #content {
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

#authentication .audrey-authentication__grid,
#authentication .audrey-authentication__new-client,
#authentication .audrey-authentication__existing-client {
  min-width: 0;
  width: 100%;
}

.audrey-authentication {
  box-sizing: border-box;
  isolation: isolate;
  margin: 0 auto;
  max-width: none;
  overflow: visible;
  padding: 30px 6vw 54px;
  position: relative;
  width: 100%;
}

.audrey-authentication::before,
.audrey-authentication::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: 230px;
  opacity: .8;
  pointer-events: none;
  position: absolute;
  top: 28px;
  width: 205px;
  z-index: 0;
}

.audrey-authentication::before {
  background-image: url('../img/audrey/header-floral-decoration.webp');
  left: -54px;
  transform: scaleX(-1);
}

.audrey-authentication::after {
  background-image: url('../img/audrey/footer-prelude-floral-right.webp');
  right: -54px;
}

.audrey-authentication > * {
  position: relative;
  z-index: 1;
}

.audrey-authentication__header {
  margin: 0 auto 28px;
  max-width: 680px;
  text-align: center;
}

.audrey-authentication__header h1 {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.1;
  margin: 0;
  text-transform: none;
}

.audrey-authentication__ornament {
  background: url('../img/audrey/title-arabesque.png') center / contain no-repeat;
  display: block;
  height: 19px;
  margin: 6px auto 9px;
  width: 190px;
}

.audrey-authentication__header p {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.45;
  margin: 0;
}

.audrey-authentication__grid {
  display: grid;
  gap: 25px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.audrey-authentication__new-client,
.audrey-authentication__existing-client {
  background-color: rgba(255, 253, 248, .9);
  border: 2px solid #36543f;
  border-radius: 0;
  box-sizing: border-box;
  min-height: 410px;
  overflow: hidden;
  padding: 38px 52px 31px;
  position: relative;
  text-align: center;
}

.audrey-authentication__new-client::before,
.audrey-authentication__existing-client::after {
  display: none;
}

.audrey-authentication__new-client > *,
.audrey-authentication__existing-client > * {
  position: relative;
  z-index: 1;
}

.audrey-authentication h2 {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}

.audrey-authentication__heart {
  color: #c78924;
  display: block;
  font-family: Georgia, serif;
  font-size: 25px;
  line-height: 1;
  margin: 6px 0 15px;
}

.audrey-authentication__new-client > p,
.audrey-authentication__existing-client > p {
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 14px;
  line-height: 1.5;
  margin: 0 auto 18px;
  max-width: 345px;
}

.audrey-authentication__register,
.audrey-authentication #submit-login {
  align-items: center;
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8 !important;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  justify-content: center;
  min-width: 186px;
  padding: 11px 18px;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color .2s ease, border-color .2s ease;
}

.audrey-authentication__register:hover,
.audrey-authentication__register:focus,
.audrey-authentication #submit-login:hover,
.audrey-authentication #submit-login:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
  text-decoration: none;
}

.audrey-authentication__advantages {
  border-top: 1px solid #e1cfa9;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 24px;
  padding-top: 19px;
}

.audrey-authentication__advantages div {
  align-items: center;
  display: flex;
  flex-direction: column;
}

.audrey-authentication__advantages .material-icons {
  color: #c78924;
  font-size: 31px;
  margin-bottom: 7px;
}

.audrey-authentication__advantages strong {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 12px;
  line-height: 1.25;
}

.audrey-authentication__advantages span {
  color: #62685d;
  font-family: Georgia, serif;
  font-size: 11px;
  line-height: 1.35;
  margin-top: 5px;
}

.audrey-authentication .login-form {
  text-align: left;
}

.audrey-authentication .login-form .form-group {
  margin-bottom: 14px;
}

.audrey-authentication .login-form .form-group > label {
  color: #36543f;
  float: none;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  max-width: none;
  padding: 0;
  text-align: left;
  width: 100%;
}

.audrey-authentication .login-form .form-group > div.js-input-column {
  float: none;
  max-width: none;
  padding: 0;
  width: 100%;
}

.audrey-authentication .login-form .form-control {
  background: #fffdf8;
  border: 1px solid #b8c2b0;
  border-radius: 4px;
  box-shadow: none;
  color: #252820;
  font-family: Georgia, serif;
  font-size: 13px;
  height: 40px;
  padding: 9px 12px;
}

.audrey-authentication .login-form .form-control:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .13);
  outline: 0;
}

.audrey-authentication .login-form .input-group-btn .btn {
  background: #fffdf8;
  border: 1px solid #b8c2b0;
  border-left: 0;
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 12px;
  height: 40px;
}

.audrey-authentication .login-form .input-group-btn .btn:hover,
.audrey-authentication .login-form .input-group-btn .btn:focus,
.audrey-authentication .login-form .input-group-btn .btn:active {
  background: #f5ead7;
  border-color: #c78924;
  box-shadow: none;
  color: #c78924;
  outline: 0;
}

.audrey-authentication .login-form .input-group.focus {
  outline: .1875rem solid #c78924;
}

.audrey-authentication .login-form .input-group .input-group-btn > .btn[data-action='show-password'] {
  background: #fffdf8;
  border: 1px solid #b8c2b0;
  border-left: 0;
  box-shadow: none;
  color: #36543f;
}

.audrey-authentication .login-form .input-group .input-group-btn > .btn[data-action='show-password']:hover,
.audrey-authentication .login-form .input-group .input-group-btn > .btn[data-action='show-password']:focus,
.audrey-authentication .login-form .input-group .input-group-btn > .btn[data-action='show-password']:active {
  background: #f5ead7;
  border-color: #c78924;
  box-shadow: none;
  color: #c78924;
}

.audrey-authentication .login-form .forgot-password {
  margin: 1px 0 18px;
  text-align: right;
}

.audrey-authentication .login-form .forgot-password a {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 13px;
  text-decoration: underline;
}

.audrey-authentication .login-form .forgot-password a:hover,
.audrey-authentication .login-form .forgot-password a:focus {
  color: #c78924;
}

.audrey-authentication .login-form .form-footer {
  text-align: center;
}

.audrey-login-secure {
  align-items: center;
  border-top: 1px solid #e1cfa9;
  color: #52584c;
  display: flex;
  font-family: Georgia, serif;
  font-size: 12px;
  gap: 6px;
  justify-content: center;
  margin: 24px 28px 0;
  padding-top: 12px;
}

.audrey-login-secure .material-icons {
  color: #36543f;
  font-size: 16px;
}

@media (max-width: 767px) {
  .audrey-authentication {
    padding: 24px 10px 34px;
  }

  .audrey-authentication__grid {
    grid-template-columns: 1fr;
  }

  .audrey-authentication__new-client,
  .audrey-authentication__existing-client {
    min-height: 0;
    padding: 31px 22px 27px;
  }

  .audrey-authentication::before,
  .audrey-authentication::after {
    display: none;
  }
}

@media (max-width: 460px) {
  .audrey-authentication__header h1 {
    font-size: 34px;
  }

  .audrey-authentication__advantages {
    gap: 10px;
  }

  .audrey-authentication__advantages span {
    display: none;
  }
}

/* Page d'inscription. */
#registration,
#registration #wrapper,
#registration #main,
#registration .page-content,
#registration #content-wrapper {
  background-color: #faf7ef !important;
}

#registration #wrapper > .container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  width: 100%;
}

#registration #wrapper {
  overflow: hidden;
}

#registration #content-wrapper,
#registration #main,
#registration #content {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

.audrey-registration {
  box-sizing: border-box;
  isolation: isolate;
  margin: 0 auto;
  max-width: none;
  overflow: visible;
  padding: 30px 6vw 54px;
  position: relative;
  width: 100%;
}

.audrey-registration::before,
.audrey-registration::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: 230px;
  opacity: .8;
  pointer-events: none;
  position: absolute;
  top: 28px;
  width: 205px;
  z-index: 0;
}

.audrey-registration::before {
  background-image: url('../img/audrey/header-floral-decoration.webp');
  left: -54px;
  transform: scaleX(-1);
}

.audrey-registration::after {
  background-image: url('../img/audrey/footer-prelude-floral-right.webp');
  right: -54px;
}

.audrey-registration > * {
  position: relative;
  z-index: 1;
}

.audrey-registration__header {
  margin: 0 auto 27px;
  max-width: 710px;
  text-align: center;
}

.audrey-registration__header h1 {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.1;
  margin: 0;
  text-transform: none;
}

.audrey-registration__ornament {
  background: url('../img/audrey/title-arabesque.png') center / contain no-repeat;
  display: block;
  height: 19px;
  margin: 6px auto 9px;
  width: 190px;
}

.audrey-registration__header p {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.45;
  margin: 0;
}

.audrey-registration__card {
  background: rgba(255, 253, 248, .9);
  border: 2px solid #36543f;
  border-radius: 0;
  box-sizing: border-box;
  margin: 0 auto;
  max-width: 760px;
  overflow: hidden;
  padding: 36px 54px 32px;
  position: relative;
  text-align: center;
}

.audrey-registration__card::before,
.audrey-registration__card::after {
  display: none;
}

.audrey-registration__card > * {
  position: relative;
  z-index: 1;
}

.audrey-registration h2 {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}

.audrey-registration__heart {
  color: #c78924;
  display: block;
  font-family: Georgia, serif;
  font-size: 25px;
  line-height: 1;
  margin: 6px 0 10px;
}

.audrey-registration__login {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 14px;
  margin: 0 0 22px;
}

.audrey-registration__login a {
  color: #36543f;
  text-decoration: underline;
}

.audrey-registration__login a:hover,
.audrey-registration__login a:focus {
  color: #c78924;
}

.audrey-registration .register-form {
  text-align: left;
}

.audrey-registration .register-form .form-group {
  margin-bottom: 15px;
}

.audrey-registration .register-form .form-group > label {
  color: #36543f;
  float: none;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  max-width: none;
  padding: 0;
  text-align: left;
  width: 100%;
}

.audrey-registration .register-form .form-group > div.js-input-column {
  float: none;
  max-width: none;
  padding: 0;
  width: 100%;
}

.audrey-registration .register-form .form-control {
  background: #fffdf8;
  border: 1px solid #b8c2b0;
  border-radius: 4px;
  box-shadow: none;
  color: #252820;
  font-family: Georgia, serif;
  font-size: 13px;
  height: 40px;
  padding: 9px 12px;
}

.audrey-registration .register-form .form-control:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .13);
  outline: 0;
}

.audrey-registration .register-form .input-group.focus {
  outline: .1875rem solid #c78924;
}

.audrey-registration .register-form .input-group .input-group-btn > .btn[data-action='show-password'] {
  background: #fffdf8;
  border: 1px solid #b8c2b0;
  border-left: 0;
  box-shadow: none;
  color: #36543f;
  height: 40px;
}

.audrey-registration .register-form .input-group .input-group-btn > .btn[data-action='show-password']:hover,
.audrey-registration .register-form .input-group .input-group-btn > .btn[data-action='show-password']:focus {
  background: #f5ead7;
  border-color: #c78924;
  box-shadow: none;
  color: #c78924;
}

.audrey-registration .register-form .form-footer {
  margin-top: 24px;
  text-align: center;
}

.audrey-registration .register-form .form-footer .btn-primary {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8;
  float: none !important;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  padding: 11px 19px;
  text-transform: uppercase;
}

.audrey-registration .register-form .form-footer .btn-primary:hover,
.audrey-registration .register-form .form-footer .btn-primary:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
}

.audrey-registration .register-form .custom-checkbox label,
.audrey-registration .register-form .radio-inline {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 13px;
}

.audrey-registration .register-form .custom-radio input[type='radio']:checked + span {
  background-color: #c78924;
}

.audrey-registration .register-form .custom-radio input[type='radio']:focus + span {
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .22);
}

.audrey-registration .register-form a:hover,
.audrey-registration .register-form a:focus {
  color: #c78924;
}

@media (max-width: 767px) {
  .audrey-registration {
    padding: 24px 20px 34px;
  }

  .audrey-registration__card {
    padding: 31px 22px 28px;
  }

  .audrey-registration::before,
  .audrey-registration::after {
    display: none;
  }
}

@media (max-width: 460px) {
  .audrey-registration__header h1 {
    font-size: 34px;
  }

}

/* Espace client. */
#my-account,
#my-account #wrapper,
#my-account #main,
#my-account .page-content,
#my-account #content-wrapper {
  background-color: #faf7ef !important;
}

#my-account #wrapper > .container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  width: 100%;
}

#my-account #content-wrapper,
#my-account #main,
#my-account #content {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

.audrey-my-account {
  margin: 0 auto;
  max-width: none;
  padding: 30px 6vw 36px;
  width: 100%;
}

.audrey-my-account__header {
  margin: 0 auto 30px;
  max-width: 700px;
  text-align: center;
}

.audrey-my-account__header h1 {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.1;
  margin: 0;
  text-transform: none;
}

.audrey-my-account__ornament {
  background: url('../img/audrey/title-arabesque.png') center / contain no-repeat;
  display: block;
  height: 19px;
  margin: 6px auto 9px;
  width: 190px;
}

.audrey-my-account__header p {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.45;
  margin: 0;
}

.audrey-my-account__links {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0 auto;
  max-width: 1160px;
}

.audrey-my-account__links > a {
  background: #fffdf8;
  border: 1px solid #9aa58f;
  border-radius: 10px;
  color: #36543f;
  float: none !important;
  margin: 0;
  max-width: none;
  min-height: 155px;
  padding: 0;
  text-decoration: none;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
  width: auto;
}

.audrey-my-account__links > a .link-item {
  align-items: center;
  display: flex;
  flex-direction: column;
  font-family: Georgia, serif;
  font-size: 16px;
  font-weight: 600;
  height: 100%;
  justify-content: center;
  line-height: 1.35;
  padding: 24px 18px;
  text-align: center;
}

.audrey-my-account__links > a .material-icons {
  color: #c78924;
  font-size: 39px;
  margin: 0 0 12px;
  transition: color .22s ease;
}

.audrey-my-account__links > a:hover,
.audrey-my-account__links > a:focus {
  border-color: #c78924;
  box-shadow: 0 8px 18px rgba(54, 84, 63, .1);
  color: #c78924;
  outline: none;
  text-decoration: none;
  transform: translateY(-3px);
}

.audrey-my-account__links > a:hover .material-icons,
.audrey-my-account__links > a:focus .material-icons {
  color: #c78924 !important;
}

.audrey-my-account__logout {
  margin: -8px auto 35px;
  text-align: center;
}

.audrey-my-account__logout a {
  align-items: center;
  color: #36543f;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 14px;
  gap: 7px;
  text-decoration: none;
}

.audrey-my-account__logout a > span {
  text-decoration: underline;
}

.audrey-my-account__logout a:hover,
.audrey-my-account__logout a:focus {
  color: #c78924;
}

.audrey-my-account__logout .material-icons {
  font-size: 18px;
}

@media (max-width: 991px) {
  .audrey-my-account__links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  .audrey-my-account {
    padding: 24px 16px 28px;
  }

  .audrey-my-account__header h1 {
    font-size: 34px;
  }

  .audrey-my-account__links {
    gap: 13px;
    grid-template-columns: 1fr;
  }

  .audrey-my-account__links > a {
    min-height: 116px;
  }

  .audrey-my-account__links > a .link-item {
    align-items: center;
    flex-direction: row;
    gap: 14px;
    justify-content: flex-start;
    text-align: left;
  }

  .audrey-my-account__links > a .material-icons {
    margin: 0;
  }
}

/* Informations personnelles. */
#identity,
#identity #wrapper,
#identity #main,
#identity .page-content,
#identity #content-wrapper {
  background-color: #faf7ef !important;
}

#identity #wrapper > .container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  width: 100%;
}

#identity #content-wrapper,
#identity #main,
#identity #content {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

.audrey-identity {
  margin: 0 auto;
  padding: 30px 6vw 48px;
  width: 100%;
}

.audrey-identity__header {
  margin: 0 auto 27px;
  max-width: 710px;
  text-align: center;
}

.audrey-identity__header h1 {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.1;
  margin: 0;
  text-transform: none;
}

.audrey-identity__ornament {
  background: url('../img/audrey/title-arabesque.png') center / contain no-repeat;
  display: block;
  height: 19px;
  margin: 6px auto 9px;
  width: 190px;
}

.audrey-identity__header p {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.45;
  margin: 0;
}

.audrey-identity__card {
  background: #fffdf8;
  border: 2px solid #36543f;
  border-radius: 0;
  margin: 0 auto;
  max-width: 760px;
  overflow: hidden;
  padding: 36px 54px 32px;
  position: relative;
  text-align: center;
}

.audrey-identity__card::before {
  display: none;
}

.audrey-identity__card > * {
  position: relative;
  z-index: 1;
}

.audrey-identity h2 {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}

.audrey-identity__heart {
  color: #c78924;
  display: block;
  font-family: Georgia, serif;
  font-size: 25px;
  line-height: 1;
  margin: 6px 0 22px;
}

.audrey-identity #customer-form {
  text-align: left;
}

.audrey-identity #customer-form .form-group {
  margin-bottom: 15px;
}

.audrey-identity #customer-form .form-group > label {
  color: #36543f;
  float: none;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  max-width: none;
  padding: 0;
  text-align: left;
  width: 100%;
}

.audrey-identity #customer-form .form-group > div.js-input-column {
  float: none;
  max-width: none;
  padding: 0;
  width: 100%;
}

.audrey-identity #customer-form .form-control {
  background: #fffdf8;
  border: 1px solid #b8c2b0;
  border-radius: 4px;
  box-shadow: none;
  color: #252820;
  font-family: Georgia, serif;
  font-size: 13px;
  height: 40px;
  padding: 9px 12px;
}

.audrey-identity #customer-form .form-control:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .13);
  outline: 0;
}

/* Dans Firefox, le pictogramme du calendrier reprend `color` du champ date
 * (et non les pseudo-éléments du contrôle natif). */
.audrey-identity #customer-form input[type='date'].form-control {
  color: #36543f !important;
  cursor: pointer;
}

.audrey-identity #customer-form input[type='date'].form-control:hover,
.audrey-identity #customer-form input[type='date'].form-control:focus {
  color: #c78924 !important;
  cursor: pointer;
}

.audrey-identity #customer-form .input-group.focus {
  outline: .1875rem solid #c78924;
}

.audrey-identity #customer-form .input-group .input-group-btn > .btn[data-action='show-password'] {
  background: #fffdf8;
  border: 1px solid #b8c2b0;
  border-left: 0;
  box-shadow: none;
  color: #36543f;
  height: 40px;
}

.audrey-identity #customer-form .input-group .input-group-btn > .btn[data-action='show-password']:hover,
.audrey-identity #customer-form .input-group .input-group-btn > .btn[data-action='show-password']:focus {
  background: #f5ead7;
  border-color: #c78924;
  color: #c78924;
}

.audrey-identity #customer-form .custom-radio input[type='radio']:checked + span {
  background-color: #c78924;
}

.audrey-identity #customer-form .form-footer {
  margin-top: 24px;
  text-align: center;
}

.audrey-identity #customer-form .form-footer .btn-primary {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8;
  float: none !important;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  padding: 11px 19px;
  text-transform: uppercase;
}

.audrey-identity #customer-form .form-footer .btn-primary:hover,
.audrey-identity #customer-form .form-footer .btn-primary:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
}

@media (max-width: 767px) {
  .audrey-identity {
    padding: 24px 10px 34px;
  }

  .audrey-identity__card {
    padding: 31px 22px 28px;
  }
}

/* Nouvelle adresse - espace client. */
#address,
#address #wrapper,
#address #main,
#address .page-content,
#address #content-wrapper {
  background-color: #faf7ef !important;
}

#address #wrapper > .container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  width: 100%;
}

#address #content-wrapper,
#address #main,
#address #content {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

.audrey-address {
  margin: 0 auto;
  padding: 30px 6vw 48px;
  width: 100%;
}

.audrey-address__header {
  margin: 0 auto 27px;
  max-width: 710px;
  text-align: center;
}

.audrey-address__header h1 {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.1;
  margin: 0;
  text-transform: none;
}

.audrey-address__ornament {
  background: url('../img/audrey/title-arabesque.png') center / contain no-repeat;
  display: block;
  height: 19px;
  margin: 6px auto 9px;
  width: 190px;
}

.audrey-address__header p {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.45;
  margin: 0;
}

.audrey-address__card {
  background: #fffdf8;
  border: 2px solid #36543f;
  border-radius: 0;
  margin: 0 auto;
  max-width: 820px;
  overflow: hidden;
  padding: 36px 54px 32px;
  position: relative;
  text-align: center;
}

.audrey-address__card::before {
  display: none;
}

.audrey-address__card > * {
  position: relative;
  z-index: 1;
}

.audrey-address h2 {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}

.audrey-address__heart {
  color: #c78924;
  display: block;
  font-family: Georgia, serif;
  font-size: 25px;
  line-height: 1;
  margin: 6px 0 22px;
}

.audrey-address .js-address-form {
  text-align: left;
}

.audrey-address .form-group {
  margin-bottom: 15px;
}

.audrey-address .form-group > label {
  color: #36543f;
  float: none;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  max-width: none;
  padding: 0;
  text-align: left;
  width: 100%;
}

.audrey-address .form-group > div.js-input-column {
  float: none;
  max-width: none;
  padding: 0;
  width: 100%;
}

.audrey-address .form-control {
  background: #fffdf8;
  border: 1px solid #b8c2b0;
  border-radius: 4px;
  box-shadow: none;
  color: #252820;
  font-family: Georgia, serif;
  font-size: 13px;
  min-height: 40px;
  padding: 9px 12px;
}

.audrey-address .form-control:focus,
.audrey-address .form-control-select:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .13);
  outline: 0;
}

.audrey-address .form-control-comment {
  color: #6d7468;
  font-family: Georgia, serif;
  font-size: 12px;
  padding-left: 0;
}

.audrey-address .form-footer {
  margin-top: 24px;
  text-align: center;
}

.audrey-address .form-footer .btn-primary {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8;
  float: none !important;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  padding: 11px 25px;
  text-transform: uppercase;
}

.audrey-address .form-footer .btn-primary:hover,
.audrey-address .form-footer .btn-primary:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
}

@media (max-width: 767px) {
  .audrey-address {
    padding: 24px 10px 34px;
  }

  .audrey-address__header h1 {
    font-size: 34px;
  }

  .audrey-address__card {
    padding: 31px 22px 28px;
  }
}

/* Historique, avoirs et réductions - espace client. */
#order-slip,
#order-slip #wrapper,
#order-slip #main,
#order-slip .page-content,
#order-slip #content-wrapper,
#history,
#history #wrapper,
#history #main,
#history .page-content,
#history #content-wrapper,
#discount,
#discount #wrapper,
#discount #main,
#discount .page-content,
#discount #content-wrapper {
  background-color: #faf7ef !important;
}

#order-slip #wrapper > .container,
#history #wrapper > .container,
#discount #wrapper > .container,
#order-slip #content-wrapper,
#order-slip #main,
#order-slip #content,
#history #content-wrapper,
#history #main,
#history #content,
#discount #content-wrapper,
#discount #main,
#discount #content {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

.audrey-account-data {
  margin: 0 auto;
  padding: 30px 6vw 48px;
  width: 100%;
}

.audrey-account-data__header {
  margin: 0 auto 27px;
  max-width: 710px;
  text-align: center;
}

.audrey-account-data__header h1 {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.1;
  margin: 0;
  text-transform: none;
}

.audrey-account-data__ornament,
.audrey-gdpr__ornament {
  background: url('../img/audrey/title-arabesque.png') center / contain no-repeat;
  display: block;
  height: 19px;
  margin: 6px auto 9px;
  width: 190px;
}

.audrey-account-data__header p,
.audrey-gdpr__header p {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.45;
  margin: 0;
}

.audrey-account-data__card {
  background: #fffdf8;
  border: 2px solid #36543f;
  border-radius: 0;
  margin: 0 auto;
  max-width: 1080px;
  padding: 32px 36px;
  text-align: center;
}

.audrey-account-data__card h2,
.audrey-gdpr__card h2 {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}

.audrey-account-data__heart {
  color: #c78924;
  display: block;
  font-family: Georgia, serif;
  font-size: 25px;
  line-height: 1;
  margin: 6px 0 22px;
}

.audrey-account-data .table {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  color: #252820;
  font-family: Georgia, serif;
  font-size: 13px;
  margin: 0;
  text-align: left;
}

.audrey-account-data .table thead th {
  background: #36543f;
  border-color: #36543f;
  color: #fffdf8;
  font-family: Georgia, serif;
  font-weight: 600;
}

.audrey-account-data .table td,
.audrey-account-data .table th {
  border-color: #eadac2;
  padding: 13px 15px;
  vertical-align: middle;
}

.audrey-account-data .table tbody tr:nth-of-type(odd) {
  background: #faf7ef;
}

.audrey-account-data a {
  color: #36543f;
  text-decoration: none;
}

.audrey-account-data a:hover,
.audrey-account-data a:focus {
  color: #c78924;
  text-decoration: none;
}

.audrey-account-data .alert-info {
  background: #faf7ef;
  border: 1px solid #d8b77a;
  border-radius: 0;
  color: #52584c;
  font-family: Georgia, serif;
  margin: 0;
}

.audrey-account-data .credit-slip,
.audrey-account-data .cart-rule {
  background: #faf7ef;
  border: 1px solid #d8b77a;
  margin-bottom: 12px;
  padding: 14px 16px;
  text-align: left;
}

.audrey-account-data .credit-slip ul,
.audrey-account-data .cart-rule ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.audrey-account-data .credit-slip li,
.audrey-account-data .cart-rule li {
  border-bottom: 1px solid #eadac2;
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 13px;
  padding: 7px 0;
}

.audrey-account-data .credit-slip li:last-child,
.audrey-account-data .cart-rule li:last-child {
  border-bottom: 0;
}

.audrey-account-data .credit-slip strong,
.audrey-account-data .cart-rule strong {
  color: #36543f;
  display: block;
  margin-bottom: 2px;
}

/* Listes de souhaits. */
#module-blockwishlist-lists,
#module-blockwishlist-lists #wrapper,
#module-blockwishlist-lists #main,
#module-blockwishlist-lists #content-wrapper {
  background-color: #faf7ef !important;
}

#module-blockwishlist-lists #wrapper > .container,
#module-blockwishlist-lists #content-wrapper,
#module-blockwishlist-lists #main {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

#module-blockwishlist-lists .wishlist-container {
  margin: 0 auto;
  max-width: 980px;
  padding: 30px 6vw 24px;
}

#module-blockwishlist-lists .wishlist-container-header {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin: 0 0 26px;
}

#module-blockwishlist-lists .wishlist-container-header h1 {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.1;
  margin: 0;
  text-transform: none;
}

#module-blockwishlist-lists .wishlist-add-to-new {
  align-items: center;
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8 !important;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  padding: 10px 14px;
  text-decoration: none;
  text-transform: uppercase;
}

#module-blockwishlist-lists .wishlist-add-to-new:hover,
#module-blockwishlist-lists .wishlist-add-to-new:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
  opacity: 1;
}

#module-blockwishlist-lists .wishlist-add-to-new i {
  color: inherit;
}

#module-blockwishlist-lists #content.card.page-content {
  background: #fffdf8;
  border: 2px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  margin: 0;
  padding: 0;
}

#module-blockwishlist-lists .wishlist-list {
  margin: 0;
  max-height: none;
}

#module-blockwishlist-lists .wishlist-list-item {
  border-bottom: 1px solid #eadac2;
  margin: 0;
}

#module-blockwishlist-lists .wishlist-list-item:last-child {
  border-bottom: 0;
}

#module-blockwishlist-lists .wishlist-list-item-link {
  padding: 18px 21px;
}

#module-blockwishlist-lists .wishlist-list-item-title {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 17px;
  font-weight: 500;
}

#module-blockwishlist-lists .wishlist-list-item-title span {
  color: #6d7468;
  font-family: Georgia, serif;
}

#module-blockwishlist-lists .wishlist-list-item:hover {
  background: #f5ead7;
}

#module-blockwishlist-lists .wishlist-list-item:hover .wishlist-list-item-title,
#module-blockwishlist-lists .wishlist-list-item:hover .material-icons,
#module-blockwishlist-lists .wishlist-list-item-right > button:hover .material-icons {
  color: #c78924;
}

#module-blockwishlist-lists .wishlist-list-item-right > button .material-icons {
  color: #36543f;
}

#module-blockwishlist-lists .wishlist-list-item .dropdown-menu {
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 0;
  box-shadow: 0 6px 15px rgba(54, 84, 63, .14);
}

#module-blockwishlist-lists .wishlist-list-item .dropdown-menu > button {
  color: #36543f;
  font-family: Georgia, serif;
}

#module-blockwishlist-lists .wishlist-list-item .dropdown-menu > button:hover {
  background: #f5ead7;
  color: #c78924;
}

#module-blockwishlist-lists .wishlist-footer-links {
  margin: 0 max(16px, 6vw) 38px;
  max-width: none;
  padding: 0;
}

#module-blockwishlist-lists .wishlist-footer-links > a {
  color: #36543f !important;
  font-family: Georgia, serif;
}

#module-blockwishlist-lists .wishlist-footer-links > a:hover,
#module-blockwishlist-lists .wishlist-footer-links > a:focus {
  color: #c78924 !important;
}

/* Le module Blockwishlist ajoute la classe Bootstrap .text-primary :
   ces règles restent volontaires génériques afin de primer quel que soit
   l'identifiant de page généré par le module. */
.wishlist-footer-links {
  margin-left: max(16px, 6vw) !important;
  padding-left: 0 !important;
}

.wishlist-footer-links > a,
.wishlist-footer-links > a.text-primary,
.wishlist-footer-links > a .material-icons {
  color: #36543f !important;
}

.wishlist-footer-links > a:hover,
.wishlist-footer-links > a:focus,
.wishlist-footer-links > a:hover .material-icons,
.wishlist-footer-links > a:focus .material-icons {
  color: #c78924 !important;
}

.page-footer {
  margin-left: clamp(16px, 4vw, 72px);
}

.page-footer a.account-link,
.page-footer a.account-link .material-icons {
  color: #36543f !important;
}

.page-footer a.account-link:hover,
.page-footer a.account-link:focus,
.page-footer a.account-link:hover .material-icons,
.page-footer a.account-link:focus .material-icons {
  color: #c78924 !important;
  text-decoration: none;
}

@media (max-width: 767px) {
  .page-footer {
    margin-left: 16px;
  }
}

/* Palette contextuelle Bootstrap. */
:root {
  --audrey-info-bg: #e8f0ef;
  --audrey-info-border: #9cb5af;
  --audrey-info-accent: #3f5f59;
  --audrey-success-bg: #e8f1e5;
  --audrey-success-border: #8da783;
  --audrey-success-accent: #35543a;
  --audrey-danger-bg: #f6e7e3;
  --audrey-danger-border: #c98f84;
  --audrey-danger-accent: #7a3e36;
  --audrey-primary-bg: #f7eedf;
  --audrey-primary-border: #d2a45a;
  --audrey-primary-accent: #75521e;
  --audrey-warning-bg: #fff3dc;
  --audrey-warning-border: #d9a441;
  --audrey-warning-accent: #6a4a12;
  --audrey-secondary-bg: #f1eee8;
  --audrey-secondary-border: #c5bcb0;
  --audrey-secondary-accent: #5c564e;
}

.alert-info,
.list-group-item-info,
.table-info,
.table-info > th,
.table-info > td {
  background-color: var(--audrey-info-bg) !important;
  border-color: var(--audrey-info-border) !important;
  color: var(--audrey-info-accent) !important;
}

.alert-success,
.list-group-item-success,
.table-success,
.table-success > th,
.table-success > td {
  background-color: var(--audrey-success-bg) !important;
  border-color: var(--audrey-success-border) !important;
  color: var(--audrey-success-accent) !important;
}

.alert-danger,
.list-group-item-danger,
.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: var(--audrey-danger-bg) !important;
  border-color: var(--audrey-danger-border) !important;
  color: var(--audrey-danger-accent) !important;
}

.alert-primary,
.list-group-item-primary,
.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: var(--audrey-primary-bg) !important;
  border-color: var(--audrey-primary-border) !important;
  color: var(--audrey-primary-accent) !important;
}

.alert-warning,
.list-group-item-warning,
.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: var(--audrey-warning-bg) !important;
  border-color: var(--audrey-warning-border) !important;
  color: var(--audrey-warning-accent) !important;
}

.alert-secondary,
.list-group-item-secondary,
.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: var(--audrey-secondary-bg) !important;
  border-color: var(--audrey-secondary-border) !important;
  color: var(--audrey-secondary-accent) !important;
}

.alert-info .alert-link,
.list-group-item-info.list-group-item-action:hover,
.list-group-item-info.list-group-item-action:focus {
  color: var(--audrey-info-accent) !important;
}

.alert-success .alert-link,
.list-group-item-success.list-group-item-action:hover,
.list-group-item-success.list-group-item-action:focus {
  color: var(--audrey-success-accent) !important;
}

.alert-danger .alert-link,
.list-group-item-danger.list-group-item-action:hover,
.list-group-item-danger.list-group-item-action:focus {
  color: var(--audrey-danger-accent) !important;
}

.alert-primary .alert-link,
.list-group-item-primary.list-group-item-action:hover,
.list-group-item-primary.list-group-item-action:focus {
  color: var(--audrey-primary-accent) !important;
}

.alert-warning .alert-link,
.list-group-item-warning.list-group-item-action:hover,
.list-group-item-warning.list-group-item-action:focus {
  color: var(--audrey-warning-accent) !important;
}

.alert-secondary .alert-link,
.list-group-item-secondary.list-group-item-action:hover,
.list-group-item-secondary.list-group-item-action:focus {
  color: var(--audrey-secondary-accent) !important;
}

.text-info { color: var(--audrey-info-accent) !important; }
.text-success { color: var(--audrey-success-accent) !important; }
.text-danger { color: var(--audrey-danger-accent) !important; }
.text-primary { color: var(--audrey-primary-accent) !important; }
.text-warning { color: var(--audrey-warning-accent) !important; }
.text-secondary { color: var(--audrey-secondary-accent) !important; }

.bg-info { background-color: var(--audrey-info-bg) !important; color: var(--audrey-info-accent) !important; }
.bg-success { background-color: var(--audrey-success-bg) !important; color: var(--audrey-success-accent) !important; }
.bg-danger { background-color: var(--audrey-danger-bg) !important; color: var(--audrey-danger-accent) !important; }
.bg-primary { background-color: var(--audrey-primary-bg) !important; color: var(--audrey-primary-accent) !important; }
.bg-warning { background-color: var(--audrey-warning-bg) !important; color: var(--audrey-warning-accent) !important; }
.bg-secondary { background-color: var(--audrey-secondary-bg) !important; color: var(--audrey-secondary-accent) !important; }

.border-info { border-color: var(--audrey-info-border) !important; }
.border-success { border-color: var(--audrey-success-border) !important; }
.border-danger { border-color: var(--audrey-danger-border) !important; }
.border-primary { border-color: var(--audrey-primary-border) !important; }
.border-warning { border-color: var(--audrey-warning-border) !important; }
.border-secondary { border-color: var(--audrey-secondary-border) !important; }

.badge-info,
.progress-bar.bg-info {
  background-color: var(--audrey-info-border) !important;
  color: #fffdf8 !important;
}

.badge-success,
.progress-bar.bg-success {
  background-color: var(--audrey-success-border) !important;
  color: #fffdf8 !important;
}

.badge-danger,
.progress-bar.bg-danger {
  background-color: var(--audrey-danger-border) !important;
  color: #fffdf8 !important;
}

.badge-primary,
.progress-bar.bg-primary {
  background-color: var(--audrey-primary-border) !important;
  color: #fffdf8 !important;
}

.badge-warning,
.progress-bar.bg-warning {
  background-color: var(--audrey-warning-border) !important;
  color: #fffdf8 !important;
}

.badge-secondary,
.progress-bar.bg-secondary {
  background-color: var(--audrey-secondary-border) !important;
  color: #fffdf8 !important;
}

.btn-info,
.btn-outline-info {
  background-color: var(--audrey-info-bg);
  border-color: var(--audrey-info-border);
  color: var(--audrey-info-accent);
}

.btn-success,
.btn-outline-success {
  background-color: var(--audrey-success-bg);
  border-color: var(--audrey-success-border);
  color: var(--audrey-success-accent);
}

.btn-danger,
.btn-outline-danger {
  background-color: var(--audrey-danger-bg);
  border-color: var(--audrey-danger-border);
  color: var(--audrey-danger-accent);
}

.btn-primary,
.btn-outline-primary {
  background-color: var(--audrey-primary-bg);
  border-color: var(--audrey-primary-border);
  color: var(--audrey-primary-accent);
}

.btn-warning,
.btn-outline-warning {
  background-color: var(--audrey-warning-bg);
  border-color: var(--audrey-warning-border);
  color: var(--audrey-warning-accent);
}

.btn-secondary,
.btn-outline-secondary {
  background-color: var(--audrey-secondary-bg);
  border-color: var(--audrey-secondary-border);
  color: var(--audrey-secondary-accent);
}

.btn-info:hover,
.btn-info:focus,
.btn-info:not(:disabled):not(.disabled):active,
.btn-outline-info:hover,
.btn-outline-info:focus,
.btn-outline-info:not(:disabled):not(.disabled):active {
  background-color: var(--audrey-info-border);
  border-color: var(--audrey-info-border);
  color: #fffdf8;
}

.btn-success:hover,
.btn-success:focus,
.btn-success:not(:disabled):not(.disabled):active,
.btn-outline-success:hover,
.btn-outline-success:focus,
.btn-outline-success:not(:disabled):not(.disabled):active {
  background-color: var(--audrey-success-border);
  border-color: var(--audrey-success-border);
  color: #fffdf8;
}

.btn-danger:hover,
.btn-danger:focus,
.btn-danger:not(:disabled):not(.disabled):active,
.btn-outline-danger:hover,
.btn-outline-danger:focus,
.btn-outline-danger:not(:disabled):not(.disabled):active {
  background-color: var(--audrey-danger-border);
  border-color: var(--audrey-danger-border);
  color: #fffdf8;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:not(:disabled):not(.disabled):active {
  background-color: var(--audrey-primary-border);
  border-color: var(--audrey-primary-border);
  color: #fffdf8;
}

.btn-warning:hover,
.btn-warning:focus,
.btn-warning:not(:disabled):not(.disabled):active,
.btn-outline-warning:hover,
.btn-outline-warning:focus,
.btn-outline-warning:not(:disabled):not(.disabled):active {
  background-color: var(--audrey-warning-border);
  border-color: var(--audrey-warning-border);
  color: #fffdf8;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:not(:disabled):not(.disabled):active,
.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-secondary:not(:disabled):not(.disabled):active {
  background-color: var(--audrey-secondary-border);
  border-color: var(--audrey-secondary-border);
  color: #fffdf8;
}

.form-control.is-valid,
.custom-select.is-valid {
  border-color: var(--audrey-success-border);
}

.form-control.is-invalid,
.custom-select.is-invalid {
  border-color: var(--audrey-danger-border);
}

/* PrestaShop applique la classe has-error sur les champs en erreur. */
.form-group.has-error .form-control,
.form-group.has-error .form-control-select,
.form-group.has-error .custom-select,
.form-group.has-error input:not([type='checkbox']):not([type='radio']),
.form-group.has-error select,
.form-group.has-error textarea {
  border-color: var(--audrey-danger-border) !important;
  outline: .1875rem solid var(--audrey-danger-border) !important;
  outline-offset: 0;
}

.form-group.has-error .form-control:focus,
.form-group.has-error .form-control-select:focus,
.form-group.has-error .custom-select:focus,
.form-group.has-error input:not([type='checkbox']):not([type='radio']):focus,
.form-group.has-error select:focus,
.form-group.has-error textarea:focus {
  border-color: var(--audrey-danger-border) !important;
  box-shadow: 0 0 0 2px rgba(201, 143, 132, .22) !important;
  outline: .1875rem solid var(--audrey-danger-border) !important;
  outline-offset: 0;
}

.valid-feedback { color: var(--audrey-success-accent); }
.invalid-feedback { color: var(--audrey-danger-accent); }

/* Pages CMS. */
#cms,
#cms #wrapper,
#cms #main,
#cms #content-wrapper,
#cms .page-content {
  background-color: #faf7ef !important;
}

#cms #wrapper > .container,
#cms #content-wrapper,
#cms #main,
#cms #content {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

#cms .page-header {
  margin: 0 auto;
  max-width: 980px;
  padding: 28px 6vw 18px;
  text-align: center;
}

#cms .page-header h1 {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.12;
  margin: 0;
  text-transform: none;
}

#cms .page-header h1::after {
  background: url('../img/audrey/title-arabesque.png') center / contain no-repeat;
  content: '';
  display: block;
  height: 60px;
  margin: 7px auto 0;
  width: 190px;
}

#cms #content.page-content {
  background: rgba(255, 253, 248, .9);
  border: 2px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.65;
  margin-bottom: 48px;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 0;
  max-width: 1040px;
  padding: 34px 5vw;
  width: calc(100% - 12vw) !important;
}

#cms .page-cms h1,
#cms .page-cms h2,
#cms .page-cms h3,
#cms .page-cms h4 {
  color: #36543f;
  font-family: Georgia, serif;
  font-weight: 500;
  line-height: 1.25;
}

#cms .page-cms h1 {
  font-size: 29px;
  margin: 0 0 19px;
}

#cms .page-cms h2 {
  font-size: 24px;
  margin: 29px 0 13px;
}

#cms .page-cms h3 {
  font-size: 20px;
  margin: 24px 0 10px;
}

#cms .page-cms p,
#cms .page-cms li {
  color: #42483e;
  font-family: Georgia, serif;
}

#cms .page-cms a {
  color: #36543f;
  text-decoration: underline;
  text-decoration-color: #d8b77a;
  text-underline-offset: 3px;
}

#cms .page-cms a:hover,
#cms .page-cms a:focus {
  color: #c78924;
  text-decoration-color: #c78924;
}

#cms .page-cms ul,
#cms .page-cms ol {
  margin: 0 0 18px;
  padding-left: 25px;
}

#cms .page-cms li::marker {
  color: #c78924;
}

#cms .page-cms hr {
  border-color: #eadac2;
  margin: 27px 0;
}

#cms .page-cms table {
  border: 1px solid #d8b77a;
  color: #42483e;
  font-family: Georgia, serif;
  margin: 20px 0;
  width: 100%;
}

#cms .page-cms table th {
  background: #36543f;
  color: #fffdf8;
  font-weight: 600;
}

#cms .page-cms table th,
#cms .page-cms table td {
  border: 1px solid #eadac2;
  padding: 10px 13px;
}

#cms .page-cms .btn,
#cms .page-cms button {
  border-radius: 4px;
}

#cms .page-cms img {
  height: auto;
  max-width: 100%;
}

/* Décorations botaniques des pages CMS. */
@media (min-width: 768px) {
  #cms #main {
    isolation: isolate;
    overflow: visible;
    position: relative;
  }

  #cms #main::before,
  #cms #main::after {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: '';
    height: 230px;
    opacity: .78;
    pointer-events: none;
    position: absolute;
    top: 10px;
    width: 205px;
    z-index: 0;
  }

  #cms #main::before {
    background-image: url('../img/audrey/header-floral-decoration.webp');
    left: clamp(14px, 5vw, 110px);
    transform: scaleX(-1);
  }

  #cms #main::after {
    background-image: url('../img/audrey/footer-prelude-floral-right.webp');
    right: clamp(14px, 5vw, 110px);
  }

  #cms #main > * {
    position: relative;
    z-index: 1;
  }
}

@media (max-width: 767px) {
  #cms .page-header {
    padding: 24px 16px 16px;
  }

  #cms .page-header h1 {
    font-size: 34px;
  }

  #cms #content.page-content {
    margin-bottom: 34px;
    padding: 26px 18px;
    width: calc(100% - 32px) !important;
  }

  #cms .page-cms h1 {
    font-size: 26px;
  }

  #cms .page-cms h2 {
    font-size: 22px;
  }
}

/* Liens textuels : suppression de la couleur bleue Bootstrap. */
#wrapper a:not(.btn):not(.product-thumbnail),
#footer a:not(.btn) {
  color: #36543f;
}

#wrapper a:not(.btn):not(.product-thumbnail):hover,
#wrapper a:not(.btn):not(.product-thumbnail):focus,
#footer a:not(.btn):hover,
#footer a:not(.btn):focus {
  color: #c78924;
}

/* Les noms de produits conservent leur teinte éditoriale, hors survol. */
#wrapper .products .product-miniature .product-title a {
  color: #252820;
}

#wrapper .products .product-miniature .product-title a:hover,
#wrapper .products .product-miniature .product-title a:focus {
  color: #c78924;
}

/* Focus des champs : remplacement du bleu Bootstrap par le doré du thème. */
input:not([type='checkbox']):not([type='radio']):focus,
select:focus,
textarea:focus,
.form-control:focus,
.custom-select:focus {
  border-color: #c78924 !important;
  box-shadow: 0 0 0 .2rem rgba(199, 137, 36, .18) !important;
  outline: 0 !important;
}

.input-group.focus,
.js-parent-focus.focus {
  outline: .1875rem solid #c78924 !important;
}

input[type='checkbox']:focus,
input[type='radio']:focus {
  accent-color: #c78924;
  outline: 2px solid #c78924;
  outline-offset: 2px;
}

.custom-control-input:focus ~ .custom-control-label::before {
  border-color: #c78924 !important;
  box-shadow: 0 0 0 .2rem rgba(199, 137, 36, .18) !important;
}

/* Champs de formulaire : saisie plus lisible, y compris sur mobile. */
input:not([type='checkbox']):not([type='radio']):not([type='submit']):not([type='button']):not([type='reset']),
select,
textarea,
.form-control,
.custom-select {
  font-size: 16px !important;
  line-height: 1.4;
}

/* Décorations botaniques des pages compte client. */
.audrey-identity,
.audrey-address,
.audrey-account-data,
.audrey-gdpr,
.wishlist-container,
#history #main {
  isolation: isolate;
  overflow: visible;
  position: relative;
}

.audrey-identity::before,
.audrey-identity::after,
.audrey-address::before,
.audrey-address::after,
.audrey-account-data::before,
.audrey-account-data::after,
.audrey-gdpr::before,
.audrey-gdpr::after,
.wishlist-container::before,
.wishlist-container::after,
#history #main::before,
#history #main::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: 230px;
  opacity: .82;
  pointer-events: none;
  position: absolute;
  top: 2px;
  width: 205px;
  z-index: -1;
}

.audrey-identity::before,
.wishlist-container::before,
#history #main::before {
  background-image: url('../img/audrey/header-floral-decoration.webp');
  left: -76px;
  transform: scaleX(-1);
}

.audrey-identity::after,
.wishlist-container::after,
#history #main::after {
  background-image: url('../img/audrey/footer-prelude-floral-right.webp');
  right: -76px;
}

.audrey-address::before,
.audrey-credit-slips::before,
.audrey-gdpr::before {
  background-image: url('../img/audrey/footer-prelude-floral-left.webp');
  left: -66px;
}

.audrey-address::after,
.audrey-credit-slips::after,
.audrey-gdpr::after {
  background-image: url('../img/audrey/header-floral-decoration.webp');
  right: -73px;
}

.audrey-vouchers::before {
  background-image: url('../img/audrey/header-floral-decoration.webp');
  left: -73px;
}

.audrey-vouchers::after {
  background-image: url('../img/audrey/footer-prelude-floral-right.webp');
  right: -73px;
  transform: scaleX(-1);
}

.audrey-identity > *,
.audrey-address > *,
.audrey-account-data > *,
.audrey-gdpr > *,
.wishlist-container > *,
#history #main > * {
  position: relative;
  z-index: 1;
}

@media (max-width: 991px) {
  .audrey-identity::before,
  .audrey-identity::after,
  .audrey-address::before,
  .audrey-address::after,
  .audrey-account-data::before,
  .audrey-account-data::after,
  .audrey-gdpr::before,
  .audrey-gdpr::after,
  .wishlist-container::before,
  .wishlist-container::after,
  #history #main::before,
  #history #main::after {
    height: 165px;
    width: 145px;
  }
}

@media (max-width: 767px) {
  .audrey-identity::before,
  .audrey-identity::after,
  .audrey-address::before,
  .audrey-address::after,
  .audrey-account-data::before,
  .audrey-account-data::after,
  .audrey-gdpr::before,
  .audrey-gdpr::after,
  .wishlist-container::before,
  .wishlist-container::after,
  #history #main::before,
  #history #main::after {
    display: none;
  }
}

/* Données personnelles (RGPD). */
#module-psgdpr-gdpr,
#module-psgdpr-gdpr #wrapper,
#module-psgdpr-gdpr #main,
#module-psgdpr-gdpr #content-wrapper,
#module-psgdpr-gdpr .page-content {
  background-color: #faf7ef !important;
}

#module-psgdpr-gdpr #wrapper > .container,
#module-psgdpr-gdpr #content-wrapper,
#module-psgdpr-gdpr #main,
#module-psgdpr-gdpr #content {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

.audrey-gdpr {
  margin: 0 auto;
  padding: 30px 6vw 48px;
  width: 100%;
}

.audrey-gdpr__header {
  margin: 0 auto 27px;
  max-width: 710px;
  text-align: center;
}

.audrey-gdpr__header h1 {
  color: #252820;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.1;
  margin: 0;
  text-transform: none;
}

.audrey-gdpr__grid {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0 auto;
  max-width: 1000px;
}

.audrey-gdpr__card {
  background: #fffdf8;
  border: 2px solid #36543f;
  border-radius: 0;
  margin: 0 !important;
  min-height: 230px;
  padding: 30px 34px !important;
}

.audrey-gdpr__card h2 {
  margin-bottom: 15px;
}

.audrey-gdpr__card p {
  color: #52584c;
  font-family: Georgia, serif;
  font-size: 14px;
  line-height: 1.5;
  margin: 0 0 22px;
}

.audrey-gdpr__card a:not(.btn) {
  color: #36543f;
  text-decoration: underline;
}

.audrey-gdpr__card a:not(.btn):hover,
.audrey-gdpr__card a:not(.btn):focus {
  color: #c78924;
}

.audrey-gdpr .psgdprgetdatabtn17 {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8;
  float: none;
  font-family: Georgia, serif;
  font-size: 12px;
  font-weight: 600;
  margin: 0 8px 8px 0;
  padding: 10px 13px;
}

.audrey-gdpr .psgdprgetdatabtn17:hover,
.audrey-gdpr .psgdprgetdatabtn17:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8;
}

@media (max-width: 767px) {
  .audrey-account-data,
  .audrey-gdpr,
  #module-blockwishlist-lists .wishlist-container {
    padding: 24px 10px 34px;
  }

  .audrey-account-data__header h1,
  .audrey-gdpr__header h1,
  #module-blockwishlist-lists .wishlist-container-header h1 {
    font-size: 34px;
  }

  .audrey-account-data__card,
  .audrey-gdpr__card {
    padding: 27px 18px !important;
  }

  .audrey-gdpr__grid {
    grid-template-columns: 1fr;
  }

  #module-blockwishlist-lists .wishlist-container-header {
    align-items: flex-start;
    flex-direction: column;
  }

  #module-blockwishlist-lists .wishlist-footer-links {
    margin-left: 10px;
    margin-right: 10px;
  }
}

/* Gouttières communes : les cadres restent dans la zone de contenu. */
.audrey-authentication,
.audrey-my-account,
.audrey-identity,
.audrey-address,
.audrey-account-data,
.audrey-gdpr,
#module-blockwishlist-lists .wishlist-container {
  box-sizing: border-box;
  padding-left: clamp(28px, 6vw, 100px);
  padding-right: clamp(28px, 6vw, 100px);
  width: 100%;
}

.audrey-authentication__new-client,
.audrey-authentication__existing-client,
.audrey-identity__card,
.audrey-address__card,
.audrey-account-data__card,
.audrey-gdpr__card {
  box-sizing: border-box;
  max-width: 100%;
}

#cms #content.page-content {
  box-sizing: border-box;
  width: min(1040px, calc(100% - clamp(48px, 12vw, 220px))) !important;
}

/* Certaines pages CMS conservent la classe .card : le fond translucide reste prioritaire. */
#cms #content.page-content.page-cms,
#cms .page-content.page-cms {
  background-color: rgba(255, 253, 248, .9) !important;
}

/* L'arrière-plan botanique de l'historique reste visible derrière son contenu. */
#history #main::before,
#history #main::after {
  display: none;
}

#history .audrey-order-history::before,
#history .audrey-order-history::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  display: block;
  height: 230px;
  opacity: .82;
  pointer-events: none;
  position: absolute;
  top: 2px;
  width: 205px;
  z-index: 0;
}

#history .audrey-order-history::before {
  background-image: url('../img/audrey/header-floral-decoration.webp');
  left: -76px;
  transform: scaleX(-1);
}

#history .audrey-order-history::after {
  background-image: url('../img/audrey/footer-prelude-floral-right.webp');
  right: -76px;
}

@media (max-width: 991px) {
  #history .audrey-order-history::before,
  #history .audrey-order-history::after {
    height: 165px;
    width: 145px;
  }
}

@media (max-width: 767px) {
  #history .audrey-order-history::before,
  #history .audrey-order-history::after {
    display: none;
  }
}

@media (max-width: 767px) {
  .audrey-authentication,
  .audrey-my-account,
  .audrey-identity,
  .audrey-address,
  .audrey-account-data,
  .audrey-gdpr,
  #module-blockwishlist-lists .wishlist-container {
    padding-left: 20px;
    padding-right: 20px;
  }

  #cms #content.page-content {
    width: calc(100% - 40px) !important;
  }

  /* Le logo du footer reste compact sur toute la plage mobile. */
  .audrey-footer-brand__logo {
    max-width: none;
    width: 120px;
  }

  .audrey-footer-brand__logo img {
    display: block;
    height: auto !important;
    max-height: none !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .audrey-footer-main .audrey-footer-brand .logo.img-fluid {
    height: auto !important;
    max-height: none !important;
    max-width: 120px !important;
    width: 120px !important;
  }
}

/* Page 404. */
#pagenotfound,
#pagenotfound #wrapper,
#pagenotfound #main,
#pagenotfound #content-wrapper,
#pagenotfound .page-content {
  background: #faf7ef !important;
}

#pagenotfound #wrapper > .container,
#pagenotfound #content-wrapper,
#pagenotfound #main,
#pagenotfound #content {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

.audrey-not-found {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0;
  box-shadow: none !important;
  margin: 0 auto !important;
  max-width: 1340px;
  padding: 30px clamp(20px, 5vw, 80px) 54px !important;
}

.audrey-not-found__hero {
  align-items: center;
  display: grid;
  gap: clamp(26px, 5vw, 80px);
  grid-template-columns: minmax(280px, 1fr) minmax(320px, .85fr);
  margin: 0 auto 36px;
  max-width: 1140px;
}

.audrey-not-found__visual {
  min-width: 0;
}

.audrey-not-found__visual img {
  display: block;
  height: auto;
  max-height: 510px;
  object-fit: contain;
  width: 100%;
}

.audrey-not-found__content {
  color: #42483e;
  font-family: Georgia, serif;
  text-align: center;
}

.audrey-not-found__code {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(82px, 10vw, 142px);
  font-weight: 500;
  line-height: .78;
  margin: 0;
}

.audrey-not-found__ornament {
  align-items: center;
  color: #c78924;
  display: flex;
  font-family: Georgia, serif;
  font-size: 23px;
  gap: 10px;
  justify-content: center;
  line-height: 1;
  margin: 14px auto 12px;
}

.audrey-not-found__ornament::before,
.audrey-not-found__ornament::after {
  background: #d8b77a;
  content: '';
  height: 1px;
  width: 42px;
}

.audrey-not-found__content h1 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 500;
  line-height: 1.1;
  margin: 0 0 14px;
}

.audrey-not-found__content > p:not(.audrey-not-found__code) {
  font-size: 16px;
  line-height: 1.55;
  margin: 0 auto;
  max-width: 405px;
}

.audrey-not-found__actions {
  display: grid;
  gap: 12px;
  margin: 24px auto 0;
  max-width: 290px;
}

.audrey-not-found__actions a {
  align-items: center;
  border: 1px solid #36543f;
  border-radius: 4px;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 700;
  justify-content: center;
  letter-spacing: .02em;
  min-height: 42px;
  padding: 9px 14px;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.audrey-not-found__actions .material-icons {
  font-size: 17px;
  margin-left: 9px;
}

.audrey-not-found__primary {
  background: #c78924;
  border-color: #c78924 !important;
  color: #fffdf8 !important;
}

.audrey-not-found__primary:hover,
.audrey-not-found__primary:focus {
  background: #36543f;
  border-color: #36543f !important;
  color: #fffdf8 !important;
}

.audrey-not-found__secondary {
  background: rgba(255, 253, 248, .72);
  color: #36543f !important;
}

.audrey-not-found__secondary:hover,
.audrey-not-found__secondary:focus {
  background: #36543f;
  border-color: #36543f;
  color: #fffdf8 !important;
}

.audrey-not-found__recommendations {
  margin: 0 auto;
  max-width: 1280px;
}

.audrey-not-found__recommendations h2 {
  align-items: center;
  color: #252820;
  display: flex;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(25px, 3vw, 33px);
  font-weight: 600;
  gap: 15px;
  justify-content: center;
  line-height: 1.1;
  margin: 0 0 22px;
  text-align: center;
}

.audrey-not-found__recommendations h2::before,
.audrey-not-found__recommendations h2::after {
  background: #d8b77a;
  content: '';
  height: 1px;
  max-width: 150px;
  width: 16vw;
}

.audrey-category-cards--recommendations {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 0;
}

.audrey-category-cards--recommendations .audrey-category-card--coming-soon {
  display: none;
}

.audrey-category-cards--recommendations .audrey-category-card {
  padding: 11px 8px 12px;
}

.audrey-category-cards--recommendations .audrey-category-card__title {
  font-size: 16px;
}

.audrey-category-cards--recommendations .audrey-category-card__image {
  aspect-ratio: 1 / 1;
}

@media (max-width: 767px) {
  .audrey-not-found {
    padding: 24px 20px 38px !important;
  }

  .audrey-not-found__hero {
    grid-template-columns: 1fr;
    margin-bottom: 30px;
  }

  .audrey-not-found__visual {
    margin: 0 auto;
    max-width: 490px;
  }

  .audrey-not-found__content {
    margin-top: -8px;
  }

  .audrey-category-cards--recommendations {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 420px) {
  .audrey-not-found__actions {
    max-width: 100%;
  }

  .audrey-category-cards--recommendations {
    gap: 10px;
  }

  .audrey-category-cards--recommendations .audrey-category-card__title {
    font-size: 14px;
  }
}

/* Bouton liste d'envies des cartes produit. */
.products article .wishlist-button-add,
#products .wishlist-button-add,
.featured-products .wishlist-button-add {
  background: rgba(255, 253, 248, .94) !important;
  border: 1px solid #36543f !important;
  border-radius: 50% !important;
  box-shadow: 0 2px 7px rgba(54, 84, 63, .16) !important;
  height: 40px !important;
  min-width: 40px !important;
  padding: 0 !important;
  transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
  width: 40px !important;
}

.products article .wishlist-button-add i,
#products .wishlist-button-add i,
.featured-products .wishlist-button-add i {
  color: #36543f !important;
  font-size: 23px !important;
  transition: color 180ms ease;
}

.products article .wishlist-button-add:hover,
.products article .wishlist-button-add:focus,
#products .wishlist-button-add:hover,
#products .wishlist-button-add:focus,
.featured-products .wishlist-button-add:hover,
.featured-products .wishlist-button-add:focus {
  background: rgba(255, 253, 248, .94) !important;
  border-color: #c78924 !important;
  box-shadow: 0 3px 9px rgba(199, 137, 36, .2) !important;
  outline: 0;
  transform: translateY(-1px);
}

.products article .wishlist-button-add:hover i,
.products article .wishlist-button-add:focus i,
#products .wishlist-button-add:hover i,
#products .wishlist-button-add:focus i,
.featured-products .wishlist-button-add:hover i,
.featured-products .wishlist-button-add:focus i {
  color: #c78924 !important;
}

.products article .wishlist-button-add:focus-visible,
#products .wishlist-button-add:focus-visible,
.featured-products .wishlist-button-add:focus-visible {
  box-shadow: 0 0 0 3px rgba(199, 137, 36, .26) !important;
}

/* Fiche produit. */
#product,
#product #wrapper,
#product #main,
#product #content-wrapper,
#product .page-content {
  background: #faf7ef !important;
}

#product #wrapper > .container,
#product #content-wrapper,
#product #main {
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1360px !important;
  padding-left: clamp(20px, 4vw, 64px);
  padding-right: clamp(20px, 4vw, 64px);
  width: 100% !important;
}

#product .product-container {
  align-items: flex-start;
  margin: 10px -18px 38px;
}

#product .product-container > .col-md-6 {
  padding-left: 18px;
  padding-right: 18px;
}

#product #content.page-content {
  background: transparent !important;
  border: 0;
  box-shadow: none;
  margin: 0;
  padding: 0;
}

#product .images-container {
  position: relative;
}

#product .product-cover {
  background: rgba(255, 253, 248, .9);
  border: 2px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  cursor: zoom-in;
  overflow: hidden;
}

#product .product-cover img {
  aspect-ratio: 1 / 1;
  display: block;
  height: auto;
  object-fit: cover;
  transition: transform .25s ease;
  width: 100%;
}

#product .product-cover .layer {
  align-items: center;
  background: transparent !important;
  color: #fffdf8;
  display: flex;
  cursor: zoom-in;
  justify-content: center;
  opacity: 0;
  transition: opacity .2s ease;
}

#product .product-cover:hover {
  border-color: #c78924;
  box-shadow: 0 0 0 3px rgba(199, 137, 36, .14);
}

#product .product-cover:hover img {
  transform: scale(1.025);
}

#product .product-cover:hover .layer {
  opacity: 1;
}

#product .product-cover .layer .zoom-in {
  align-items: center;
  background: #36543f;
  border: 2px solid #fffdf8;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(37, 40, 32, .28);
  display: inline-flex;
  font-size: 28px;
  height: 54px;
  justify-content: center;
  width: 54px;
}

#product .product-cover .layer:hover .zoom-in {
  background: #c78924;
}

/* Prix par quantité : cartes éditoriales faciles à comprendre. */
#product .product-discounts {
  background: transparent;
  border: 0;
  margin: 22px 0;
  padding: 0;
}

#product .product-discounts:not(:has(.product-discounts__card)) {
  display: none;
}

#product .product-discounts-title {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 23px;
  font-weight: 600;
  line-height: 1.1;
  margin: 0 0 13px;
}

#product .product-discounts-title::after {
  background: #d8b77a;
  content: '';
  display: block;
  height: 1px;
  margin-top: 8px;
  width: 54px;
}

#product .product-discounts__cards {
  display: grid;
  gap: 12px;
}

#product .product-discounts__card {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  font-family: Georgia, serif;
  padding: 15px 17px;
}

#product .product-discounts__card:nth-child(even) {
  background: #f7eedf;
}

#product .product-discounts__benefit {
  color: #b97920;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  margin: 0 0 4px;
  text-transform: uppercase;
}

#product .product-discounts__price {
  color: #36543f;
  font-size: 17px;
  line-height: 1.35;
  margin: 0;
}

#product .product-discounts__price strong {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
}

#product .product-discounts__detail {
  color: #596053;
  font-size: 14px;
  line-height: 1.45;
  margin: 3px 0 0;
}

@media (max-width: 575px) {
  #product .product-discounts {
    margin: 18px 0;
  }

  #product .product-discounts__card {
    padding: 14px;
  }
}

#product .product-images {
  display: flex;
  gap: 10px;
  margin-top: 13px;
}

#product .product-images > li.thumb-container {
  height: auto;
  margin: 0;
  width: 82px;
}

#product .product-images > li.thumb-container .thumb {
  border: 1px solid transparent;
  border-radius: 0;
  height: 82px;
  object-fit: cover;
  padding: 0;
  width: 82px;
}

#product .product-images > li.thumb-container .thumb.selected,
#product .product-images > li.thumb-container .thumb:hover {
  border-color: #c78924;
}

#product .scroll-box-arrows .material-icons {
  color: #36543f;
}

#product .audrey-product-default-category {
  color: #b97920;
  font-family: Georgia, serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .04em;
  line-height: 1.2;
  margin: 0 0 7px;
  text-transform: uppercase;
}

#product h1.h1 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(31px, 3.1vw, 45px);
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.04;
  margin: 0 0 15px;
  text-transform: uppercase;
}

#product .product-prices {
  margin-bottom: 14px;
}

#product .product-prices .current-price-value {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 28px;
  font-weight: 600;
}

#product .product-prices .tax-shipping-delivery-label,
#product .product-prices .product-without-taxes {
  color: #6d7469;
  font-family: Georgia, serif;
  font-size: 12px;
  margin-top: 4px;
}

#product .product-information {
  background: transparent;
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.55;
}

#product .product-description {
  color: #42483e;
  font-family: Georgia, serif;
  line-height: 1.55;
}

#product .product-variants {
  border-top: 1px solid #eadac2;
  margin-top: 20px;
  padding-top: 18px;
}

#product .product-variants-item {
  margin-bottom: 16px;
}

#product .product-variants-item .control-label,
#product .product-add-to-cart > .control-label {
  color: #36543f;
  display: block;
  font-family: Georgia, serif;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 8px;
  text-transform: uppercase;
}

#product .product-variants-item .radio-label {
  background: rgba(255, 253, 248, .82);
  border: 1px solid #d8b77a;
  border-radius: 4px;
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 13px;
  margin: 0 8px 8px 0;
  padding: 8px 13px;
}

#product .product-variants-item input[type='radio']:checked + .radio-label {
  background: #36543f;
  border-color: #36543f;
  color: #fffdf8;
}

#product .product-variants-item .form-control-select {
  background-color: rgba(255, 253, 248, .86);
  border-color: #36543f;
  border-radius: 4px;
  color: #36543f;
  max-width: 360px;
}

#product .product-add-to-cart {
  border-top: 1px solid #eadac2;
  margin-top: 20px;
  padding-top: 18px;
}

#product .product-quantity {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

#product #quantity_wanted {
  background: rgba(255, 253, 248, .86);
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #36543f;
  height: 43px;
  text-align: center;
  width: 58px;
}

#product .product-add-to-cart .add .add-to-cart {
  align-items: center;
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8 !important;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 700;
  gap: 8px;
  min-height: 44px;
  padding: 10px 22px;
  text-transform: uppercase;
}

#product .product-add-to-cart .add .add-to-cart:hover,
#product .product-add-to-cart .add .add-to-cart:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
}

#product .product-add-to-cart .add .material-icons {
  align-self: center;
  display: inline-flex;
  font-size: 20px;
  line-height: 1;
  transform: translateY(-1px);
}

#product .audrey-product-reassurance {
  background: rgba(247, 238, 223, .5);
  border: 1px solid #d8b77a;
  margin: 18px 0 24px;
  padding: 13px 16px;
}

#product .audrey-product-reassurance ul {
  display: grid;
  gap: 10px 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

#product .audrey-product-reassurance li {
  align-items: center;
  color: #36543f;
  display: flex;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  gap: 8px;
  line-height: 1.3;
}

#product .audrey-product-reassurance li span {
  align-items: center;
  background: #36543f;
  border-radius: 50%;
  color: #fffdf8;
  display: inline-flex;
  flex: 0 0 19px;
  font-size: 12px;
  font-weight: 700;
  height: 19px;
  justify-content: center;
  width: 19px;
}

#product .audrey-product-media-support {
  margin-top: 20px;
}

#product .audrey-product-media-support .audrey-product-reassurance {
  margin: 0 0 14px;
}

#product .audrey-product-media-support .audrey-product-reassurance ul {
  grid-template-columns: 1fr;
}

#product .audrey-product-advice {
  align-items: center;
  background: #fffdf8;
  border: 1px solid #d8b77a;
  display: grid;
  gap: 13px 15px;
  grid-template-columns: auto minmax(0, 1fr);
  margin: 0 0 14px;
  padding: 16px;
}

#product .audrey-product-advice__icon {
  align-items: center;
  border: 1px solid #667558;
  border-radius: 50%;
  color: #36543f;
  display: inline-flex;
  flex: 0 0 38px;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 22px;
  font-weight: 700;
  height: 38px;
  justify-content: center;
  width: 38px;
}

#product .audrey-product-advice__content {
  min-width: 0;
}

#product .audrey-product-advice h2 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.1;
  margin: 0 0 4px;
}

#product .audrey-product-advice p {
  color: #4d594f;
  font-family: Georgia, serif;
  font-size: 13px;
  line-height: 1.42;
  margin: 0;
}

#product .audrey-product-advice__cta {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 12px;
  font-weight: 700;
  grid-column: 2;
  justify-self: start;
  text-decoration: underline;
  text-decoration-color: #d8b77a;
  text-underline-offset: 4px;
}

#product .audrey-product-advice__cta:hover,
#product .audrey-product-advice__cta:focus {
  color: #c78924;
}

#product .audrey-product-custom-request {
  align-items: center;
  background: #f7eedf;
  border: 1px solid #d8b77a;
  display: grid;
  gap: 15px 18px;
  grid-template-columns: auto minmax(0, 1fr);
  margin: 0 0 23px;
  padding: 17px 18px;
}

#product .audrey-product-custom-request__icon {
  align-items: center;
  border: 1px solid #c78924;
  border-radius: 50%;
  color: #c78924;
  display: inline-flex;
  flex: 0 0 43px;
  font-size: 18px;
  height: 43px;
  justify-content: center;
  width: 43px;
}

#product .audrey-product-custom-request__content {
  min-width: 0;
}

#product .audrey-product-custom-request h2 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 23px;
  font-weight: 600;
  line-height: 1.1;
  margin: 0 0 5px;
}

#product .audrey-product-custom-request p {
  color: #4d594f;
  font-family: Georgia, serif;
  font-size: 13px;
  line-height: 1.42;
  margin: 0;
}

#product .audrey-product-custom-request__cta {
  background: #36543f;
  border: 1px solid #36543f;
  color: #fffdf8 !important;
  font-family: Georgia, serif;
  font-size: 12px;
  font-weight: 700;
  grid-column: 2;
  justify-self: start;
  padding: 9px 13px;
  text-decoration: none;
  text-transform: uppercase;
}

#product .audrey-product-custom-request__cta:hover,
#product .audrey-product-custom-request__cta:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
}

@media (max-width: 767px) {
  #product .audrey-product-reassurance {
    margin: 16px 0 22px;
    padding: 13px 14px;
  }

  #product .audrey-product-reassurance ul {
    grid-template-columns: 1fr;
  }

  #product .audrey-product-media-support {
    margin-top: 16px;
  }

  #product .audrey-product-advice {
    gap: 12px;
    grid-template-columns: 36px minmax(0, 1fr);
    padding: 14px;
  }

  #product .audrey-product-advice__icon {
    flex-basis: 36px;
    height: 36px;
    width: 36px;
  }

  #product .audrey-product-advice__cta {
    grid-column: 1 / -1;
  }

  #product .audrey-product-custom-request {
    gap: 13px;
    grid-template-columns: 38px minmax(0, 1fr);
    padding: 15px;
  }

  #product .audrey-product-custom-request__icon {
    flex-basis: 38px;
    height: 38px;
    width: 38px;
  }

  #product .audrey-product-custom-request h2 {
    font-size: 21px;
  }

  #product .audrey-product-custom-request__cta {
    grid-column: 1 / -1;
    justify-self: stretch;
    text-align: center;
  }
}

#product .tabs {
  background: rgba(255, 253, 248, .9);
  border: 2px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  margin: 0 auto 38px;
  max-width: 1220px;
}

#product .tabs .nav-tabs {
  border-bottom: 1px solid #eadac2;
  display: flex;
  justify-content: center;
  padding: 0 18px;
}

#product .tabs .nav-tabs .nav-item {
  margin: 0;
}

#product .tabs .nav-tabs .nav-link {
  border: 0;
  border-bottom: 2px solid transparent;
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 700;
  padding: 15px 25px 13px;
  text-transform: uppercase;
}

#product .tabs .nav-tabs .nav-link.active,
#product .tabs .nav-tabs .nav-link:hover,
#product .tabs .nav-tabs .nav-link:focus {
  background: transparent;
  border-bottom-color: #c78924;
  color: #c78924;
}

#product .tabs .nav-tabs .nav-link:focus {
  outline: 0;
}

#product .tabs .nav-tabs .nav-link:focus-visible {
  outline: 2px solid #c78924;
  outline-offset: -3px;
}

#product .tabs .tab-content {
  color: #42483e;
  font-family: Georgia, serif;
  line-height: 1.6;
  padding: 28px clamp(20px, 4vw, 55px) 34px;
}

#product .tabs h2,
#product .tabs h3,
#product .tabs h4,
#product .tabs .h5 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 600;
}

/* Informations réglementaires réservées aux produits de la catégorie Kinder Bueno. */
#product .audrey-kinder-bueno-information__header {
  border-bottom: 1px solid #eadac2;
  margin-bottom: 25px;
  max-width: 780px;
  padding-bottom: 19px;
}

#product .audrey-kinder-bueno-information__eyebrow {
  color: #b97920;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  margin-bottom: 3px;
  text-transform: uppercase;
}

#product .audrey-kinder-bueno-information__header h2 {
  font-size: clamp(27px, 3vw, 34px);
  margin-bottom: 7px;
}

#product .audrey-kinder-bueno-information__header p:last-child,
#product .audrey-kinder-bueno-information__card p {
  margin-bottom: 0;
}

#product .audrey-kinder-bueno-information__grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#product .audrey-kinder-bueno-information__card {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  padding: 21px;
}

#product .audrey-kinder-bueno-information__card--nutrition {
  grid-row: span 2;
}

#product .audrey-kinder-bueno-information__card--allergens {
  background: #f7eedf;
  border-color: #c78924;
}

#product .audrey-kinder-bueno-information__card h3 {
  border-bottom: 1px solid #eadac2;
  font-size: 25px;
  margin-bottom: 15px;
  padding-bottom: 8px;
}

#product .audrey-kinder-bueno-information__detail,
#product .audrey-kinder-bueno-information__note {
  color: #596053;
  font-size: 13px;
  font-style: italic;
  line-height: 1.45;
}

#product .audrey-kinder-bueno-information__detail {
  margin-top: 13px !important;
}

#product .audrey-kinder-bueno-information__note {
  margin-top: 12px !important;
}

#product .audrey-kinder-bueno-information__table-wrap {
  overflow-x: auto;
}

#product .audrey-kinder-bueno-information__table {
  font-size: 14px;
  margin: 0;
  min-width: 100%;
  width: 100%;
}

#product .audrey-kinder-bueno-information__table td,
#product .audrey-kinder-bueno-information__table th {
  border-bottom: 1px solid #eadac2;
  padding: 8px 7px;
  text-align: right;
  vertical-align: top;
}

#product .audrey-kinder-bueno-information__table thead th {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 15px;
  font-weight: 700;
}

#product .audrey-kinder-bueno-information__table th:first-child {
  padding-left: 0;
  text-align: left;
}

#product .audrey-kinder-bueno-information__table td:last-child,
#product .audrey-kinder-bueno-information__table th:last-child {
  padding-right: 0;
}

#product .audrey-kinder-bueno-information__allergen-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  list-style: none;
  margin: 0 0 17px;
  padding: 0;
}

#product .audrey-kinder-bueno-information__allergen-list li {
  background: #fffdf8;
  border: 1px solid #c78924;
  color: #36543f;
  font-size: 13px;
  font-weight: 700;
  padding: 3px 9px;
}

#product .product-accessories {
  margin: 0 auto 40px;
  max-width: 1280px;
}

#product .product-accessories > .h5 {
  align-items: center;
  color: #36543f;
  display: flex;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 28px;
  font-weight: 600;
  gap: 14px;
  justify-content: center;
  margin: 0 0 20px;
}

#product .product-accessories > .h5::before,
#product .product-accessories > .h5::after {
  background: url('../img/audrey/title-arabesque.png') center / contain no-repeat;
  content: '';
  height: 16px;
  width: 90px;
}

#product .product-accessories .products.row {
  display: flex;
  flex-wrap: nowrap;
  margin-left: -9px;
  margin-right: -9px;
  overflow-x: auto;
  padding: 2px 9px 12px;
}

#product .product-accessories .products.row > article {
  flex: 0 0 25%;
  max-width: 25%;
  padding-left: 9px;
  padding-right: 9px;
}

@media (max-width: 767px) {
  #product #wrapper > .container,
  #product #content-wrapper,
  #product #main {
    padding-left: 20px;
    padding-right: 20px;
  }

  #product .product-container {
    margin-left: 0;
    margin-right: 0;
  }

  #product .product-container > .col-md-6 {
    padding-left: 0;
    padding-right: 0;
  }

  #product .product-container > .col-md-6 + .col-md-6 {
    margin-top: 28px;
  }

  #product .product-images > li.thumb-container,
  #product .product-images > li.thumb-container .thumb {
    height: 64px;
    width: 64px;
  }

  #product .tabs .nav-tabs {
    justify-content: flex-start;
    overflow-x: auto;
    white-space: nowrap;
  }

  #product .tabs .nav-tabs .nav-link {
    padding-left: 14px;
    padding-right: 14px;
  }

  #product .tabs .nav-tabs {
    display: none;
  }

  #product .tabs .tab-content {
    padding: 0;
  }

  #product .tabs .tab-content .audrey-mobile-tab-pane {
    display: block;
    opacity: 1;
    padding: 0;
  }

  #product .tabs .tab-content .audrey-mobile-tab-content[hidden] {
    display: none;
  }

  #product .audrey-mobile-tab-toggle {
    align-items: center;
    background: #fffdf8;
    border: 0;
    border-bottom: 1px solid #eadac2;
    color: #36543f;
    cursor: pointer;
    display: flex;
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-size: 20px;
    font-weight: 600;
    justify-content: space-between;
    padding: 15px 18px;
    text-align: left;
    width: 100%;
  }

  #product .audrey-mobile-tab-toggle__icon {
    align-items: center;
    border: 1px solid #c78924;
    border-radius: 50%;
    display: inline-flex;
    flex: 0 0 24px;
    height: 24px;
    justify-content: center;
    margin-left: 14px;
    position: relative;
    width: 24px;
  }

  #product .audrey-mobile-tab-toggle__icon::before,
  #product .audrey-mobile-tab-toggle__icon::after {
    background: #c78924;
    content: '';
    height: 1px;
    position: absolute;
    width: 10px;
  }

  #product .audrey-mobile-tab-toggle__icon::after {
    transform: rotate(90deg);
  }

  #product .audrey-mobile-tab-toggle[aria-expanded='true'] {
    background: #f7eedf;
    color: #b97920;
  }

  #product .audrey-mobile-tab-toggle[aria-expanded='true'] .audrey-mobile-tab-toggle__icon::after {
    display: none;
  }

  #product .audrey-mobile-tab-content > * {
    padding-left: 18px;
    padding-right: 18px;
  }

  #product .audrey-mobile-tab-content > .product-description,
  #product .audrey-mobile-tab-content > .js-product-details,
  #product .audrey-mobile-tab-content > .audrey-kinder-bueno-information,
  #product .audrey-mobile-tab-content > .product-attachments {
    padding-bottom: 22px;
    padding-top: 20px;
  }

  #product .audrey-kinder-bueno-information__grid {
    grid-template-columns: 1fr;
  }

  #product .audrey-kinder-bueno-information__card--nutrition {
    grid-row: auto;
  }

  #product .audrey-kinder-bueno-information__card {
    padding: 17px;
  }

  #product .product-accessories .products.row > article {
    flex-basis: 72%;
    max-width: 72%;
  }
}

/* Tableau des caractéristiques de la fiche produit. */
#product .js-product-details .product-features > .h6 {
  display: none;
}

#product .js-product-details .data-sheet {
  display: grid;
  gap: 7px 9px;
  grid-template-columns: minmax(220px, .9fr) minmax(0, 1.1fr);
  margin: 0;
}

#product .js-product-details .data-sheet .name,
#product .js-product-details .data-sheet .value {
  align-items: center;
  background: rgba(247, 238, 223, .82);
  border: 1px solid rgba(216, 183, 122, .3);
  border-radius: 0;
  box-sizing: border-box;
  display: flex;
  float: none !important;
  margin: 0;
  min-height: 48px;
  padding: 10px 16px;
  width: auto !important;
}

#product .js-product-details .data-sheet .name {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
  text-transform: uppercase;
}

#product .js-product-details .data-sheet .name {
  grid-column: 1;
}

#product .js-product-details .data-sheet .value {
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 16px;
  line-height: 1.35;
}

#product .js-product-details .data-sheet .value {
  grid-column: 2;
}

#product .js-product-details .data-sheet .audrey-product-feature__icon {
  color: #c78924;
  flex: 0 0 auto;
  font-size: 23px;
  font-weight: 400;
  margin-right: 13px;
}

@media (max-width: 575px) {
  #product .js-product-details .data-sheet {
    grid-template-columns: 1fr;
  }

  #product .js-product-details .data-sheet .name {
    border-bottom: 0;
    grid-column: auto;
    min-height: 43px;
  }

  #product .js-product-details .data-sheet .value {
    border-top-color: rgba(216, 183, 122, .12);
    grid-column: auto;
    margin-top: -5px;
  }
}

/* Cœur liste d'envies sur la fiche produit : même traitement que les miniatures. */
#product .wishlist-button-add {
  background: rgba(255, 253, 248, .94) !important;
  border: 1px solid #36543f !important;
  border-radius: 50% !important;
  box-shadow: 0 2px 7px rgba(54, 84, 63, .16) !important;
  height: 40px !important;
  min-width: 40px !important;
  padding: 0 !important;
  transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
  width: 40px !important;
}

#product .wishlist-button-add i {
  color: #36543f !important;
  font-size: 23px !important;
  transition: color 180ms ease;
}

#product .wishlist-button-add:hover,
#product .wishlist-button-add:focus {
  background: rgba(255, 253, 248, .94) !important;
  border-color: #c78924 !important;
  box-shadow: 0 3px 9px rgba(199, 137, 36, .2) !important;
  outline: 0;
  transform: translateY(-1px);
}

#product .wishlist-button-add:hover i,
#product .wishlist-button-add:focus i {
  color: #c78924 !important;
}

#product .wishlist-button-add:focus-visible {
  box-shadow: 0 0 0 3px rgba(199, 137, 36, .26) !important;
}

/* Fenêtre de confirmation après ajout au panier. */
#blockcart-modal .modal-dialog {
  max-width: 820px;
}

#blockcart-modal .modal-content {
  background: #faf7ef;
  border: 1px solid #36543f;
  border-radius: 0;
  box-shadow: 0 14px 36px rgba(54, 84, 63, .2);
  color: #42483e;
  font-family: Georgia, serif;
}

#blockcart-modal .modal-header {
  align-items: center;
  border-bottom: 1px solid #eadac2;
  display: flex;
  justify-content: center;
  min-height: 64px;
  padding: 16px 52px 16px 24px;
  position: relative;
}

#blockcart-modal .modal-title {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.2;
  margin: 0;
}

#blockcart-modal .modal-title .material-icons {
  color: #c78924;
  font-size: 25px;
  margin-right: 9px;
  vertical-align: -4px;
}

#blockcart-modal .modal-header .close {
  color: #36543f;
  opacity: 1;
  position: absolute;
  right: 18px;
  text-shadow: none;
  top: 18px;
  transition: color .2s ease, transform .2s ease;
}

#blockcart-modal .modal-header .close:hover,
#blockcart-modal .modal-header .close:focus {
  color: #c78924;
  opacity: 1;
  outline: 0;
  transform: rotate(90deg);
}

#blockcart-modal .modal-body {
  padding: 30px 34px 34px;
}

#blockcart-modal .modal-body .divide-right {
  border-color: #eadac2;
}

#blockcart-modal .product-image {
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 0;
  display: block;
  height: auto;
  max-width: 100%;
  padding: 3px;
}

#blockcart-modal .product-name {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.08;
  margin-bottom: 7px;
}

#blockcart-modal .product-price {
  color: #c78924;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
  font-weight: 600;
  margin-bottom: 15px;
}

#blockcart-modal .product-quantity,
#blockcart-modal .divide-right span {
  color: #42483e;
  font-size: 14px;
  line-height: 1.5;
}

#blockcart-modal .cart-content {
  color: #42483e;
}

#blockcart-modal .cart-products-count {
  color: #36543f;
  font-size: 16px;
  margin-bottom: 16px;
}

#blockcart-modal .cart-content > p {
  align-items: center;
  display: flex;
  font-size: 15px;
  justify-content: space-between;
  margin: 0;
  padding: 7px 10px;
}

#blockcart-modal .cart-content > p .value {
  color: #36543f;
  font-weight: 700;
}

#blockcart-modal .cart-content > .product-total {
  background: rgba(247, 238, 223, .9);
  border-top: 1px solid #eadac2;
  color: #36543f;
  font-weight: 700;
  margin-top: 5px;
}

#blockcart-modal .cart-content-btn {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
  margin-top: 20px;
}

#blockcart-modal .cart-content-btn .btn {
  border-radius: 4px;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  padding: 10px 16px;
  text-transform: uppercase;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

#blockcart-modal .cart-content-btn .btn-secondary {
  background: transparent;
  border: 1px solid #36543f;
  color: #36543f;
}

#blockcart-modal .cart-content-btn .btn-secondary:hover,
#blockcart-modal .cart-content-btn .btn-secondary:focus {
  background: #f5ead7;
  border-color: #c78924;
  color: #c78924;
  outline: 0;
}

#blockcart-modal .cart-content-btn .btn-primary {
  background: #36543f;
  border: 1px solid #36543f;
  color: #fffdf8;
}

#blockcart-modal .cart-content-btn .btn-primary:hover,
#blockcart-modal .cart-content-btn .btn-primary:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8;
  outline: 0;
}

#blockcart-modal .cart-content-btn .btn-primary .material-icons {
  font-size: 18px;
  margin-right: 6px;
  vertical-align: -3px;
}

@media (max-width: 767px) {
  #blockcart-modal .modal-body {
    padding: 22px 20px 24px;
  }

  #blockcart-modal .modal-title {
    font-size: 21px;
  }

  #blockcart-modal .product-image {
    margin: 0 auto 16px;
    max-width: 180px;
  }

  #blockcart-modal .cart-content {
    border-top: 1px solid #eadac2;
    margin-top: 20px;
    padding-top: 18px;
  }

  #blockcart-modal .cart-content-btn .btn {
    flex: 1 1 100%;
  }
}

/* État rempli du panier dans l'en-tête : supprime le turquoise natif. */
#header .blockcart.cart-preview.active,
#header .blockcart.cart-preview.active .header,
#header .blockcart.cart-preview.active a {
  background: transparent !important;
}

#header .blockcart.cart-preview.active {
  color: #36543f;
}

#header .blockcart.cart-preview.active a {
  color: #36543f !important;
}

#header .blockcart.cart-preview.active .shopping-cart,
#header .blockcart.cart-preview.active .cart-products-count {
  color: #36543f !important;
}

#header .blockcart.cart-preview.active a:hover,
#header .blockcart.cart-preview.active a:focus,
#header .blockcart.cart-preview.active a:hover .shopping-cart,
#header .blockcart.cart-preview.active a:focus .shopping-cart,
#header .blockcart.cart-preview.active a:hover .cart-products-count,
#header .blockcart.cart-preview.active a:focus .cart-products-count {
  color: #c78924 !important;
  outline: 0;
}

/* Page panier. */
#cart #main {
  color: #42483e;
  font-family: Georgia, serif;
}

#cart .cart-grid {
  align-items: flex-start;
  margin-top: 14px;
}

#cart .cart-container,
#cart .cart-summary {
  background: rgba(255, 253, 248, .86);
  border: 1px solid #36543f;
  border-radius: 0;
  box-shadow: none;
}

#cart .cart-container > .card-block:first-child {
  padding: 22px 26px 16px;
}

#cart .cart-container h1.h1 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(31px, 3vw, 42px);
  font-weight: 600;
  line-height: 1;
  margin: 0;
}

#cart .cart-container .separator {
  border-color: #eadac2;
  margin: 0 26px;
}

#cart .cart-overview {
  padding: 8px 26px 16px;
}

#cart .cart-items {
  margin: 0;
}

#cart .cart-item {
  border-bottom: 1px solid #eadac2;
  padding: 18px 0;
}

#cart .cart-item:last-child {
  border-bottom: 0;
}

#cart .product-image {
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 0;
  display: block;
  overflow: hidden;
  padding: 3px;
}

#cart .product-image img {
  aspect-ratio: 1 / 1;
  display: block;
  object-fit: cover;
  width: 100%;
}

#cart .product-line-info .label,
#cart .product-line-info .value {
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 14px;
  line-height: 1.45;
}

#cart .product-line-info > a.label {
  color: #36543f;
  display: inline-block;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.08;
  margin-bottom: 8px;
  text-decoration: none;
}

#cart .product-line-info > a.label:hover,
#cart .product-line-info > a.label:focus {
  color: #c78924;
  outline: 0;
}

#cart .product-line-info.product-price {
  color: #c78924;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  margin: 0;
}

#cart .product-line-info.product-price .regular-price {
  color: #806f54;
  font-family: Georgia, serif;
  font-size: 13px;
}

#cart .product-line-actions input.js-cart-line-product-quantity {
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 16px;
  height: 38px;
  min-width: 58px;
  padding: 6px;
  text-align: center;
}

#cart .product-line-actions input.js-cart-line-product-quantity:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .2);
  outline: 0;
}

#cart .product-line-actions .price {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
  padding-top: 7px;
  text-align: right;
}

#cart .cart-line-product-actions .remove-from-cart {
  align-items: center;
  background: transparent;
  border: 1px solid #36543f;
  border-radius: 50%;
  color: #36543f;
  display: inline-flex;
  height: 32px;
  justify-content: center;
  text-decoration: none;
  transition: border-color .2s ease, color .2s ease;
  width: 32px;
}

#cart .cart-line-product-actions .remove-from-cart:hover,
#cart .cart-line-product-actions .remove-from-cart:focus {
  border-color: #c78924;
  color: #c78924;
  outline: 0;
}

#cart .cart-line-product-actions .remove-from-cart .material-icons {
  color: inherit;
  font-size: 19px;
  margin: 0;
}

#cart .cart-grid-body > .label {
  color: #36543f;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 14px;
  margin: 18px 0 0;
  text-decoration: none;
}

#cart .cart-grid-body > .label:hover,
#cart .cart-grid-body > .label:focus {
  color: #c78924;
  outline: 0;
}

#cart .cart-grid-body > .label .material-icons {
  font-size: 20px;
  margin-right: 3px;
}

#cart .cart-summary {
  padding-top: 4px;
}

#cart .cart-summary .card-block {
  padding: 18px 22px;
}

#cart .cart-summary-line {
  align-items: center;
  color: #42483e;
  display: flex;
  font-family: Georgia, serif;
  font-size: 15px;
  justify-content: space-between;
  padding: 8px 0;
}

#cart .cart-summary-line .value {
  color: #36543f;
  font-weight: 700;
}

/* La ligne Livraison contient parfois un troisième élément vide, qui décale
 * son montant au centre au lieu de l'aligner sur les autres valeurs. */
#cart #cart-subtotal-shipping > div:has(.value:empty) {
  display: none;
}

#cart .cart-summary-line.cart-total,
#cart .cart-summary .cart-detailed-total {
  background: rgba(247, 238, 223, .9);
  border-bottom: 1px solid #eadac2;
  border-top: 1px solid #eadac2;
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
  font-weight: 600;
  margin: 3px 0;
  padding: 12px 22px;
}

#cart .cart-detailed-actions {
  border-top: 0;
  padding-top: 10px;
}

#cart .cart-detailed-actions .btn-primary {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8 !important;
  font-family: Georgia, serif;
  font-size: 14px;
  font-weight: 600;
  padding: 12px 18px;
  text-transform: uppercase;
  transition: background-color .2s ease, border-color .2s ease;
  width: 100%;
}

#cart .cart-detailed-actions .btn-primary:hover,
#cart .cart-detailed-actions .btn-primary:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
  outline: 0;
}

/* Panier mobile : total et passage de commande toujours accessibles. */
@media (max-width: 767px) {
  body#cart {
    padding-bottom: calc(76px + env(safe-area-inset-bottom));
  }

  body#cart::after {
    background: #fffdf8;
    border-top: 1px solid #d8b77a;
    bottom: 0;
    box-shadow: 0 -5px 14px rgba(54, 84, 63, .1);
    content: '';
    height: calc(76px + env(safe-area-inset-bottom));
    left: 0;
    position: fixed;
    right: 0;
    z-index: 1049;
  }

  #cart .cart-summary-totals .cart-summary-line.cart-total {
    align-items: flex-start;
    background: #fffdf8;
    border: 0;
    bottom: 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    height: 76px;
    justify-content: center;
    left: 0;
    margin: 0;
    padding: 8px 12px;
    position: fixed;
    width: 43%;
    z-index: 1050;
  }

  #cart .cart-summary-totals .cart-summary-line.cart-total .label {
    color: #36543f;
    font-family: Georgia, serif;
    font-size: 11px;
    line-height: 1.1;
  }

  #cart .cart-summary-totals .cart-summary-line.cart-total .value {
    color: #36543f;
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-size: clamp(21px, 6.5vw, 28px);
    line-height: 1.05;
    white-space: nowrap;
  }

  #cart .cart-detailed-actions > .text-sm-center {
    background: #fffdf8;
    bottom: 0;
    box-sizing: border-box;
    height: 76px;
    padding: 10px 12px;
    position: fixed;
    right: 0;
    width: 57%;
    z-index: 1051;
  }

  #cart .cart-detailed-actions > .text-sm-center .btn-primary {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    min-height: 56px;
    padding: 10px 12px;
  }
}

#cart .cart-summary .cart-voucher,
#cart .cart-summary .promo-discounts {
  border-top: 1px solid #eadac2;
  margin: 0 22px;
  padding: 16px 0;
}

#cart .cart-summary input,
#cart .cart-summary .promo-input {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  color: #42483e;
}

#cart .cart-summary input:focus,
#cart .cart-summary .promo-input:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .2);
  outline: 0;
}

#cart .cart-voucher .collapse-button {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 14px;
  text-decoration: underline;
}

#cart .cart-voucher .collapse-button:hover,
#cart .cart-voucher .collapse-button:focus {
  color: #c78924;
  outline: 0;
}

#cart .cart-voucher form {
  display: flex;
  gap: 8px;
}

#cart .cart-voucher form .promo-input {
  min-width: 0;
}

#cart .cart-voucher form .btn-primary {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8 !important;
  font-family: Georgia, serif;
  font-size: 13px;
  padding: 8px 12px;
}

#cart .cart-voucher form .btn-primary:hover,
#cart .cart-voucher form .btn-primary:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
  outline: 0;
}

@media (max-width: 991px) {
  #cart .cart-grid-right {
    margin-top: 20px;
  }
}

@media (max-width: 575px) {
  #cart .cart-container > .card-block:first-child {
    padding: 18px 16px 14px;
  }

  #cart .cart-container .separator {
    margin: 0 16px;
  }

  #cart .cart-overview {
    padding: 6px 16px 12px;
  }

  #cart .product-line-info > a.label {
    font-size: 18px;
  }

  #cart .product-line-actions {
    margin-top: 12px;
  }

  #cart .product-line-actions .price {
    text-align: left;
  }
}

/* Étapes du tunnel de commande. */
body#checkout #content {
  background: transparent;
}

body#checkout .checkout-step {
  background: rgba(255, 253, 248, .86);
  border: 1px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  margin: 0 0 15px;
  overflow: hidden;
}

body#checkout .checkout-step .step-title {
  align-items: center;
  background: rgba(247, 238, 223, .62);
  color: #36543f;
  display: flex;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.1;
  margin: 0;
  min-height: 60px;
  padding: 13px 20px;
}

body#checkout .checkout-step .step-number,
body#checkout .checkout-step .done {
  align-items: center;
  border: 1px solid #36543f;
  border-radius: 50%;
  box-sizing: border-box;
  color: #36543f;
  display: inline-flex;
  flex: 0 0 30px;
  float: none !important;
  font-family: Georgia, serif;
  font-size: 14px;
  height: 30px;
  justify-content: center;
  line-height: 1 !important;
  margin-right: 11px;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  position: static !important;
  width: 30px;
}

body#checkout .checkout-step .done {
  display: none;
  font-family: 'Material Icons';
  font-size: 18px;
  text-align: center;
}

body#checkout .checkout-step.-complete .done {
  background: #36543f;
  border-color: #36543f;
  color: #fffdf8;
  display: inline-flex;
}

body#checkout .checkout-step.-complete .step-number {
  display: none;
}

body#checkout .checkout-step.-current {
  border-color: #36543f;
}

body#checkout .checkout-step.-current .step-title {
  background: #36543f;
  color: #fffdf8;
}

body#checkout .checkout-step.-current .step-number {
  border-color: #fffdf8;
  color: #fffdf8;
}

body#checkout .checkout-step.-current .step-edit {
  color: #fffdf8 !important;
}

body#checkout .checkout-step .step-edit {
  color: #36543f !important;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 400;
  margin-left: auto;
  text-decoration: underline;
}

body#checkout .checkout-step .step-edit:hover,
body#checkout .checkout-step .step-edit:focus {
  color: #c78924 !important;
  outline: 0;
}

body#checkout .checkout-step .step-edit .material-icons {
  color: inherit;
  font-size: 17px;
  margin-right: 3px;
  vertical-align: -3px;
}

body#checkout .checkout-step .content {
  color: #42483e;
  font-family: Georgia, serif;
  padding: 22px 24px 24px;
}

body#checkout .checkout-step .content .form-control,
body#checkout .checkout-step .content .form-control-select,
body#checkout .checkout-step .content input[type='text'],
body#checkout .checkout-step .content input[type='email'],
body#checkout .checkout-step .content input[type='password'],
body#checkout .checkout-step .content select {
  background-color: #fffdf8;
  border-color: #d8b77a;
  border-radius: 4px;
  color: #42483e;
}

body#checkout .checkout-step .content .form-control:focus,
body#checkout .checkout-step .content .form-control-select:focus,
body#checkout .checkout-step .content input:focus,
body#checkout .checkout-step .content select:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .2);
  outline: 0;
}

body#checkout .checkout-step .content .btn-primary,
body#checkout .checkout-step .content button[type='submit'] {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8 !important;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  padding: 10px 16px;
  text-transform: uppercase;
}

body#checkout .checkout-step .content .btn-primary:hover,
body#checkout .checkout-step .content .btn-primary:focus,
body#checkout .checkout-step .content button[type='submit']:hover,
body#checkout .checkout-step .content button[type='submit']:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
  outline: 0;
}

body#checkout .checkout-step .content a {
  color: #36543f;
}

body#checkout .checkout-step .content a:hover,
body#checkout .checkout-step .content a:focus {
  color: #c78924;
}

body#checkout .cart-summary {
  background: rgba(255, 253, 248, .86);
  border: 1px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  color: #42483e;
  font-family: Georgia, serif;
}

body#checkout .cart-summary .cart-summary-line {
  color: #42483e;
}

body#checkout .cart-summary .cart-summary-line .value {
  color: #36543f;
  font-weight: 700;
}

/* Résumé latéral de la commande. */
body#checkout #js-checkout-summary {
  background: rgba(255, 253, 248, .86);
  border: 1px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  color: #42483e;
  font-family: Georgia, serif;
  margin: 0;
  overflow: hidden;
}

body#checkout #js-checkout-summary > .card-block {
  padding: 22px 22px 8px;
}

body#checkout #js-checkout-summary .cart-summary-products > p {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 10px;
}

body#checkout #js-checkout-summary .js-show-details {
  align-items: center;
  color: #36543f;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 14px;
  gap: 3px;
  text-decoration: none;
}

body#checkout #js-checkout-summary .js-show-details:hover,
body#checkout #js-checkout-summary .js-show-details:focus {
  color: #c78924;
}

body#checkout #js-checkout-summary .js-show-details .material-icons {
  color: inherit;
  font-size: 20px;
}

body#checkout #js-checkout-summary .media-list {
  border-bottom: 1px solid #d8b77a;
  list-style: none;
  margin: 14px 0 16px;
  padding: 0 0 12px;
}

body#checkout #js-checkout-summary .media-list .media {
  align-items: flex-start;
  border: 0;
  display: flex;
  margin: 0 0 13px;
  padding: 0;
}

body#checkout #js-checkout-summary .media-list .media:last-child {
  margin-bottom: 0;
}

body#checkout #js-checkout-summary .media-left {
  flex: 0 0 58px;
  margin-right: 11px;
}

body#checkout #js-checkout-summary .media-object {
  background: #fffdf8;
  display: block;
  height: 58px;
  object-fit: cover;
  width: 58px;
}

body#checkout #js-checkout-summary .media-body {
  color: #42483e;
  flex: 1 1 auto;
  font-family: Georgia, serif;
  font-size: 14px;
  line-height: 1.35;
  min-width: 0;
}

body#checkout #js-checkout-summary .product-name {
  display: block;
  font-weight: 600;
  padding-right: 68px;
}

body#checkout #js-checkout-summary .product-name a {
  color: #36543f;
}

body#checkout #js-checkout-summary .product-name a:hover,
body#checkout #js-checkout-summary .product-name a:focus {
  color: #c78924;
}

body#checkout #js-checkout-summary .product-quantity {
  color: #42483e;
  display: block;
  font-weight: 600;
}

body#checkout #js-checkout-summary .product-price {
  color: #c78924;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 18px;
  font-weight: 600;
  margin-top: -22px;
}

body#checkout #js-checkout-summary .product-line-info {
  color: #6b7167;
  font-size: 13px;
  margin-top: 3px;
}

body#checkout #js-checkout-summary .cart-summary-subtotals-container,
body#checkout #js-checkout-summary .cart-summary-totals {
  background: transparent;
  border: 0;
  margin: 0;
  padding: 0;
}

body#checkout #js-checkout-summary .cart-summary-line {
  align-items: center;
  color: #42483e;
  display: flex;
  font-family: Georgia, serif;
  font-size: 16px;
  justify-content: space-between;
  margin: 0;
  padding: 6px 0;
}

body#checkout #js-checkout-summary .cart-summary-line .value {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 19px;
  font-weight: 700;
}

/* Le module laisse parfois un troisième bloc vide sous « Livraison » : une
 * fois retiré, la valeur retrouve l'alignement des autres montants. */
body#checkout #js-checkout-summary #cart-subtotal-shipping > div:has(.value:empty) {
  display: none;
}

body#checkout #js-checkout-summary .cart-summary-totals {
  border-top: 1px solid #d8b77a;
  margin: 14px 22px 0;
  padding: 14px 0 17px;
}

body#checkout #js-checkout-summary .cart-summary-line.cart-total {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
  font-weight: 700;
  padding: 0;
}

body#checkout #js-checkout-summary .cart-summary-line.cart-total .value {
  color: #36543f;
  font-size: 23px;
}

body#checkout #js-checkout-summary .block-promo {
  background: rgba(247, 238, 223, .5);
  border-top: 1px solid #d8b77a;
  margin: 0;
  padding: 15px 22px 18px;
  text-align: center;
}

body#checkout #js-checkout-summary .promo-code-button .collapse-button,
body#checkout #js-checkout-summary .collapse-button {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 14px;
}

body#checkout #js-checkout-summary .promo-code-button .collapse-button:hover,
body#checkout #js-checkout-summary .promo-code-button .collapse-button:focus,
body#checkout #js-checkout-summary .collapse-button:hover,
body#checkout #js-checkout-summary .collapse-button:focus {
  color: #c78924;
}

body#checkout #js-checkout-summary .promo-code form {
  display: flex;
  gap: 7px;
  margin-top: 10px;
}

body#checkout #js-checkout-summary .promo-input {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  color: #42483e;
  min-width: 0;
  padding: 8px 10px;
}

body#checkout #js-checkout-summary .promo-input:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .2);
  outline: 0;
}

body#checkout #js-checkout-summary .promo-code .btn-primary {
  flex: 0 0 auto;
  min-width: 0;
  padding: 8px 12px;
}

/* La police Material Icons embarquée par PrestaShop ne propose pas monitor_weight. */
#product .audrey-product-feature.feature-id-15 .audrey-product-feature__icon {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 24px;
  font-weight: 400;
  line-height: 1;
}

/* Choix du transporteur. */
body#checkout .delivery-options {
  margin: 0;
}

body#checkout .delivery-option {
  align-items: stretch;
  background: rgba(247, 238, 223, .58);
  border: 1px solid #d8b77a;
  border-radius: 0;
  display: flex;
  margin: 0 0 10px;
  min-height: 92px;
  padding: 12px 10px;
  transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

body#checkout .delivery-option:hover {
  background: rgba(245, 234, 215, .82);
  border-color: #c78924;
}

body#checkout .delivery-option:has(input[type='radio']:checked) {
  background: rgba(232, 241, 229, .7);
  border-color: #36543f;
  box-shadow: inset 3px 0 0 #36543f;
}

body#checkout .delivery-option .custom-radio {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  margin: 0;
}

body#checkout .delivery-option .custom-radio input[type='radio'] + span {
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 50%;
  box-sizing: border-box;
  display: block;
  height: 20px;
  margin: 0;
  padding: 0;
  position: relative;
  width: 20px;
}

body#checkout .delivery-option .custom-radio input[type='radio']:checked + span {
  background: #fffdf8;
  border-color: #c78924;
}

body#checkout .delivery-option .custom-radio input[type='radio']:checked + span::after {
  background: #c78924;
  border-radius: 50%;
  content: '';
  height: 10px;
  left: 4px;
  position: absolute;
  top: 4px;
  width: 10px;
}

body#checkout .delivery-option .custom-radio input[type='radio']:focus + span {
  box-shadow: 0 0 0 3px rgba(199, 137, 36, .2);
}

body#checkout .delivery-option .delivery-option-2 {
  align-items: center;
  color: #42483e;
  cursor: pointer;
  display: flex;
  margin: 0;
  padding: 0 8px;
}

body#checkout .delivery-option .delivery-option-2 > .row {
  align-items: center;
  display: flex;
  width: 100%;
}

body#checkout .delivery-option .carrier {
  align-items: center;
  display: flex;
}

body#checkout .delivery-option .carrier-logo {
  align-items: center;
  display: flex;
  justify-content: center;
}

body#checkout .delivery-option .carrier-logo img {
  display: block;
  max-height: 42px;
  max-width: 88px;
  object-fit: contain;
  width: auto;
}

body#checkout .delivery-option .carrier-name {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.08;
}

body#checkout .delivery-option .carrier-delay {
  color: #42483e;
  display: block;
  font-family: Georgia, serif;
  font-size: 14px;
  line-height: 1.4;
}

body#checkout .delivery-option .carrier-price {
  color: #c78924;
  display: block;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 19px;
  font-weight: 600;
  text-align: right;
}

body#checkout .carrier-extra-content {
  background: rgba(255, 253, 248, .86);
  border: 1px solid #d8b77a;
  border-top: 0;
  color: #42483e;
  font-family: Georgia, serif;
  margin: -10px 0 10px;
  padding: 16px 20px;
}

body#checkout .order-options {
  background: rgba(247, 238, 223, .48);
  border: 1px solid #d8b77a;
  margin-top: 18px;
  padding: 16px 18px;
}

body#checkout .order-options label {
  color: #36543f;
  font-family: Georgia, serif;
}

body#checkout .order-options textarea {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  color: #42483e;
  max-width: 100%;
  padding: 9px 11px;
  width: 100%;
}

body#checkout .order-options textarea:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .2);
  outline: 0;
}

body#checkout #checkout-delivery-step .order-options {
  margin-bottom: 20px;
}

body#checkout #checkout-delivery-step .order-options + .continue {
  clear: both;
  margin-top: 4px;
}

/* Étape de paiement. */
body#checkout .payment-options {
  margin: 0 0 20px;
}

body#checkout .payment-option {
  align-items: center;
  background: rgba(247, 238, 223, .58);
  border: 1px solid #d8b77a;
  display: flex;
  margin: 0 0 10px;
  min-height: 62px;
  padding: 11px 16px;
  transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

body#checkout .payment-option:hover,
body#checkout .payment-option:has(input[type='radio']:checked) {
  background: rgba(232, 241, 229, .68);
  border-color: #36543f;
}

body#checkout .payment-option:has(input[type='radio']:checked) {
  box-shadow: inset 3px 0 0 #36543f;
}

body#checkout .payment-option .custom-radio {
  align-items: center;
  display: inline-flex;
  flex: 0 0 24px;
  justify-content: center;
  margin: 0 10px 0 0;
}

body#checkout .payment-option .custom-radio input[type='radio'] + span {
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 50%;
  box-sizing: border-box;
  display: block;
  height: 20px;
  margin: 0;
  padding: 0;
  position: relative;
  width: 20px;
}

body#checkout .payment-option .custom-radio input[type='radio']:checked + span {
  border-color: #c78924;
}

body#checkout .payment-option .custom-radio input[type='radio']:checked + span::after {
  background: #c78924;
  border-radius: 50%;
  content: '';
  height: 10px;
  left: 4px;
  position: absolute;
  top: 4px;
  width: 10px;
}

body#checkout .payment-option .custom-radio input[type='radio']:focus + span {
  box-shadow: 0 0 0 3px rgba(199, 137, 36, .2);
}

body#checkout .payment-option label {
  align-items: center;
  color: #36543f;
  cursor: pointer;
  display: flex;
  flex: 1 1 auto;
  font-family: Georgia, serif;
  font-size: 16px;
  font-weight: 600;
  gap: 14px;
  line-height: 1.3;
  margin: 0;
}

body#checkout .payment-option label img {
  display: block;
  margin-left: auto;
  max-height: 34px;
  max-width: 110px;
  object-fit: contain;
  width: auto;
}

body#checkout .payment-options .additional-information,
body#checkout .payment-options .js-payment-option-form {
  background: rgba(255, 253, 248, .86);
  border: 1px solid #d8b77a;
  border-top: 0;
  color: #42483e;
  font-family: Georgia, serif;
  margin: -10px 0 10px;
  padding: 14px 18px;
}

/* Les moyens de paiement sans formulaire visible conservent un formulaire
 * technique pour la validation, mais n'affichent plus de cadre vide. */
body#checkout .payment-options .js-payment-option-form.payment-option-form--hidden-submit {
  display: none !important;
}

body#checkout #conditions-to-approve {
  background: rgba(247, 238, 223, .48);
  border: 1px solid #d8b77a;
  margin: 20px 0;
  padding: 14px 17px;
}

body#checkout #conditions-to-approve ul,
body#checkout #conditions-to-approve li {
  list-style: none;
  margin: 0;
  padding: 0;
}

body#checkout #conditions-to-approve li {
  align-items: flex-start;
  display: flex;
}

body#checkout #conditions-to-approve .custom-checkbox {
  display: inline-flex;
  margin: 2px 10px 0 0;
}

body#checkout #conditions-to-approve .custom-checkbox input + span {
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 2px;
  height: 18px;
  width: 18px;
}

body#checkout #conditions-to-approve .custom-checkbox input:checked + span {
  background: #fffdf8;
  border-color: #36543f;
}

body#checkout #conditions-to-approve .custom-checkbox input:checked + span .checkbox-checked {
  color: #36543f !important;
}

body#checkout #conditions-to-approve .custom-checkbox input:focus + span {
  box-shadow: 0 0 0 3px rgba(199, 137, 36, .2);
}

body#checkout #conditions-to-approve .condition-label {
  color: #42483e;
  font-family: Georgia, serif;
  line-height: 1.45;
}

body#checkout #conditions-to-approve a {
  color: #36543f;
  text-decoration: underline;
  text-decoration-color: #36543f;
  text-underline-offset: 3px;
}

body#checkout #conditions-to-approve a:hover,
body#checkout #conditions-to-approve a:focus {
  color: #c78924;
  text-decoration-color: #c78924;
}

body#checkout #order-summary-content {
  background: rgba(247, 238, 223, .48);
  border: 1px solid #d8b77a;
  color: #42483e;
  font-family: Georgia, serif;
  margin: 22px 0;
  padding: 22px;
}

body#checkout #order-summary-content .h4,
body#checkout #order-summary-content .h5 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 600;
}

body#checkout #order-summary-content .card,
body#checkout #order-summary-content .card-block {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding-left: 0;
  padding-right: 0;
}

body#checkout #order-summary-content .summary-selected-carrier {
  background: rgba(255, 253, 248, .86);
  border: 1px solid #d8b77a;
  margin: 8px 0 20px;
  padding: 12px;
}

body#checkout #order-summary-content .summary-selected-carrier .row {
  align-items: center;
}

body#checkout #order-summary-content .summary-selected-carrier img {
  display: block;
  max-height: 40px;
  max-width: 88px;
}

body#checkout #order-summary-content .summary-selected-carrier .carrier-name {
  color: #36543f;
  font-weight: 700;
}

body#checkout #payment-confirmation {
  margin-top: 20px;
}

body#checkout #payment-confirmation .btn {
  min-width: 180px;
}

/* Pastilles des étapes : neutralise les tailles et couleurs imposées par PrestaShop. */
body#checkout .checkout-step .step-title {
  align-items: center;
  display: flex;
}

body#checkout .checkout-step .step-number,
body#checkout .checkout-step .done {
  align-items: center;
  align-self: center;
  aspect-ratio: 1 / 1;
  box-sizing: border-box;
  display: inline-flex;
  flex: 0 0 32px;
  height: 32px !important;
  justify-content: center;
  line-height: 1 !important;
  margin: 0 12px 0 0 !important;
  min-height: 32px;
  min-width: 32px;
  padding: 0 !important;
  position: static !important;
  text-align: center;
  vertical-align: middle;
  width: 32px !important;
}

body#checkout .checkout-step .step-number {
  background: #fffdf8 !important;
  border: 1px solid #9aa99c;
  border-radius: 50% !important;
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 14px;
  font-weight: 400;
}

body#checkout .checkout-step .done {
  background: #36543f !important;
  border: 1px solid #36543f;
  border-radius: 50% !important;
  color: #fffdf8;
  font-family: 'Material Icons' !important;
  font-size: 18px;
  font-weight: normal;
}

body#checkout .checkout-step.-current .step-number {
  background: #c78924 !important;
  border-color: #c78924;
  color: #fffdf8;
}

body#checkout .checkout-step .step-edit {
  margin-left: auto;
}

/* Sélection des adresses pendant la commande. */
body#checkout .address-selector {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  margin: 14px 0 18px;
}

body#checkout .address-selector .address-item {
  background: rgba(255, 253, 248, .86);
  border: 1px solid #d8b77a;
  border-radius: 0;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  margin: 0;
  min-height: 250px;
  overflow: hidden;
  transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

body#checkout .address-selector .address-item:hover {
  background: rgba(247, 238, 223, .72);
  border-color: #c78924;
}

body#checkout .address-selector .address-item.selected {
  background: rgba(232, 241, 229, .58);
  border-color: #36543f;
  box-shadow: inset 3px 0 0 #36543f;
}

body#checkout .address-selector .address-item header {
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.4;
  margin: 0;
  padding: 18px 20px 14px;
}

body#checkout .address-selector .address-item .radio-block {
  cursor: pointer;
  display: block;
  margin: 0;
}

body#checkout .address-selector .address-item .custom-radio {
  display: inline-flex;
  margin: 2px 10px 0 0;
  vertical-align: top;
}

body#checkout .address-selector .address-item .custom-radio input[type='radio'] + span {
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 50%;
  box-sizing: border-box;
  display: block;
  height: 20px;
  margin: 0;
  padding: 0;
  position: relative;
  width: 20px;
}

body#checkout .address-selector .address-item .custom-radio input[type='radio']:checked + span {
  border-color: #c78924;
}

body#checkout .address-selector .address-item .custom-radio input[type='radio']:checked + span::after {
  background: #c78924;
  border-radius: 50%;
  content: '';
  height: 10px;
  left: 4px;
  position: absolute;
  top: 4px;
  width: 10px;
}

body#checkout .address-selector .address-item .custom-radio input[type='radio']:focus + span {
  box-shadow: 0 0 0 3px rgba(199, 137, 36, .2);
}

body#checkout .address-selector .address-item .address-alias {
  color: #36543f;
  display: inline;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 23px;
  font-weight: 600;
  line-height: 1.1;
}

body#checkout .address-selector .address-item .address {
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.45;
  margin: 13px 0 0 30px;
}

body#checkout .address-selector .address-item hr {
  border-color: #d8b77a;
  margin: auto 0 0;
  width: 100%;
}

body#checkout .address-selector .address-item .address-footer {
  align-items: center;
  background: rgba(247, 238, 223, .48);
  display: flex;
  gap: 20px;
  min-height: 48px;
  padding: 11px 20px;
}

body#checkout .address-selector .address-item .address-footer a {
  color: #36543f !important;
  font-family: Georgia, serif;
  font-size: 14px;
}

body#checkout .address-selector .address-item .address-footer a:hover,
body#checkout .address-selector .address-item .address-footer a:focus {
  color: #c78924 !important;
  text-decoration: none;
}

body#checkout .address-selector .address-item .address-footer .material-icons {
  color: inherit;
  font-size: 17px;
  margin-right: 4px;
  vertical-align: -3px;
}

body#checkout #checkout-addresses-step .add-address a,
body#checkout #checkout-addresses-step [data-link-action='different-invoice-address'] {
  color: #36543f;
  font-family: Georgia, serif;
  text-decoration: underline;
  text-decoration-color: #d8b77a;
  text-underline-offset: 3px;
}

body#checkout #checkout-addresses-step .add-address a:hover,
body#checkout #checkout-addresses-step .add-address a:focus,
body#checkout #checkout-addresses-step [data-link-action='different-invoice-address']:hover,
body#checkout #checkout-addresses-step [data-link-action='different-invoice-address']:focus {
  color: #c78924;
}

body#checkout #checkout-addresses-step .add-address .material-icons {
  color: inherit;
  font-size: 18px;
  margin-right: 4px;
  vertical-align: -4px;
}

/* Le composant natif ajoute une seconde pastille : on conserve un seul indicateur. */
body#checkout .delivery-option .custom-radio,
body#checkout .payment-option .custom-radio,
body#checkout .address-selector .address-item .custom-radio {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-sizing: border-box;
  height: 20px !important;
  overflow: visible;
  padding: 0 !important;
  position: relative !important;
  width: 20px !important;
}

body#checkout .delivery-option .custom-radio input[type='radio'],
body#checkout .payment-option .custom-radio input[type='radio'],
body#checkout .address-selector .address-item .custom-radio input[type='radio'] {
  appearance: none;
  cursor: pointer;
  height: 20px !important;
  inset: 0;
  margin: 0 !important;
  opacity: 0 !important;
  position: absolute !important;
  width: 20px !important;
  z-index: 2;
}

body#checkout .delivery-option .custom-radio input[type='radio'] + span,
body#checkout .payment-option .custom-radio input[type='radio'] + span,
body#checkout .address-selector .address-item .custom-radio input[type='radio'] + span {
  height: 20px !important;
  left: 0 !important;
  position: absolute !important;
  top: 0 !important;
  width: 20px !important;
}

/* Paiement : le parent devient l'unique pastille, le span natif est neutralisé. */
body#checkout .payment-option .custom-radio {
  background: #fffdf8 !important;
  border: 1px solid #36543f !important;
  border-radius: 50% !important;
}

body#checkout .payment-option .custom-radio input[type='radio'] + span {
  display: none !important;
}

body#checkout .payment-option .custom-radio:has(input[type='radio']:checked) {
  border-color: #c78924 !important;
}

body#checkout .payment-option .custom-radio:has(input[type='radio']:checked)::after {
  background: #c78924;
  border-radius: 50%;
  content: '';
  height: 10px;
  left: 4px;
  position: absolute;
  top: 4px;
  width: 10px;
}

/* Même rendu monobloc pour le choix d'adresse. */
body#checkout section.checkout-step .address-selector .address-item {
  border-color: #d8b77a !important;
}

body#checkout section.checkout-step .address-selector .address-item.selected {
  background: rgba(232, 241, 229, .58) !important;
  border: 3px solid #36543f !important;
  box-shadow: inset 3px 0 0 #36543f !important;
  outline: 0 !important;
}

body#checkout .address-selector .address-item .custom-radio {
  background: #fffdf8 !important;
  border: 1px solid #36543f !important;
  border-radius: 50% !important;
}

body#checkout .address-selector .address-item .custom-radio input[type='radio'] + span {
  display: none !important;
}

body#checkout .address-selector .address-item .custom-radio:has(input[type='radio']:checked) {
  border-color: #c78924 !important;
}

body#checkout .address-selector .address-item .custom-radio:has(input[type='radio']:checked)::after {
  background: #c78924;
  border-radius: 50%;
  content: '';
  height: 10px;
  left: 4px;
  position: absolute;
  top: 4px;
  width: 10px;
}

/* Les coches et chiffres sont centrés sans dépendre de la police Material Icons. */
body#checkout .checkout-step .step-number,
body#checkout .checkout-step .done {
  display: inline-grid !important;
  line-height: 32px !important;
  place-items: center;
}

body#checkout .checkout-step .done {
  font-size: 0 !important;
}

body#checkout .checkout-step .done::after {
  color: #fffdf8;
  content: '✓';
  font-family: Arial, sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1;
  transform: translateY(-1px);
}

body#checkout .checkout-step .done {
  display: none !important;
}

body#checkout .checkout-step.-complete .step-number {
  display: none !important;
}

body#checkout .checkout-step.-complete .done {
  display: inline-grid !important;
}

@media (max-width: 767px) {
  body#checkout .delivery-option {
    display: block;
    padding: 14px;
  }

  body#checkout .delivery-option > .col-sm-1 {
    height: 26px;
    padding: 0;
    width: 100%;
  }

  body#checkout .delivery-option .custom-radio {
    justify-content: flex-start;
  }

  body#checkout .delivery-option .delivery-option-2 {
    display: block;
    padding: 6px 0 0;
    width: 100%;
  }

  body#checkout .delivery-option .delivery-option-2 > .row {
    display: block;
  }

  body#checkout .delivery-option .carrier-delay,
  body#checkout .delivery-option .carrier-price {
    margin-top: 8px;
    text-align: left;
  }

  body#checkout .payment-option {
    padding: 12px;
  }

  body#checkout .payment-option label {
    font-size: 15px;
  }

  body#checkout .payment-option label img {
    max-height: 28px;
    max-width: 80px;
  }

  body#checkout #order-summary-content {
    padding: 16px 14px;
  }

  body#checkout #order-summary-content .summary-selected-carrier .carrier-price {
    margin-top: 8px;
    text-align: left;
  }

  body#checkout .address-selector {
    grid-template-columns: 1fr;
  }

  body#checkout .address-selector .address-item {
    min-height: 0;
  }

  body#checkout #js-checkout-summary > .card-block {
    padding: 17px 15px 7px;
  }

  body#checkout #js-checkout-summary .cart-summary-totals {
    margin-left: 15px;
    margin-right: 15px;
  }

  body#checkout #js-checkout-summary .block-promo {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media (max-width: 767px) {
  body#checkout .checkout-step .step-title {
    font-size: 22px;
    min-height: 54px;
    padding: 11px 14px;
  }

  body#checkout .checkout-step .content {
    padding: 18px 14px 20px;
  }

  body#checkout .checkout-step .step-edit {
    font-size: 0;
  }

  body#checkout .checkout-step .step-edit .material-icons {
    font-size: 19px;
    margin: 0;
  }

  body#checkout .cart-grid-right {
    margin-top: 18px;
  }
}

/* État vide des listes Promotions et Nouveaux produits. */
#new-products #js-product-list .page-not-found,
#prices-drop #js-product-list .page-not-found {
  background: rgba(255, 253, 248, .86);
  border: 1px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  color: #42483e;
  font-family: Georgia, serif;
  margin: 8px auto 34px;
  max-width: 840px;
  padding: 34px clamp(22px, 4vw, 52px) 38px;
  text-align: center;
}

#new-products #js-product-list .page-not-found h4,
#prices-drop #js-product-list .page-not-found h4 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(27px, 3vw, 35px);
  font-weight: 600;
  line-height: 1.08;
  margin: 0 0 12px;
}

#new-products #js-product-list .page-not-found h4::after,
#prices-drop #js-product-list .page-not-found h4::after {
  color: #c78924;
  content: '♡';
  display: block;
  font-family: Georgia, serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
  margin-top: 10px;
}

#new-products #js-product-list .page-not-found > p,
#prices-drop #js-product-list .page-not-found > p {
  color: #42483e;
  font-size: 16px;
  line-height: 1.5;
  margin: 0 auto 22px;
  max-width: 580px;
}

#new-products #js-product-list .page-not-found #search_widget,
#prices-drop #js-product-list .page-not-found #search_widget {
  float: none;
  margin: 0 auto;
  max-width: 430px;
  min-width: 0;
  overflow: visible;
  width: 100%;
}

#new-products #js-product-list .page-not-found #search_widget form,
#prices-drop #js-product-list .page-not-found #search_widget form {
  position: relative;
}

#new-products #js-product-list .page-not-found #search_widget input[type='text'],
#prices-drop #js-product-list .page-not-found #search_widget input[type='text'] {
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 16px;
  min-height: 45px;
  padding: 10px 54px 10px 14px;
  width: 100%;
}

#new-products #js-product-list .page-not-found #search_widget input[type='text']:focus,
#prices-drop #js-product-list .page-not-found #search_widget input[type='text']:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .2);
  outline: 0;
}

#new-products #js-product-list .page-not-found .audrey-search-submit,
#prices-drop #js-product-list .page-not-found .audrey-search-submit {
  align-items: center;
  background: transparent;
  border: 0;
  color: #36543f;
  display: flex;
  height: 100%;
  justify-content: center;
  padding: 0;
  position: absolute;
  right: 5px;
  top: 0;
  width: 44px;
}

#new-products #js-product-list .page-not-found .audrey-search-submit .material-icons,
#prices-drop #js-product-list .page-not-found .audrey-search-submit .material-icons {
  color: inherit;
  font-size: 23px;
}

/* La police Material Icons possède une métrique verticale propre : on centre
 * donc la loupe elle-même, et non uniquement son bouton. */
#new-products #js-product-list .page-not-found .audrey-search-submit .material-icons.search,
#prices-drop #js-product-list .page-not-found .audrey-search-submit .material-icons.search {
  left: 50% !important;
  line-height: 1 !important;
  margin: 0 !important;
  position: absolute !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
}

#new-products #js-product-list .page-not-found .audrey-search-submit:hover,
#new-products #js-product-list .page-not-found .audrey-search-submit:focus,
#prices-drop #js-product-list .page-not-found .audrey-search-submit:hover,
#prices-drop #js-product-list .page-not-found .audrey-search-submit:focus {
  color: #c78924;
  outline: 0;
}

@media (max-width: 575px) {
  #new-products #js-product-list .page-not-found,
  #prices-drop #js-product-list .page-not-found {
    margin-top: 0;
    padding: 28px 18px 30px;
  }
}

/* Correctif final : une géométrie identique pour toutes les pastilles du tunnel. */
body#checkout section.checkout-step > .step-title {
  align-items: center !important;
  display: flex !important;
}

body#checkout section.checkout-step > .step-title > .step-number,
body#checkout section.checkout-step > .step-title > .done {
  align-items: center !important;
  align-self: center !important;
  border-radius: 50% !important;
  box-sizing: border-box !important;
  flex: 0 0 32px !important;
  height: 32px !important;
  justify-content: center !important;
  line-height: 32px !important;
  margin: 0 12px 0 0 !important;
  min-height: 32px !important;
  min-width: 32px !important;
  padding: 0 !important;
  position: static !important;
  text-align: center !important;
  transform: none !important;
  vertical-align: middle !important;
  width: 32px !important;
}

body#checkout section.checkout-step:not(.-complete) > .step-title > .step-number {
  align-items: center !important;
  background: #fffdf8 !important;
  border: 1px solid #9aa99c !important;
  color: #36543f !important;
  display: inline-flex !important;
  font-family: Georgia, serif !important;
  font-size: 14px !important;
}

body#checkout section.checkout-step.-current > .step-title > .step-number {
  background: #c78924 !important;
  border-color: #c78924 !important;
  color: #fffdf8 !important;
}

body#checkout section.checkout-step > .step-title > .done {
  background: #36543f !important;
  border: 1px solid #36543f !important;
  color: transparent !important;
  display: none !important;
  font-size: 0 !important;
}

body#checkout section.checkout-step.-complete > .step-title > .done {
  display: inline-flex !important;
}

body#checkout section.checkout-step.-complete > .step-title > .done::after {
  color: #fffdf8;
  content: '✓';
  font-family: Arial, sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1;
  transform: translateY(-1px);
}

body#checkout section.checkout-step.-complete > .step-title > .step-number {
  display: none !important;
}

/* Une étape peut être à la fois terminée et active : dans ce cas, le numéro
 * reste visible comme pastille dorée plutôt que d'être remplacé par la coche. */
body#checkout section.checkout-step.-current > .step-title > .done {
  display: none !important;
}

body#checkout section.checkout-step.-current > .step-title > .step-number {
  background: #c78924 !important;
  border-color: #c78924 !important;
  color: #fffdf8 !important;
  display: inline-flex !important;
}

/* Radios de paiement : dimensions figées et point central réellement centré. */
body#checkout .payment-option .custom-radio {
  align-items: center !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  flex: 0 0 22px !important;
  height: 22px !important;
  justify-content: center !important;
  min-height: 22px !important;
  min-width: 22px !important;
  padding: 0 !important;
  width: 22px !important;
}

body#checkout .payment-option .custom-radio:has(input[type='radio']:checked)::after {
  height: 10px !important;
  left: 50% !important;
  margin: 0 !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 10px !important;
}

/* Partage de la fiche produit : les pictogrammes passent au doré au survol. */
#product .social-sharing li {
  transition: none !important;
}

#product .social-sharing li:hover,
#product .social-sharing li:focus-within {
  filter: sepia(1) saturate(4) hue-rotate(345deg) brightness(.92) !important;
}

/* La catégorie racine (ID 2) ne présente pas de sous-catégories à afficher. */
body.category-id-2 #subcategories {
  display: none !important;
}

/* Catalogue mobile : le tri et l'accès aux filtres restent centrés et visibles. */
@media (max-width: 767px) {
  #category .products-selection > .total-products,
  #new-products .products-selection > .total-products,
  #prices-drop .products-selection > .total-products {
    display: flex !important;
    justify-content: center;
    padding: 0 15px 12px;
    text-align: center;
  }

  #category .products-selection > .total-products > p,
  #new-products .products-selection > .total-products > p,
  #prices-drop .products-selection > .total-products > p {
    display: none;
  }

  #category .products-selection .audrey-category-filter-toggle,
  #new-products .products-selection .audrey-category-filter-toggle,
  #prices-drop .products-selection .audrey-category-filter-toggle {
    display: inline-flex;
    margin: 0;
  }

  #category .products-selection > .col-lg-7,
  #new-products .products-selection > .col-lg-7,
  #prices-drop .products-selection > .col-lg-7 {
    padding-left: 15px;
    padding-right: 15px;
  }

  #category .products-selection .sort-by-row,
  #new-products .products-selection .sort-by-row,
  #prices-drop .products-selection .sort-by-row {
    justify-content: center !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* Recherche des pages sans résultat : le pictogramme Material Icons est
 * visuellement plus bas que sa boîte de ligne, d'où ce léger décalage. */
.page-not-found #search_widget .audrey-search-submit {
  cursor: pointer !important;
  position: absolute !important;
}

.page-not-found #search_widget .audrey-search-submit .material-icons.search {
  left: 50% !important;
  line-height: 1 !important;
  margin: 0 !important;
  position: absolute !important;
  top: 50% !important;
  transform: translate(-50%, calc(-50% - 6px)) !important;
}

/* Bloc réutilisable des listes sans résultat (catégories, recherche, promos). */
.audrey-no-products-found {
  background: rgba(255, 253, 248, .86) !important;
  border: 1px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  color: #42483e;
  font-family: Georgia, serif;
  margin: 8px auto 34px;
  max-width: 840px;
  padding: 34px clamp(22px, 4vw, 52px) 38px;
  text-align: center;
}

/* Le conteneur historique est conservé pour les hooks, mais ne forme plus un
 * second cadre autour du composant réutilisable. */
#new-products #js-product-list > #content.page-not-found,
#prices-drop #js-product-list > #content.page-not-found,
#search #js-product-list > #content.page-not-found,
#category #js-product-list > #content.page-not-found {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
  max-width: none !important;
  padding: 0 !important;
}

.audrey-no-products-found h4 {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(27px, 3vw, 35px);
  font-weight: 600;
  line-height: 1.08;
  margin: 0 0 12px;
}

.audrey-no-products-found h4::after {
  color: #c78924;
  content: '♡';
  display: block;
  font-family: Georgia, serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
  margin-top: 10px;
}

.audrey-no-products-found p {
  color: #42483e;
  font-size: 16px;
  line-height: 1.5;
  margin: 0 auto 22px;
  max-width: 580px;
}

.audrey-no-products-found #search_widget {
  float: none;
  margin: 0 auto;
  max-width: 430px;
  min-width: 0;
  overflow: visible;
  width: 100%;
}

.audrey-no-products-found #search_widget form {
  position: relative;
}

.audrey-no-products-found #search_widget input[type='text'] {
  background: #fffdf8;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 16px;
  min-height: 45px;
  padding: 10px 54px 10px 14px;
  width: 100%;
}

.audrey-no-products-found #search_widget input[type='text']:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .2);
  outline: 0;
}

.audrey-no-products-found #search_widget .audrey-search-submit {
  align-items: center;
  background: transparent;
  border: 0;
  color: #36543f;
  cursor: pointer;
  display: flex;
  height: 100%;
  justify-content: center;
  padding: 0;
  position: absolute !important;
  right: 5px;
  top: 0;
  width: 44px;
}

.audrey-no-products-found #search_widget .audrey-search-submit .material-icons.search {
  color: inherit;
  font-size: 23px;
  left: 50% !important;
  line-height: 1 !important;
  margin: 0 !important;
  position: absolute !important;
  top: 50% !important;
  transform: translate(-50%, calc(-50% - 6px)) !important;
}

.audrey-no-products-found #search_widget .audrey-search-submit:hover,
.audrey-no-products-found #search_widget .audrey-search-submit:focus {
  color: #c78924;
  outline: 0;
}

@media (max-width: 575px) {
  .audrey-no-products-found {
    margin-top: 0;
    padding: 28px 18px 30px;
  }
}

/* Personnalisation : un bloc compact intégré à la fiche produit. */
#product .product-customization {
  margin: 18px 0 14px;
}

#product .product-customization .card.card-block {
  background: rgba(255, 253, 248, .72);
  border: 1px solid #36543f;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
}

#product .audrey-product-customization-details {
  display: block;
}

#product .audrey-product-customization-details summary {
  align-items: center;
  color: #36543f;
  cursor: pointer;
  display: flex;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 23px;
  font-weight: 600;
  justify-content: space-between;
  line-height: 1.15;
  list-style: none;
  padding: 14px 18px;
}

#product .audrey-product-customization-details summary::-webkit-details-marker {
  display: none;
}

#product .audrey-product-customization-details summary em {
  color: #667558;
  font-family: Georgia, serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
}

#product .audrey-product-customization-details__toggle {
  align-items: center;
  border: 1px solid #667558;
  border-radius: 50%;
  display: inline-flex;
  flex: 0 0 24px;
  height: 24px;
  justify-content: center;
  margin-left: 12px;
  position: relative;
  width: 24px;
}

#product .audrey-product-customization-details__toggle::before,
#product .audrey-product-customization-details__toggle::after {
  background: #36543f;
  content: '';
  height: 1px;
  position: absolute;
  width: 10px;
}

#product .audrey-product-customization-details__toggle::after {
  transform: rotate(90deg);
}

#product .audrey-product-customization-details[open] .audrey-product-customization-details__toggle::after {
  display: none;
}

#product .audrey-product-customization-details__content {
  border-top: 1px solid #eadac2;
  padding: 13px 18px 15px;
}

#product .product-customization .card-title {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.05;
  margin: 0 0 5px;
}

#product .product-customization .product-customization__help {
  color: #66665d;
  display: block;
  font-family: Georgia, serif;
  font-size: 13px;
  line-height: 1.4;
  margin-bottom: 13px;
}

#product .audrey-customization-error {
  background: #fff4f1;
  border: 1px solid #c65d43;
  color: #8c2f20;
  font-family: Georgia, serif;
  font-size: 13px;
  line-height: 1.4;
  margin: 0 0 14px;
  padding: 9px 11px;
}

#product .product-customization ul {
  margin: 0;
}

#product .product-customization .product-customization-item {
  margin: 0 0 10px;
}

#product .product-customization label {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 14px;
  font-weight: 600;
  margin: 0 0 5px;
}

#product .product-customization textarea.product-message {
  background: #fffdf8;
  border: 1px solid #9aa99c;
  border-radius: 4px;
  box-sizing: border-box;
  color: #252820;
  display: block;
  font-family: Georgia, serif;
  font-size: 15px;
  line-height: 1.35;
  max-width: 100%;
  min-height: 66px;
  min-width: 0;
  padding: 8px 10px;
  resize: vertical;
  width: 100%;
}

#product .product-customization textarea.product-message:focus {
  border-color: #c78924;
  box-shadow: 0 0 0 2px rgba(199, 137, 36, .18);
  outline: 0;
}

#product .product-customization small {
  color: #77766d;
  font-family: Georgia, serif;
  font-size: 12px;
  margin-top: 3px;
}

#product .product-customization .btn.btn-primary {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8 !important;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  padding: 8px 15px;
}

#product .product-customization .btn.btn-primary:hover,
#product .product-customization .btn.btn-primary:focus {
  background: #c78924;
  border-color: #c78924;
  color: #fffdf8 !important;
  outline: 0;
}

#product .product-customization .custom-file {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

#product .product-customization .custom-file .js-file-name {
  color: #66665d;
  flex: 1 1 150px;
  font-family: Georgia, serif;
  font-size: 13px;
}

@media (max-width: 575px) {
  #product .product-customization .card.card-block {
    padding: 0;
  }

  #product .audrey-product-customization-details summary {
    font-size: 21px;
    padding: 13px 15px;
  }

  #product .audrey-product-customization-details__content {
    padding: 12px 15px 14px;
  }

  #product .product-customization .btn.btn-primary.float-xs-right {
    float: none !important;
    margin-top: 5px;
    width: 100%;
  }
}

/* Le module de navigation à facettes rend son conteneur même sans facette. */
#search_filters_wrapper:not(:has(#search_filters .facet)),
#search_filters_wrapper:has(#search_filters[style*='display:none']) {
  display: none !important;
}

/* La police du chiffre actif a une légère descente visuelle dans la pastille. */
body#checkout section.checkout-step.-current > .step-title > .step-number {
  transform: translateY(-1px) !important;
}

/* Lien de contact du header simplifié affiché pendant la commande. */
body#checkout #header .header-nav #contact-link a {
  color: #36543f !important;
  text-decoration: none;
}

body#checkout #header .header-nav #contact-link a:hover,
body#checkout #header .header-nav #contact-link a:focus {
  color: #c78924 !important;
  outline: 0;
  text-decoration: none;
}

/* Toute la carte reste une cible de sélection, pas seulement son contenu central. */
body#checkout .delivery-option.js-delivery-option,
body#checkout .payment-option {
  cursor: pointer;
}

body#checkout .delivery-option.js-delivery-option:focus,
body#checkout .payment-option:focus {
  outline: 2px solid #c78924;
  outline-offset: 2px;
}

/* Les loupes utilisent une police d'icônes dont le dessin descend légèrement
 * sous sa boîte : on corrige leur centrage visuel selon le bloc concerné. */
#new-products #js-product-list .page-not-found .audrey-search-submit .material-icons.search,
#prices-drop #js-product-list .page-not-found .audrey-search-submit .material-icons.search,
#search #js-product-list .audrey-no-products-found .audrey-search-submit .material-icons.search {
  transform: translate(-50%, calc(-50% - 7px)) !important;
}

/* Le message de recherche reprend exactement l'échelle du bloc Promotions. */
#search #js-product-list .audrey-no-products-found h4 {
  font-size: clamp(27px, 3vw, 35px) !important;
}

/* Alignement optique des en-têtes du tunnel de commande. Les titres et
 * actions des étapes terminées étaient légèrement trop hauts dans leur bande. */
body#checkout section.checkout-step:not(.-current) > .step-title {
  padding-bottom: 8px !important;
  padding-top: 18px !important;
}

/* Le glyphe du chiffre actif descend naturellement dans la police utilisée :
 * le retrait inférieur le remonte à l'intérieur de la pastille, sans déplacer
 * la pastille elle-même. */
body#checkout section.checkout-step.-current > .step-title > .step-number {
  line-height: 1 !important;
  padding: 0 0 5px !important;
  transform: none !important;
}

/* Les actions de l'étape Adresse restent des liens colorés, sans soulignage. */
body#checkout #checkout-addresses-step .add-address a,
body#checkout #checkout-addresses-step [data-link-action='different-invoice-address'],
body#checkout #checkout-addresses-step .add-address a:hover,
body#checkout #checkout-addresses-step .add-address a:focus,
body#checkout #checkout-addresses-step [data-link-action='different-invoice-address']:hover,
body#checkout #checkout-addresses-step [data-link-action='different-invoice-address']:focus {
  text-decoration: none !important;
}

/* Le séparateur doré de la carte d'adresse reste légèrement en retrait de
 * la bordure verte de sélection. */
body#checkout section.checkout-step .address-selector .address-item hr {
  margin-left: 12px !important;
  margin-right: 12px !important;
  width: calc(100% - 24px) !important;
}

body#checkout section.checkout-step .address-selector .address-item .address-footer {
  box-sizing: border-box !important;
  margin-left: 12px !important;
  margin-right: 12px !important;
  width: calc(100% - 24px) !important;
}

/* Mobile : correction optique propre à chaque état des pastilles du tunnel. */
@media (max-width: 767px) {
  body#checkout section.checkout-step.-current > .step-title > .step-number {
    transform: translateY(3px) !important;
  }

  body#checkout section.checkout-step:not(.-current) > .step-title > .step-number,
  body#checkout section.checkout-step:not(.-current) > .step-title > .done {
    transform: translateY(-3px) !important;
  }
}

/* Récapitulatif affiché lors du paiement : les deux adresses deviennent des
 * cartes lisibles, assorties aux encadrements du tunnel. */
body#checkout #order-summary-content .card:has(.addresshead) {
  background: rgba(255, 253, 248, .72) !important;
  border: 1px solid #36543f !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  height: 100%;
}

body#checkout #order-summary-content .card:has(.addresshead) .card-block {
  padding: 18px 20px !important;
}

body#checkout #order-summary-content .card:has(.addresshead) .addresshead {
  border-bottom: 1px solid #d8b77a;
  color: #36543f !important;
  font-size: 20px;
  margin: 0 0 12px;
  padding-bottom: 8px;
}

body#checkout #order-summary-content .step-edit {
  color: #36543f !important;
  cursor: pointer;
  font-family: Georgia, serif;
  font-size: 13px;
  margin-left: 6px;
  text-decoration: none;
}

body#checkout #order-summary-content .step-edit:hover,
body#checkout #order-summary-content .step-edit:focus {
  color: #c78924 !important;
  outline: 0;
}

/* Le récapitulatif du transporteur est une ligne réellement centrée, avec un
 * décalage optique très léger vers le bas pour les textes et logos. */
body#checkout #order-summary-content .summary-selected-carrier {
  align-items: center;
  display: flex;
  min-height: 72px;
}

body#checkout #order-summary-content .summary-selected-carrier > .row {
  transform: translateY(6px);
  width: 100%;
}

/* Chaque état d'étape utilise son propre alignement optique. */
body#checkout section.checkout-step:not(.-current) > .step-title {
  padding: 13px 20px !important;
}

body#checkout section.checkout-step.-current > .step-title {
  padding: 13px 20px 13px !important;
}

@media (max-width: 767px) {
  body#checkout section.checkout-step:not(.-current) > .step-title {
    padding: 11px 14px !important;
  }

  body#checkout section.checkout-step.-current > .step-title {
    padding: 15px 14px 7px !important;
  }
}

/* L'icône et le libellé du bouton d'effacement ne génèrent aucun espace
 * souligné entre eux. */
#search_filters .js-search-filters-clear-all .material-icons {
  margin-right: 6px;
  text-decoration: none;
}

/* Filtres actifs : résumé compact et cohérent avec les cartes de catégories. */
#js-active-search-filters.active_filters {
  align-items: center;
  background: rgba(247, 238, 223, .58);
  border: 1px solid #36543f;
  border-radius: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin: 12px 0 22px;
  padding: 12px 16px;
}

#js-active-search-filters .active-filter-title {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.1;
  margin: 0;
}

#js-active-search-filters ul {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

#js-active-search-filters .filter-block {
  align-items: center;
  background: #fffdf8;
  border: 1px solid #d8b77a;
  border-radius: 4px;
  color: #36543f;
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: 14px;
  gap: 4px;
  line-height: 1.25;
  padding: 7px 8px 7px 10px;
}

#js-active-search-filters .filter-block .js-search-link {
  align-items: center;
  color: #36543f !important;
  display: inline-flex;
  height: 22px;
  justify-content: center;
  margin-left: 2px;
  text-decoration: none;
  width: 22px;
}

#js-active-search-filters .filter-block .js-search-link:hover,
#js-active-search-filters .filter-block .js-search-link:focus {
  color: #c78924 !important;
  outline: 0;
}

#js-active-search-filters .filter-block .material-icons.close {
  color: inherit;
  font-size: 18px;
  line-height: 1;
}

@media (max-width: 575px) {
  #js-active-search-filters.active_filters {
    align-items: flex-start;
    flex-direction: column;
    padding: 12px;
  }

  #js-active-search-filters ul {
    width: 100%;
  }
}

/* Fiche produit : ne pas conserver les séparateurs des options absentes. */
#product .product-actions .product-variants:not(:has(.product-variants-item)) {
  display: none !important;
}

#product .product-actions:not(:has(.product-variants-item)) .product-add-to-cart {
  border-top: 0;
  margin-top: 0;
  padding-top: 0;
}

/* Fiche produit mobile : accès permanent au prix et à l'achat. */
#product .audrey-mobile-variant-note {
  display: none;
}

@media (max-width: 767px) {
  body#product {
    padding-bottom: calc(76px + env(safe-area-inset-bottom));
  }

  body#product::after {
    background: #fffdf8;
    border-top: 1px solid #d8b77a;
    bottom: 0;
    box-shadow: 0 -5px 14px rgba(54, 84, 63, .1);
    content: '';
    height: calc(76px + env(safe-area-inset-bottom));
    left: 0;
    position: fixed;
    right: 0;
    z-index: 1049;
  }

  #product .product-prices {
    align-items: center;
    background: #fffdf8;
    border: 0;
    border-right: 0;
    bottom: 0;
    box-sizing: border-box;
    display: flex;
    height: 76px;
    left: 0;
    margin: 0;
    padding: 10px 12px;
    position: fixed;
    width: 43%;
    z-index: 1050;
  }

  #product .audrey-mobile-variant-note {
    display: none;
  }

  body#product:has(.product-variants-item) .product-prices {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
    justify-content: center;
  }

  body#product:has(.product-variants-item) .audrey-mobile-variant-note {
    color: #b97920;
    display: block;
    font-family: Georgia, serif;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  #product #product-variants {
    scroll-margin-top: 88px;
  }

  #product .product-prices .current-price {
    line-height: 1;
  }

  #product .product-prices .current-price-value {
    font-size: clamp(21px, 6.5vw, 28px);
    white-space: nowrap;
  }

  #product .product-prices .tax-shipping-delivery-label,
  #product .product-prices .product-without-taxes,
  #product .product-prices .discount {
    display: none;
  }

  #product .product-add-to-cart .add {
    background: #fffdf8;
    bottom: 0;
    box-sizing: border-box;
    display: block;
    height: 76px;
    margin-bottom: 0 !important;
    padding: 10px 12px;
    position: fixed;
    right: 0;
    width: 57%;
    z-index: 1051;
  }

  #product .product-add-to-cart .add .add-to-cart {
    border-radius: 3px;
    justify-content: center;
    min-height: 56px;
    padding: 10px 12px;
    width: 100%;
  }
}

/* Navigation mobile : l'icône de compte suit les couleurs du thème. */
#_mobile_user_info .user-info > a,
#_mobile_user_info .user-info > a .material-icons {
  color: #36543f !important;
  transition: color 180ms ease !important;
}

#_mobile_user_info .user-info > a:hover,
#_mobile_user_info .user-info > a:focus,
#_mobile_user_info .user-info > a:hover .material-icons,
#_mobile_user_info .user-info > a:focus .material-icons {
  color: #c78924 !important;
  outline: 0;
}

/* Mon compte mobile : une liste de boutons compacte et lisible. */
@media (max-width: 767px) {
  #my-account .audrey-my-account__links {
    gap: 10px;
    grid-template-columns: minmax(0, 1fr);
  }

  #my-account .audrey-my-account__links > a {
    border-radius: 4px;
    margin-bottom: 0 !important;
    min-height: 70px !important;
    width: 100% !important;
  }

  #my-account .audrey-my-account__links > a .link-item {
    align-items: center;
    display: flex !important;
    flex-direction: row !important;
    gap: 16px;
    height: auto !important;
    justify-content: flex-start;
    min-height: 70px;
    padding: 14px 20px;
    text-align: left;
  }

  #my-account .audrey-my-account__links > a .material-icons {
    flex: 0 0 40px;
    margin: 0;
    text-align: center;
    transform: translateY(3px);
  }
}

/* Mobile : le panneau de filtres est replié au chargement. Il n'apparaît
 * qu'après activation du contrôle Audrey, sous l'en-tête de la liste. */
@media (max-width: 767px) {
  #category #left-column,
  #category .left-column:not(#content-wrapper),
  #new-products #left-column,
  #new-products .left-column:not(#content-wrapper),
  #prices-drop #left-column,
  #prices-drop .left-column:not(#content-wrapper) {
    display: none !important;
  }

  #category.audrey-category-filters-open .audrey-category-listing-layout #left-column,
  #category.audrey-category-filters-open .audrey-category-listing-layout .left-column:not(#content-wrapper),
  #new-products.audrey-category-filters-open .audrey-category-listing-layout #left-column,
  #new-products.audrey-category-filters-open .audrey-category-listing-layout .left-column:not(#content-wrapper),
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout #left-column,
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout .left-column:not(#content-wrapper) {
    animation: audrey-filter-column-in .28s cubic-bezier(.22, .61, .36, 1) both;
    display: block !important;
    max-width: 100% !important;
    padding: 0 15px 16px !important;
    width: 100% !important;
  }

  #category.audrey-category-filters-open .audrey-category-listing-layout #products,
  #new-products.audrey-category-filters-open .audrey-category-listing-layout #products,
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout #products {
    max-width: 100% !important;
    width: 100% !important;
  }

  #category.audrey-category-filters-open .audrey-category-listing-layout #left-column .block-categories,
  #new-products.audrey-category-filters-open .audrey-category-listing-layout #left-column .block-categories,
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout #left-column .block-categories {
    display: none !important;
  }

  #category.audrey-category-filters-open .audrey-category-listing-layout #search_filters_wrapper,
  #new-products.audrey-category-filters-open .audrey-category-listing-layout #search_filters_wrapper,
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout #search_filters_wrapper {
    display: block !important;
  }

  #category.audrey-category-filters-open .audrey-category-listing-layout #search_filters,
  #new-products.audrey-category-filters-open .audrey-category-listing-layout #search_filters,
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout #search_filters {
    display: block !important;
  }

  #category.audrey-category-filters-open .audrey-category-listing-layout #search_filters > .text-uppercase,
  #new-products.audrey-category-filters-open .audrey-category-listing-layout #search_filters > .text-uppercase,
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout #search_filters > .text-uppercase {
    display: block !important;
    margin: 0 0 12px;
  }

  #category.audrey-category-filters-open .audrey-category-listing-layout #search_filter_controls .ok,
  #new-products.audrey-category-filters-open .audrey-category-listing-layout #search_filter_controls .ok,
  #prices-drop.audrey-category-filters-open .audrey-category-listing-layout #search_filter_controls .ok {
    display: none !important;
  }
}

/* Grilles catalogue mobile : deux créations par rangée, hors carrousels
 * d'accueil et accessoires de la fiche produit. */
@media (max-width: 767px) {
  body:not(#product) #products .products.row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -6px;
    margin-right: -6px;
  }

  body:not(#product) #products .products.row > .js-product,
  body:not(#product) #products .products.row > .product {
    flex: 0 0 50% !important;
    float: none !important;
    max-width: 50% !important;
    min-width: 0;
    padding-left: 6px !important;
    padding-right: 6px !important;
    width: 50% !important;
  }
}

/* Grilles catalogue intermédiaires : la densité augmente progressivement
 * entre le mobile (2), le bureau standard (5) et les très grands écrans (6). */
@media (min-width: 768px) and (max-width: 991px) {
  body:not(#product) .products.row > .js-product,
  body:not(#product) .products.row > .product {
    flex: 0 0 33.333333% !important;
    max-width: 33.333333% !important;
    width: 33.333333% !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  body:not(#product) .products.row > .js-product,
  body:not(#product) .products.row > .product {
    flex: 0 0 25% !important;
    max-width: 25% !important;
    width: 25% !important;
  }
}

/* Récapitulatif de paiement : chaque création devient une ligne distincte. */
body#checkout #order-summary-content .order-confirmation-table .order-line {
  align-items: center;
  background: rgba(255, 253, 248, .78);
  border: 1px solid #eadcc2;
  border-left: 3px solid #36543f;
  margin: 0 0 9px !important;
  padding: 11px 8px;
}

body#checkout #order-summary-content .order-confirmation-table .order-line:nth-child(even) {
  background: rgba(247, 238, 223, .5);
}

body#checkout #order-summary-content .order-confirmation-table .order-line .details a {
  color: #36543f;
}

body#checkout #order-summary-content .order-confirmation-table .order-line .details a:hover,
body#checkout #order-summary-content .order-confirmation-table .order-line .details a:focus {
  color: #c78924;
  outline: 0;
}

/* Confirmation de commande : une clôture chaleureuse et immédiatement lisible. */
#content-hook_order_confirmation.audrey-order-confirmation__hero {
  background: rgba(247, 238, 223, .62);
  border: 1px solid #36543f;
  box-shadow: none;
  margin: 0 auto 22px;
  max-width: 930px;
  text-align: center;
}

#content-hook_order_confirmation .card-block {
  padding: 34px 28px 30px;
}

.audrey-order-confirmation__icon {
  align-items: center;
  background: #36543f;
  border: 3px solid #fffdf8;
  border-radius: 50%;
  box-shadow: 0 0 0 1px #d8b77a;
  color: #fffdf8;
  display: inline-flex;
  height: 54px;
  justify-content: center;
  margin: 0 auto 12px;
  width: 54px;
}

.audrey-order-confirmation__icon .material-icons {
  font-size: 29px;
}

.audrey-order-confirmation__eyebrow {
  color: #b97920;
  font-family: Georgia, serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .07em;
  margin: 0 0 5px;
  text-transform: uppercase;
}

#content-hook_order_confirmation .card-title {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(30px, 4vw, 43px);
  font-weight: 600;
  line-height: 1.05;
  margin: 0;
}

.audrey-order-confirmation__message {
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 14px;
  line-height: 1.5;
  margin: 13px auto 11px;
  max-width: 650px;
}

.audrey-order-confirmation__message a {
  color: #36543f;
  font-weight: 600;
}

.audrey-order-confirmation__reference {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  color: #36543f;
  display: table;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 600;
  margin: 0 auto 17px;
  padding: 7px 11px;
}

.audrey-order-confirmation__continue {
  background: #36543f;
  border: 1px solid #36543f;
  border-radius: 4px;
  color: #fffdf8 !important;
  font-family: Georgia, serif;
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 18px;
  padding: 11px 20px;
  text-transform: uppercase;
}

.audrey-order-confirmation__continue:hover,
.audrey-order-confirmation__continue:focus {
  background: #c78924;
  border-color: #c78924;
  outline: 0;
}

#content.page-order-confirmation.audrey-order-confirmation__summary {
  background: #fffdf8;
  border: 1px solid #d8b77a;
  box-shadow: none;
  margin: 0 auto 22px;
  max-width: 930px;
}

#content.page-order-confirmation.audrey-order-confirmation__summary > .card-block {
  padding: 24px;
}

#content.page-order-confirmation #order-items > .row {
  border-bottom: 1px solid #eadcc2;
  margin: 0 0 12px;
}

#content.page-order-confirmation #order-items .card-title,
#content.page-order-confirmation #order-details .card-title {
  color: #36543f;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 21px;
  font-weight: 600;
}

#content.page-order-confirmation .order-confirmation-table .order-line {
  align-items: center;
  background: rgba(247, 238, 223, .44);
  border: 1px solid #eadcc2;
  border-left: 3px solid #36543f;
  margin: 0 0 9px;
  padding: 11px 8px;
}

#content.page-order-confirmation .order-confirmation-table .order-line .image img {
  border: 1px solid #d8b77a;
  display: block;
  height: auto;
  max-width: 100%;
}

#content.page-order-confirmation .order-confirmation-table .order-line .details,
#content.page-order-confirmation .order-confirmation-table .order-line .qty {
  color: #36543f;
  font-family: Georgia, serif;
  font-size: 14px;
}

#content.page-order-confirmation .order-confirmation-table table {
  border-top: 1px solid #36543f;
  margin-top: 16px;
  width: 100%;
}

#content.page-order-confirmation .order-confirmation-table table td {
  color: #36543f;
  font-family: Georgia, serif;
  padding: 8px;
}

#content.page-order-confirmation .order-confirmation-table table td:last-child {
  font-weight: 700;
  text-align: right;
}

#content.page-order-confirmation .order-confirmation-table table .total-value td {
  background: rgba(247, 238, 223, .86);
  border-bottom: 1px solid #eadcc2;
  border-top: 1px solid #eadcc2;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 19px;
  padding: 11px 8px;
}

#content.page-order-confirmation #order-details {
  background: rgba(247, 238, 223, .45);
  border: 1px solid #eadcc2;
  margin: 20px 15px 0;
  max-width: calc(100% - 30px);
  padding: 17px;
}

#content.page-order-confirmation #order-details ul {
  color: #42483e;
  font-family: Georgia, serif;
  font-size: 14px;
  line-height: 1.55;
  list-style: none;
  margin: 0;
  padding: 0;
}

#content.page-order-confirmation #order-details li + li {
  border-top: 1px solid #eadcc2;
  margin-top: 8px;
  padding-top: 8px;
}

@media (max-width: 767px) {
  #content-hook_order_confirmation .card-block {
    padding: 27px 18px 24px;
  }

  #content.page-order-confirmation.audrey-order-confirmation__summary > .card-block {
    padding: 18px 13px;
  }

  #content.page-order-confirmation .order-confirmation-table .order-line {
    padding: 10px 5px;
  }

  #content.page-order-confirmation #order-details {
    margin: 16px 0 0;
    max-width: 100%;
  }
}

/* Champs date natifs : pictogramme sombre puis doré au survol. */
input[type='date']::-webkit-calendar-picker-indicator {
  cursor: pointer !important;
  filter: invert(30%) sepia(13%) saturate(1481%) hue-rotate(92deg) brightness(94%) contrast(87%) !important;
  opacity: 1 !important;
}

/* Firefox expose son propre pseudo-élément : sans lui, le calendrier de la
 * page Identité conserve les couleurs natives gris/noir. */
input[type='date']::-moz-calendar-picker-indicator {
  cursor: pointer !important;
  filter: invert(30%) sepia(13%) saturate(1481%) hue-rotate(92deg) brightness(94%) contrast(87%) !important;
  opacity: 1 !important;
}

input[type='date']:hover::-webkit-calendar-picker-indicator,
input[type='date']:focus::-webkit-calendar-picker-indicator,
input[type='date']::-webkit-calendar-picker-indicator:hover {
  cursor: pointer !important;
  filter: invert(51%) sepia(69%) saturate(612%) hue-rotate(356deg) brightness(86%) contrast(87%) !important;
}

input[type='date']:hover::-moz-calendar-picker-indicator,
input[type='date']:focus::-moz-calendar-picker-indicator,
input[type='date']::-moz-calendar-picker-indicator:hover {
  cursor: pointer !important;
  filter: invert(51%) sepia(69%) saturate(612%) hue-rotate(356deg) brightness(86%) contrast(87%) !important;
}

/* Choix de livraison mobile : les grilles Bootstrap ne conservent pas leurs
 * largeurs et marges de bureau à l'intérieur des cartes. */
@media (max-width: 767px) {
  body#checkout .delivery-option {
    box-sizing: border-box;
    overflow: hidden;
  }

  body#checkout .delivery-option > .col-sm-1 {
    box-sizing: border-box;
    float: none !important;
    margin: 0 !important;
    width: 100% !important;
  }

  body#checkout .delivery-option .custom-radio {
    float: none !important;
  }

  body#checkout .delivery-option .delivery-option-2 {
    box-sizing: border-box;
    float: none !important;
    margin: 0 !important;
    max-width: 100% !important;
    padding: 8px 0 0 !important;
    width: 100% !important;
  }

  body#checkout .delivery-option .delivery-option-2 > .row,
  body#checkout .delivery-option .delivery-option-2 .carrier {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
  }

  body#checkout .delivery-option .delivery-option-2 > .row > [class*='col-'] {
    box-sizing: border-box;
    float: none !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
  }

  body#checkout .delivery-option .carrier {
    align-items: center;
    display: flex !important;
    gap: 10px;
  }

  body#checkout .delivery-option .carrier-logo {
    flex: 0 0 58px;
    padding: 0 !important;
    width: 58px !important;
  }

body#checkout .delivery-option .carriere-name-container {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0 !important;
    width: auto !important;
  }
}

/* Cases à cocher : coche vert foncé sur fond clair dans tout le thème. */
.custom-checkbox input[type='checkbox'] + span {
  background: #fffdf8 !important;
  border-color: #36543f !important;
}

.custom-checkbox input[type='checkbox']:checked + span {
  background: #fffdf8 !important;
  border-color: #36543f !important;
}

.custom-checkbox input[type='checkbox'] + span .checkbox-checked,
.custom-checkbox input[type='checkbox']:checked + span .checkbox-checked {
  color: #36543f !important;
}

/* Facettes : chaque contrôle et son libellé partagent le même axe vertical,
 * y compris hors de la page Catégorie. */
#search_filters .facet li {
  margin: 0;
  padding: 4px 0;
}

#search_filters .facet .facet-label {
  align-items: center;
  display: flex;
  gap: 7px;
  line-height: 18px;
  margin: 0;
}

#search_filters .facet .custom-checkbox,
#search_filters .facet .custom-radio {
  align-items: center;
  display: inline-flex;
  flex: 0 0 18px;
  height: 18px;
  justify-content: center;
  margin: 0;
  top: 0 !important;
}

#search_filters .facet .custom-checkbox input,
#search_filters .facet .custom-radio input {
  margin-top: 0;
}

#search_filters .facet .facet-label > a {
  display: block;
  line-height: 18px;
}

@media (min-width: 768px) {
  #search_filters .facet .facet-label a {
    margin-top: 0;
  }
}

/* Curseur de prix : la piste active reprend le vert foncé de la charte. */
#search_filters .ui-slider,
#search_filters .ui-widget-header {
  background: #36543f !important;
}

#search_filters .ui-slider .ui-slider-handle {
  background: #fffdf8 !important;
  border-color: #36543f !important;
}

/* Pagination : des cibles plus généreuses, sans modifier leur rythme. */
#category #js-product-list .pagination .page-list a,
#new-products #js-product-list .pagination .page-list a,
#prices-drop #js-product-list .pagination .page-list a,
#search #js-product-list .pagination .page-list a {
  font-size: 15px;
  height: 34px;
  min-width: 34px;
  padding: 5px 8px;
}

#category #js-product-list .pagination .page-list .previous,
#category #js-product-list .pagination .page-list .next,
#new-products #js-product-list .pagination .page-list .previous,
#new-products #js-product-list .pagination .page-list .next,
#prices-drop #js-product-list .pagination .page-list .previous,
#prices-drop #js-product-list .pagination .page-list .next,
#search #js-product-list .pagination .page-list .previous,
#search #js-product-list .pagination .page-list .next {
  width: 34px;
}

#category #js-product-list .pagination .page-list .previous .material-icons,
#category #js-product-list .pagination .page-list .next .material-icons,
#new-products #js-product-list .pagination .page-list .previous .material-icons,
#new-products #js-product-list .pagination .page-list .next .material-icons,
#prices-drop #js-product-list .pagination .page-list .previous .material-icons,
#prices-drop #js-product-list .pagination .page-list .next .material-icons,
#search #js-product-list .pagination .page-list .previous .material-icons,
#search #js-product-list .pagination .page-list .next .material-icons {
  font-size: 22px;
}

/* Étapes suivantes sur ordinateur : le dessin du chiffre descend légèrement
 * dans la police ; un retrait inférieur le replace au centre de sa pastille. */
@media (min-width: 768px) {
  body#checkout section.checkout-step:not(.-current) > .step-title > .step-number {
    line-height: 1 !important;
    padding: 0 0 4px !important;
  }
}

/* Étape active mobile : le groupe titre/pastille remonte dans sa bande et
 * retrouve un axe visuel commun. */
@media (max-width: 767px) {
  body#checkout section.checkout-step.-current > .step-title {
    padding: 11px 14px !important;
  }

  body#checkout section.checkout-step.-current > .step-title > .step-number {
    transform: none !important;
  }
}

/* Transporteurs mobile : une grille stable (radio + contenu) évite que les
 * colonnes Bootstrap sortent des cartes ou se superposent. */
@media (max-width: 767px) {
  body#checkout .delivery-option {
    align-items: start;
    display: grid !important;
    gap: 12px;
    grid-template-columns: 20px minmax(0, 1fr);
    overflow: hidden;
    padding: 16px !important;
  }

  body#checkout .delivery-option > .col-sm-1 {
    height: auto !important;
    margin: 0 !important;
    padding: 3px 0 0 !important;
    width: 20px !important;
  }

  body#checkout .delivery-option .custom-radio {
    height: 20px !important;
    justify-content: flex-start;
    width: 20px !important;
  }

  body#checkout .delivery-option .delivery-option-2 {
    display: block !important;
    margin: 0 !important;
    max-width: 100% !important;
    min-width: 0;
    padding: 0 !important;
    width: auto !important;
  }

  body#checkout .delivery-option .delivery-option-2 > .row,
  body#checkout .delivery-option .delivery-option-2 > .row > [class*='col-'] {
    display: block !important;
    float: none !important;
    margin: 0 !important;
    max-width: 100% !important;
    padding: 0 !important;
    width: 100% !important;
  }

  body#checkout .delivery-option .carrier {
    align-items: center;
    display: flex !important;
    gap: 10px;
    margin: 0 !important;
  }

  body#checkout .delivery-option .carrier-logo {
    flex: 0 0 58px;
    padding: 0 !important;
    width: 58px !important;
  }

  body#checkout .delivery-option .carriere-name-container {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0 !important;
    width: auto !important;
  }

  body#checkout .delivery-option .carrier-delay,
  body#checkout .delivery-option .carrier-price {
    margin-top: 9px;
    text-align: left;
  }
}

/* Liste d'envies : même fond doré que les actions de partage au survol. */
body#product .wishlist-button-add:hover,
body#product .wishlist-button-add:focus,
body .products .wishlist-button-add:hover,
body .products .wishlist-button-add:focus,
body #products .wishlist-button-add:hover,
body #products .wishlist-button-add:focus,
body .featured-products .wishlist-button-add:hover,
body .featured-products .wishlist-button-add:focus {
  background: #c78924 !important;
  border-color: #c78924 !important;
  color: #fffdf8 !important;
}

body#product .wishlist-button-add:hover .material-icons,
body#product .wishlist-button-add:focus .material-icons,
body .products .wishlist-button-add:hover .material-icons,
body .products .wishlist-button-add:focus .material-icons,
body #products .wishlist-button-add:hover .material-icons,
body #products .wishlist-button-add:focus .material-icons,
body .featured-products .wishlist-button-add:hover .material-icons,
body .featured-products .wishlist-button-add:focus .material-icons,
body#product .wishlist-button-add:hover i,
body#product .wishlist-button-add:focus i,
body .products .wishlist-button-add:hover i,
body .products .wishlist-button-add:focus i,
body #products .wishlist-button-add:hover i,
body #products .wishlist-button-add:focus i,
body .featured-products .wishlist-button-add:hover i,
body .featured-products .wishlist-button-add:focus i {
  color: #fffdf8 !important;
}
